@restforgejs/platform 5.0.8 → 5.0.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 (168) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/lib/dbschema-kit/connection.js +17 -2
  5. package/generators/lib/templates/dashboard-catalog.js +1 -1
  6. package/generators/lib/templates/db-connection-env.js +1 -1
  7. package/generators/lib/templates/dbschema-catalog.js +1 -1
  8. package/generators/lib/templates/field-validation-catalog.js +1 -1
  9. package/generators/lib/templates/mysql-template.js +1 -1
  10. package/generators/lib/templates/oracle-template.js +1 -1
  11. package/generators/lib/templates/postgres-template.js +1 -1
  12. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  13. package/generators/lib/templates/sqlite-template.js +1 -1
  14. package/generators/lib/utils/database-introspector.js +4 -1
  15. package/integrity-manifest.json +18 -18
  16. package/package.json +1 -1
  17. package/scripts/verify-integrity.js +1 -1
  18. package/server.js +1 -1
  19. package/src/components/handlers/adjust_handler.js +1 -1
  20. package/src/components/handlers/audit_handler.js +1 -1
  21. package/src/components/handlers/delete_handler.js +1 -1
  22. package/src/components/handlers/export_handler.js +1 -1
  23. package/src/components/handlers/import_handler.js +1 -1
  24. package/src/components/handlers/insert_handler.js +1 -1
  25. package/src/components/handlers/update_handler.js +1 -1
  26. package/src/components/handlers/upload_handler.js +1 -1
  27. package/src/components/handlers/workflow_handler.js +1 -1
  28. package/src/components/integrations/webhook.js +1 -1
  29. package/src/consumers/baseConsumer.js +1 -1
  30. package/src/consumers/declarativeMapper.js +1 -1
  31. package/src/consumers/handlers/apiHandler.js +1 -1
  32. package/src/consumers/handlers/consoleHandler.js +1 -1
  33. package/src/consumers/handlers/databaseHandler.js +1 -1
  34. package/src/consumers/handlers/index.js +1 -1
  35. package/src/consumers/handlers/kafkaHandler.js +1 -1
  36. package/src/consumers/index.js +1 -1
  37. package/src/consumers/messageTransformer.js +1 -1
  38. package/src/consumers/validator.js +1 -1
  39. package/src/core/db/dialect/base-dialect.js +1 -1
  40. package/src/core/db/dialect/index.js +1 -1
  41. package/src/core/db/dialect/mysql-dialect.js +1 -1
  42. package/src/core/db/dialect/oracle-dialect.js +1 -1
  43. package/src/core/db/dialect/postgres-dialect.js +1 -1
  44. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  45. package/src/core/db/flatten-helper.js +1 -1
  46. package/src/core/db/query-builder-error.js +1 -1
  47. package/src/core/db/query-builder.js +1 -1
  48. package/src/core/db/relation-helper.js +1 -1
  49. package/src/core/handlers/delete_handler.js +1 -1
  50. package/src/core/handlers/insert_handler.js +1 -1
  51. package/src/core/handlers/update_handler.js +1 -1
  52. package/src/core/models/base-model.js +1 -1
  53. package/src/core/utils/cache-manager.js +1 -1
  54. package/src/core/utils/component-engine.js +1 -1
  55. package/src/core/utils/context-builder.js +1 -1
  56. package/src/core/utils/datetime-formatter.js +1 -1
  57. package/src/core/utils/datetime-parser.js +1 -1
  58. package/src/core/utils/db.js +1 -1
  59. package/src/core/utils/logger.js +1 -1
  60. package/src/core/utils/payload-loader.js +1 -1
  61. package/src/core/utils/security-checks.js +1 -1
  62. package/src/middleware/body-options.js +1 -1
  63. package/src/middleware/cors.js +1 -1
  64. package/src/middleware/idempotency.js +1 -1
  65. package/src/middleware/rate-limiter.js +1 -1
  66. package/src/middleware/request-logger.js +1 -1
  67. package/src/middleware/security-headers.js +1 -1
  68. package/src/models/base-model-mysql.js +1 -1
  69. package/src/models/base-model-oracle.js +1 -1
  70. package/src/models/base-model-sqlite.js +1 -1
  71. package/src/models/base-model.js +1 -1
  72. package/src/pro/caching/redis-client.js +1 -1
  73. package/src/pro/caching/redis-helper.js +1 -1
  74. package/src/pro/consumers/baseConsumer.js +1 -1
  75. package/src/pro/consumers/declarativeMapper.js +1 -1
  76. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  77. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  78. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  79. package/src/pro/consumers/handlers/index.js +1 -1
  80. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  81. package/src/pro/consumers/index.js +1 -1
  82. package/src/pro/consumers/messageTransformer.js +1 -1
  83. package/src/pro/consumers/validator.js +1 -1
  84. package/src/pro/database/base-model-mysql.js +1 -1
  85. package/src/pro/database/base-model-oracle.js +1 -1
  86. package/src/pro/database/base-model-sqlite.js +1 -1
  87. package/src/pro/database/db-mysql.js +1 -1
  88. package/src/pro/database/db-oracle.js +1 -1
  89. package/src/pro/database/db-sqlite.js +1 -1
  90. package/src/pro/excel/excel-generator.js +1 -1
  91. package/src/pro/excel/excel-parser.js +1 -1
  92. package/src/pro/excel/export-service.js +1 -1
  93. package/src/pro/excel/export_handler.js +1 -1
  94. package/src/pro/excel/import-service.js +1 -1
  95. package/src/pro/excel/import-validator.js +1 -1
  96. package/src/pro/excel/import_handler.js +1 -1
  97. package/src/pro/excel/upsert-builder.js +1 -1
  98. package/src/pro/idgen/idgen-routes.js +1 -1
  99. package/src/pro/integrations/lookup-resolver.js +1 -1
  100. package/src/pro/integrations/upload-handler-v2.js +1 -1
  101. package/src/pro/integrations/upload-handler.js +1 -1
  102. package/src/pro/integrations/webhook.js +1 -1
  103. package/src/pro/locking/lock-routes.js +1 -1
  104. package/src/pro/locking/resource-lock-manager.js +1 -1
  105. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  106. package/src/pro/messaging/kafkaService.js +1 -1
  107. package/src/pro/messaging/messagehubService.js +1 -1
  108. package/src/pro/messaging/rabbitmqService.js +1 -1
  109. package/src/pro/scheduler/job-manager.js +1 -1
  110. package/src/pro/scheduler/job-routes.js +1 -1
  111. package/src/pro/scheduler/job-validator.js +1 -1
  112. package/src/pro/storage/base-storage-provider.js +1 -1
  113. package/src/pro/storage/file-metadata-helper.js +1 -1
  114. package/src/pro/storage/index.js +1 -1
  115. package/src/pro/storage/local-storage-provider.js +1 -1
  116. package/src/pro/storage/s3-storage-provider.js +1 -1
  117. package/src/pro/storage/upload-cleanup-job.js +1 -1
  118. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  119. package/src/pro/storage/upload-pending-tracker.js +1 -1
  120. package/src/pro/websocket/broadcast-helper.js +1 -1
  121. package/src/pro/websocket/index.js +1 -1
  122. package/src/pro/websocket/livesync-server.js +1 -1
  123. package/src/pro/websocket/ws-broadcaster.js +1 -1
  124. package/src/services/export-service.js +1 -1
  125. package/src/services/import-service.js +1 -1
  126. package/src/services/kafkaConsumerService.js +1 -1
  127. package/src/services/kafkaService.js +1 -1
  128. package/src/services/messagehubService.js +1 -1
  129. package/src/services/rabbitmqService.js +1 -1
  130. package/src/utils/cache-invalidation-registry.js +1 -1
  131. package/src/utils/cache-manager.js +1 -1
  132. package/src/utils/component-engine.js +1 -1
  133. package/src/utils/config-extractor.js +1 -1
  134. package/src/utils/consumerLogger.js +1 -1
  135. package/src/utils/context-builder.js +1 -1
  136. package/src/utils/dashboard-helpers.js +1 -1
  137. package/src/utils/dateHelper.js +1 -1
  138. package/src/utils/datetime-formatter.js +1 -1
  139. package/src/utils/datetime-parser.js +1 -1
  140. package/src/utils/db-bootstrap.js +1 -1
  141. package/src/utils/db-mysql.js +1 -1
  142. package/src/utils/db-oracle.js +1 -1
  143. package/src/utils/db-sqlite.js +1 -1
  144. package/src/utils/db.js +1 -1
  145. package/src/utils/demo-generator.js +1 -1
  146. package/src/utils/excel-generator.js +1 -1
  147. package/src/utils/excel-parser.js +1 -1
  148. package/src/utils/file-watcher.js +1 -1
  149. package/src/utils/id-generator.js +1 -1
  150. package/src/utils/idempotency-manager.js +1 -1
  151. package/src/utils/import-validator.js +1 -1
  152. package/src/utils/license-client.js +1 -1
  153. package/src/utils/lock-manager.js +1 -1
  154. package/src/utils/logger.js +1 -1
  155. package/src/utils/lookup-resolver.js +1 -1
  156. package/src/utils/payload-loader.js +1 -1
  157. package/src/utils/processor-response.js +1 -1
  158. package/src/utils/rabbitmq.js +1 -1
  159. package/src/utils/redis-client.js +1 -1
  160. package/src/utils/redis-helper.js +1 -1
  161. package/src/utils/request-scope.js +1 -1
  162. package/src/utils/security-checks.js +1 -1
  163. package/src/utils/service-resolver.js +1 -1
  164. package/src/utils/shutdown-coordinator.js +1 -1
  165. package/src/utils/trusted-keys.js +1 -1
  166. package/src/utils/upload-handler.js +1 -1
  167. package/src/utils/upsert-builder.js +1 -1
  168. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x4b192a=a0_0x2210;function a0_0x3338(){const _0x9d17a0=['uwzoufm','Aw5MBW','CM93C0fMzMvJDgvK','mtqYotu3mMTTtLbTrq','B3jHy2XLx3nODxrKB3DU','CgfYyw1Z','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','z2v0ug9VBfn0yxrPC3rPy3m','DgvZDenVBM5Ly3rPB24','zxHLy3v0zvrYyw5Zywn0Aw9U','zxHWB3j0CW','CM9SBgjHy2S','BwvZC2fNzq','mZiXmdyXnwjLsKnzuW','z2v0q29UBMvJDgLVBG','rejFse9tva','rxjYB3iGy2XVC2LUzYb0zxn0ignVBM5Ly3rPB246ia','B214EfC','zxHPDa','B3jHy2XLx2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','C3rHCNq','AMztuLy','zxHLy3v0zvf1zxj5','otG2mZq2meHLAK53ua','Ag1jzLa','quXurviGu0vtu0LptIbtrvqGtKXtx0rbvevFrK9stufuid0Gj1LzwvKTtu0TreqN','zgvIDwC','mJbMwK5zEeC','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5Nie9YywnSzsbJB25Uzwn0Aw9UihbVB2WUlI4','t3jHy2XLihrYyw5Zywn0Aw9UignVBw1PDhrLzcaO','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','C1bdvwG','CgHzyu8','BgvUz3rO','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJCMvHDgvKihn1y2nLC3nMDwXSEq','Cg9VBe1PBG','y2XVC2vqB29S','rgLNqw4','B3jHy2XLx3bVB2XFzxHPC3rZ','nJe1ndC3t1zQCez0','Bg9JywXOB3n0','rejFtKfnrq','zgH1te4','DhjHBNnHy3rPB25FzxjYB3i','q3jLyxrPBMCGt3jHy2XLignVBM5Ly3rPB24GCg9VBc4UlG','q0XpqG','mhWXFdr8m3WY','r0PIDLu','rxjYB3iGy2XVC2LUzYbpCMfJBguGDhjHBNnHy3rPB24Gy29UBMvJDgLVBJOG','mZi4og5JEhHYrG','B3jHy2XL','B3jHy2XLx3bVB2XFy2XVC2vK','u0Lhvevstq','u0Lhsu5u','EvjAuuy','rejFue9sva','qKXpqG','tK9LAgO','y2XVC2u','rxjYB3iGC2fHDcbTzw1IDwf0ie9YywnSzsbJB25Uzwn0Aw9UihbVB2W6ia','wfbTB00','t1vux0zpuK1bvf9pqKPfq1q','mtuZmZu0yxfXrvLc','q25Svxe','Cg9VBa','qwn0AxzL','m2LTCLvkyW','C3vIC3rYAw5N','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZjW','AhfVzLq','rejFue9ptf9nsu4','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SoIa','B3jHy2XLx2nVBM5Ly3rPB25FC3rYAw5N','mJuZwNzLre9O','y29UzMLN','ChvZAa','x25SC1jLywr5','DNnyyxq','mtC5ndfgtuTSA3m','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','r0rjvLC','owDbAuLAza','rxjYB3iGCM9SBgLUzYbIywnRie9YywnSzsb0CMfUC2fJDgLVBJOG','zfnlvKC','qw5oANy','mZmYnJqZmezJyMDhvG','qwP6z3q','Agnurfu','u0vmrunuifnzu0rbveuGyxmGy3vYCMvUDf9KyxrLlcbvu0vsigfZign1CNjLBNrFDxnLCIbguK9niervquW','vLvju1u','DhjHBNnHy3rPB25Fy29TCgXLDgu','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','zw52','rejFue9ptf9nqvG','zxHLy3v0zq','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbZDwrHAcbHzge','y3jLyxrLug9VBa','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','uuv3zM0','B3jHy2XLx3bVB2XFzxjYB3i','yxv0B0nVBw1PDa','Cg9VBfrPBwvVDxq','BLbfvKS','CM93CW'];a0_0x3338=function(){return _0x9d17a0;};return a0_0x3338();}(function(_0x35f0e2,_0x26a6d4){const _0x2b51aa=a0_0x2210,_0x2fd4b2=_0x35f0e2();while(!![]){try{const _0xf09a0=-parseInt(_0x2b51aa(0xb8))/0x1*(-parseInt(_0x2b51aa(0xb4))/0x2)+-parseInt(_0x2b51aa(0x9d))/0x3*(-parseInt(_0x2b51aa(0x91))/0x4)+-parseInt(_0x2b51aa(0xed))/0x5+parseInt(_0x2b51aa(0x8d))/0x6+parseInt(_0x2b51aa(0xc4))/0x7*(parseInt(_0x2b51aa(0xa7))/0x8)+-parseInt(_0x2b51aa(0xc7))/0x9*(-parseInt(_0x2b51aa(0xcb))/0xa)+parseInt(_0x2b51aa(0xbf))/0xb*(-parseInt(_0x2b51aa(0xe3))/0xc);if(_0xf09a0===_0x26a6d4)break;else _0x2fd4b2['push'](_0x2fd4b2['shift']());}catch(_0x18f010){_0x2fd4b2['push'](_0x2fd4b2['shift']());}}}(a0_0x3338,0xdc9d4));const oracledb=require('oracledb'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');oracledb['fetchAsString']=[oracledb[a0_0x4b192a(0xa3)],oracledb['NCLOB']],oracledb['fetchAsBuffer']=[oracledb[a0_0x4b192a(0xae)]];async function ensureNlsReady(_0x138a83){const _0x225131=a0_0x4b192a,_0x560ce6={'sPCUh':_0x225131(0xa4)},_0x999541=_0x560ce6[_0x225131(0x95)]['split']('|');let _0xb6c475=0x0;while(!![]){switch(_0x999541[_0xb6c475++]){case'0':if(_0x138a83['_nlsReady'])return;continue;case'1':await _0x138a83['execute'](_0x225131(0x8f));continue;case'2':_0x138a83[_0x225131(0xc2)]=!![];continue;case'3':await _0x138a83['execute'](_0x225131(0xd5));continue;case'4':await _0x138a83['execute'](_0x225131(0xba));continue;}break;}}function a0_0x2210(_0x351d85,_0x250894){_0x351d85=_0x351d85-0x89;const _0x3338b2=a0_0x3338();let _0x22106c=_0x3338b2[_0x351d85];if(a0_0x2210['lfoOlF']===undefined){var _0x224c25=function(_0x482cf9){const _0x148b0f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x241755='',_0x36b1a6='';for(let _0x5eda4e=0x0,_0x50ced1,_0x46d1d3,_0x5ad7b6=0x0;_0x46d1d3=_0x482cf9['charAt'](_0x5ad7b6++);~_0x46d1d3&&(_0x50ced1=_0x5eda4e%0x4?_0x50ced1*0x40+_0x46d1d3:_0x46d1d3,_0x5eda4e++%0x4)?_0x241755+=String['fromCharCode'](0xff&_0x50ced1>>(-0x2*_0x5eda4e&0x6)):0x0){_0x46d1d3=_0x148b0f['indexOf'](_0x46d1d3);}for(let _0x5b4618=0x0,_0x129b57=_0x241755['length'];_0x5b4618<_0x129b57;_0x5b4618++){_0x36b1a6+='%'+('00'+_0x241755['charCodeAt'](_0x5b4618)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x36b1a6);};a0_0x2210['VHWNsD']=_0x224c25,a0_0x2210['gPrwGy']={},a0_0x2210['lfoOlF']=!![];}const _0x193cb7=_0x3338b2[0x0],_0x31e005=_0x351d85+_0x193cb7,_0x164b37=a0_0x2210['gPrwGy'][_0x31e005];return!_0x164b37?(_0x22106c=a0_0x2210['VHWNsD'](_0x22106c),a0_0x2210['gPrwGy'][_0x31e005]=_0x22106c):_0x22106c=_0x164b37,_0x22106c;}class OracleDatabase{constructor(){const _0x2f9dd6=a0_0x4b192a,_0x125f1f={'kcCDR':function(_0x8599cb,_0x3bd1f6){return _0x8599cb(_0x3bd1f6);},'XTIvx':_0x2f9dd6(0x9e),'ymEIE':'1521','hqofT':'oracle'};this[_0x2f9dd6(0xb6)]=null,this[_0x2f9dd6(0xc0)]={'user':process['env']['DB_USER']||'hr','password':process[_0x2f9dd6(0xd2)]['DB_PASSWORD']||'hr','connectString':this['buildConnectionString'](),'poolMin':_0x125f1f['kcCDR'](parseInt,process['env'][_0x2f9dd6(0xbc)])||0x2,'poolMax':parseInt(process[_0x2f9dd6(0xd2)][_0x2f9dd6(0xd3)])||0xa,'poolIncrement':parseInt(process[_0x2f9dd6(0xd2)]['DB_POOL_INCREMENT'])||0x1,'poolTimeout':parseInt(process[_0x2f9dd6(0xd2)]['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb[_0x2f9dd6(0xa3)],oracledb['NCLOB']],'fetchAsBuffer':[oracledb['BLOB']]},logDatabaseConfig({'host':process['env'][_0x2f9dd6(0xef)]||_0x125f1f['XTIvx'],'port':process['env'][_0x2f9dd6(0xad)]||_0x125f1f['ymEIE'],'database':process[_0x2f9dd6(0xd2)]['DB_NAME']||'XE','type':_0x125f1f[_0x2f9dd6(0xbb)],'user':this['config']['user'],'poolMin':this['config'][_0x2f9dd6(0x99)],'poolMax':this['config']['poolMax']});}[a0_0x4b192a(0xd9)](){const _0x312299=a0_0x4b192a,_0x1a92e9={'QfNPS':'1521','ujLlW':_0x312299(0xbe)},_0x228be2=process[_0x312299(0xd2)][_0x312299(0xef)]||_0x312299(0x9e),_0x58ef30=process[_0x312299(0xd2)][_0x312299(0xad)]||_0x1a92e9[_0x312299(0xe0)],_0x5b2d17=process['env'][_0x312299(0x9f)]||'XE',_0xb5fa2='//'+_0x228be2+':'+_0x58ef30+'/'+_0x5b2d17;return logger['debug']({'event':_0x1a92e9['ujLlW'],'connectionString':_0xb5fa2},'Oracle\x20Connection\x20String:\x20'+_0xb5fa2),_0xb5fa2;}async['initializePool'](){const _0xe38e1c=a0_0x4b192a,_0x4314dd={'dSKVG':'oracle_pool_created','AnNjv':_0xe38e1c(0x98),'GDIVW':_0xe38e1c(0xd7),'WslSC':'oracle_pool_creating','MGVmu':_0xe38e1c(0xa2)};try{const _0x1103a6='1|4|3|0|2'['split']('|');let _0x4b7364=0x0;while(!![]){switch(_0x1103a6[_0x4b7364++]){case'0':logger['info']({'event':_0x4314dd[_0xe38e1c(0xc9)]},_0x4314dd[_0xe38e1c(0xca)]);continue;case'1':if(this[_0xe38e1c(0xb6)]){logger['debug']({'event':_0xe38e1c(0x9c)},_0x4314dd[_0xe38e1c(0xc6)]);return;}continue;case'2':await this[_0xe38e1c(0xe8)]();continue;case'3':this['pool']=await oracledb[_0xe38e1c(0xd8)](this[_0xe38e1c(0xc0)]);continue;case'4':logger[_0xe38e1c(0xe1)]({'event':_0x4314dd['WslSC']},_0x4314dd['MGVmu']);continue;}break;}}catch(_0x20299c){logError(_0x20299c,{'event':_0xe38e1c(0xdb)},_0xe38e1c(0xb1)+_0x20299c['message']);throw _0x20299c;}}async['testConnection'](){const _0x42115d=a0_0x4b192a,_0x3dd84c={'VlNWN':_0x42115d(0xd1),'Qkaef':function(_0x2c9ee9,_0x19f3cb){return _0x2c9ee9(_0x19f3cb);},'VQGIj':_0x42115d(0xce),'VUISU':function(_0x46dfdc,_0x27ce2d,_0x31851f,_0x112f7a){return _0x46dfdc(_0x27ce2d,_0x31851f,_0x112f7a);},'mzkIH':'oracle_connection_test_failed','GJbvU':function(_0x27b7b5,_0xaeb39b,_0x28412b,_0x485fcb){return _0x27b7b5(_0xaeb39b,_0x28412b,_0x485fcb);}};let _0x26e26b;try{logger[_0x42115d(0x90)]({'event':_0x3dd84c['VlNWN']},'Testing\x20Oracle\x20database\x20connection...'),_0x26e26b=await this['pool']['getConnection'](),await _0x3dd84c['Qkaef'](ensureNlsReady,_0x26e26b);const _0x501eef=await _0x26e26b['execute'](_0x3dd84c['VQGIj']);logger[_0x42115d(0xe1)]({'event':'oracle_connection_test_success','currentDate':_0x501eef['rows'][0x0][0x0],'currentUser':_0x501eef[_0x42115d(0xdf)][0x0][0x1]},_0x42115d(0xe6)+_0x501eef[_0x42115d(0xdf)][0x0][0x1]);}catch(_0x4b0c83){_0x3dd84c[_0x42115d(0xcf)](logError,_0x4b0c83,{'event':_0x3dd84c['mzkIH']},_0x42115d(0xd6)+_0x4b0c83['message']);throw _0x4b0c83;}finally{if(_0x26e26b)try{await _0x26e26b[_0x42115d(0xb0)]();}catch(_0x20c2a2){_0x3dd84c[_0x42115d(0xa5)](logError,_0x20c2a2,{'event':'oracle_test_connection_close_error'},_0x42115d(0xf0)+_0x20c2a2['message']);}}}async[a0_0x4b192a(0x8c)](_0x43a6b3,_0x129de9=[],_0x356fdf={}){const _0x1a04c6=a0_0x4b192a,_0xd4fb60={'hmIfP':function(_0x6d88de){return _0x6d88de();},'hcTDU':function(_0x183a52,_0x3dd4ea){return _0x183a52!==_0x3dd4ea;},'CgTRA':function(_0x2551fb,_0xdc0a49,_0x2ca205,_0x4b4f45){return _0x2551fb(_0xdc0a49,_0x2ca205,_0x4b4f45);},'QEwfm':function(_0x5120a2){return _0x5120a2();},'FCGsD':'sql_error','LClZr':_0x1a04c6(0xa8),'FZewH':_0x1a04c6(0x89)};let _0x1db851;const _0x50af49=_0xd4fb60[_0x1a04c6(0x8e)](startQueryTimer);try{!this['pool']&&await this['initializePool']();_0x1db851=await this['pool'][_0x1a04c6(0xee)](),await ensureNlsReady(_0x1db851);const _0x13c765={'outFormat':oracledb[_0x1a04c6(0xb3)],'autoCommit':_0xd4fb60[_0x1a04c6(0xcd)](_0x356fdf['autoCommit'],undefined)?_0x356fdf[_0x1a04c6(0xdc)]:!![],..._0x356fdf},_0x3992df=await _0x1db851[_0x1a04c6(0xd4)](_0x43a6b3,_0x129de9,_0x13c765),_0x3d97bd=_0x50af49(),_0x3403de=_0x3992df['rows']?_0x3992df['rows'][_0x1a04c6(0x97)]:_0x3992df[_0x1a04c6(0xe2)];return _0xd4fb60['CgTRA'](logQuery,_0x43a6b3,_0x129de9,{'duration':_0x3d97bd,'rowsAffected':_0x3403de,'dbType':_0x1a04c6(0xa8)}),_0x3992df['rows']?_0x3992df[_0x1a04c6(0xdf)]:{'rowsAffected':_0x3992df['rowsAffected'],'lastRowid':_0x3992df['lastRowid']};}catch(_0x2341c8){const _0x3086b2=_0xd4fb60[_0x1a04c6(0xda)](_0x50af49);_0xd4fb60['CgTRA'](logError,_0x2341c8,{'event':_0xd4fb60['FCGsD'],'query':_0x43a6b3[_0x1a04c6(0xb9)](0x0,0x1f4),'paramCount':_0x129de9['length'],'durationMs':_0x3086b2,'code':_0x2341c8['errorNum'],'dbType':_0xd4fb60['LClZr']},'Oracle\x20SQL\x20Error:\x20'+_0x2341c8['message']);throw _0x2341c8;}finally{if(_0x1db851)try{await _0x1db851['close']();}catch(_0x39afb0){logError(_0x39afb0,{'event':_0xd4fb60['FZewH']},'Error\x20closing\x20Oracle\x20connection:\x20'+_0x39afb0['message']);}}}async[a0_0x4b192a(0xe9)](_0xd7a778){const _0x5d791a=a0_0x4b192a,_0x5b3d4a={'XPmoM':function(_0x5adf4c){return _0x5adf4c();},'dhuLN':function(_0x1b7d4d,_0x2fbf12,_0x269cdd){return _0x1b7d4d(_0x2fbf12,_0x269cdd);},'NlwSl':_0x5d791a(0x8a),'CnlUq':function(_0x337bc1){return _0x337bc1();},'DaISN':'oracle','NOehj':function(_0xc4332f){return _0xc4332f();},'OGkcC':_0x5d791a(0xa1),'DigAn':function(_0x2b4e7e,_0x42beeb,_0x30c7a2,_0x5d2bfc){return _0x2b4e7e(_0x42beeb,_0x30c7a2,_0x5d2bfc);},'MUmlf':'rollback_error'};let _0x5096d8;const _0x171001=_0x5b3d4a[_0x5d791a(0xb2)](startQueryTimer);try{!this['pool']&&await this['initializePool']();_0x5096d8=await this[_0x5d791a(0xb6)][_0x5d791a(0xee)](),await ensureNlsReady(_0x5096d8),_0x5b3d4a[_0x5d791a(0xa0)](logTransaction,_0x5b3d4a['NlwSl'],_0xd7a778['length']);const _0x48bd44=[];for(const _0x5904eb of _0xd7a778){const _0x34336d=startQueryTimer(),_0x319f0c=await _0x5096d8['execute'](_0x5904eb['sql'],_0x5904eb['params']||[],{'autoCommit':![],'outFormat':oracledb[_0x5d791a(0xb3)]}),_0x4897e8=_0x5b3d4a[_0x5d791a(0xb5)](_0x34336d),_0x35c465=_0x319f0c[_0x5d791a(0xdf)]?_0x319f0c[_0x5d791a(0xdf)]['length']:_0x319f0c['rowsAffected'];logQuery(_0x5904eb['sql'],_0x5904eb[_0x5d791a(0xe5)]||[],{'duration':_0x4897e8,'rowsAffected':_0x35c465,'dbType':_0x5b3d4a['DaISN']}),_0x48bd44[_0x5d791a(0xc1)](_0x319f0c);}await _0x5096d8['commit']();const _0x435f92=_0x171001();return logTransaction('commit',_0xd7a778[_0x5d791a(0x97)]),logger['info']({'event':_0x5d791a(0xd0),'queryCount':_0xd7a778[_0x5d791a(0x97)],'totalDurationMs':_0x435f92,'dbType':'oracle'},_0x5d791a(0x93)+_0x435f92+'ms,\x20'+_0xd7a778['length']+'\x20queries)'),_0x48bd44;}catch(_0x20bac6){const _0x3e7e8f=_0x5b3d4a[_0x5d791a(0xaf)](_0x171001);logError(_0x20bac6,{'event':_0x5b3d4a['OGkcC'],'queryCount':_0xd7a778[_0x5d791a(0x97)],'totalDurationMs':_0x3e7e8f,'code':_0x20bac6['errorNum'],'dbType':_0x5d791a(0xa8)},'Oracle\x20transaction\x20failed:\x20'+_0x20bac6[_0x5d791a(0xec)]);if(_0x5096d8)try{await _0x5096d8[_0x5d791a(0xeb)](),_0x5b3d4a['dhuLN'](logTransaction,'rollback',_0xd7a778['length']);}catch(_0x52733e){_0x5b3d4a[_0x5d791a(0x9b)](logError,_0x52733e,{'event':_0x5b3d4a['MUmlf'],'dbType':_0x5b3d4a['DaISN']},_0x5d791a(0xc8)+_0x52733e['message']);}throw _0x20bac6;}finally{if(_0x5096d8)try{await _0x5096d8[_0x5d791a(0xb0)]();}catch(_0x4e4b2a){logError(_0x4e4b2a,{'event':'oracle_transaction_connection_close_error'},_0x5d791a(0xa6)+_0x4e4b2a['message']);}}}async['closePool'](){const _0x49f052=a0_0x4b192a,_0x13e1df={'CoHfy':'oracle_pool_closing','jfSRV':'Closing\x20Oracle\x20connection\x20pool...','LsHVm':_0x49f052(0xa9),'nPEVK':function(_0x4b660a,_0x3ecac4,_0x1fe6e1,_0x4a0cb8){return _0x4b660a(_0x3ecac4,_0x1fe6e1,_0x4a0cb8);},'vNFij':'oracle_pool_close_error'};try{this[_0x49f052(0xb6)]&&(logger[_0x49f052(0xe1)]({'event':_0x13e1df['CoHfy']},_0x13e1df[_0x49f052(0x8b)]),await this[_0x49f052(0xb6)][_0x49f052(0xb0)](0xa),this['pool']=null,logger[_0x49f052(0xe1)]({'event':_0x13e1df['LsHVm']},'Oracle\x20connection\x20pool\x20closed'));}catch(_0x4b6c1c){_0x13e1df[_0x49f052(0xde)](logError,_0x4b6c1c,{'event':_0x13e1df['vNFij']},_0x49f052(0xbd)+_0x4b6c1c['message']);throw _0x4b6c1c;}}[a0_0x4b192a(0xe7)](){const _0x56744a=a0_0x4b192a,_0x445f66={'Douou':'Pool\x20not\x20initialized','phYaO':_0x56744a(0xb7)};if(!this['pool'])return{'status':_0x445f66['Douou']};return{'connectionsInUse':this['pool']['connectionsInUse'],'connectionsOpen':this[_0x56744a(0xb6)]['connectionsOpen'],'poolAlias':this[_0x56744a(0xb6)]['poolAlias'],'poolMin':this[_0x56744a(0xb6)][_0x56744a(0x99)],'poolMax':this['pool']['poolMax'],'poolIncrement':this[_0x56744a(0xb6)]['poolIncrement'],'poolTimeout':this[_0x56744a(0xb6)][_0x56744a(0xdd)],'status':_0x445f66[_0x56744a(0x96)]};}}const oracleDb=new OracleDatabase();process['on'](a0_0x4b192a(0xab),async()=>{const _0x2936bb=a0_0x4b192a,_0x3f5de1={'vsXat':'SIGINT','Ajzgt':'oracle_shutdown_error'};logger[_0x2936bb(0xe1)]({'event':_0x2936bb(0xe4),'signal':_0x3f5de1[_0x2936bb(0xc3)]},_0x2936bb(0x92));try{await oracleDb[_0x2936bb(0x9a)](),process['exit'](0x0);}catch(_0x4cfc86){logError(_0x4cfc86,{'event':_0x3f5de1[_0x2936bb(0xcc)],'signal':_0x3f5de1[_0x2936bb(0xc3)]},_0x2936bb(0x94)+_0x4cfc86['message']),process['exit'](0x1);}}),process['on']('SIGTERM',async()=>{const _0x4a974e=a0_0x4b192a,_0x3ab141={'omxxW':'oracle_shutdown','yRZQF':_0x4a974e(0xaa),'obsTB':_0x4a974e(0xc5)};logger[_0x4a974e(0xe1)]({'event':_0x3ab141[_0x4a974e(0xf1)],'signal':_0x3ab141['yRZQF']},_0x3ab141['obsTB']);try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0xca826){logError(_0xca826,{'event':'oracle_shutdown_error','signal':_0x3ab141[_0x4a974e(0xac)]},_0x4a974e(0x94)+_0xca826[_0x4a974e(0xec)]),process[_0x4a974e(0xf2)](0x1);}}),module[a0_0x4b192a(0xea)]=oracleDb;
1
+ const a0_0x3aa27e=a0_0x5023;(function(_0x20838b,_0x4f3c86){const _0x20bf8e=a0_0x5023,_0x19abb4=_0x20838b();while(!![]){try{const _0x19bfc5=parseInt(_0x20bf8e(0xa0))/0x1*(parseInt(_0x20bf8e(0xe5))/0x2)+parseInt(_0x20bf8e(0xa2))/0x3+parseInt(_0x20bf8e(0xa9))/0x4+-parseInt(_0x20bf8e(0xbd))/0x5+-parseInt(_0x20bf8e(0xaf))/0x6*(parseInt(_0x20bf8e(0x9a))/0x7)+-parseInt(_0x20bf8e(0xbf))/0x8+parseInt(_0x20bf8e(0x9c))/0x9*(-parseInt(_0x20bf8e(0xdf))/0xa);if(_0x19bfc5===_0x4f3c86)break;else _0x19abb4['push'](_0x19abb4['shift']());}catch(_0x302dbf){_0x19abb4['push'](_0x19abb4['shift']());}}}(a0_0x1cfe,0x38e59));const oracledb=require(a0_0x3aa27e(0xc9)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');oracledb[a0_0x3aa27e(0xdb)]=[oracledb['CLOB'],oracledb['NCLOB']],oracledb[a0_0x3aa27e(0xc6)]=[oracledb[a0_0x3aa27e(0x8f)]];function a0_0x5023(_0x3588ec,_0x3c21d1){_0x3588ec=_0x3588ec-0x8b;const _0x1cfe21=a0_0x1cfe();let _0x50238=_0x1cfe21[_0x3588ec];if(a0_0x5023['dijNTJ']===undefined){var _0x37612a=function(_0x129616){const _0x4e31ac='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x24d7a6='',_0x3021e2='';for(let _0x4b17db=0x0,_0x236d78,_0x210dc7,_0x939023=0x0;_0x210dc7=_0x129616['charAt'](_0x939023++);~_0x210dc7&&(_0x236d78=_0x4b17db%0x4?_0x236d78*0x40+_0x210dc7:_0x210dc7,_0x4b17db++%0x4)?_0x24d7a6+=String['fromCharCode'](0xff&_0x236d78>>(-0x2*_0x4b17db&0x6)):0x0){_0x210dc7=_0x4e31ac['indexOf'](_0x210dc7);}for(let _0x14f12c=0x0,_0x59e059=_0x24d7a6['length'];_0x14f12c<_0x59e059;_0x14f12c++){_0x3021e2+='%'+('00'+_0x24d7a6['charCodeAt'](_0x14f12c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3021e2);};a0_0x5023['rIMQVO']=_0x37612a,a0_0x5023['hjCJBt']={},a0_0x5023['dijNTJ']=!![];}const _0x36d2d1=_0x1cfe21[0x0],_0x38e152=_0x3588ec+_0x36d2d1,_0x3d9c17=a0_0x5023['hjCJBt'][_0x38e152];return!_0x3d9c17?(_0x50238=a0_0x5023['rIMQVO'](_0x50238),a0_0x5023['hjCJBt'][_0x38e152]=_0x50238):_0x50238=_0x3d9c17,_0x50238;}async function ensureNlsReady(_0x2fb07d){const _0x43cec6=a0_0x3aa27e,_0x427152=_0x43cec6(0xe0)['split']('|');let _0x21d277=0x0;while(!![]){switch(_0x427152[_0x21d277++]){case'0':_0x2fb07d[_0x43cec6(0xda)]=!![];continue;case'1':if(_0x2fb07d[_0x43cec6(0xda)])return;continue;case'2':await _0x2fb07d[_0x43cec6(0xae)]('ALTER\x20SESSION\x20SET\x20NLS_DATE_FORMAT\x20=\x20\x27YYYY-MM-DD\x27');continue;case'3':await _0x2fb07d[_0x43cec6(0xae)](_0x43cec6(0x94));continue;case'4':await _0x2fb07d['execute']('ALTER\x20SESSION\x20SET\x20NLS_TIMESTAMP_FORMAT\x20=\x20\x27YYYY-MM-DD\x22T\x22HH24:MI:SS.FF3\x27');continue;}break;}}class OracleDatabase{constructor(){const _0x230fd5=a0_0x3aa27e,_0x485306={'KwtJq':function(_0x38be71,_0xb08b0f){return _0x38be71(_0xb08b0f);},'zkZUg':_0x230fd5(0x93),'DlSrO':_0x230fd5(0xe4),'WeaEU':'oracle'};this[_0x230fd5(0xbe)]=null,this[_0x230fd5(0xc7)]={'user':process[_0x230fd5(0x97)][_0x230fd5(0xce)]||'hr','password':process['env'][_0x230fd5(0xb4)]||'hr','connectString':this['buildConnectionString'](),'poolMin':_0x485306[_0x230fd5(0xc5)](parseInt,process[_0x230fd5(0x97)][_0x230fd5(0xcf)])||0x2,'poolMax':parseInt(process[_0x230fd5(0x97)][_0x230fd5(0xc1)])||0xa,'poolIncrement':_0x485306[_0x230fd5(0xc5)](parseInt,process[_0x230fd5(0x97)][_0x230fd5(0xe6)])||0x1,'poolTimeout':parseInt(process[_0x230fd5(0x97)]['DB_POOL_TIMEOUT'])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb['CLOB'],oracledb['NCLOB']],'fetchAsBuffer':[oracledb['BLOB']]},logDatabaseConfig({'host':process[_0x230fd5(0x97)][_0x230fd5(0xd8)]||_0x485306['zkZUg'],'port':process[_0x230fd5(0x97)][_0x230fd5(0xcd)]||_0x485306[_0x230fd5(0xb8)],'database':process['env'][_0x230fd5(0xac)]||'XE','type':_0x485306['WeaEU'],'user':this[_0x230fd5(0xc7)]['user'],'poolMin':this[_0x230fd5(0xc7)][_0x230fd5(0xd2)],'poolMax':this[_0x230fd5(0xc7)][_0x230fd5(0x8c)]});}[a0_0x3aa27e(0x9d)](){const _0x448343=a0_0x3aa27e,_0x3d8538={'dXLlo':'1521'},_0x2bcaf2=process[_0x448343(0x97)]['DB_HOST']||'localhost',_0x66dfb3=process[_0x448343(0x97)]['DB_PORT']||_0x3d8538['dXLlo'],_0x3e8752=process[_0x448343(0x97)][_0x448343(0xac)]||'XE',_0xe7d301='//'+_0x2bcaf2+':'+_0x66dfb3+'/'+_0x3e8752;return logger['debug']({'event':_0x448343(0xd0),'connectionString':_0xe7d301},'Oracle\x20Connection\x20String:\x20'+_0xe7d301),_0xe7d301;}async['initializePool'](){const _0x12b71b=a0_0x3aa27e,_0x1f6a0e={'TBDYb':'Oracle\x20connection\x20pool\x20sudah\x20ada','tqsSl':'Oracle\x20connection\x20pool\x20created\x20successfully','Knpya':function(_0xaaede6,_0xd7dfab,_0x194372,_0x74896b){return _0xaaede6(_0xd7dfab,_0x194372,_0x74896b);}};try{if(this['pool']){logger['debug']({'event':_0x12b71b(0xbb)},_0x1f6a0e['TBDYb']);return;}logger[_0x12b71b(0xd5)]({'event':'oracle_pool_creating'},_0x12b71b(0xb9)),this[_0x12b71b(0xbe)]=await oracledb[_0x12b71b(0xb2)](this[_0x12b71b(0xc7)]),logger['info']({'event':'oracle_pool_created'},_0x1f6a0e[_0x12b71b(0x95)]),await this[_0x12b71b(0xde)]();}catch(_0x2b9a85){_0x1f6a0e['Knpya'](logError,_0x2b9a85,{'event':_0x12b71b(0xbc)},_0x12b71b(0xe3)+_0x2b9a85[_0x12b71b(0xd4)]);throw _0x2b9a85;}}async[a0_0x3aa27e(0xde)](){const _0x1845ef=a0_0x3aa27e,_0xdaa4ba={'XOMqu':'Testing\x20Oracle\x20database\x20connection...','BxATN':function(_0x91679f,_0x4d513d){return _0x91679f(_0x4d513d);},'bnRVW':'SELECT\x20SYSDATE\x20as\x20current_date,\x20USER\x20as\x20current_user\x20FROM\x20DUAL','iECSr':function(_0x5db195,_0x5ea11e,_0x3df40a,_0x2a3864){return _0x5db195(_0x5ea11e,_0x3df40a,_0x2a3864);}};let _0x424972;try{logger[_0x1845ef(0x91)]({'event':_0x1845ef(0xcb)},_0xdaa4ba[_0x1845ef(0xcc)]),_0x424972=await this[_0x1845ef(0xbe)][_0x1845ef(0xdc)](),await _0xdaa4ba['BxATN'](ensureNlsReady,_0x424972);const _0x3c7fca=await _0x424972['execute'](_0xdaa4ba['bnRVW']);logger[_0x1845ef(0xd5)]({'event':_0x1845ef(0x8d),'currentDate':_0x3c7fca[_0x1845ef(0x96)][0x0][0x0],'currentUser':_0x3c7fca[_0x1845ef(0x96)][0x0][0x1]},_0x1845ef(0xca)+_0x3c7fca[_0x1845ef(0x96)][0x0][0x1]);}catch(_0x3e48eb){logError(_0x3e48eb,{'event':'oracle_connection_test_failed'},_0x1845ef(0xc0)+_0x3e48eb['message']);throw _0x3e48eb;}finally{if(_0x424972)try{await _0x424972['close']();}catch(_0x2f76ff){_0xdaa4ba[_0x1845ef(0xd3)](logError,_0x2f76ff,{'event':'oracle_test_connection_close_error'},'Error\x20closing\x20test\x20connection:\x20'+_0x2f76ff['message']);}}}async['executeQuery'](_0x1b34e1,_0x28106b=[],_0x172904={}){const _0x8b9748=a0_0x3aa27e,_0x173698={'lEujg':function(_0x4d691a,_0x2ad6b6){return _0x4d691a(_0x2ad6b6);},'WrFYG':'sql_error'};let _0x1a2dd2;const _0x1978a6=startQueryTimer();try{!this[_0x8b9748(0xbe)]&&await this['initializePool']();_0x1a2dd2=await this[_0x8b9748(0xbe)]['getConnection'](),await _0x173698[_0x8b9748(0xb3)](ensureNlsReady,_0x1a2dd2);const _0x50a8de={'outFormat':oracledb['OUT_FORMAT_OBJECT'],'autoCommit':_0x172904['autoCommit']!==undefined?_0x172904[_0x8b9748(0xe1)]:!![],..._0x172904},_0x4c3b84=await _0x1a2dd2[_0x8b9748(0xae)](_0x1b34e1,_0x28106b,_0x50a8de),_0x307e39=_0x1978a6(),_0x3f76f7=_0x4c3b84['rows']?_0x4c3b84[_0x8b9748(0x96)][_0x8b9748(0x90)]:_0x4c3b84[_0x8b9748(0xd6)];return logQuery(_0x1b34e1,_0x28106b,{'duration':_0x307e39,'rowsAffected':_0x3f76f7,'dbType':'oracle'}),_0x4c3b84['rows']?_0x4c3b84[_0x8b9748(0x96)]:{'rowsAffected':_0x4c3b84[_0x8b9748(0xd6)],'lastRowid':_0x4c3b84['lastRowid']};}catch(_0x120e74){const _0x1e2606=_0x1978a6();logError(_0x120e74,{'event':_0x173698['WrFYG'],'query':_0x1b34e1['substring'](0x0,0x1f4),'paramCount':_0x28106b[_0x8b9748(0x90)],'durationMs':_0x1e2606,'code':_0x120e74['errorNum'],'dbType':_0x8b9748(0x98)},_0x8b9748(0xe7)+_0x120e74[_0x8b9748(0xd4)]);throw _0x120e74;}finally{if(_0x1a2dd2)try{await _0x1a2dd2['close']();}catch(_0x157ad4){logError(_0x157ad4,{'event':_0x8b9748(0xc8)},'Error\x20closing\x20Oracle\x20connection:\x20'+_0x157ad4['message']);}}}async[a0_0x3aa27e(0xb5)](_0x2800af){const _0x55d93b=a0_0x3aa27e,_0x4ee104={'mAvxv':function(_0x284cf7,_0x3e92f3){return _0x284cf7(_0x3e92f3);},'oAPlR':function(_0x43a421,_0x3759a8,_0x2aaac2){return _0x43a421(_0x3759a8,_0x2aaac2);},'xyfza':function(_0x4fd396){return _0x4fd396();},'dgfFn':function(_0x138c98,_0xc420f8,_0x35e2e5,_0x35b3ea){return _0x138c98(_0xc420f8,_0x35e2e5,_0x35b3ea);},'grnfi':_0x55d93b(0x98),'qmoVd':function(_0x4c5199,_0x44c9f7,_0x12fb2e){return _0x4c5199(_0x44c9f7,_0x12fb2e);},'pRphb':_0x55d93b(0xa3)};let _0xdafb75;const _0x722804=startQueryTimer();try{!this[_0x55d93b(0xbe)]&&await this['initializePool']();_0xdafb75=await this[_0x55d93b(0xbe)][_0x55d93b(0xdc)](),await _0x4ee104[_0x55d93b(0x9f)](ensureNlsReady,_0xdafb75),_0x4ee104[_0x55d93b(0xb1)](logTransaction,_0x55d93b(0xa4),_0x2800af[_0x55d93b(0x90)]);const _0x13feac=[];for(const _0x18d7be of _0x2800af){const _0x460fd6=_0x4ee104['xyfza'](startQueryTimer),_0x58386b=await _0xdafb75['execute'](_0x18d7be[_0x55d93b(0xe2)],_0x18d7be[_0x55d93b(0x9b)]||[],{'autoCommit':![],'outFormat':oracledb['OUT_FORMAT_OBJECT']}),_0x30f140=_0x460fd6(),_0xd3842=_0x58386b['rows']?_0x58386b[_0x55d93b(0x96)]['length']:_0x58386b[_0x55d93b(0xd6)];_0x4ee104['dgfFn'](logQuery,_0x18d7be['sql'],_0x18d7be['params']||[],{'duration':_0x30f140,'rowsAffected':_0xd3842,'dbType':'oracle'}),_0x13feac['push'](_0x58386b);}await _0xdafb75['commit']();const _0x4cea2c=_0x4ee104['xyfza'](_0x722804);return _0x4ee104['oAPlR'](logTransaction,_0x55d93b(0xc3),_0x2800af[_0x55d93b(0x90)]),logger['info']({'event':'transaction_complete','queryCount':_0x2800af['length'],'totalDurationMs':_0x4cea2c,'dbType':'oracle'},_0x55d93b(0xaa)+_0x4cea2c+'ms,\x20'+_0x2800af['length']+'\x20queries)'),_0x13feac;}catch(_0x54253d){const _0xa182ce=_0x722804();_0x4ee104[_0x55d93b(0xb7)](logError,_0x54253d,{'event':'transaction_error','queryCount':_0x2800af['length'],'totalDurationMs':_0xa182ce,'code':_0x54253d['errorNum'],'dbType':_0x4ee104['grnfi']},_0x55d93b(0xa8)+_0x54253d[_0x55d93b(0xd4)]);if(_0xdafb75)try{await _0xdafb75['rollback'](),_0x4ee104[_0x55d93b(0xd9)](logTransaction,_0x55d93b(0xdd),_0x2800af['length']);}catch(_0x45ecbc){logError(_0x45ecbc,{'event':_0x4ee104['pRphb'],'dbType':'oracle'},'Error\x20rolling\x20back\x20Oracle\x20transaction:\x20'+_0x45ecbc['message']);}throw _0x54253d;}finally{if(_0xdafb75)try{await _0xdafb75['close']();}catch(_0x3ed425){_0x4ee104['dgfFn'](logError,_0x3ed425,{'event':'oracle_transaction_connection_close_error'},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x3ed425['message']);}}}async['closePool'](){const _0x3bb57f=a0_0x3aa27e,_0x234b1d={'inFoZ':_0x3bb57f(0xa6),'Ifoxd':'Closing\x20Oracle\x20connection\x20pool...','fOpMv':'oracle_pool_closed'};try{this[_0x3bb57f(0xbe)]&&(logger[_0x3bb57f(0xd5)]({'event':_0x234b1d[_0x3bb57f(0xad)]},_0x234b1d['Ifoxd']),await this[_0x3bb57f(0xbe)][_0x3bb57f(0x8b)](0xa),this['pool']=null,logger[_0x3bb57f(0xd5)]({'event':_0x234b1d[_0x3bb57f(0xe8)]},_0x3bb57f(0x92)));}catch(_0x29da7d){logError(_0x29da7d,{'event':'oracle_pool_close_error'},'Error\x20closing\x20Oracle\x20connection\x20pool:\x20'+_0x29da7d[_0x3bb57f(0xd4)]);throw _0x29da7d;}}[a0_0x3aa27e(0xa7)](){const _0x2e9afa=a0_0x3aa27e,_0x5d8636={'FnxkN':_0x2e9afa(0xab)};if(!this['pool'])return{'status':_0x5d8636[_0x2e9afa(0xb6)]};return{'connectionsInUse':this['pool'][_0x2e9afa(0x99)],'connectionsOpen':this['pool']['connectionsOpen'],'poolAlias':this['pool']['poolAlias'],'poolMin':this['pool']['poolMin'],'poolMax':this['pool'][_0x2e9afa(0x8c)],'poolIncrement':this['pool'][_0x2e9afa(0xa5)],'poolTimeout':this[_0x2e9afa(0xbe)][_0x2e9afa(0xd1)],'status':'Active'};}}const oracleDb=new OracleDatabase();function a0_0x1cfe(){const _0x1bc97b=['zxHLy3v0zvrYyw5Zywn0Aw9U','rM54A04','zgDMrM4','rgXtCK8','q3jLyxrPBMCGt3jHy2XLignVBM5Ly3rPB24GCg9VBc4UlG','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBIbWB29SlI4U','B3jHy2XLx3bVB2XFzxHPC3rZ','B3jHy2XLx3bVB2XFzxjYB3i','mJu5ntm1rgDsyxjr','Cg9VBa','mtqWndyZmLbnyuHfva','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','rejFue9ptf9nqvG','B3jHy2XLx3nODxrKB3DU','y29TBwL0','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','s3D0sNe','zMv0y2HbC0j1zMzLCG','y29UzMLN','B3jHy2XLx2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','B3jHy2XLzgi','t3jHy2XLignVBM5Ly3rPB24GDgvZDcbIzxjOyxnPBcaTifvZzxi6ia','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','we9nCxu','rejFue9sva','rejFvvnfuG','rejFue9ptf9nsu4','B3jHy2XLx2nVBM5Ly3rPB25FC3rYAw5N','Cg9VBfrPBwvVDxq','Cg9VBe1PBG','Auvdu3i','BwvZC2fNzq','Aw5MBW','CM93C0fMzMvJDgvK','B3jHy2XLx3nODxrKB3DUx2vYCM9Y','rejFse9tva','Cw1VvMq','x25SC1jLywr5','zMv0y2HbC1n0CMLUzW','z2v0q29UBMvJDgLVBG','CM9SBgjHy2S','DgvZDenVBM5Ly3rPB24','mZG3oduZmhrtv3b6sG','mxWYFdr8m3WW','yxv0B0nVBw1PDa','C3fS','rxjYB3iGC2fHDcbTzw1IDwf0ie9YywnSzsbJB25Uzwn0Aw9UihbVB2W6ia','mtuYmq','odm2mZi4qNjoAuLj','rejFue9ptf9jtKnsru1ftLq','t3jHy2XLifnrtcbfCNjVCJOG','zK9Wtxy','y2XVC2u','Cg9VBe1HEa','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDwnJzxnZ','rLjzqMm','qKXpqG','BgvUz3rO','zgvIDwC','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJBg9Zzwq','Bg9JywXOB3n0','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9uwL9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZvfPioLrAtsC','DhfZu2W','CM93CW','zw52','B3jHy2XL','y29UBMvJDgLVBNnjBLvZzq','mJCWotm1vxbyt0jU','CgfYyw1Z','oxjMsvzRtq','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','zxHPDa','Buf2Ehy','murytfzUsW','u0Lhsu5u','mtaXody2mLjtDuDwuW','CM9SBgjHy2TFzxjYB3i','C3rHCNq','Cg9VBeLUy3jLBwvUDa','B3jHy2XLx3bVB2XFy2XVC2LUzW','z2v0ug9VBfn0yxrPC3rPy3m','t3jHy2XLihrYyw5Zywn0Aw9UigzHAwXLzdOG','otGXotyWs2fnEK1n','t3jHy2XLihrYyw5Zywn0Aw9UignVBw1PDhrLzcaO','ug9VBcbUB3qGAw5PDgLHBgL6zwq','rejFtKfnrq','Aw5gB1O','zxHLy3v0zq','mJrRD0v4zNO','u0Lhvevstq','B0fqBfi','y3jLyxrLug9VBa','Bev1AMC','rejFueftu1DpuKq'];a0_0x1cfe=function(){return _0x1bc97b;};return a0_0x1cfe();}process['on'](a0_0x3aa27e(0xa1),async()=>{const _0x21e35b=a0_0x3aa27e,_0x120773={'aEORD':'oracle_shutdown','Vtgde':'Received\x20SIGINT,\x20closing\x20Oracle\x20connection\x20pool...','SNRSS':_0x21e35b(0xa1)};logger[_0x21e35b(0xd5)]({'event':_0x120773['aEORD'],'signal':_0x21e35b(0xa1)},_0x120773['Vtgde']);try{await oracleDb['closePool'](),process[_0x21e35b(0x9e)](0x0);}catch(_0x5b6f4c){logError(_0x5b6f4c,{'event':_0x21e35b(0xd7),'signal':_0x120773['SNRSS']},_0x21e35b(0xc4)+_0x5b6f4c['message']),process['exit'](0x1);}}),process['on'](a0_0x3aa27e(0xb0),async()=>{const _0x154191=a0_0x3aa27e,_0x82d3ec={'FRYBc':_0x154191(0xc2),'YmZfj':'SIGTERM'};logger[_0x154191(0xd5)]({'event':_0x82d3ec[_0x154191(0x8e)],'signal':_0x154191(0xb0)},_0x154191(0xba));try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0x7027ff){logError(_0x7027ff,{'event':'oracle_shutdown_error','signal':_0x82d3ec['YmZfj']},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x7027ff[_0x154191(0xd4)]),process[_0x154191(0x9e)](0x1);}}),module['exports']=oracleDb;
@@ -1 +1 @@
1
- const a0_0x3b19fc=a0_0x2fa6;(function(_0x230dac,_0x7b670e){const _0x31bcfb=a0_0x2fa6,_0x4d6d02=_0x230dac();while(!![]){try{const _0x404110=parseInt(_0x31bcfb(0x195))/0x1*(parseInt(_0x31bcfb(0x1c7))/0x2)+-parseInt(_0x31bcfb(0x182))/0x3+parseInt(_0x31bcfb(0x1a4))/0x4+parseInt(_0x31bcfb(0x19a))/0x5*(parseInt(_0x31bcfb(0x1c4))/0x6)+parseInt(_0x31bcfb(0x1c5))/0x7+parseInt(_0x31bcfb(0x1ab))/0x8+-parseInt(_0x31bcfb(0x1a2))/0x9*(parseInt(_0x31bcfb(0x1bb))/0xa);if(_0x404110===_0x7b670e)break;else _0x4d6d02['push'](_0x4d6d02['shift']());}catch(_0x37b863){_0x4d6d02['push'](_0x4d6d02['shift']());}}}(a0_0x4a60,0x786ca));const Database=require('better-sqlite3'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');function a0_0x4a60(){const _0x8dc72=['y2HLy2TdB25Uzwn0Aw9U','u1fmAxrLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','C3fSAxrLx2nVBM5Ly3rPB25Fy2HLy2TFzxjYB3i','y29TBwL0','y2HHBMDLCW','zgvIDwC','u0vmrunuideGyxmGDgvZDf9JB25Uzwn0Aw9U','zxHWB3j0CW','mJi3otbjAvPyuMm','Aw5MBW','BgjuEuG','zgjqyxrO','BgfZDeLUC2vYDfjVD2LK','ChjLCgfYzq','zw52','CM9SBgjHy2S','u0vmrunuide','mZq0ntHREgD4v1e','nJeYodaWm2L5uLjdua','CNvU','mJmXnZHHAvHwtKy','y2XVC2vqB29S','mJuWnJiZnNvZu2XTzG','C3fSAxrLx2nSB3nPBMC','C3bSAxq','C3fSAxrLx2nSB3nLza','tKviCg0','t2jxD3O','ywXS','ChvZAa','DgvZDenVBM5Ly3rPB24','lI9KyxrHl3jLC3rMB3jNzs5KyG','BxmSia','C3fS','qMDes2y','C3fSAxrLx3nODxrKB3DU','DhjHBNnHy3rPB25FzxjYB3i','s21HAfG','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','DhjHBNnHy3rPB25Fy29TCgXLDgu','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','nZnNrMDuy2u','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2uUlI4','DhjHBNnHy3rPB24','z2v0','q2XVC2LUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','mJvcq1zdwhK','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24Gy2XVC2vK','u0Lhsu5u','C3fSAxrL','BwvZC2fNzq','DMnbv0m','C3fSAxrLx2nSB3nLx2vYCM9Y','AK16rNO','nJCXnfPrs1PbDa','BefZEeq','mJyWmZuXmNnKD094tW','uwDNsNK','DgvZDa','u0Lhvevstq','zM9YzwLNBL9RzxLZid0Gt04','zxHPDa','BMTJvwu','ntaYmJi4mgjesfbmBW','Aw5PDgLHBgL6zurHDgfIyxnL','BgvUz3rO','ChjHz21H','DeHuBhu','yNvZEvrPBwvVDxq','vuneBvK','t2rTEgC'];a0_0x4a60=function(){return _0x8dc72;};return a0_0x4a60();}class SqliteDatabase{constructor(){const _0x540446=a0_0x2fa6,_0x1aae84={'UCDmY':_0x540446(0x19d)};this['db']=null,this[_0x540446(0x1be)]=process[_0x540446(0x1c1)]['DB_NAME']||_0x540446(0x18b),this['busyTimeout']=parseInt(process['env']['DB_BUSY_TIMEOUT']||'5000'),logDatabaseConfig({'database':this['dbPath'],'type':_0x1aae84[_0x540446(0x1b1)],'busyTimeout':this[_0x540446(0x1b0)]});}[a0_0x3b19fc(0x1ac)](){const _0x4f8e81=a0_0x3b19fc,_0x2fea00={'lbTyH':'0|4|1|3|2','fUNDP':'sqlite_db_exists','nYEeI':function(_0x473f2c,_0xc0b1e2,_0x31341d,_0x13803e){return _0x473f2c(_0xc0b1e2,_0x31341d,_0x13803e);},'nkcUe':'sqlite_init_error'};try{const _0x345f2e=_0x2fea00[_0x4f8e81(0x1bd)][_0x4f8e81(0x184)]('|');let _0x2f5ea9=0x0;while(!![]){switch(_0x345f2e[_0x2f5ea9++]){case'0':if(this['db']){logger[_0x4f8e81(0x1b8)]({'event':_0x2fea00['fUNDP']},'SQLite\x20database\x20connection\x20sudah\x20ada');return;}continue;case'1':this['db'][_0x4f8e81(0x1ae)]('journal_mode\x20=\x20WAL');continue;case'2':this['testConnection']();continue;case'3':this['db']['pragma'](_0x4f8e81(0x1a8));continue;case'4':this['db']=new Database(this[_0x4f8e81(0x1be)],{'timeout':this[_0x4f8e81(0x1b0)]});continue;}break;}}catch(_0x1718ff){_0x2fea00['nYEeI'](logError,_0x1718ff,{'event':_0x2fea00[_0x4f8e81(0x1aa)]},'Error\x20saat\x20membuka\x20SQLite\x20database:\x20'+_0x1718ff['message']);throw _0x1718ff;}}[a0_0x3b19fc(0x18a)](){const _0x5f4f61=a0_0x3b19fc,_0x3b85ab={'KltfA':_0x5f4f61(0x192),'SJwkY':_0x5f4f61(0x1b9),'tYuTt':'sqlite_connection_test_failed'};try{logger['debug']({'event':_0x3b85ab['KltfA']},'Testing\x20SQLite\x20database\x20connection...'),this['db'][_0x5f4f61(0x1c0)](_0x3b85ab['SJwkY'])[_0x5f4f61(0x198)]();}catch(_0x2dd5f2){logError(_0x2dd5f2,{'event':_0x3b85ab['tYuTt']},_0x5f4f61(0x1b4)+_0x2dd5f2['message']);throw _0x2dd5f2;}}async['executeQuery'](_0x4410f8,_0x1bd352=[]){const _0x520b06=a0_0x3b19fc,_0x5e9179={'lAsxD':function(_0x31d673){return _0x31d673();},'Lsxoj':function(_0xcf84a8,_0x37be15,_0xad07ed,_0x5f55ad){return _0xcf84a8(_0x37be15,_0xad07ed,_0x5f55ad);},'jMzFz':'sqlite'},_0x3ee22b=_0x5e9179[_0x520b06(0x1a3)](startQueryTimer);try{!this['db']&&this['initializeDatabase']();const _0x4a3d0f=this['db']['prepare'](_0x4410f8),_0x214112=/\bRETURNING\b/i['test'](_0x4410f8),_0x14d306=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x520b06(0x1a6)](_0x4410f8);let _0x1db85b,_0x1cbebf;if(_0x14d306||_0x214112){const _0x3ec654=_0x4a3d0f[_0x520b06(0x188)](..._0x1bd352),_0x6b1f34=_0x5e9179[_0x520b06(0x1a3)](_0x3ee22b);return _0x5e9179['Lsxoj'](logQuery,_0x4410f8,_0x1bd352,{'duration':_0x6b1f34,'rowsAffected':_0x3ec654[_0x520b06(0x1ad)],'dbType':_0x520b06(0x19d)}),_0x3ec654;}else{const _0x4da431=_0x4a3d0f[_0x520b06(0x1c6)](..._0x1bd352),_0x5ebce8=_0x5e9179['lAsxD'](_0x3ee22b);return _0x1db85b={'rowsAffected':_0x4da431[_0x520b06(0x1b7)],'insertId':_0x4da431[_0x520b06(0x1bf)]},logQuery(_0x4410f8,_0x1bd352,{'duration':_0x5ebce8,'rowsAffected':_0x4da431['changes'],'dbType':_0x5e9179[_0x520b06(0x1a1)]}),_0x1db85b;}}catch(_0x32e70a){const _0x33f59a=_0x3ee22b();logError(_0x32e70a,{'event':'sql_error','query':_0x4410f8['substring'](0x0,0x1f4),'paramCount':_0x1bd352['length'],'durationMs':_0x33f59a,'code':_0x32e70a['code'],'dbType':'sqlite'},'SQLite\x20SQL\x20Error:\x20'+_0x32e70a[_0x520b06(0x19e)]);throw _0x32e70a;}}async['executeTransaction'](_0xaf167f){const _0x3e77a5=a0_0x3b19fc,_0x359b07={'ObWwz':function(_0x34502b,_0x3c8a99){return _0x34502b||_0x3c8a99;},'tHTlu':function(_0x4dd2db,_0x1d00d2,_0x4f47e9,_0x127ebb){return _0x4dd2db(_0x1d00d2,_0x4f47e9,_0x127ebb);},'KmahX':function(_0x1bf594){return _0x1bf594();},'BgDKf':_0x3e77a5(0x19d),'QggJy':function(_0x2521b0){return _0x2521b0();},'qWsls':function(_0x455d45,_0x36baec,_0x23213a){return _0x455d45(_0x36baec,_0x23213a);},'vcAWC':function(_0x1e28ab,_0x5c7447,_0x2f556e,_0x3d6ebc){return _0x1e28ab(_0x5c7447,_0x2f556e,_0x3d6ebc);}},_0x58a8d0=startQueryTimer();try{!this['db']&&this['initializeDatabase']();logTransaction('start',_0xaf167f[_0x3e77a5(0x1ad)]);const _0xbbae4a=this['db'][_0x3e77a5(0x197)](_0x24dc72=>{const _0x2fefc5=_0x3e77a5,_0x2d23d4=[];for(const _0x10c712 of _0x24dc72){const _0x269cc6=startQueryTimer(),_0x571074=_0x10c712['params']||[],_0x29116e=this['db']['prepare'](_0x10c712['sql']),_0x5d2731=/\bRETURNING\b/i['test'](_0x10c712['sql']),_0x4051bb=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x2fefc5(0x1a6)](_0x10c712[_0x2fefc5(0x18d)]);if(_0x359b07[_0x2fefc5(0x187)](_0x4051bb,_0x5d2731)){const _0x269847=_0x29116e['all'](..._0x571074),_0x3a24a8=_0x269cc6();_0x359b07[_0x2fefc5(0x1af)](logQuery,_0x10c712['sql'],_0x571074,{'duration':_0x3a24a8,'rowsAffected':_0x269847[_0x2fefc5(0x1ad)],'dbType':'sqlite'}),_0x2d23d4[_0x2fefc5(0x189)](_0x269847);}else{const _0x10c153=_0x29116e[_0x2fefc5(0x1c6)](..._0x571074),_0xa4f9e0=_0x359b07['KmahX'](_0x269cc6);_0x359b07['tHTlu'](logQuery,_0x10c712[_0x2fefc5(0x18d)],_0x571074,{'duration':_0xa4f9e0,'rowsAffected':_0x10c153['changes'],'dbType':_0x359b07['BgDKf']}),_0x2d23d4[_0x2fefc5(0x189)]({'rowsAffected':_0x10c153[_0x2fefc5(0x1b7)],'insertId':_0x10c153[_0x2fefc5(0x1bf)]});}}return _0x2d23d4;}),_0x30359e=_0xbbae4a(_0xaf167f),_0x22e15a=_0x359b07[_0x3e77a5(0x191)](_0x58a8d0);return logTransaction(_0x3e77a5(0x1b6),_0xaf167f['length']),logger['info']({'event':_0x3e77a5(0x193),'queryCount':_0xaf167f[_0x3e77a5(0x1ad)],'totalDurationMs':_0x22e15a,'dbType':_0x359b07[_0x3e77a5(0x18e)]},'Transaction\x20committed\x20('+_0x22e15a+_0x3e77a5(0x18c)+_0xaf167f[_0x3e77a5(0x1ad)]+'\x20queries)'),_0x30359e;}catch(_0x2d0c88){const _0x1d66e0=_0x359b07[_0x3e77a5(0x1a5)](_0x58a8d0);_0x359b07['qWsls'](logTransaction,_0x3e77a5(0x1c2),_0xaf167f[_0x3e77a5(0x1ad)]),_0x359b07[_0x3e77a5(0x19f)](logError,_0x2d0c88,{'event':_0x3e77a5(0x190),'queryCount':_0xaf167f[_0x3e77a5(0x1ad)],'totalDurationMs':_0x1d66e0,'code':_0x2d0c88['code'],'dbType':'sqlite'},'Transaction\x20failed:\x20'+_0x2d0c88['message']);throw _0x2d0c88;}}['getPool'](){const _0x40a7f8=a0_0x3b19fc;return!this['db']&&this[_0x40a7f8(0x1ac)](),this['db'];}[a0_0x3b19fc(0x181)](){const _0x5e59d4=a0_0x3b19fc,_0x2cf56c={'Odmxg':_0x5e59d4(0x185),'OyJQW':_0x5e59d4(0x19b),'bQquw':_0x5e59d4(0x1a0)};try{this['db']&&(logger['info']({'event':_0x5e59d4(0x183)},_0x5e59d4(0x199)),this['db']['close'](),this['db']=null,logger['info']({'event':_0x2cf56c[_0x5e59d4(0x1b2)]},_0x2cf56c['OyJQW']));}catch(_0xcd664c){logError(_0xcd664c,{'event':_0x2cf56c['bQquw']},'Error\x20closing\x20SQLite\x20database:\x20'+_0xcd664c[_0x5e59d4(0x19e)]);throw _0xcd664c;}}async[a0_0x3b19fc(0x1b3)](){const _0x46aca4=a0_0x3b19fc,_0x459a17={'NEHpm':_0x46aca4(0x1c3),'VzEMj':function(_0x7f370d,_0x37fc8c,_0x317a30,_0x5ca1f3){return _0x7f370d(_0x37fc8c,_0x317a30,_0x5ca1f3);},'qwdyn':_0x46aca4(0x1b5)};try{return!this['db']&&this['initializeDatabase'](),this['db']['prepare'](_0x459a17[_0x46aca4(0x186)])['get'](),!![];}catch(_0x5697d7){return _0x459a17['VzEMj'](logError,_0x5697d7,{'event':_0x459a17['qwdyn']},'Error\x20checking\x20SQLite\x20connection:\x20'+_0x5697d7['message']),![];}}}const sqliteDb=new SqliteDatabase();function a0_0x2fa6(_0xe77ea7,_0x340c66){_0xe77ea7=_0xe77ea7-0x181;const _0x4a607f=a0_0x4a60();let _0x2fa609=_0x4a607f[_0xe77ea7];if(a0_0x2fa6['VPjiti']===undefined){var _0x26bfa7=function(_0xabcc2f){const _0x23b07c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3bd4a2='',_0x30a3a0='';for(let _0x1b30d5=0x0,_0x290080,_0x45eac0,_0x42e0a1=0x0;_0x45eac0=_0xabcc2f['charAt'](_0x42e0a1++);~_0x45eac0&&(_0x290080=_0x1b30d5%0x4?_0x290080*0x40+_0x45eac0:_0x45eac0,_0x1b30d5++%0x4)?_0x3bd4a2+=String['fromCharCode'](0xff&_0x290080>>(-0x2*_0x1b30d5&0x6)):0x0){_0x45eac0=_0x23b07c['indexOf'](_0x45eac0);}for(let _0x24ecd3=0x0,_0x273c9f=_0x3bd4a2['length'];_0x24ecd3<_0x273c9f;_0x24ecd3++){_0x30a3a0+='%'+('00'+_0x3bd4a2['charCodeAt'](_0x24ecd3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x30a3a0);};a0_0x2fa6['jrISKf']=_0x26bfa7,a0_0x2fa6['znXzBF']={},a0_0x2fa6['VPjiti']=!![];}const _0x25dc08=_0x4a607f[0x0],_0x46dab2=_0xe77ea7+_0x25dc08,_0x14233a=a0_0x2fa6['znXzBF'][_0x46dab2];return!_0x14233a?(_0x2fa609=a0_0x2fa6['jrISKf'](_0x2fa609),a0_0x2fa6['znXzBF'][_0x46dab2]=_0x2fa609):_0x2fa609=_0x14233a,_0x2fa609;}process['on'](a0_0x3b19fc(0x19c),()=>{const _0x504ada=a0_0x3b19fc,_0x259299={'oTtpQ':_0x504ada(0x19c)};logger[_0x504ada(0x1bc)]({'event':'sqlite_shutdown','signal':_0x259299['oTtpQ']},'Received\x20SIGINT,\x20closing\x20SQLite\x20database...');try{sqliteDb[_0x504ada(0x181)](),process['exit'](0x0);}catch(_0x246e50){logError(_0x246e50,{'event':'sqlite_shutdown_error','signal':_0x504ada(0x19c)},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x246e50[_0x504ada(0x19e)]),process['exit'](0x1);}}),process['on'](a0_0x3b19fc(0x1a7),()=>{const _0x26acb4=a0_0x3b19fc,_0x2d54e6={'UxXSH':_0x26acb4(0x18f),'cfxgX':'SIGTERM'};logger[_0x26acb4(0x1bc)]({'event':_0x2d54e6['UxXSH'],'signal':_0x2d54e6['cfxgX']},_0x26acb4(0x196));try{sqliteDb['closePool'](),process[_0x26acb4(0x1a9)](0x0);}catch(_0x53d777){logError(_0x53d777,{'event':_0x26acb4(0x194),'signal':'SIGTERM'},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x53d777[_0x26acb4(0x19e)]),process['exit'](0x1);}}),module[a0_0x3b19fc(0x1ba)]=sqliteDb;
1
+ const a0_0x3f677e=a0_0x502d;(function(_0x5376b1,_0x1cf4a2){const _0x4f02a3=a0_0x502d,_0x148764=_0x5376b1();while(!![]){try{const _0x499217=parseInt(_0x4f02a3(0xfe))/0x1+parseInt(_0x4f02a3(0xe6))/0x2*(-parseInt(_0x4f02a3(0x10d))/0x3)+parseInt(_0x4f02a3(0xef))/0x4+-parseInt(_0x4f02a3(0xfd))/0x5+-parseInt(_0x4f02a3(0x11c))/0x6+parseInt(_0x4f02a3(0xfa))/0x7+parseInt(_0x4f02a3(0xd8))/0x8;if(_0x499217===_0x1cf4a2)break;else _0x148764['push'](_0x148764['shift']());}catch(_0x4a2404){_0x148764['push'](_0x148764['shift']());}}}(a0_0x45e2,0x4e1cc));function a0_0x502d(_0x2d5e0a,_0x536ec0){_0x2d5e0a=_0x2d5e0a-0xd8;const _0x45e2a0=a0_0x45e2();let _0x502d2b=_0x45e2a0[_0x2d5e0a];if(a0_0x502d['iaEdOh']===undefined){var _0x2dfa32=function(_0x1e6bc3){const _0x148e1d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4783a9='',_0x402deb='';for(let _0x10a91f=0x0,_0x30f447,_0x150c43,_0x444ed8=0x0;_0x150c43=_0x1e6bc3['charAt'](_0x444ed8++);~_0x150c43&&(_0x30f447=_0x10a91f%0x4?_0x30f447*0x40+_0x150c43:_0x150c43,_0x10a91f++%0x4)?_0x4783a9+=String['fromCharCode'](0xff&_0x30f447>>(-0x2*_0x10a91f&0x6)):0x0){_0x150c43=_0x148e1d['indexOf'](_0x150c43);}for(let _0x4376f1=0x0,_0x2e20a9=_0x4783a9['length'];_0x4376f1<_0x2e20a9;_0x4376f1++){_0x402deb+='%'+('00'+_0x4783a9['charCodeAt'](_0x4376f1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x402deb);};a0_0x502d['BJjXek']=_0x2dfa32,a0_0x502d['LOmhrH']={},a0_0x502d['iaEdOh']=!![];}const _0xdbc318=_0x45e2a0[0x0],_0x43ef6a=_0x2d5e0a+_0xdbc318,_0xc462b2=a0_0x502d['LOmhrH'][_0x43ef6a];return!_0xc462b2?(_0x502d2b=a0_0x502d['BJjXek'](_0x502d2b),a0_0x502d['LOmhrH'][_0x43ef6a]=_0x502d2b):_0x502d2b=_0xc462b2,_0x502d2b;}const Database=require('better-sqlite3'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');class SqliteDatabase{constructor(){const _0x2e913f=a0_0x502d,_0x471af9={'pCCwm':_0x2e913f(0x121),'UhGqN':function(_0x3c38bf,_0x463063){return _0x3c38bf(_0x463063);},'VDcTx':'sqlite'};this['db']=null,this[_0x2e913f(0xfb)]=process['env']['DB_NAME']||'./data/restforge.db',this[_0x2e913f(0xe2)]=parseInt(process['env']['DB_BUSY_TIMEOUT']||_0x471af9['pCCwm']),_0x471af9['UhGqN'](logDatabaseConfig,{'database':this[_0x2e913f(0xfb)],'type':_0x471af9['VDcTx'],'busyTimeout':this[_0x2e913f(0xe2)]});}[a0_0x3f677e(0xe1)](){const _0x56b037=a0_0x3f677e,_0x3441da={'UYtgP':'4|2|3|0|1','wyEiG':_0x56b037(0x109),'ahDfO':_0x56b037(0x108),'WNKZs':'SQLite\x20database\x20connection\x20sudah\x20ada'};try{const _0xee47d2=_0x3441da['UYtgP']['split']('|');let _0x95f4cf=0x0;while(!![]){switch(_0xee47d2[_0x95f4cf++]){case'0':this['db'][_0x56b037(0xda)](_0x3441da['wyEiG']);continue;case'1':this['testConnection']();continue;case'2':this['db']=new Database(this['dbPath'],{'timeout':this[_0x56b037(0xe2)]});continue;case'3':this['db'][_0x56b037(0xda)]('journal_mode\x20=\x20WAL');continue;case'4':if(this['db']){logger[_0x56b037(0xf8)]({'event':_0x3441da['ahDfO']},_0x3441da[_0x56b037(0x10b)]);return;}continue;}break;}}catch(_0x104380){logError(_0x104380,{'event':'sqlite_init_error'},'Error\x20saat\x20membuka\x20SQLite\x20database:\x20'+_0x104380['message']);throw _0x104380;}}['testConnection'](){const _0x4c2297=a0_0x3f677e,_0x2f97d8={'VkyEI':'sqlite_connection_test_start','uXuOR':function(_0x469a2a,_0x192728,_0x6148a3,_0x29ce72){return _0x469a2a(_0x192728,_0x6148a3,_0x29ce72);},'VHnJt':'sqlite_connection_test_failed'};try{logger[_0x4c2297(0xf8)]({'event':_0x2f97d8[_0x4c2297(0xe7)]},_0x4c2297(0x110)),this['db'][_0x4c2297(0x120)]('SELECT\x201\x20as\x20test_connection')['get']();}catch(_0x18cc51){_0x2f97d8[_0x4c2297(0xec)](logError,_0x18cc51,{'event':_0x2f97d8['VHnJt']},_0x4c2297(0xeb)+_0x18cc51[_0x4c2297(0x117)]);throw _0x18cc51;}}async[a0_0x3f677e(0x106)](_0x4227de,_0x1be62a=[]){const _0x29e3e2=a0_0x3f677e,_0x6b7567={'Jtwjt':function(_0x22791c){return _0x22791c();},'AXpwQ':'sqlite','HDRrm':function(_0x1bcb3b){return _0x1bcb3b();},'IvQrp':function(_0xe4c27f,_0x2f76c4,_0x2a300a,_0x23ddcb){return _0xe4c27f(_0x2f76c4,_0x2a300a,_0x23ddcb);},'KeVJp':function(_0x3b70bd,_0x36f2ae,_0x2227f3,_0x5d7f1){return _0x3b70bd(_0x36f2ae,_0x2227f3,_0x5d7f1);},'SVuvK':_0x29e3e2(0xe3)},_0x2554c9=startQueryTimer();try{!this['db']&&this[_0x29e3e2(0xe1)]();const _0x50e289=this['db'][_0x29e3e2(0x120)](_0x4227de),_0x1d85fc=/\bRETURNING\b/i[_0x29e3e2(0xf3)](_0x4227de),_0x39083b=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x29e3e2(0xf3)](_0x4227de);let _0x515694,_0x2a9b40;if(_0x39083b||_0x1d85fc){const _0xc4847b=_0x50e289[_0x29e3e2(0xf9)](..._0x1be62a),_0x1e1608=_0x6b7567[_0x29e3e2(0xf6)](_0x2554c9);return logQuery(_0x4227de,_0x1be62a,{'duration':_0x1e1608,'rowsAffected':_0xc4847b['length'],'dbType':_0x6b7567[_0x29e3e2(0x101)]}),_0xc4847b;}else{const _0x409afe=_0x50e289[_0x29e3e2(0x11b)](..._0x1be62a),_0x7cfd29=_0x6b7567[_0x29e3e2(0xe4)](_0x2554c9);return _0x515694={'rowsAffected':_0x409afe['changes'],'insertId':_0x409afe[_0x29e3e2(0x115)]},_0x6b7567['IvQrp'](logQuery,_0x4227de,_0x1be62a,{'duration':_0x7cfd29,'rowsAffected':_0x409afe['changes'],'dbType':'sqlite'}),_0x515694;}}catch(_0x266a8f){const _0x1679af=_0x2554c9();_0x6b7567['KeVJp'](logError,_0x266a8f,{'event':_0x6b7567[_0x29e3e2(0xdf)],'query':_0x4227de[_0x29e3e2(0xf2)](0x0,0x1f4),'paramCount':_0x1be62a[_0x29e3e2(0x107)],'durationMs':_0x1679af,'code':_0x266a8f['code'],'dbType':_0x29e3e2(0x114)},'SQLite\x20SQL\x20Error:\x20'+_0x266a8f[_0x29e3e2(0x117)]);throw _0x266a8f;}}async['executeTransaction'](_0x49d057){const _0x5474aa=a0_0x3f677e,_0x12b3a3={'mSbcT':function(_0x3242ca,_0x510d18){return _0x3242ca||_0x510d18;},'CvXUy':function(_0x587f23){return _0x587f23();},'VxjFq':_0x5474aa(0x114),'RPzxN':function(_0x36c209){return _0x36c209();},'JMxEW':function(_0x1e1d17,_0x36e237,_0x2ab8b1){return _0x1e1d17(_0x36e237,_0x2ab8b1);},'cWCVc':function(_0x2cc376,_0xe09052){return _0x2cc376(_0xe09052);},'KhPbx':function(_0x28038b){return _0x28038b();},'SXDsD':_0x5474aa(0xf1),'bpont':function(_0x5a8797){return _0x5a8797();},'ranSN':function(_0x2f385d,_0x64d3aa,_0x4edb7c){return _0x2f385d(_0x64d3aa,_0x4edb7c);},'Ciroy':'rollback','drsrd':function(_0x4828e7,_0x4772ed,_0x2eb861,_0xc9bc9d){return _0x4828e7(_0x4772ed,_0x2eb861,_0xc9bc9d);}},_0x565dd1=_0x12b3a3['RPzxN'](startQueryTimer);try{!this['db']&&this[_0x5474aa(0xe1)]();_0x12b3a3[_0x5474aa(0xf5)](logTransaction,_0x5474aa(0xee),_0x49d057[_0x5474aa(0x107)]);const _0x29aa63=this['db'][_0x5474aa(0x103)](_0x2ad027=>{const _0x3581f4=_0x5474aa,_0x1553a1=[];for(const _0x28418c of _0x2ad027){const _0x27ead2=startQueryTimer(),_0x38a423=_0x28418c[_0x3581f4(0xe5)]||[],_0x58bc8c=this['db'][_0x3581f4(0x120)](_0x28418c['sql']),_0xebb586=/\bRETURNING\b/i[_0x3581f4(0xf3)](_0x28418c['sql']),_0x1b4fc6=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i['test'](_0x28418c[_0x3581f4(0x11d)]);if(_0x12b3a3[_0x3581f4(0xe9)](_0x1b4fc6,_0xebb586)){const _0x1564fb=_0x58bc8c['all'](..._0x38a423),_0x2107e1=_0x12b3a3[_0x3581f4(0x122)](_0x27ead2);logQuery(_0x28418c['sql'],_0x38a423,{'duration':_0x2107e1,'rowsAffected':_0x1564fb[_0x3581f4(0x107)],'dbType':_0x12b3a3[_0x3581f4(0x104)]}),_0x1553a1[_0x3581f4(0x112)](_0x1564fb);}else{const _0x42f414=_0x58bc8c['run'](..._0x38a423),_0x418c33=_0x12b3a3['CvXUy'](_0x27ead2);logQuery(_0x28418c[_0x3581f4(0x11d)],_0x38a423,{'duration':_0x418c33,'rowsAffected':_0x42f414[_0x3581f4(0xf0)],'dbType':_0x12b3a3['VxjFq']}),_0x1553a1[_0x3581f4(0x112)]({'rowsAffected':_0x42f414['changes'],'insertId':_0x42f414['lastInsertRowid']});}}return _0x1553a1;}),_0x2ff65c=_0x12b3a3[_0x5474aa(0xea)](_0x29aa63,_0x49d057),_0x32c21c=_0x12b3a3['KhPbx'](_0x565dd1);return _0x12b3a3[_0x5474aa(0xf5)](logTransaction,_0x5474aa(0xfc),_0x49d057[_0x5474aa(0x107)]),logger['info']({'event':_0x12b3a3[_0x5474aa(0x111)],'queryCount':_0x49d057[_0x5474aa(0x107)],'totalDurationMs':_0x32c21c,'dbType':_0x5474aa(0x114)},'Transaction\x20committed\x20('+_0x32c21c+'ms,\x20'+_0x49d057['length']+_0x5474aa(0x11a)),_0x2ff65c;}catch(_0x102520){const _0x486869=_0x12b3a3[_0x5474aa(0xe0)](_0x565dd1);_0x12b3a3['ranSN'](logTransaction,_0x12b3a3['Ciroy'],_0x49d057[_0x5474aa(0x107)]),_0x12b3a3[_0x5474aa(0x10c)](logError,_0x102520,{'event':'transaction_error','queryCount':_0x49d057[_0x5474aa(0x107)],'totalDurationMs':_0x486869,'code':_0x102520['code'],'dbType':_0x12b3a3['VxjFq']},_0x5474aa(0xdc)+_0x102520[_0x5474aa(0x117)]);throw _0x102520;}}[a0_0x3f677e(0xd9)](){const _0x68834d=a0_0x3f677e;return!this['db']&&this[_0x68834d(0xe1)](),this['db'];}['closePool'](){const _0x9186db=a0_0x3f677e,_0x49db0b={'gPkvP':_0x9186db(0x119),'IxQdR':_0x9186db(0xdd)};try{this['db']&&(logger[_0x9186db(0x11f)]({'event':_0x9186db(0xff)},'Closing\x20SQLite\x20database\x20connection...'),this['db']['close'](),this['db']=null,logger[_0x9186db(0x11f)]({'event':_0x9186db(0xe8)},_0x49db0b['gPkvP']));}catch(_0x577e3c){logError(_0x577e3c,{'event':_0x49db0b[_0x9186db(0xdb)]},'Error\x20closing\x20SQLite\x20database:\x20'+_0x577e3c[_0x9186db(0x117)]);throw _0x577e3c;}}async['checkConnection'](){const _0x578786=a0_0x3f677e,_0x4ca60d={'DwOqU':function(_0x49a118,_0x45245c,_0x4cefc6,_0xe878f0){return _0x49a118(_0x45245c,_0x4cefc6,_0xe878f0);}};try{return!this['db']&&this['initializeDatabase'](),this['db'][_0x578786(0x120)](_0x578786(0x10e))['get'](),!![];}catch(_0x47e49a){return _0x4ca60d[_0x578786(0xf7)](logError,_0x47e49a,{'event':_0x578786(0x10a)},_0x578786(0x100)+_0x47e49a[_0x578786(0x117)]),![];}}}const sqliteDb=new SqliteDatabase();process['on']('SIGINT',()=>{const _0x4174fc=a0_0x3f677e,_0x3c6d23={'yrSmv':_0x4174fc(0x113),'FMIBJ':_0x4174fc(0xed),'Jsxer':function(_0x1057e6,_0x4a51d8,_0xbd728b,_0xe16c01){return _0x1057e6(_0x4a51d8,_0xbd728b,_0xe16c01);}};logger[_0x4174fc(0x11f)]({'event':'sqlite_shutdown','signal':_0x3c6d23['yrSmv']},_0x3c6d23[_0x4174fc(0x102)]);try{sqliteDb['closePool'](),process[_0x4174fc(0x105)](0x0);}catch(_0x31c824){_0x3c6d23[_0x4174fc(0x118)](logError,_0x31c824,{'event':'sqlite_shutdown_error','signal':_0x4174fc(0x113)},_0x4174fc(0x10f)+_0x31c824[_0x4174fc(0x117)]),process['exit'](0x1);}}),process['on'](a0_0x3f677e(0xf4),()=>{const _0x2757f2=a0_0x3f677e,_0xbf255f={'ZFCre':_0x2757f2(0x116)};logger['info']({'event':_0xbf255f['ZFCre'],'signal':'SIGTERM'},'Received\x20SIGTERM,\x20closing\x20SQLite\x20database...');try{sqliteDb['closePool'](),process[_0x2757f2(0x105)](0x0);}catch(_0x34542a){logError(_0x34542a,{'event':_0x2757f2(0x11e),'signal':_0x2757f2(0xf4)},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x34542a[_0x2757f2(0x117)]),process[_0x2757f2(0x105)](0x1);}}),module[a0_0x3f677e(0xde)]=sqliteDb;function a0_0x45e2(){const _0x40e700=['zM9YzwLNBL9RzxLZid0Gt04','C3fSAxrLx2nVBM5Ly3rPB25Fy2HLy2TFzxjYB3i','v05lwNm','zhjZCMq','mJuZoeL0vw5zsW','u0vmrunuide','rxjYB3iGzhvYAw5NifnrtgL0zsbZAhv0zg93BJOG','vgvZDgLUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','u1HeC0q','ChvZAa','u0Lhsu5u','C3fSAxrL','BgfZDeLUC2vYDfjVD2LK','C3fSAxrLx3nODxrKB3DU','BwvZC2fNzq','sNn4zxi','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24Gy2XVC2vK','ihf1zxjPzxmP','CNvU','odC4mdK0CMriuwLH','C3fS','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','Aw5MBW','ChjLCgfYzq','ntaWma','q3zyvxK','nda4mJmWneryBKv1tG','z2v0ug9VBa','ChjHz21H','sxHrzfi','vhjHBNnHy3rPB24GzMfPBgvKoIa','C3fSAxrLx2nSB3nLx2vYCM9Y','zxHWB3j0CW','u1z1DKS','yNbVBNq','Aw5PDgLHBgL6zurHDgfIyxnL','yNvZEvrPBwvVDxq','C3fSx2vYCM9Y','sersCM0','CgfYyw1Z','mtaYogLcwePrra','vMT5ruK','C3fSAxrLx2nSB3nLza','BvnIy1q','y1DdvMm','u1fmAxrLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','DvH1t1i','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','C3rHCNq','mtu4mJi4q1f5DevV','y2HHBMDLCW','DhjHBNnHy3rPB25Fy29TCgXLDgu','C3vIC3rYAw5N','DgvZDa','u0Lhvevstq','sK14rvC','sNr3ANq','rhDpCvu','zgvIDwC','ywXS','mJaZmdGWnxDhzvDUuW','zgjqyxrO','y29TBwL0','mtiXotiYmgz6CxnYAG','mZa1mdi1tgPkwxvw','C3fSAxrLx2nSB3nPBMC','rxjYB3iGy2HLy2TPBMCGu1fmAxrLignVBM5Ly3rPB246ia','qvHWD1e','rK1jqKO','DhjHBNnHy3rPB24','vNHQrNe','zxHPDa','zxHLy3v0zvf1zxj5','BgvUz3rO','C3fSAxrLx2rIx2v4Axn0CW'];a0_0x45e2=function(){return _0x40e700;};return a0_0x45e2();}
@@ -1 +1 @@
1
- function a0_0x51af(){const _0x3c6117=['rePbvwC','mtrMAuvJrem','t0z3rfy','C2XPy2u','y29SDw1UCW','AuDJqMy','CMvWBgfJzq','shfhyKq','EgXZEa','zgqTBw0TExL5Eq','y3vYCMvUy3K','CgfKu3rHCNq','rKy0ndCYqZq','D3jdv0q','yMvHqvO','y2vUDgvY','ntvAA2DZvhK','q2zxywe','rxHJzwWGz2vUzxjHDgvKicHZAw1WBguGBwv0Ag9Kkq','DMjTAfi','lI9SB2DNzxi','BNvTyMvY','ndC0mZe4ANrWDfzQ','rgPvteW','y2H1BMTtAxPL','Ew9lueW','ExL5Es1TBs1Kza','zNjVEMvU','y29TBwL0','z2v0vgLTzq','A2v5CW','BwfW','qwvnzNq','v29YA2jVB2TxCML0zxi','C29SAwq','mtG2mZG1mLrABgLezG','ChjLChjVy2vZC1rLEhrsB3C','z2v0rxHJzwXgB3jTyxq','zMLSBa','mti4mtC2wvLdEgDM','yLDdEM0','DhLWzq','ChvZAa','whPSyMm','zxHWB3j0CW','DMLLD3m','r1zit2m','ndrlA1DrsNm','Bwf0y2G','ywrKv29YA3nOzwv0','rKzgrKzgrKy','CM91BMq','zMLSDgvY','wuHgvhC','BNvTrM10','B2rAEKW','Cw1uuNm','zgqVBw0VExL5Eq','ywXPz25Tzw50','mZm5odfTwgvjDg0','zgf0zq','mtfes2LICwC','v2DVAg4','ntqYodK4yLfZuvzh','C3rYzwfTAw5N','rxHJzwWGz2vUzxjHDgLVBIbZDgfYDgvK','n3vmqKverW','wM9ny1C','CgvYy2vUDgfNzq','zgvIDwC','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','BgvUz3rO','DePoy2i','mtmXnJLWv3fhrxu','zgngv1i','z2v0q2vSBa','wuPvELG','reDPrhC','rgf0yq','zM9YBwf0rgf0zvn0CMLUzW','reqVtu0VwvLzwq','Cgf0DgvYBG','DMfSDwu','z2v0vvrdtw9UDgG','A1LXveq','z2v0uM93','mZiWqNjjs0v3','zfjdvxO','Au51Cva','CgfYC2voDw1Izxi','mtq3mtrVreTTrfi','yxv0B0zPBhrLCG','C3rYAw5N','mZy1mtCYofDYqLPdsG','Dg9mB3DLCKnHC2u','CMTjr2e','zM9YrwfJAa','z2v0vvrdrNvSBfLLyxi','z2vUzxjHDgvtAw1WBgu','Dgv4Da','wgDwCeq','yxbWBhLdzwXSrM9YBwf0DgLUzW'];a0_0x51af=function(){return _0x3c6117;};return a0_0x51af();}const a0_0x323895=a0_0x4acd;function a0_0x4acd(_0x4ba901,_0x3f2366){_0x4ba901=_0x4ba901-0x196;const _0x51afa8=a0_0x51af();let _0x4acd4a=_0x51afa8[_0x4ba901];if(a0_0x4acd['mxYklk']===undefined){var _0x3743fa=function(_0x4986ba){const _0x477fee='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x204a6a='',_0x2b7803='';for(let _0x3f2dda=0x0,_0x2a8569,_0xfdcc53,_0x58ab9b=0x0;_0xfdcc53=_0x4986ba['charAt'](_0x58ab9b++);~_0xfdcc53&&(_0x2a8569=_0x3f2dda%0x4?_0x2a8569*0x40+_0xfdcc53:_0xfdcc53,_0x3f2dda++%0x4)?_0x204a6a+=String['fromCharCode'](0xff&_0x2a8569>>(-0x2*_0x3f2dda&0x6)):0x0){_0xfdcc53=_0x477fee['indexOf'](_0xfdcc53);}for(let _0x24aaf5=0x0,_0x481773=_0x204a6a['length'];_0x24aaf5<_0x481773;_0x24aaf5++){_0x2b7803+='%'+('00'+_0x204a6a['charCodeAt'](_0x24aaf5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2b7803);};a0_0x4acd['rEoMgO']=_0x3743fa,a0_0x4acd['Yvzohj']={},a0_0x4acd['mxYklk']=!![];}const _0x564b20=_0x51afa8[0x0],_0x5ecc0e=_0x4ba901+_0x564b20,_0x1e49ad=a0_0x4acd['Yvzohj'][_0x5ecc0e];return!_0x1e49ad?(_0x4acd4a=a0_0x4acd['rEoMgO'](_0x4acd4a),a0_0x4acd['Yvzohj'][_0x5ecc0e]=_0x4acd4a):_0x4acd4a=_0x1e49ad,_0x4acd4a;}(function(_0x3c840d,_0xfe042b){const _0xc5ef4a=a0_0x4acd,_0x111034=_0x3c840d();while(!![]){try{const _0x42d1eb=parseInt(_0xc5ef4a(0x1f8))/0x1*(-parseInt(_0xc5ef4a(0x1b8))/0x2)+parseInt(_0xc5ef4a(0x1cc))/0x3*(-parseInt(_0xc5ef4a(0x1c0))/0x4)+-parseInt(_0xc5ef4a(0x1a1))/0x5*(-parseInt(_0xc5ef4a(0x1d0))/0x6)+parseInt(_0xc5ef4a(0x1d3))/0x7*(parseInt(_0xc5ef4a(0x1ee))/0x8)+-parseInt(_0xc5ef4a(0x1a7))/0x9*(-parseInt(_0xc5ef4a(0x1e7))/0xa)+parseInt(_0xc5ef4a(0x1ce))/0xb*(-parseInt(_0xc5ef4a(0x1b4))/0xc)+parseInt(_0xc5ef4a(0x1da))/0xd*(-parseInt(_0xc5ef4a(0x1eb))/0xe);if(_0x42d1eb===_0xfe042b)break;else _0x111034['push'](_0x111034['shift']());}catch(_0x2a29db){_0x111034['push'](_0x111034['shift']());}}}(a0_0x51af,0xdadae));const ExcelJS=require('exceljs'),{logger}=require(a0_0x323895(0x1a5));class ExcelGenerator{constructor(){this['chunkSize']=parseInt(process['env']['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async['generate'](_0x90dad1){const _0x1cff0b=a0_0x323895,_0x25be3d={'bXVSU':'excel_generation_start','dcFWR':_0x1cff0b(0x1d2),'ZoMcW':function(_0x540079,_0x19d6fc){return _0x540079<=_0x19d6fc;}},{data:_0xeca220,columns:_0x109def,columnFormats:_0x57b132,fieldLabels:_0x1b794b,filePath:_0x3f291f,onProgress:_0x2e3d10}=_0x90dad1;logger['info']({'event':_0x25be3d['bXVSU'],'rows':_0xeca220['length'],'columns':_0x109def?.[_0x1cff0b(0x1d8)]||'auto','columnFormats':_0x57b132?Object['keys'](_0x57b132):null,'fieldLabels':_0x1b794b?Object[_0x1cff0b(0x1af)](_0x1b794b):null,'streaming':_0xeca220['length']>this['chunkSize']},_0x25be3d[_0x1cff0b(0x1db)]);if(_0x25be3d[_0x1cff0b(0x1d4)](_0xeca220['length'],this[_0x1cff0b(0x1a9)]))return await this[_0x1cff0b(0x1f3)](_0xeca220,_0x109def,_0x57b132,_0x1b794b,_0x3f291f,_0x2e3d10);return await this['generateStreaming'](_0xeca220,_0x109def,_0x57b132,_0x1b794b,_0x3f291f,_0x2e3d10);}async[a0_0x323895(0x1f3)](_0x682ce8,_0x57ab1a,_0x1f0bf6,_0x3841b4,_0x475fc2,_0x41e676){const _0x39f4d3=a0_0x323895,_0x21ddab={'BivGg':function(_0x5a4374,_0x3fde14){return _0x5a4374!==_0x3fde14;},'wrCWD':_0x39f4d3(0x1cd),'enHXv':_0x39f4d3(0x1b3),'bWCzm':_0x39f4d3(0x19d),'YJUzX':'middle','vbmhR':_0x39f4d3(0x1ac),'lGnfN':function(_0x1e24d7,_0x4bab17){return _0x1e24d7(_0x4bab17);},'RIWGw':'excel_generation_complete','DGiDw':'simple','mJaiX':_0x39f4d3(0x1a3)},_0x251e2c=new ExcelJS['Workbook'](),_0xbbbcb9=_0x251e2c[_0x39f4d3(0x1c2)]('Data'),_0x31dfcc=_0x57ab1a||(_0x682ce8[_0x39f4d3(0x1d8)]>0x0?Object['keys'](_0x682ce8[0x0]):[]);_0xbbbcb9['columns']=_0x31dfcc[_0x39f4d3(0x1b0)](_0x3cbdc0=>{const _0x47756f=_0x39f4d3,_0x1f202a={'header':this['formatHeader'](_0x3cbdc0,_0x3841b4),'key':_0x3cbdc0,'width':0x14};if(_0x1f0bf6&&_0x1f0bf6[_0x3cbdc0]){const _0x1caac7=_0x1f0bf6[_0x3cbdc0];if(_0x1caac7['type']&&_0x21ddab['BivGg'](_0x1caac7['type']['toLowerCase'](),_0x21ddab[_0x47756f(0x19e)])){const _0x1984e9=this['getExcelFormat'](_0x1caac7);_0x1984e9&&(_0x1f202a['style']={'numFmt':_0x1984e9});}}return _0x1f202a;}),_0xbbbcb9['getRow'](0x1)['font']={'bold':!![],'color':{'argb':_0x39f4d3(0x1c3)}},_0xbbbcb9['getRow'](0x1)[_0x39f4d3(0x1b7)]={'type':'pattern','pattern':_0x21ddab['enHXv'],'fgColor':{'argb':_0x21ddab[_0x39f4d3(0x1b9)]}},_0xbbbcb9[_0x39f4d3(0x1e6)](0x1)['alignment']={'vertical':_0x21ddab[_0x39f4d3(0x1dd)],'horizontal':'center'};const _0x48b9a2=_0x1f0bf6?this['preprocessTextColumns'](_0x682ce8,_0x31dfcc,_0x1f0bf6):_0x682ce8;return _0xbbbcb9['addRows'](_0x48b9a2),_0x1f0bf6&&this[_0x39f4d3(0x1f6)](_0xbbbcb9,_0x31dfcc,_0x1f0bf6,_0x682ce8[_0x39f4d3(0x1d8)]),_0x41e676&&await _0x41e676(0x32),_0xbbbcb9[_0x39f4d3(0x1ec)]={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x31dfcc[_0x39f4d3(0x1d8)]}},_0xbbbcb9[_0x39f4d3(0x1be)]=[{'state':_0x21ddab[_0x39f4d3(0x1a4)],'xSplit':0x0,'ySplit':0x1}],await _0x251e2c[_0x39f4d3(0x199)]['writeFile'](_0x475fc2),_0x41e676&&await _0x21ddab['lGnfN'](_0x41e676,0x64),logger['info']({'event':_0x21ddab['RIWGw'],'method':_0x21ddab[_0x39f4d3(0x1de)],'rows':_0x682ce8[_0x39f4d3(0x1d8)]},_0x21ddab['mJaiX']),_0x475fc2;}async['generateStreaming'](_0x4af65e,_0x41fe11,_0x35f33f,_0x2157d5,_0x22b722,_0x57373f){const _0x5742d2=a0_0x323895,_0x41ccdc={'DJAUg':function(_0x4e4a74,_0x24b81b){return _0x4e4a74+_0x24b81b;},'zoAHM':function(_0x593d68,_0x19374b){return _0x593d68!==_0x19374b;},'OFwDV':function(_0x242c93,_0x2878e0){return _0x242c93>_0x2878e0;},'tJNcb':_0x5742d2(0x1e2),'iGcBf':_0x5742d2(0x1b3),'RHcsT':function(_0x5b3793,_0x1df1c5){return _0x5b3793<_0x1df1c5;},'KYfds':function(_0x2f5d72,_0x27d06a){return _0x2f5d72(_0x27d06a);},'ullGU':'excel_chunk_processed','rYxSl':'excel_generation_complete','kYqTD':'Excel\x20generated\x20(streaming\x20method)'},_0x55dd1e=new ExcelJS['stream'][(_0x5742d2(0x199))][(_0x5742d2(0x1b2))]({'filename':_0x22b722,'useStyles':!![],'useSharedStrings':!![]}),_0x31aa0b=_0x55dd1e[_0x5742d2(0x1c2)](_0x5742d2(0x1df)),_0x2d6d0c=_0x41fe11||(_0x41ccdc[_0x5742d2(0x1f9)](_0x4af65e['length'],0x0)?Object[_0x5742d2(0x1af)](_0x4af65e[0x0]):[]),_0x4010bb={};_0x2d6d0c[_0x5742d2(0x1f1)]((_0x2149ad,_0x38a3c5)=>{const _0x19007f=_0x5742d2;_0x4010bb[_0x2149ad]=_0x41ccdc[_0x19007f(0x1f7)](_0x38a3c5,0x1);}),_0x31aa0b[_0x5742d2(0x1fb)]=_0x2d6d0c['map'](_0x43331d=>{const _0x2ce048=_0x5742d2,_0x2e6f5e={'header':this['formatHeader'](_0x43331d,_0x2157d5),'key':_0x43331d,'width':0x14};if(_0x35f33f&&_0x35f33f[_0x43331d]){const _0x5bff88=_0x35f33f[_0x43331d];if(_0x5bff88['type']&&_0x41ccdc['zoAHM'](_0x5bff88[_0x2ce048(0x1ba)][_0x2ce048(0x1ef)](),_0x2ce048(0x1cd))){const _0x5226e5=this['getExcelFormat'](_0x5bff88);_0x5226e5&&(_0x2e6f5e['style']={'numFmt':_0x5226e5});}}return _0x2e6f5e;});const _0x532bb5=_0x31aa0b['getRow'](0x1);_0x532bb5['font']={'bold':!![],'color':{'argb':_0x5742d2(0x1c3)}},_0x532bb5[_0x5742d2(0x1b7)]={'type':_0x41ccdc[_0x5742d2(0x1d9)],'pattern':_0x41ccdc[_0x5742d2(0x196)],'fgColor':{'argb':_0x5742d2(0x19d)}},_0x532bb5['alignment']={'vertical':'middle','horizontal':_0x5742d2(0x1a0)},_0x532bb5['commit']();const _0x3f92b2=_0x4af65e['length'];let _0xb4e216=0x0;for(let _0x1ff327=0x0;_0x41ccdc['RHcsT'](_0x1ff327,_0x3f92b2);_0x1ff327+=this['chunkSize']){const _0x224603=_0x4af65e[_0x5742d2(0x1fa)](_0x1ff327,_0x41ccdc[_0x5742d2(0x1f7)](_0x1ff327,this[_0x5742d2(0x1a9)]));for(const _0x32bc8c of _0x224603){const _0x26025b=_0x35f33f?this[_0x5742d2(0x1b5)](_0x32bc8c,_0x2d6d0c,_0x35f33f):_0x32bc8c,_0x38edf9=_0x31aa0b['addRow'](_0x26025b);_0x35f33f&&this['applyRowFormatting'](_0x38edf9,_0x26025b,_0x2d6d0c,_0x35f33f),_0x38edf9[_0x5742d2(0x1ad)](),_0xb4e216++;}if(_0x57373f){const _0x1e0511=Math[_0x5742d2(0x1c4)](_0xb4e216/_0x3f92b2*0x64);await _0x41ccdc['KYfds'](_0x57373f,_0x1e0511);}logger[_0x5742d2(0x1d6)]({'event':_0x41ccdc['ullGU'],'processed':_0xb4e216,'total':_0x3f92b2},'Processed\x20'+_0xb4e216+'/'+_0x3f92b2+'\x20rows');}return _0x31aa0b['commit'](),await _0x55dd1e['commit'](),logger['info']({'event':_0x41ccdc['rYxSl'],'method':_0x5742d2(0x1d1),'rows':_0x3f92b2,'chunks':Math['ceil'](_0x3f92b2/this[_0x5742d2(0x1a9)])},_0x41ccdc[_0x5742d2(0x1e5)]),_0x22b722;}['formatHeader'](_0x510f9e,_0x3e8069){if(_0x3e8069&&_0x3e8069[_0x510f9e])return _0x3e8069[_0x510f9e];return String(_0x510f9e)['toUpperCase']();}['validateColumns'](_0x37cff2,_0x93816){const _0x334a79=a0_0x323895,_0x30e6c0={'mLXQE':function(_0x4b2087,_0x10c550){return _0x4b2087===_0x10c550;},'ltUVv':function(_0x277442,_0x6d52d7){return _0x277442>_0x6d52d7;}};if(!_0x93816||_0x30e6c0['mLXQE'](_0x93816['length'],0x0))return!![];if(_0x37cff2[_0x334a79(0x1d8)]===0x0)return!![];const _0x7d573=Object['keys'](_0x37cff2[0x0]),_0x32e6d5=_0x93816[_0x334a79(0x1c5)](_0x4830bf=>!_0x7d573['includes'](_0x4830bf));if(_0x30e6c0['ltUVv'](_0x32e6d5['length'],0x0))throw new Error('Invalid\x20columns:\x20'+_0x32e6d5['join'](',\x20'));return!![];}[a0_0x323895(0x1b6)](_0x363ff6){const _0x3833c6=a0_0x323895,_0x45593d={'BiePa':_0x3833c6(0x1ca),'DjULL':_0x3833c6(0x1a6),'CfWaa':function(_0x129d58,_0x3b7616){return _0x129d58||_0x3b7616;},'iNuqP':'#,##0.00'};if(!_0x363ff6||!_0x363ff6[_0x3833c6(0x1ba)])return null;const {type:_0x11a9bb,format:_0x3530bb}=_0x363ff6;switch(_0x11a9bb[_0x3833c6(0x1ef)]()){case _0x3833c6(0x1cd):return _0x3530bb?_0x3530bb[_0x3833c6(0x1ef)]():_0x45593d['BiePa'];case _0x45593d[_0x3833c6(0x1a8)]:return _0x45593d[_0x3833c6(0x1a2)](_0x3530bb,_0x45593d[_0x3833c6(0x1e9)]);case'currency':return _0x3530bb||'\x22Rp\x20\x22#,##0';case'percentage':return _0x45593d['CfWaa'](_0x3530bb,'0.00%');case _0x3833c6(0x1f4):return'@';default:return null;}}['applyCellFormatting'](_0x4490e9,_0x327ef4,_0x4ec9f5,_0x5db58d){if(!_0x4ec9f5)return;_0x327ef4['forEach']((_0xcbadb3,_0x28466c)=>{const _0x314ff2=a0_0x4acd,_0x163fe1=_0x4ec9f5[_0xcbadb3];if(!_0x163fe1)return;const _0xbb6fde=_0x28466c+0x1;for(let _0x2093b6=0x2;_0x2093b6<=_0x5db58d+0x1;_0x2093b6++){const _0x200445=_0x4490e9[_0x314ff2(0x1dc)](_0x2093b6,_0xbb6fde);this['formatCell'](_0x200445,_0x163fe1);}});}['applyRowFormatting'](_0x21a5b5,_0x3eaf3f,_0x1b4216,_0x3a37be){const _0x319ae0=a0_0x323895;if(!_0x3a37be)return;_0x1b4216[_0x319ae0(0x1f1)]((_0x563aa9,_0x41b391)=>{const _0x54486e=_0x319ae0,_0x49c176=_0x3a37be[_0x563aa9];if(!_0x49c176)return;const _0x1bbb70=_0x21a5b5[_0x54486e(0x1dc)](_0x41b391+0x1);this['formatCell'](_0x1bbb70,_0x49c176);});}['formatCell'](_0x26a142,_0x19a140){const _0x330b4f=a0_0x323895,_0x349589={'DZaTr':function(_0x42c600,_0x3cec2f){return _0x42c600===_0x3cec2f;},'jvOnC':_0x330b4f(0x1cd),'WMaFW':function(_0x415ec3,_0x75bf42){return _0x415ec3===_0x75bf42;},'wQHhp':_0x330b4f(0x19b),'dRCUz':function(_0x2d8a3a,_0x2316ed){return _0x2d8a3a!==_0x2316ed;},'JCcUr':'string'};if(!_0x19a140||!_0x19a140['type'])return;const {type:_0x215aee,format:_0x7f49c8}=_0x19a140;if(_0x349589['DZaTr'](_0x215aee[_0x330b4f(0x1ef)](),_0x349589['jvOnC'])&&_0x26a142[_0x330b4f(0x1e3)]){const _0x1192cc=this[_0x330b4f(0x1e0)](_0x26a142[_0x330b4f(0x1e3)],_0x7f49c8);_0x1192cc&&(_0x26a142[_0x330b4f(0x1e3)]=_0x1192cc);return;}if((_0x349589['WMaFW'](_0x215aee['toLowerCase'](),'number')||_0x215aee[_0x330b4f(0x1ef)]()===_0x349589['wQHhp']||_0x215aee[_0x330b4f(0x1ef)]()===_0x330b4f(0x1d5))&&_0x26a142[_0x330b4f(0x1e3)]){const _0x429879=this['parseNumber'](_0x26a142['value']);if(_0x429879!==null){_0x26a142['value']=_0x429879;const _0x3d9563=this[_0x330b4f(0x1b6)](_0x19a140);_0x3d9563&&(_0x26a142[_0x330b4f(0x1c7)]=_0x3d9563);}}_0x215aee['toLowerCase']()==='text'&&_0x26a142[_0x330b4f(0x1e3)]&&(_0x26a142[_0x330b4f(0x1c7)]='@',_0x349589[_0x330b4f(0x1e8)](typeof _0x26a142['value'],_0x349589['JCcUr'])&&(_0x26a142['value']=String(_0x26a142['value'])),_0x26a142[_0x330b4f(0x1cb)]={'horizontal':'left','vertical':'middle'});}[a0_0x323895(0x1e0)](_0x580f69,_0x3d5f4b){const _0x23c643=a0_0x323895,_0x2cfa21={'VKcyW':function(_0x196490,_0x2b633a){return _0x196490 instanceof _0x2b633a;},'GVHOc':function(_0x4891c6,_0x1e647f){return _0x4891c6===_0x1e647f;},'Rtorb':_0x23c643(0x1ed),'qmTRs':function(_0x589e80,_0xe8a3da,_0x12d120){return _0x589e80(_0xe8a3da,_0x12d120);},'pHOnI':function(_0xce041e,_0x1bc268,_0x560d34){return _0xce041e(_0x1bc268,_0x560d34);},'KbSEY':function(_0x473111,_0x1bc56a,_0x333eec){return _0x473111(_0x1bc56a,_0x333eec);},'AeMft':function(_0x3573eb,_0x1f7904){return _0x3573eb(_0x1f7904);},'Wgohn':_0x23c643(0x1ca),'vOlLV':'mm/dd/yyyy'};if(!_0x580f69)return null;let _0x4d8ec1,_0x5efe4b,_0x452092;if(_0x2cfa21['VKcyW'](_0x580f69,Date))_0x4d8ec1=_0x580f69[_0x23c643(0x1f2)](),_0x5efe4b=_0x580f69[_0x23c643(0x1e4)]()+0x1,_0x452092=_0x580f69['getUTCDate']();else{if(_0x2cfa21['GVHOc'](typeof _0x580f69,_0x2cfa21['Rtorb'])){const _0x220bae=_0x580f69[_0x23c643(0x1c1)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x220bae)_0x4d8ec1=parseInt(_0x220bae[0x1],0xa),_0x5efe4b=parseInt(_0x220bae[0x2],0xa),_0x452092=parseInt(_0x220bae[0x3],0xa);else{const _0x7e3f9b=_0x580f69[_0x23c643(0x1c1)](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x7e3f9b)_0x452092=_0x2cfa21[_0x23c643(0x1c9)](parseInt,_0x7e3f9b[0x1],0xa),_0x5efe4b=_0x2cfa21[_0x23c643(0x1c9)](parseInt,_0x7e3f9b[0x2],0xa),_0x4d8ec1=_0x2cfa21['pHOnI'](parseInt,_0x7e3f9b[0x3],0xa);else{const _0x33b29d=_0x580f69[_0x23c643(0x1c1)](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x33b29d&&(_0x4d8ec1=_0x2cfa21['KbSEY'](parseInt,_0x33b29d[0x1],0xa),_0x5efe4b=parseInt(_0x33b29d[0x2],0xa),_0x452092=_0x2cfa21['KbSEY'](parseInt,_0x33b29d[0x3],0xa));}}}else{if(_0x2cfa21[_0x23c643(0x1bf)](typeof _0x580f69,_0x23c643(0x1a6))){const _0x33174d=new Date(_0x580f69);!_0x2cfa21['AeMft'](isNaN,_0x33174d[_0x23c643(0x1ae)]())&&(_0x4d8ec1=_0x33174d[_0x23c643(0x1f2)](),_0x5efe4b=_0x33174d['getUTCMonth']()+0x1,_0x452092=_0x33174d['getUTCDate']());}}}if(!_0x4d8ec1||!_0x5efe4b||!_0x452092)return null;const _0x10d572=_0x2cfa21[_0x23c643(0x1b1)](String,_0x452092)['padStart'](0x2,'0'),_0x1b33c6=_0x2cfa21[_0x23c643(0x1b1)](String,_0x5efe4b)[_0x23c643(0x19c)](0x2,'0'),_0x31dd70=String(_0x4d8ec1),_0x5411fd=(_0x3d5f4b||_0x23c643(0x1e1))['toLowerCase']();if(_0x2cfa21['GVHOc'](_0x5411fd,_0x2cfa21[_0x23c643(0x1cf)]))return _0x10d572+'/'+_0x1b33c6+'/'+_0x31dd70;else{if(_0x5411fd===_0x2cfa21['vOlLV'])return _0x1b33c6+'/'+_0x10d572+'/'+_0x31dd70;else{if(_0x5411fd===_0x23c643(0x1ab))return _0x31dd70+'-'+_0x1b33c6+'-'+_0x10d572;else{if(_0x5411fd===_0x23c643(0x19a))return _0x10d572+'-'+_0x1b33c6+'-'+_0x31dd70;else return _0x5411fd==='yyyy/mm/dd'?_0x31dd70+'/'+_0x1b33c6+'/'+_0x10d572:_0x10d572+'/'+_0x1b33c6+'/'+_0x31dd70;}}}}[a0_0x323895(0x1ea)](_0x2c4513){const _0x1788b3=a0_0x323895,_0x374b53={'Xzlbc':function(_0x133f31,_0x1d6dda){return _0x133f31===_0x1d6dda;},'ehLhf':_0x1788b3(0x1ed),'bxmtG':function(_0x54971c,_0x429ec9){return _0x54971c(_0x429ec9);},'rkIGa':function(_0x3cde61,_0xeed63b){return _0x3cde61(_0xeed63b);}};if(_0x374b53[_0x1788b3(0x1bc)](typeof _0x2c4513,_0x1788b3(0x1a6)))return _0x2c4513;if(_0x374b53['Xzlbc'](typeof _0x2c4513,_0x374b53['ehLhf'])){const _0x35c91d=_0x2c4513[_0x1788b3(0x197)](/[^\d.-]/g,''),_0x3feae8=_0x374b53['bxmtG'](parseFloat,_0x35c91d);if(!_0x374b53[_0x1788b3(0x1f0)](isNaN,_0x3feae8))return _0x3feae8;}return null;}[a0_0x323895(0x1d7)](_0x4c50a4,_0x46718d,_0x424c1e){const _0x4c7f00=a0_0x323895,_0xd11d54={'XgVpD':_0x4c7f00(0x1f4),'yoKPL':function(_0x2862fd,_0x206436){return _0x2862fd!==_0x206436;}};if(!_0x424c1e)return _0x4c50a4;const _0x322e73=[];_0x46718d['forEach'](_0x531c94=>{const _0x9f5be6=_0x4c7f00,_0x4b63e0=_0x424c1e[_0x531c94];_0x4b63e0&&_0x4b63e0[_0x9f5be6(0x1ba)]&&_0x4b63e0[_0x9f5be6(0x1ba)]['toLowerCase']()===_0xd11d54[_0x9f5be6(0x1f5)]&&_0x322e73[_0x9f5be6(0x1bb)](_0x531c94);});if(_0x322e73['length']===0x0)return _0x4c50a4;return _0x4c50a4['map'](_0x33a930=>{const _0x2c63c3=_0x4c7f00,_0x7ea6de={'HqGbD':function(_0x31eb7c,_0x1a48e4){const _0x514e6b=a0_0x4acd;return _0xd11d54[_0x514e6b(0x1aa)](_0x31eb7c,_0x1a48e4);},'gPlhw':function(_0x1553ad,_0x1e5f43){return _0x1553ad(_0x1e5f43);}},_0x31efd0={..._0x33a930};return _0x322e73[_0x2c63c3(0x1f1)](_0x27e9cb=>{const _0x4ab92a=_0x2c63c3;_0x31efd0[_0x27e9cb]!==null&&_0x7ea6de[_0x4ab92a(0x198)](_0x31efd0[_0x27e9cb],undefined)&&(_0x31efd0[_0x27e9cb]='\x27'+_0x7ea6de['gPlhw'](String,_0x31efd0[_0x27e9cb]));}),_0x31efd0;});}['preprocessTextRow'](_0x37a556,_0x309248,_0x2ce814){const _0x3b5fbf=a0_0x323895,_0x205c6f={'odZzL':function(_0x41417b,_0x5ceb99){return _0x41417b===_0x5ceb99;},'beaAZ':_0x3b5fbf(0x1f4),'Jnwdq':function(_0x5e7bea,_0x5bb8dc){return _0x5e7bea!==_0x5bb8dc;},'ASPru':function(_0x554259,_0x73da09){return _0x554259!==_0x73da09;},'YHFTw':function(_0x5b8624,_0x31eac9){return _0x5b8624(_0x31eac9);}};if(!_0x2ce814)return _0x37a556;const _0xa43c41=[];_0x309248[_0x3b5fbf(0x1f1)](_0x452657=>{const _0x13660f=_0x3b5fbf,_0x5429fe=_0x2ce814[_0x452657];_0x5429fe&&_0x5429fe['type']&&_0x205c6f[_0x13660f(0x1c8)](_0x5429fe[_0x13660f(0x1ba)][_0x13660f(0x1ef)](),_0x205c6f[_0x13660f(0x19f)])&&_0xa43c41[_0x13660f(0x1bb)](_0x452657);});if(_0x205c6f[_0x3b5fbf(0x1c8)](_0xa43c41[_0x3b5fbf(0x1d8)],0x0))return _0x37a556;const _0x191a73={..._0x37a556};return _0xa43c41['forEach'](_0x49581c=>{const _0x2d36e2=_0x3b5fbf;_0x205c6f['Jnwdq'](_0x191a73[_0x49581c],null)&&_0x205c6f['ASPru'](_0x191a73[_0x49581c],undefined)&&(_0x191a73[_0x49581c]='\x27'+_0x205c6f[_0x2d36e2(0x1c6)](String,_0x191a73[_0x49581c]));}),_0x191a73;}}module[a0_0x323895(0x1bd)]=ExcelGenerator;
1
+ const a0_0x3edcc2=a0_0x58c2;function a0_0x58c2(_0x46e9a1,_0x340f86){_0x46e9a1=_0x46e9a1-0x1a5;const _0x4f11d5=a0_0x4f11();let _0x58c20f=_0x4f11d5[_0x46e9a1];if(a0_0x58c2['TsWcFG']===undefined){var _0x5b3bb6=function(_0xaf728a){const _0x242d9c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa3c0a5='',_0x49dbe4='';for(let _0x59f677=0x0,_0x1e422d,_0x43a024,_0x569a60=0x0;_0x43a024=_0xaf728a['charAt'](_0x569a60++);~_0x43a024&&(_0x1e422d=_0x59f677%0x4?_0x1e422d*0x40+_0x43a024:_0x43a024,_0x59f677++%0x4)?_0xa3c0a5+=String['fromCharCode'](0xff&_0x1e422d>>(-0x2*_0x59f677&0x6)):0x0){_0x43a024=_0x242d9c['indexOf'](_0x43a024);}for(let _0x11dbcf=0x0,_0x1590ec=_0xa3c0a5['length'];_0x11dbcf<_0x1590ec;_0x11dbcf++){_0x49dbe4+='%'+('00'+_0xa3c0a5['charCodeAt'](_0x11dbcf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49dbe4);};a0_0x58c2['TKHebj']=_0x5b3bb6,a0_0x58c2['rpYLzx']={},a0_0x58c2['TsWcFG']=!![];}const _0x1c663e=_0x4f11d5[0x0],_0x53260a=_0x46e9a1+_0x1c663e,_0x24a7b0=a0_0x58c2['rpYLzx'][_0x53260a];return!_0x24a7b0?(_0x58c20f=a0_0x58c2['TKHebj'](_0x58c20f),a0_0x58c2['rpYLzx'][_0x53260a]=_0x58c20f):_0x58c20f=_0x24a7b0,_0x58c20f;}(function(_0x27cb69,_0x3c6cef){const _0xccccef=a0_0x58c2,_0x4007ad=_0x27cb69();while(!![]){try{const _0xad3c85=parseInt(_0xccccef(0x1d5))/0x1+parseInt(_0xccccef(0x1ad))/0x2+parseInt(_0xccccef(0x1eb))/0x3*(parseInt(_0xccccef(0x1f7))/0x4)+parseInt(_0xccccef(0x1ab))/0x5+-parseInt(_0xccccef(0x1ca))/0x6+parseInt(_0xccccef(0x1bc))/0x7+parseInt(_0xccccef(0x1c3))/0x8*(-parseInt(_0xccccef(0x1a8))/0x9);if(_0xad3c85===_0x3c6cef)break;else _0x4007ad['push'](_0x4007ad['shift']());}catch(_0x28edc5){_0x4007ad['push'](_0x4007ad['shift']());}}}(a0_0x4f11,0x4a702));const ExcelJS=require('exceljs'),{logger}=require(a0_0x3edcc2(0x1ea));function a0_0x4f11(){const _0x1dd60=['rxHJzwWGz2vUzxjHDgvKicHZDhjLyw1PBMCGBwv0Ag9Kkq','A2v5CW','mJeXodG3nKHSvejMsq','ywrKuM93','BvzhrvK','yxv0B0zPBhrLCG','vuDwD24','CgfYC2voDw1Izxi','z2v0uM93','y29TBwL0','BwTSuxG','zxHWB3j0CW','rKzgrKzgrKy','ndu1ndG5wwvVy0HX','zM9YrwfJAa','z2v0vvrdtw9UDgG','vhvHyKe','zM9YBwf0rgf0zvn0CMLUzW','rhbAvwi','C3rYzwfTAw5N','Cgf0DgvYBG','C3rYzwfT','C3r5Bgu','t2PoCum','z2vUzxjHDgvtAw1WBgu','ChvZAa','Bw0VzgqVExL5Eq','ExL5Es1TBs1Kza','BgvUz3rO','rKy0ndCYqZq','ExL5Es9TBs9Kza','ChjLChjVy2vZC1rLEhrsB3C','AKzdvKC','v29YA2jVB2S','lI9SB2DNzxi','mtq5n0PMCMnzEa','z2v0rxHJzwXgB3jTyxq','CgfKu3rHCNq','zM9YBwf0q2vSBa','DgzJq0m','CM91BMq','wLrJzfi','BwfW','BNvTrM10','rLHWBfm','r216qMK','Dg9mB3DLCKnHC2u','mZjQvK5qvey','ru9Tr24','uhPYELm','Dg5KCvy','zMLSBa','t3bnvMO','zxHJzwXFz2vUzxjHDgLVBL9ZDgfYDa','Chjgr2C','BNvTyMvY','DMfSDwu','D2vss00','y29SDw1UCW','BNHby2K','Au1HA24','iLjWiciJlcmJma','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','C2XPy2u','yxbWBhLsB3DgB3jTyxr0Aw5N','zMLSDgvY','nZuXntyYmuTAEKDPwq','tNf6wLG','ywrKv29YA3nOzwv0','mJi3odGYnwr3AeLXwG','C29SAwq','nty3ndG0BgPpvhHA','ywXPz25Tzw50','yMzRAwy','zgf0zq','rgf0yq','z2vUzxjHDgvtDhjLyw1PBMC','Dgv4Da','t3vPs3i','BwLKzgXL','z05uDKu','z2v0q2vSBa','Aw5MBW','DhLWzq','Chr2tve','AM9PBG','mJa1odG3nwvMD29AuW','Bwf0y2G','z2v0vvrdrgf0zq','EgXZEa','rxHJzwWGz2vUzxjHDgLVBIbZDgfYDgvK','y2H1BMTtAxPL','zM9YBwf0sgvHzgvY','ohnXB2D5ra','y2vPBa','vfLvyMS','yxbWBhLdzwXSrM9YBwf0DgLUzW','A1jiuLq'];a0_0x4f11=function(){return _0x1dd60;};return a0_0x4f11();}class ExcelGenerator{constructor(){const _0x19cc67=a0_0x3edcc2,_0x1b5796={'OpMVj':function(_0x32a57c,_0x2236f6,_0x4aaf6e){return _0x32a57c(_0x2236f6,_0x4aaf6e);}};this[_0x19cc67(0x1c1)]=_0x1b5796[_0x19cc67(0x1fc)](parseInt,process['env']['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async['generate'](_0x148ef4){const _0x500911=a0_0x3edcc2,_0x3932e1={'TYUbk':'auto','sdffB':_0x500911(0x1c0)},{data:_0x28a169,columns:_0x3b36e7,columnFormats:_0x4ae285,fieldLabels:_0x5a591e,filePath:_0x509aee,onProgress:_0x5749f7}=_0x148ef4;logger['info']({'event':_0x500911(0x1fd),'rows':_0x28a169['length'],'columns':_0x3b36e7?.['length']||_0x3932e1[_0x500911(0x1c5)],'columnFormats':_0x4ae285?Object[_0x500911(0x1c9)](_0x4ae285):null,'fieldLabels':_0x5a591e?Object[_0x500911(0x1c9)](_0x5a591e):null,'streaming':_0x28a169['length']>this['chunkSize']},_0x3932e1['sdffB']);if(_0x28a169['length']<=this['chunkSize'])return await this[_0x500911(0x1e0)](_0x28a169,_0x3b36e7,_0x4ae285,_0x5a591e,_0x509aee,_0x5749f7);return await this['generateStreaming'](_0x28a169,_0x3b36e7,_0x4ae285,_0x5a591e,_0x509aee,_0x5749f7);}async['generateSimple'](_0x26aa19,_0x351602,_0x32ca46,_0x49fe8c,_0x148f57,_0x2932bc){const _0x4b941c=a0_0x3edcc2,_0x31a7b9={'tndqV':function(_0x5a4702,_0x2a8cdc){return _0x5a4702!==_0x2a8cdc;},'FGEHo':function(_0x1d8a58,_0x4ffc97){return _0x1d8a58>_0x4ffc97;},'YfAdJ':_0x4b941c(0x1d4),'pLVRN':_0x4b941c(0x1dc),'ZTcdR':_0x4b941c(0x1ac),'sKrIo':'frozen','ENAff':function(_0x277f1c,_0x300af0){return _0x277f1c(_0x300af0);},'prFGg':'excel_generation_complete','PPulI':'Excel\x20generated\x20(simple\x20method)'},_0x24f3b8=new ExcelJS[(_0x4b941c(0x1e9))](),_0x45f54e=_0x24f3b8['addWorksheet'](_0x4b941c(0x1b1)),_0x33dd08=_0x351602||(_0x31a7b9['FGEHo'](_0x26aa19[_0x4b941c(0x1e4)],0x0)?Object[_0x4b941c(0x1c9)](_0x26aa19[0x0]):[]);_0x45f54e[_0x4b941c(0x202)]=_0x33dd08[_0x4b941c(0x1f2)](_0x84c897=>{const _0x8c833b=_0x4b941c,_0x9afa71={'header':this[_0x8c833b(0x1c2)](_0x84c897,_0x49fe8c),'key':_0x84c897,'width':0x14};if(_0x32ca46&&_0x32ca46[_0x84c897]){const _0x55fb36=_0x32ca46[_0x84c897];if(_0x55fb36['type']&&_0x31a7b9[_0x8c833b(0x1fa)](_0x55fb36['type']['toLowerCase'](),'date')){const _0x2c834a=this['getExcelFormat'](_0x55fb36);_0x2c834a&&(_0x9afa71['style']={'numFmt':_0x2c834a});}}return _0x9afa71;}),_0x45f54e['getRow'](0x1)['font']={'bold':!![],'color':{'argb':_0x31a7b9['YfAdJ']}},_0x45f54e[_0x4b941c(0x1d0)](0x1)[_0x4b941c(0x1fb)]={'type':_0x31a7b9['pLVRN'],'pattern':_0x31a7b9[_0x4b941c(0x1f1)],'fgColor':{'argb':_0x4b941c(0x1e5)}},_0x45f54e[_0x4b941c(0x1d0)](0x1)[_0x4b941c(0x1ae)]={'vertical':'middle','horizontal':'center'};const _0x4a172d=_0x32ca46?this[_0x4b941c(0x206)](_0x26aa19,_0x33dd08,_0x32ca46):_0x26aa19;return _0x45f54e['addRows'](_0x4a172d),_0x32ca46&&this[_0x4b941c(0x1c6)](_0x45f54e,_0x33dd08,_0x32ca46,_0x26aa19['length']),_0x2932bc&&await _0x2932bc(0x32),_0x45f54e[_0x4b941c(0x1cd)]={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x33dd08[_0x4b941c(0x1e4)]}},_0x45f54e['views']=[{'state':_0x31a7b9['sKrIo'],'xSplit':0x0,'ySplit':0x1}],await _0x24f3b8[_0x4b941c(0x1bf)]['writeFile'](_0x148f57),_0x2932bc&&await _0x31a7b9['ENAff'](_0x2932bc,0x64),logger['info']({'event':_0x31a7b9[_0x4b941c(0x1fe)],'method':'simple','rows':_0x26aa19[_0x4b941c(0x1e4)]},_0x31a7b9['PPulI']),_0x148f57;}async[a0_0x3edcc2(0x1b2)](_0x4e9196,_0x531e0b,_0x7a9072,_0x5c4a63,_0x867df6,_0x1bcc59){const _0x4b1732=a0_0x3edcc2,_0xb4d106={'zFbjV':function(_0x454a9a,_0x61fea){return _0x454a9a+_0x61fea;},'rWlHc':function(_0xba4748,_0x5ebbe3){return _0xba4748!==_0x5ebbe3;},'TuabA':_0x4b1732(0x1b0),'wvlDU':'pattern','WCOIp':'FF4472C4','gIduF':function(_0x515bbd,_0x379b8a){return _0x515bbd<_0x379b8a;},'FXplS':function(_0x29ad7a,_0x273906){return _0x29ad7a/_0x273906;},'OjNqC':_0x4b1732(0x1c8)},_0x2d1019=new ExcelJS[(_0x4b1732(0x1dd))]['xlsx']['WorkbookWriter']({'filename':_0x867df6,'useStyles':!![],'useSharedStrings':!![]}),_0x470dd6=_0x2d1019[_0x4b1732(0x1aa)]('Data'),_0x2d7f5e=_0x531e0b||(_0x4e9196['length']>0x0?Object['keys'](_0x4e9196[0x0]):[]),_0x5a1c36={};_0x2d7f5e['forEach']((_0x56d4d3,_0x352e9e)=>{_0x5a1c36[_0x56d4d3]=_0xb4d106['zFbjV'](_0x352e9e,0x1);}),_0x470dd6['columns']=_0x2d7f5e['map'](_0x350bee=>{const _0x53d748=_0x4b1732,_0x130835={'header':this['formatHeader'](_0x350bee,_0x5c4a63),'key':_0x350bee,'width':0x14};if(_0x7a9072&&_0x7a9072[_0x350bee]){const _0x343232=_0x7a9072[_0x350bee];if(_0x343232[_0x53d748(0x1b9)]&&_0xb4d106['rWlHc'](_0x343232['type']['toLowerCase'](),_0xb4d106[_0x53d748(0x1d8)])){const _0x1e777c=this['getExcelFormat'](_0x343232);_0x1e777c&&(_0x130835[_0x53d748(0x1de)]={'numFmt':_0x1e777c});}}return _0x130835;});const _0x198413=_0x470dd6[_0x4b1732(0x1d0)](0x1);_0x198413['font']={'bold':!![],'color':{'argb':_0x4b1732(0x1d4)}},_0x198413[_0x4b1732(0x1fb)]={'type':_0xb4d106['wvlDU'],'pattern':'solid','fgColor':{'argb':_0xb4d106['WCOIp']}},_0x198413[_0x4b1732(0x1ae)]={'vertical':_0x4b1732(0x1b5),'horizontal':'center'},_0x198413[_0x4b1732(0x1d1)]();const _0xbeb576=_0x4e9196['length'];let _0x43f10d=0x0;for(let _0x6d5823=0x0;_0xb4d106['gIduF'](_0x6d5823,_0xbeb576);_0x6d5823+=this[_0x4b1732(0x1c1)]){const _0x46264e=_0x4e9196[_0x4b1732(0x1a5)](_0x6d5823,_0x6d5823+this['chunkSize']);for(const _0x32ec35 of _0x46264e){const _0x20184b=_0x7a9072?this['preprocessTextRow'](_0x32ec35,_0x2d7f5e,_0x7a9072):_0x32ec35,_0xdadc63=_0x470dd6[_0x4b1732(0x1cb)](_0x20184b);_0x7a9072&&this[_0x4b1732(0x1a6)](_0xdadc63,_0x20184b,_0x2d7f5e,_0x7a9072),_0xdadc63[_0x4b1732(0x1d1)](),_0x43f10d++;}if(_0x1bcc59){const _0x3ca8cd=Math[_0x4b1732(0x1f0)](_0x43f10d/_0xbeb576*0x64);await _0x1bcc59(_0x3ca8cd);}logger['debug']({'event':'excel_chunk_processed','processed':_0x43f10d,'total':_0xbeb576},'Processed\x20'+_0x43f10d+'/'+_0xbeb576+'\x20rows');}return _0x470dd6['commit'](),await _0x2d1019[_0x4b1732(0x1d1)](),logger[_0x4b1732(0x1b8)]({'event':'excel_generation_complete','method':_0x4b1732(0x1db),'rows':_0xbeb576,'chunks':Math[_0x4b1732(0x1c4)](_0xb4d106[_0x4b1732(0x1f4)](_0xbeb576,this['chunkSize']))},_0xb4d106[_0x4b1732(0x1df)]),_0x867df6;}['formatHeader'](_0x5cadaf,_0xd03e27){if(_0xd03e27&&_0xd03e27[_0x5cadaf])return _0xd03e27[_0x5cadaf];return String(_0x5cadaf)['toUpperCase']();}['validateColumns'](_0xee6f58,_0x3184ef){const _0x1faa4c=a0_0x3edcc2,_0x23d98a={'JgFwA':function(_0x2392ac,_0xed2c18){return _0x2392ac===_0xed2c18;},'GwLCB':function(_0xefaeff,_0x5c1631){return _0xefaeff>_0x5c1631;}};if(!_0x3184ef||_0x23d98a['JgFwA'](_0x3184ef[_0x1faa4c(0x1e4)],0x0))return!![];if(_0xee6f58['length']===0x0)return!![];const _0x426977=Object[_0x1faa4c(0x1c9)](_0xee6f58[0x0]),_0x4a444e=_0x3184ef[_0x1faa4c(0x1a7)](_0x1859ef=>!_0x426977['includes'](_0x1859ef));if(_0x23d98a['GwLCB'](_0x4a444e['length'],0x0))throw new Error('Invalid\x20columns:\x20'+_0x4a444e[_0x1faa4c(0x1bb)](',\x20'));return!![];}[a0_0x3edcc2(0x1ec)](_0x16b4de){const _0x3e99f3=a0_0x3edcc2,_0x3e2ca9={'zZRoD':'number','mVGEY':'#,##0.00','OuiKr':function(_0x3b1ab0,_0x1efeb7){return _0x3b1ab0||_0x1efeb7;},'qCUAq':'0.00%','EOmGn':'text'};if(!_0x16b4de||!_0x16b4de['type'])return null;const {type:_0x7d1877,format:_0x3e0e2d}=_0x16b4de;switch(_0x7d1877[_0x3e99f3(0x1f6)]()){case _0x3e99f3(0x1b0):return _0x3e0e2d?_0x3e0e2d['toLowerCase']():'dd/mm/yyyy';case _0x3e2ca9['zZRoD']:return _0x3e0e2d||_0x3e2ca9[_0x3e99f3(0x1cc)];case'currency':return _0x3e2ca9[_0x3e99f3(0x1b4)](_0x3e0e2d,_0x3e99f3(0x205));case'percentage':return _0x3e0e2d||_0x3e2ca9['qCUAq'];case _0x3e2ca9[_0x3e99f3(0x1f8)]:return'@';default:return null;}}['applyCellFormatting'](_0x1b9092,_0x12b6b4,_0x4f983c,_0x44115a){if(!_0x4f983c)return;_0x12b6b4['forEach']((_0x56fae8,_0x25da19)=>{const _0x17e5bf=a0_0x58c2,_0x4bd868=_0x4f983c[_0x56fae8];if(!_0x4bd868)return;const _0x2a37fd=_0x25da19+0x1;for(let _0x183318=0x2;_0x183318<=_0x44115a+0x1;_0x183318++){const _0x5422ed=_0x1b9092[_0x17e5bf(0x1b7)](_0x183318,_0x2a37fd);this[_0x17e5bf(0x1ee)](_0x5422ed,_0x4bd868);}});}['applyRowFormatting'](_0x12d1e2,_0x595436,_0x331e34,_0x39ddf3){const _0x31c032=a0_0x3edcc2,_0x55c0fe={'ptvMQ':function(_0x17d4f1,_0x553175){return _0x17d4f1+_0x553175;}};if(!_0x39ddf3)return;_0x331e34[_0x31c032(0x1d6)]((_0x16f8d4,_0x598e88)=>{const _0x4e8f83=_0x31c032,_0x251f43=_0x39ddf3[_0x16f8d4];if(!_0x251f43)return;const _0x249476=_0x12d1e2[_0x4e8f83(0x1b7)](_0x55c0fe[_0x4e8f83(0x1ba)](_0x598e88,0x1));this[_0x4e8f83(0x1ee)](_0x249476,_0x251f43);});}[a0_0x3edcc2(0x1ee)](_0x22e21f,_0x2cd92f){const _0x46a849=a0_0x3edcc2,_0x8dfc20={'bfkif':function(_0x126259,_0x1c00cd){return _0x126259===_0x1c00cd;},'lSoIh':function(_0x5a4f4e,_0x1d3798){return _0x5a4f4e===_0x1d3798;},'GmzBi':'currency','EscDc':'percentage','mklQx':'string','HSzZL':function(_0x14c18e,_0x411d08){return _0x14c18e(_0x411d08);},'waZVz':'left','USxAB':_0x46a849(0x1b5)};if(!_0x2cd92f||!_0x2cd92f['type'])return;const {type:_0x157fd2,format:_0x5b2512}=_0x2cd92f;if(_0x8dfc20[_0x46a849(0x1af)](_0x157fd2[_0x46a849(0x1f6)](),_0x46a849(0x1b0))&&_0x22e21f['value']){const _0x27da00=this['formatDateString'](_0x22e21f['value'],_0x5b2512);_0x27da00&&(_0x22e21f['value']=_0x27da00);return;}if((_0x8dfc20['lSoIh'](_0x157fd2[_0x46a849(0x1f6)](),'number')||_0x157fd2[_0x46a849(0x1f6)]()===_0x8dfc20[_0x46a849(0x1f5)]||_0x157fd2['toLowerCase']()===_0x8dfc20['EscDc'])&&_0x22e21f[_0x46a849(0x200)]){const _0x9f884b=this[_0x46a849(0x1cf)](_0x22e21f[_0x46a849(0x200)]);if(_0x9f884b!==null){_0x22e21f[_0x46a849(0x200)]=_0x9f884b;const _0x792813=this[_0x46a849(0x1ec)](_0x2cd92f);_0x792813&&(_0x22e21f['numFmt']=_0x792813);}}_0x157fd2['toLowerCase']()===_0x46a849(0x1b3)&&_0x22e21f[_0x46a849(0x200)]&&(_0x22e21f[_0x46a849(0x1f3)]='@',typeof _0x22e21f[_0x46a849(0x200)]!==_0x8dfc20[_0x46a849(0x1d2)]&&(_0x22e21f[_0x46a849(0x200)]=_0x8dfc20['HSzZL'](String,_0x22e21f['value'])),_0x22e21f[_0x46a849(0x1ae)]={'horizontal':_0x8dfc20['waZVz'],'vertical':_0x8dfc20['USxAB']});}[a0_0x3edcc2(0x1d9)](_0x2fe15f,_0x1c4c8a){const _0x425147=a0_0x3edcc2,_0x50b345={'PzrzS':function(_0x91d863,_0x585609){return _0x91d863===_0x585609;},'NLnoT':'string','DpZUb':function(_0x191b11,_0x2fa234,_0x45c1b4){return _0x191b11(_0x2fa234,_0x45c1b4);},'uhyri':function(_0x545f91,_0x1ea5bd,_0xdf40d8){return _0x545f91(_0x1ea5bd,_0xdf40d8);},'VGmML':function(_0x2022bf,_0x23b639){return _0x2022bf(_0x23b639);},'kRHRT':function(_0x14534b,_0x2d2762){return _0x14534b||_0x2d2762;},'fzvnf':function(_0x3cc84d,_0x12e99a){return _0x3cc84d(_0x12e99a);},'weRKM':'DD/MM/YYYY','VRBoy':'dd/mm/yyyy','UGVwn':function(_0x527efa,_0x5b1195){return _0x527efa===_0x5b1195;},'iMakn':_0x425147(0x1e2),'GkXrq':_0x425147(0x1e6)};if(!_0x2fe15f)return null;let _0x22fbd9,_0x4bbf6c,_0x6c1c2a;if(_0x2fe15f instanceof Date)_0x22fbd9=_0x2fe15f['getUTCFullYear'](),_0x4bbf6c=_0x2fe15f['getUTCMonth']()+0x1,_0x6c1c2a=_0x2fe15f['getUTCDate']();else{if(_0x50b345[_0x425147(0x1f9)](typeof _0x2fe15f,_0x50b345['NLnoT'])){const _0x3631b0=_0x2fe15f[_0x425147(0x1bd)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x3631b0)_0x22fbd9=parseInt(_0x3631b0[0x1],0xa),_0x4bbf6c=parseInt(_0x3631b0[0x2],0xa),_0x6c1c2a=parseInt(_0x3631b0[0x3],0xa);else{const _0x2d86f1=_0x2fe15f['match'](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x2d86f1)_0x6c1c2a=_0x50b345[_0x425147(0x1da)](parseInt,_0x2d86f1[0x1],0xa),_0x4bbf6c=parseInt(_0x2d86f1[0x2],0xa),_0x22fbd9=_0x50b345['uhyri'](parseInt,_0x2d86f1[0x3],0xa);else{const _0x2d75ed=_0x2fe15f['match'](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x2d75ed&&(_0x22fbd9=parseInt(_0x2d75ed[0x1],0xa),_0x4bbf6c=parseInt(_0x2d75ed[0x2],0xa),_0x6c1c2a=parseInt(_0x2d75ed[0x3],0xa));}}}else{if(typeof _0x2fe15f===_0x425147(0x1ff)){const _0xa81ead=new Date(_0x2fe15f);!_0x50b345['VGmML'](isNaN,_0xa81ead['getTime']())&&(_0x22fbd9=_0xa81ead['getUTCFullYear'](),_0x4bbf6c=_0xa81ead[_0x425147(0x1d7)]()+0x1,_0x6c1c2a=_0xa81ead[_0x425147(0x1be)]());}}}if(_0x50b345[_0x425147(0x1c7)](!_0x22fbd9,!_0x4bbf6c)||!_0x6c1c2a)return null;const _0x2e603b=String(_0x6c1c2a)[_0x425147(0x1ed)](0x2,'0'),_0x3ee56a=String(_0x4bbf6c)[_0x425147(0x1ed)](0x2,'0'),_0x1286d3=_0x50b345['fzvnf'](String,_0x22fbd9),_0x8527eb=(_0x1c4c8a||_0x50b345[_0x425147(0x201)])[_0x425147(0x1f6)]();if(_0x50b345['PzrzS'](_0x8527eb,_0x50b345['VRBoy']))return _0x2e603b+'/'+_0x3ee56a+'/'+_0x1286d3;else{if(_0x50b345[_0x425147(0x1ce)](_0x8527eb,_0x50b345[_0x425147(0x204)]))return _0x3ee56a+'/'+_0x2e603b+'/'+_0x1286d3;else{if(_0x8527eb===_0x425147(0x1e3))return _0x1286d3+'-'+_0x3ee56a+'-'+_0x2e603b;else{if(_0x8527eb==='dd-mm-yyyy')return _0x2e603b+'-'+_0x3ee56a+'-'+_0x1286d3;else return _0x8527eb===_0x50b345['GkXrq']?_0x1286d3+'/'+_0x3ee56a+'/'+_0x2e603b:_0x2e603b+'/'+_0x3ee56a+'/'+_0x1286d3;}}}}['parseNumber'](_0x2a71a1){const _0x28046d=a0_0x3edcc2;if(typeof _0x2a71a1===_0x28046d(0x1ff))return _0x2a71a1;if(typeof _0x2a71a1==='string'){const _0x35d3c4=_0x2a71a1['replace'](/[^\d.-]/g,''),_0x3c82f8=parseFloat(_0x35d3c4);if(!isNaN(_0x3c82f8))return _0x3c82f8;}return null;}['preprocessTextColumns'](_0x12c4f4,_0x314d03,_0x269fe6){const _0x574d59={'tfcCC':function(_0x4ee2fc,_0x27ae95){return _0x4ee2fc===_0x27ae95;},'IJrxq':function(_0x4456f5,_0x50bc5c){return _0x4456f5!==_0x50bc5c;}};if(!_0x269fe6)return _0x12c4f4;const _0x1bd31c=[];_0x314d03['forEach'](_0x745752=>{const _0x182ce1=a0_0x58c2,_0x4e6217=_0x269fe6[_0x745752];_0x4e6217&&_0x4e6217['type']&&_0x574d59[_0x182ce1(0x1ef)](_0x4e6217['type'][_0x182ce1(0x1f6)](),'text')&&_0x1bd31c['push'](_0x745752);});if(_0x574d59['tfcCC'](_0x1bd31c['length'],0x0))return _0x12c4f4;return _0x12c4f4['map'](_0x30ce5f=>{const _0x43662c={'jFCVG':function(_0x14505a,_0x19300c){return _0x14505a!==_0x19300c;},'gNTvE':function(_0x3cf38d,_0x3dc50b){return _0x574d59['IJrxq'](_0x3cf38d,_0x3dc50b);},'OTQgM':function(_0x419e98,_0x5640fb){return _0x419e98+_0x5640fb;},'vWPJt':function(_0x506cde,_0x24238e){return _0x506cde(_0x24238e);}},_0x466e71={..._0x30ce5f};return _0x1bd31c['forEach'](_0x5323=>{const _0x2e7b2a=a0_0x58c2;_0x43662c[_0x2e7b2a(0x1e8)](_0x466e71[_0x5323],null)&&_0x43662c[_0x2e7b2a(0x1b6)](_0x466e71[_0x5323],undefined)&&(_0x466e71[_0x5323]=_0x43662c['OTQgM']('\x27',_0x43662c['vWPJt'](String,_0x466e71[_0x5323])));}),_0x466e71;});}[a0_0x3edcc2(0x1e7)](_0xa9d7fa,_0x71a9a4,_0x442978){const _0x435199=a0_0x3edcc2,_0x2222d5={'nxAci':function(_0x4406e8,_0x4a9692){return _0x4406e8===_0x4a9692;},'izzVB':_0x435199(0x1b3),'NqzZX':function(_0x481327,_0x5d36bf){return _0x481327!==_0x5d36bf;},'vuqUf':function(_0x3a167f,_0x29b2f0){return _0x3a167f+_0x29b2f0;},'dnXTj':function(_0x55dd53,_0x1bef89){return _0x55dd53(_0x1bef89);}};if(!_0x442978)return _0xa9d7fa;const _0x1ef23c=[];_0x71a9a4['forEach'](_0x2c07c3=>{const _0x2c1055=_0x435199,_0x31eec7=_0x442978[_0x2c07c3];_0x31eec7&&_0x31eec7[_0x2c1055(0x1b9)]&&_0x2222d5[_0x2c1055(0x203)](_0x31eec7[_0x2c1055(0x1b9)]['toLowerCase'](),_0x2222d5['izzVB'])&&_0x1ef23c[_0x2c1055(0x1e1)](_0x2c07c3);});if(_0x2222d5[_0x435199(0x203)](_0x1ef23c['length'],0x0))return _0xa9d7fa;const _0x3e4d8f={..._0xa9d7fa};return _0x1ef23c['forEach'](_0x738d09=>{const _0x3e826f=_0x435199;_0x2222d5[_0x3e826f(0x1a9)](_0x3e4d8f[_0x738d09],null)&&_0x2222d5[_0x3e826f(0x1a9)](_0x3e4d8f[_0x738d09],undefined)&&(_0x3e4d8f[_0x738d09]=_0x2222d5['vuqUf']('\x27',_0x2222d5['dnXTj'](String,_0x3e4d8f[_0x738d09])));}),_0x3e4d8f;}}module[a0_0x3edcc2(0x1d3)]=ExcelGenerator;
@@ -1 +1 @@
1
- const a0_0x4eb2de=a0_0x3d53;(function(_0x539214,_0x14faa8){const _0x1671b4=a0_0x3d53,_0x57a66d=_0x539214();while(!![]){try{const _0x20b2f2=-parseInt(_0x1671b4(0xa9))/0x1*(-parseInt(_0x1671b4(0xa0))/0x2)+-parseInt(_0x1671b4(0xb1))/0x3+parseInt(_0x1671b4(0xbe))/0x4*(parseInt(_0x1671b4(0xbd))/0x5)+-parseInt(_0x1671b4(0xbc))/0x6+parseInt(_0x1671b4(0xb2))/0x7+-parseInt(_0x1671b4(0xad))/0x8*(parseInt(_0x1671b4(0x9e))/0x9)+-parseInt(_0x1671b4(0x9a))/0xa*(-parseInt(_0x1671b4(0xaa))/0xb);if(_0x20b2f2===_0x14faa8)break;else _0x57a66d['push'](_0x57a66d['shift']());}catch(_0x36e392){_0x57a66d['push'](_0x57a66d['shift']());}}}(a0_0x1814,0x2c2b5));function a0_0x1814(){const _0xa60b66=['CMLJAfrLEhq','D29YA3nOzwv0CW','ohPIr0npCa','Aw5MBW','vvrABfq','r3bMwve','ntyYmZy4swf3q3vk','mtKYnZKWnxLgBKXuyq','zwfJAfjVDW','C2XPy2u','BNPMqLq','z2v0rNvSBfLLyxi','BgvUz3rO','rxHJzwWGzMLSzsbWyxjZzwqGC3vJy2vZC2z1BgX5','tvDQqLy','BM9YBwfSAxPLq2vSBfzHBhvL','tM8GD29YA3nOzwv0igzVDw5KigLUiev4y2vSigzPBgu','mtm1nZm4menLBwfuAW','nvbxy1fmCG','ntiZmdKYBhDZswzI','CgfYC2vfEgnLBezPBgu','uhrtAui','A1z5C0W','DMfSAwrHDgvfEgnLBfn0CNvJDhvYzq','zxjYB3i','Dg9mB3DLCKnHC2u','C3rYAw5N','CMvWBgfJzq','ndbKC1PItLq','CgfKu3rHCNq','zxHJzwXQCW','BM9YBwfSAxPLsgvHzgvY','mtG1nJu1nNfnA2LNua','B2jQzwn0','nJG5mteWAvPSBejP','DMfSDwvZ','lI9SB2DNzxi','BwfW','jdfFjdi','Cw9IuhO','BwvZC2fNzq','AgfZ','zMLSDgvY','muXvz3zTvG','mtm3odK2wKfQC2zm'];a0_0x1814=function(){return _0xa60b66;};return a0_0x1814();}const ExcelJS=require(a0_0x4eb2de(0x9c)),{logger}=require(a0_0x4eb2de(0xa2));class ExcelParser{async[a0_0x4eb2de(0xbf)](_0x56cd36){const _0x49fbe5=a0_0x4eb2de,_0x3ed1e2={'GpfYQ':_0x49fbe5(0xbb),'goJXR':'excel_parsed','qqfAC':_0x49fbe5(0xb8),'ZifpU':'Failed\x20to\x20parse\x20Excel\x20file'};try{const _0x33762c=new ExcelJS['Workbook']();await _0x33762c['xlsx']['readFile'](_0x56cd36);const _0x381750=_0x33762c[_0x49fbe5(0xac)][0x0];if(!_0x381750)throw new Error(_0x3ed1e2[_0x49fbe5(0xb0)]);const _0x1e3427=[];let _0x3b591f=[];return _0x381750[_0x49fbe5(0xb3)]((_0x2e1bad,_0x4ab123)=>{const _0x184c99=_0x49fbe5,_0x2939d6=_0x2e1bad[_0x184c99(0xa1)];if(_0x4ab123===0x1)_0x3b591f=_0x2939d6[_0x184c99(0xb4)](0x1)['map'](_0x25efe8=>this[_0x184c99(0x9d)](_0x25efe8));else{const _0x1e95e6={};_0x3b591f['forEach']((_0x4c28d4,_0x28b4d4)=>{const _0x47fd1a=_0x184c99,_0x188516=_0x2939d6[_0x28b4d4+0x1];_0x1e95e6[_0x4c28d4]=this[_0x47fd1a(0xba)](_0x188516);}),_0x1e3427['push'](_0x1e95e6);}}),logger[_0x49fbe5(0xae)]({'event':_0x3ed1e2['goJXR'],'filePath':_0x56cd36,'totalRows':_0x1e3427['length'],'headers':_0x3b591f[_0x49fbe5(0xb7)]},_0x3ed1e2['qqfAC']),{'headers':_0x3b591f,'rows':_0x1e3427,'totalRows':_0x1e3427['length']};}catch(_0x37cc11){logger[_0x49fbe5(0x96)]({'event':'excel_parse_error','filePath':_0x56cd36,'error':_0x37cc11['message']},_0x3ed1e2['ZifpU']);throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x37cc11[_0x49fbe5(0xa6)]);}}[a0_0x4eb2de(0x9d)](_0x1679e4){const _0x448bc5=a0_0x4eb2de,_0x348ada={'MWjBV':'$1_$2'};if(_0x1679e4===null||_0x1679e4===undefined)return'';let _0x410940=String(_0x1679e4)['trim']();return _0x410940=_0x410940['replace'](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,_0x348ada[_0x448bc5(0xb9)])[_0x448bc5(0x99)](/([A-Z]+)([A-Z][a-z])/g,_0x448bc5(0xa4))[_0x448bc5(0x97)](),_0x410940;}[a0_0x4eb2de(0xba)](_0x74d2b4){const _0x47c4e2=a0_0x4eb2de,_0x27268c={'UTZlT':function(_0x43601f,_0x459e93){return _0x43601f===_0x459e93;},'nzfBT':function(_0x4517a3,_0x2fd5ff){return _0x4517a3(_0x2fd5ff);},'XSrWI':'string','qobPz':function(_0x38dd02,_0x318c4f){return _0x38dd02(_0x318c4f);},'HdppY':function(_0x3e41b3,_0x31dcf9){return _0x3e41b3===_0x31dcf9;},'kVysL':_0x47c4e2(0x9f)};if(_0x27268c[_0x47c4e2(0xaf)](_0x74d2b4,null)||_0x74d2b4===undefined)return null;if(_0x74d2b4 instanceof Date){const _0x3236e9=_0x74d2b4[_0x47c4e2(0xb6)](),_0x9006ab=_0x27268c[_0x47c4e2(0xb5)](String,_0x74d2b4['getMonth']()+0x1)[_0x47c4e2(0x9b)](0x2,'0'),_0x5743e7=String(_0x74d2b4['getDate']())['padStart'](0x2,'0');return _0x3236e9+'-'+_0x9006ab+'-'+_0x5743e7;}if(_0x27268c[_0x47c4e2(0xaf)](typeof _0x74d2b4,_0x27268c['XSrWI'])){const _0x213ae6=_0x74d2b4['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x213ae6){const _0xaa4a8a=String(_0x213ae6[0x1])[_0x47c4e2(0x9b)](0x2,'0'),_0x163585=_0x27268c[_0x47c4e2(0xa5)](String,_0x213ae6[0x2])[_0x47c4e2(0x9b)](0x2,'0'),_0x46b4b4=_0x213ae6[0x3];return _0x46b4b4+'-'+_0x163585+'-'+_0xaa4a8a;}}if(_0x74d2b4&&_0x27268c['HdppY'](typeof _0x74d2b4,_0x27268c[_0x47c4e2(0xc1)])&&_0x74d2b4[_0x47c4e2(0xab)])return _0x74d2b4[_0x47c4e2(0xab)][_0x47c4e2(0xa3)](_0x250bcd=>_0x250bcd['text'])['join']('');if(_0x74d2b4&&typeof _0x74d2b4===_0x27268c[_0x47c4e2(0xc1)]&&_0x74d2b4['result']!==undefined)return this[_0x47c4e2(0xba)](_0x74d2b4['result']);if(typeof _0x74d2b4===_0x47c4e2(0x98))return _0x74d2b4['trim']();return _0x74d2b4;}[a0_0x4eb2de(0x95)](_0x2f922d,_0x55e3fb){const _0x2275a8=a0_0x4eb2de,_0x4903f3={'PtSiB':function(_0x52cfaa,_0x4ea156){return _0x52cfaa===_0x4ea156;}},_0x487765=new Set(_0x2f922d),_0x386067=new Set(_0x55e3fb),_0x249b3b=_0x55e3fb['filter'](_0x392c1e=>!_0x487765['has'](_0x392c1e)),_0x25493d=_0x2f922d[_0x2275a8(0xa8)](_0x4a8e50=>!_0x386067[_0x2275a8(0xa7)](_0x4a8e50)),_0x2c3e44=_0x4903f3[_0x2275a8(0xc0)](_0x249b3b[_0x2275a8(0xb7)],0x0);return{'valid':_0x2c3e44,'missingFields':_0x249b3b,'extraFields':_0x25493d};}}function a0_0x3d53(_0x43c26c,_0x4e50a7){_0x43c26c=_0x43c26c-0x95;const _0x1814d2=a0_0x1814();let _0x3d53ee=_0x1814d2[_0x43c26c];if(a0_0x3d53['GxiJfE']===undefined){var _0x3367bf=function(_0x58f028){const _0x27eccf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1d8bb0='',_0x5f509f='';for(let _0x3f04ff=0x0,_0x566638,_0x430bef,_0x42a9a4=0x0;_0x430bef=_0x58f028['charAt'](_0x42a9a4++);~_0x430bef&&(_0x566638=_0x3f04ff%0x4?_0x566638*0x40+_0x430bef:_0x430bef,_0x3f04ff++%0x4)?_0x1d8bb0+=String['fromCharCode'](0xff&_0x566638>>(-0x2*_0x3f04ff&0x6)):0x0){_0x430bef=_0x27eccf['indexOf'](_0x430bef);}for(let _0x196a4f=0x0,_0x1beb19=_0x1d8bb0['length'];_0x196a4f<_0x1beb19;_0x196a4f++){_0x5f509f+='%'+('00'+_0x1d8bb0['charCodeAt'](_0x196a4f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5f509f);};a0_0x3d53['OLhzvZ']=_0x3367bf,a0_0x3d53['YkqWgh']={},a0_0x3d53['GxiJfE']=!![];}const _0x2f0fa2=_0x1814d2[0x0],_0x5a120a=_0x43c26c+_0x2f0fa2,_0x37bc75=a0_0x3d53['YkqWgh'][_0x5a120a];return!_0x37bc75?(_0x3d53ee=a0_0x3d53['OLhzvZ'](_0x3d53ee),a0_0x3d53['YkqWgh'][_0x5a120a]=_0x3d53ee):_0x3d53ee=_0x37bc75,_0x3d53ee;}module['exports']=new ExcelParser();
1
+ const a0_0x563120=a0_0x15f2;(function(_0x56992e,_0x3dd032){const _0xdf241b=a0_0x15f2,_0x3543aa=_0x56992e();while(!![]){try{const _0x248009=parseInt(_0xdf241b(0x101))/0x1*(parseInt(_0xdf241b(0xfa))/0x2)+parseInt(_0xdf241b(0xdb))/0x3*(-parseInt(_0xdf241b(0x107))/0x4)+-parseInt(_0xdf241b(0xe7))/0x5*(parseInt(_0xdf241b(0xe2))/0x6)+parseInt(_0xdf241b(0x108))/0x7+-parseInt(_0xdf241b(0xe3))/0x8*(-parseInt(_0xdf241b(0xe9))/0x9)+-parseInt(_0xdf241b(0x105))/0xa+parseInt(_0xdf241b(0xe1))/0xb;if(_0x248009===_0x3dd032)break;else _0x3543aa['push'](_0x3543aa['shift']());}catch(_0x1fde14){_0x3543aa['push'](_0x3543aa['shift']());}}}(a0_0x324f,0xca2e7));function a0_0x324f(){const _0x37bd1c=['Bwf0y2G','DhjPBq','DMfSAwrHDgvfEgnLBfn0CNvJDhvYzq','BM9YBwfSAxPLq2vSBfzHBhvL','z2v0rgf0zq','AM9PBG','mtaWotHiD2X6Cgy','CMLJAfrLEhq','CgfYC2vfEgnLBezPBgu','ELHtAMe','mtq1oti5mezWBwHzyG','rxHJzwWGzMLSzsbWyxjZzwqGC3vJy2vZC2z1BgX5','mtzqy05jEwW','mJqYntC2nM1Qt1LOrG','nJiZnJy3we9dze54','Aw5MBW','Dgv4Da','BM9YBwfSAxPLsgvHzgvY','zxHJzwXQCW','BwfW','ody0ota2ouz0rgLtCG','mZzHBvPSBeO','mJmYAurKs1PV','EvPts0y','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu6ia','mta3nde5mfDowwLrsq','jdfFjdi','mtC5nta1r0Hsvwfo','BgvUz3rO','z2v0tw9UDgG','zfD5Ahm','CMvWBgfJzq','DMfSDwvZ','C2XPy2u','CgfKu3rHCNq','C3rYAw5N','CMvZDwX0','Cuj2Duy','B2jQzwn0','Dg9mB3DLCKnHC2u','zxHJzwXFCgfYC2vK','qunWD04','BwvZC2fNzq','zMLSDgvY','mJC0DM5ur3DW'];a0_0x324f=function(){return _0x37bd1c;};return a0_0x324f();}const ExcelJS=require(a0_0x563120(0xdf)),{logger}=require('./logger');class ExcelParser{async[a0_0x563120(0x103)](_0x506a5c){const _0x2941a7=a0_0x563120,_0x267bba={'ACpwN':function(_0x1dd1fa,_0x130749){return _0x1dd1fa===_0x130749;},'qNTKC':_0x2941a7(0xf6),'dWyhs':'excel_parse_error'};try{const _0x2a692e=new ExcelJS['Workbook']();await _0x2a692e['xlsx']['readFile'](_0x506a5c);const _0x5d13ae=_0x2a692e['worksheets'][0x0];if(!_0x5d13ae)throw new Error('No\x20worksheet\x20found\x20in\x20Excel\x20file');const _0x35c2ac=[];let _0x2dd1ef=[];return _0x5d13ae['eachRow']((_0x5a6f17,_0x3ba153)=>{const _0x2e1cef=_0x2941a7,_0x55d455={'gMTZx':function(_0x333236,_0x5d92a0){return _0x333236+_0x5d92a0;}},_0x3684d5=_0x5a6f17[_0x2e1cef(0xee)];if(_0x267bba[_0x2e1cef(0xf7)](_0x3ba153,0x1))_0x2dd1ef=_0x3684d5[_0x2e1cef(0xef)](0x1)[_0x2e1cef(0xe0)](_0x478d19=>this[_0x2e1cef(0xde)](_0x478d19));else{const _0x2ba7cf={};_0x2dd1ef['forEach']((_0xeb948a,_0x2c9017)=>{const _0x5aca7d=_0x2e1cef,_0x5a9854=_0x3684d5[_0x55d455['gMTZx'](_0x2c9017,0x1)];_0x2ba7cf[_0xeb948a]=this[_0x5aca7d(0xfe)](_0x5a9854);}),_0x35c2ac['push'](_0x2ba7cf);}}),logger[_0x2941a7(0xdc)]({'event':_0x267bba['qNTKC'],'filePath':_0x506a5c,'totalRows':_0x35c2ac['length'],'headers':_0x2dd1ef[_0x2941a7(0xea)]},_0x2941a7(0x106)),{'headers':_0x2dd1ef,'rows':_0x35c2ac,'totalRows':_0x35c2ac[_0x2941a7(0xea)]};}catch(_0x608960){logger['error']({'event':_0x267bba[_0x2941a7(0xec)],'filePath':_0x506a5c,'error':_0x608960['message']},_0x2941a7(0xe5));throw new Error(_0x2941a7(0xe6)+_0x608960[_0x2941a7(0xf8)]);}}[a0_0x563120(0xde)](_0x34bfa5){const _0xded6d=a0_0x563120,_0xd64522={'qBvuF':_0xded6d(0xe8)};if(_0x34bfa5===null||_0x34bfa5===undefined)return'';let _0x49dcda=String(_0x34bfa5)[_0xded6d(0xfc)]();return _0x49dcda=_0x49dcda[_0xded6d(0xed)](/\s+/g,'_')[_0xded6d(0xed)](/([a-z])([A-Z])/g,_0xd64522['qBvuF'])[_0xded6d(0xed)](/([A-Z]+)([A-Z][a-z])/g,_0xd64522[_0xded6d(0xf3)])[_0xded6d(0xf5)](),_0x49dcda;}[a0_0x563120(0xfe)](_0x200576){const _0x295b49=a0_0x563120,_0x44b4ec={'yZSKF':function(_0x524025,_0x31a913){return _0x524025(_0x31a913);},'zXSja':_0x295b49(0xf4),'LoBNW':function(_0x6f7078,_0x3bdac4){return _0x6f7078===_0x3bdac4;}};if(_0x200576===null||_0x200576===undefined)return null;if(_0x200576 instanceof Date){const _0x10b357=_0x200576['getFullYear'](),_0xa35654=String(_0x200576[_0x295b49(0xeb)]()+0x1)['padStart'](0x2,'0'),_0xd28c65=String(_0x200576[_0x295b49(0xff)]())[_0x295b49(0xf0)](0x2,'0');return _0x10b357+'-'+_0xa35654+'-'+_0xd28c65;}if(typeof _0x200576===_0x295b49(0xf1)){const _0x3e7397=_0x200576[_0x295b49(0xfb)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x3e7397){const _0xcde6d6=String(_0x3e7397[0x1])['padStart'](0x2,'0'),_0x13c54a=_0x44b4ec[_0x295b49(0xe4)](String,_0x3e7397[0x2])['padStart'](0x2,'0'),_0x3c5788=_0x3e7397[0x3];return _0x3c5788+'-'+_0x13c54a+'-'+_0xcde6d6;}}if(_0x200576&&typeof _0x200576===_0x44b4ec[_0x295b49(0x104)]&&_0x200576[_0x295b49(0x102)])return _0x200576[_0x295b49(0x102)]['map'](_0x57f3fc=>_0x57f3fc[_0x295b49(0xdd)])[_0x295b49(0x100)]('');if(_0x200576&&_0x44b4ec['LoBNW'](typeof _0x200576,'object')&&_0x200576[_0x295b49(0xf2)]!==undefined)return this[_0x295b49(0xfe)](_0x200576[_0x295b49(0xf2)]);if(_0x44b4ec['LoBNW'](typeof _0x200576,'string'))return _0x200576[_0x295b49(0xfc)]();return _0x200576;}[a0_0x563120(0xfd)](_0x2e670e,_0x138de2){const _0x2d8af9=a0_0x563120,_0x3e081d=new Set(_0x2e670e),_0x3276ea=new Set(_0x138de2),_0x5db319=_0x138de2['filter'](_0x2e7107=>!_0x3e081d['has'](_0x2e7107)),_0x194c16=_0x2e670e[_0x2d8af9(0xf9)](_0x206a38=>!_0x3276ea['has'](_0x206a38)),_0x3d7cc8=_0x5db319['length']===0x0;return{'valid':_0x3d7cc8,'missingFields':_0x5db319,'extraFields':_0x194c16};}}function a0_0x15f2(_0x31bddb,_0x49052d){_0x31bddb=_0x31bddb-0xdb;const _0x324ffc=a0_0x324f();let _0x15f243=_0x324ffc[_0x31bddb];if(a0_0x15f2['hoQHMT']===undefined){var _0x2d747e=function(_0x40a9de){const _0x488d62='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1754bd='',_0x79e68e='';for(let _0x3e8e38=0x0,_0xc644c7,_0x28dbfc,_0x1a8bcb=0x0;_0x28dbfc=_0x40a9de['charAt'](_0x1a8bcb++);~_0x28dbfc&&(_0xc644c7=_0x3e8e38%0x4?_0xc644c7*0x40+_0x28dbfc:_0x28dbfc,_0x3e8e38++%0x4)?_0x1754bd+=String['fromCharCode'](0xff&_0xc644c7>>(-0x2*_0x3e8e38&0x6)):0x0){_0x28dbfc=_0x488d62['indexOf'](_0x28dbfc);}for(let _0x3409ab=0x0,_0x360f96=_0x1754bd['length'];_0x3409ab<_0x360f96;_0x3409ab++){_0x79e68e+='%'+('00'+_0x1754bd['charCodeAt'](_0x3409ab)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x79e68e);};a0_0x15f2['nfXwbG']=_0x2d747e,a0_0x15f2['GLEcls']={},a0_0x15f2['hoQHMT']=!![];}const _0x1d014d=_0x324ffc[0x0],_0x1c0f8e=_0x31bddb+_0x1d014d,_0x137c34=a0_0x15f2['GLEcls'][_0x1c0f8e];return!_0x137c34?(_0x15f243=a0_0x15f2['nfXwbG'](_0x15f243),a0_0x15f2['GLEcls'][_0x1c0f8e]=_0x15f243):_0x15f243=_0x137c34,_0x15f243;}module['exports']=new ExcelParser();
@@ -1 +1 @@
1
- const a0_0x112c38=a0_0x2ef5;(function(_0x4d9c9c,_0x154ca8){const _0x587a83=a0_0x2ef5,_0x5178bd=_0x4d9c9c();while(!![]){try{const _0x4b554b=-parseInt(_0x587a83(0x109))/0x1+-parseInt(_0x587a83(0x16a))/0x2*(-parseInt(_0x587a83(0x110))/0x3)+-parseInt(_0x587a83(0x10e))/0x4+-parseInt(_0x587a83(0x125))/0x5*(-parseInt(_0x587a83(0x135))/0x6)+-parseInt(_0x587a83(0xfd))/0x7*(parseInt(_0x587a83(0x167))/0x8)+parseInt(_0x587a83(0x16c))/0x9*(-parseInt(_0x587a83(0x15e))/0xa)+parseInt(_0x587a83(0x100))/0xb;if(_0x4b554b===_0x154ca8)break;else _0x5178bd['push'](_0x5178bd['shift']());}catch(_0x1f1cb4){_0x5178bd['push'](_0x5178bd['shift']());}}}(a0_0x3c08,0x2f616));const {v7:uuidv7}=require(a0_0x112c38(0x117)),path=require(a0_0x112c38(0x175)),fs=require('fs')['promises'],fsSync=require('fs'),redisHelper=require('../caching/redis-helper'),{logger,logError}=require(a0_0x112c38(0x101)),dbType=(process[a0_0x112c38(0x136)]['DB_TYPE']||'postgresql')['toLowerCase']();let executeQuery;function a0_0x2ef5(_0x232be9,_0x27e594){_0x232be9=_0x232be9-0xeb;const _0x3c0837=a0_0x3c08();let _0x2ef520=_0x3c0837[_0x232be9];if(a0_0x2ef5['rtQitX']===undefined){var _0x15153f=function(_0x353edb){const _0xebb821='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xaf9fc1='',_0x310044='';for(let _0x46543f=0x0,_0x5ede77,_0x210f56,_0x2b83f0=0x0;_0x210f56=_0x353edb['charAt'](_0x2b83f0++);~_0x210f56&&(_0x5ede77=_0x46543f%0x4?_0x5ede77*0x40+_0x210f56:_0x210f56,_0x46543f++%0x4)?_0xaf9fc1+=String['fromCharCode'](0xff&_0x5ede77>>(-0x2*_0x46543f&0x6)):0x0){_0x210f56=_0xebb821['indexOf'](_0x210f56);}for(let _0x16bbea=0x0,_0x583984=_0xaf9fc1['length'];_0x16bbea<_0x583984;_0x16bbea++){_0x310044+='%'+('00'+_0xaf9fc1['charCodeAt'](_0x16bbea)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x310044);};a0_0x2ef5['xUswWR']=_0x15153f,a0_0x2ef5['jwoSFb']={},a0_0x2ef5['rtQitX']=!![];}const _0x51b9d2=_0x3c0837[0x0],_0x48e3e1=_0x232be9+_0x51b9d2,_0xd9f236=a0_0x2ef5['jwoSFb'][_0x48e3e1];return!_0xd9f236?(_0x2ef520=a0_0x2ef5['xUswWR'](_0x2ef520),a0_0x2ef5['jwoSFb'][_0x48e3e1]=_0x2ef520):_0x2ef520=_0xd9f236,_0x2ef520;}if(dbType==='oracle'){const oracleDb=require('../database/db-oracle');executeQuery=(_0x5a5875,_0x28f4e3)=>oracleDb['executeQuery'](_0x5a5875,_0x28f4e3);}else{if(dbType===a0_0x112c38(0x160)){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x29d22b,_0x24e91e)=>mysqlDb['executeQuery'](_0x29d22b,_0x24e91e);}else executeQuery=require(a0_0x112c38(0xfa))[a0_0x112c38(0xf5)];}function a0_0x3c08(){const _0x10e3e7=['uufYzLq','AxnbCNjHEq','nwjnufvnAq','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','uLjZEwe','rxHWB3j0igPVyIbJCMvHDgvK','BwTKAxjtEw5J','Dg9tDhjPBMC','B3jHy2XL','Cgf5Bg9Hza','C2fUAxrPEMvwywX1zq','zxHJzwXFy29SDw1UC19MCM9Tx3jLCxvLC3q','tK9uieXjs0u','iefticGkicaGifnftevdvca','CMvWBgfJzq','D2fYBG','rxHWB3j0ihbYB2nLC3nPBMCGC3rHCNrLza','z2v0sM9I','mtmXmtqZohPnu1zLzq','zw52','ieforca','vxnPBMCG','x2v4Cg9YDerPCG','zxHJzwXFy29SDw1UC19MCM9Tx3f1zxj5x3jLC3vSDa','uNvxCfK','C3rHDhvZ','z2Xwwhi','zxHPC3rZu3LUyW','BwfW','teLlrq','vvr2zgG','zxHWB3j0x2PVyL9JCMvHDgvK','y29SDw1UCW','vvbqrviO','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','uvv4yvy','BgvUz3rO','rxHWB3j0ihf1zxj5igzPBguGAxmGzw1WDhK6ia','zxHWB3j0x2nVBxbSzxrLza','CM91BMq','CMvZB2X2zuv4Cg9YDff1zxj5','uvnKzvC','rgf0ysbMzxrJAgvKihn1y2nLC3nMDwXSEq','CuTuCwW','zMLSDgvY','DhvADvm','Dw5RBM93BL9VCgvYyxrVCG','qun2D3G','ignOyxjZkq','y3DK','zgvSzxrLsM9I','zfzVy1a','ExLPyLq','zxHJzwXFy29SDw1UC19MCM9Tx2nVBMzPzW','qxvKqvO','z2v0sM9Iu3rHDhvZ','rMfPBgvKihrVihjLywqGzxHWB3j0ihf1zxj5igzPBgu6ia','ChjVz3jLC3m','rMfPBgvKihrVigLUAxrPywXPEMuGzxHWB3j0ihnLCNzPy2u','mtbyz3zoANi','C3bHu08','BxLZCwW','cKzst00G','ywXS','DxbKyxrLsM9I','BwvZC2fNzq','AM9PBG','CgfYyw1Z','mZG5ndqWwLH5Axnn','zMv0y2HeyxrH','ignVBhvTBNmGzNjVBsbXDwvYEsbYzxn1Bhq','mJa0nZzAC3jAyum','wwvKy0K','mJa5mJKYm1rxwg9ctG','zxHWB3j0x3vZAw5Nx2f1Dg9FCxvLCNK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ieLoicG','rxHWB3j0ignVBxbSzxrLzcbZDwnJzxnZzNvSBhK','zw50CMLLCW','z2vUzxjHDgvfEgnLBa','wuj4Ave','EgDWywC','Cgf0Aa','vgLSBKC','u2TPChbPBMCGAw52ywXPzcbVCMrLCIbJBgf1C2u','DhjPBq','zxHWB3j0x3nLCNzPy2vFAw5PDa','r1bLr2O','Aw5MBW','Dw5SAw5R','rxHWB3j0ignSzwfUDxaGy29TCgXLDgvK','rxHWB3j0ihbYB2nLC3nPBMCGzMfPBgvK','DfLgvNi','C3rHCNrZv2L0Aa','v0D4yui','Dg9mB3DLCKnHC2u','Aw52ywXPzf9VCMrLCG','y29UzgL0Aw9UCW','ywvJv3q','y29Kzq','zMLSzw5HBwu','wLb0vum','zMLSzv9WyxrO','id0G','z3D1rhO','x2rHDge','zxHLy3v0zvf1zxj5','zxHWB3j0x2zLDgnOx2vYCM9Y','sNbKuva','ChjVy2vZC0PVyG','sM9Iig5VDcbMB3vUzcbVCIbLEhbPCMvK','lI4VlI4Vy29Yzs91DgLSCY9KyG','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','zxHWB3j0x2nSzwfUDxbFy29TCgXLDgu','ndjiyxvgAxy','zxHWB3j0x2zLDgnOx2nVBxbSzxrL','sw52ywXPzcbMAwXLoIbYzwzLCMvUy2uGlsbWyxrOigLZigvTChr5','odm2odi1mhHvte1YwG','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','zMfPBgvK','CMfUzg9T','qvnd','CMvZB2X2zq','ChjVy2vZC2vKx3jVD3m','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','C3rYAw5N','mJi0mdrhEeDUuhK','zMLLBgrmywjLBhm','u2TPChbPBMCGAw52ywXPzcbJB25KAxrPB24','zxHWB3j0rgLY','ignVBhvTBNm','otKZodqWswDQzxbK','rxHWB3j0ihnLCNzPy2uGAw5PDgLHBgL6zwq','m1nYtxzmDW','cLDirvjfia','CfzIEKC','yNvPBgrpCMrLCKj5q2XHDxnL','DxrMoa','CMvHzezPBgvtEw5J','zw5KCg9PBNroyw1L','DxvPza','ru5pru5u','sgDYEMS','rMfPBgvKihrVigrLBgv0zsbLEhbVCNqGzMLSzq','zMLSztO','AMLZuNq','CgvUzgLUzW','u3nPruC','BM93','q3zwBMS','ieLtie5vteW','y29TCgXLDgvK'];a0_0x3c08=function(){return _0x10e3e7;};return a0_0x3c08();}class ExportService{constructor(){this['_exportDir']=null;}get['exportDir'](){const _0x5353b8=a0_0x112c38,_0x4d470f={'TilnG':'default','glVXr':_0x5353b8(0x10f),'YBxiQ':_0x5353b8(0x15d)};if(!this[_0x5353b8(0x139)]){const _0x3101d1=process['env'][_0x5353b8(0x16e)]||_0x4d470f[_0x5353b8(0x176)];this['_exportDir']=process[_0x5353b8(0x136)]['EXPORT_DIR']||path[_0x5353b8(0x165)](__dirname,'../../exports/'+_0x3101d1);try{!fsSync[_0x5353b8(0x13e)](this['_exportDir'])&&fsSync[_0x5353b8(0x129)](this[_0x5353b8(0x139)],{'recursive':!![]}),logger['info']({'event':_0x5353b8(0x179),'dir':this['_exportDir']},_0x4d470f[_0x5353b8(0x13d)]);}catch(_0x42f399){logError(_0x42f399,{'event':'export_service_init_error'},_0x4d470f[_0x5353b8(0x173)]);}}return this['_exportDir'];}[a0_0x112c38(0x14b)](_0x53cb6e,_0x146d6a=null){const _0xde5358=a0_0x112c38,_0x4c3ae1={'RRsya':_0xde5358(0x11b),'uRQKC':_0xde5358(0xff),'camAY':function(_0x30f730,_0x4712ef){return _0x30f730===_0x4712ef;}};if(!_0x53cb6e||typeof _0x53cb6e!==_0xde5358(0x108))return _0x53cb6e;const _0x257338=_0x53cb6e['trim']();if(!_0x257338[_0xde5358(0x180)](_0x4c3ae1[_0xde5358(0x127)]))return _0x257338;const _0x2d76c0=_0x257338['replace'](/^file:/,'')['trim']();if(!_0x2d76c0)throw new Error(_0x4c3ae1['uRQKC']);const _0x585bc3=_0x146d6a||path[_0xde5358(0x165)](process[_0xde5358(0x154)](),_0xde5358(0x12c)),_0xa1bfb5=path[_0xde5358(0x105)](_0x585bc3,_0x2d76c0);logger['info']({'event':'export_query_file_resolve','relativePath':_0x2d76c0,'baseDir':_0x585bc3,'absolutePath':_0xa1bfb5},'Resolving\x20exportQuery\x20from\x20file:\x20'+_0x2d76c0);if(!fsSync['existsSync'](_0xa1bfb5))throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0xa1bfb5);try{const _0x383968=fsSync[_0xde5358(0x115)](_0xa1bfb5,_0xde5358(0x114));if(!_0x383968||!_0x383968['trim']())throw new Error(_0xde5358(0x148)+_0xa1bfb5);return logger['info']({'event':'export_query_file_loaded','file':_0xa1bfb5,'queryLength':_0x383968[_0xde5358(0x147)]},'Loaded\x20SQL\x20query\x20from\x20file\x20('+_0x383968['length']+_0xde5358(0x153)),_0x383968[_0xde5358(0x178)]();}catch(_0x209e6d){if(_0x4c3ae1['camAY'](_0x209e6d[_0xde5358(0xee)],_0xde5358(0x118)))throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0xa1bfb5);throw new Error(_0xde5358(0x15b)+_0x209e6d['message']);}}['generateJobId'](){const _0x1956d4=a0_0x112c38,_0xf6a9a7={'iTWXl':'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','YedcI':function(_0x8a7458,_0x22c09d){return _0x8a7458-_0x22c09d;},'ReZep':function(_0x5f2bed,_0x451803){return _0x5f2bed+_0x451803;},'SsiEG':function(_0x1ee660,_0x27d1d8){return _0x1ee660<_0x27d1d8;},'mkqdw':function(_0x33dcd0,_0x1a96ee){return _0x33dcd0*_0x1a96ee;}},_0x40aa76=_0xf6a9a7['iTWXl'],_0x13ef51=Date[_0x1956d4(0x11f)]()[_0x1956d4(0x12a)](0x24),_0x3d24d3=uuidv7()[_0x1956d4(0x131)](/-/g,'')['substring'](0x0,_0xf6a9a7[_0x1956d4(0x16b)](0xc,_0x13ef51['length'])),_0x38dee1=_0xf6a9a7['ReZep'](_0x13ef51,_0x3d24d3)['substring'](0x0,0xc);let _0x32e20e='';for(let _0x89bf6d=0x0;_0xf6a9a7[_0x1956d4(0x11e)](_0x89bf6d,0xc);_0x89bf6d++){_0x38dee1[_0x89bf6d]?_0x32e20e+=_0x38dee1[_0x89bf6d]:_0x32e20e+=_0x40aa76['charAt'](Math['floor'](_0xf6a9a7['mkqdw'](Math[_0x1956d4(0x103)](),_0x40aa76['length'])));}return _0x32e20e;}async['createJob'](_0x4ff52c){const _0x3311a9=a0_0x112c38,_0x4acd14={'cjwKq':function(_0x44d48c,_0x53a68b,_0x343872,_0x92d6ab){return _0x44d48c(_0x53a68b,_0x343872,_0x92d6ab);},'UTvdh':'export_process_error','IIdDs':_0x3311a9(0x17e),'jisRt':_0x3311a9(0x11d)},_0x412440=this['generateJobId'](),_0x3c81c6={'job_id':_0x412440,'status':_0x3311a9(0x11d),'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x4ff52c,'total_rows':0x0,'processed_rows':0x0};return await redisHelper['setJob'](_0x412440,_0x3c81c6),logger[_0x3311a9(0x17b)]({'event':_0x3311a9(0x142),'jobId':_0x412440,'params':_0x4ff52c},_0x3311a9(0x128)),this['processJob'](_0x412440,_0x4ff52c)['catch'](_0x189094=>{const _0x27ffcc=_0x3311a9;_0x4acd14['cjwKq'](logError,_0x189094,{'event':_0x4acd14[_0x27ffcc(0x141)],'jobId':_0x412440},_0x4acd14['IIdDs']);}),{'job_id':_0x412440,'status':_0x4acd14[_0x3311a9(0x11c)]};}async[a0_0x112c38(0x15a)](_0x1e6e81){const _0x1cfa20=a0_0x112c38,_0x35d5ab={'nfoVg':_0x1cfa20(0xf9),'dVocP':function(_0x21dadf,_0x2aee05){return _0x21dadf===_0x2aee05;}},_0x3e658c=await redisHelper[_0x1cfa20(0x134)](_0x1e6e81);if(!_0x3e658c)return{'success':![],'error':_0x35d5ab['nfoVg']};return{'success':!![],'data':{'job_id':_0x3e658c['job_id'],'status':_0x3e658c['status'],'progress':_0x3e658c[_0x1cfa20(0x15c)],'total_rows':_0x3e658c['total_rows'],'processed_rows':_0x3e658c[_0x1cfa20(0x106)],'file_url':_0x35d5ab[_0x1cfa20(0x156)](_0x3e658c['status'],_0x1cfa20(0x122))?'/api/'+_0x3e658c['params']['moduleName']+'/'+_0x3e658c[_0x1cfa20(0x166)][_0x1cfa20(0x116)]+_0x1cfa20(0x107)+_0x1e6e81:null,'error':_0x3e658c['error']||null,'created_at':_0x3e658c['created_at'],'completed_at':_0x3e658c['completed_at']||null}};}async[a0_0x112c38(0xf8)](_0x246d2e,_0x30daf3){const _0x36eeb1=a0_0x112c38,_0x2c53e5={'qKTql':'processing','pVbzG':_0x36eeb1(0x133),'QUxaV':'export_failed','gwuDz':_0x36eeb1(0x102)};try{await redisHelper[_0x36eeb1(0x163)](_0x246d2e,{'status':_0x2c53e5[_0x36eeb1(0x14e)],'started_at':new Date()['toISOString']()}),logger[_0x36eeb1(0x17b)]({'event':'export_processing_start','jobId':_0x246d2e},_0x2c53e5[_0x36eeb1(0x112)]);const _0x27ecb1=await this[_0x36eeb1(0x168)](_0x30daf3);await redisHelper[_0x36eeb1(0x163)](_0x246d2e,{'total_rows':_0x27ecb1[_0x36eeb1(0x147)]});const _0x5f21e9=await this['generateExcel'](_0x246d2e,_0x27ecb1,_0x30daf3);await redisHelper[_0x36eeb1(0x163)](_0x246d2e,{'status':'completed','progress':0x64,'file_path':_0x5f21e9,'completed_at':new Date()['toISOString']()}),logger[_0x36eeb1(0x17b)]({'event':_0x36eeb1(0x149),'jobId':_0x246d2e,'rows':_0x27ecb1[_0x36eeb1(0x147)]},_0x36eeb1(0x170));}catch(_0x1c7589){logError(_0x1c7589,{'event':_0x2c53e5[_0x36eeb1(0x146)],'jobId':_0x246d2e},'Export\x20failed'),await redisHelper[_0x36eeb1(0x163)](_0x246d2e,{'status':_0x2c53e5[_0x36eeb1(0xf3)],'error':_0x1c7589[_0x36eeb1(0x164)],'failed_at':new Date()['toISOString']()});}}async['fetchData'](_0x49b80a){const _0x21568b=a0_0x112c38,_0x41a1aa={'JpdQP':_0x21568b(0x145),'xgpag':function(_0x472aee,_0x4e991a){return _0x472aee+_0x4e991a;},'uQBkJ':_0x21568b(0x11b),'qfUae':'Using\x20custom\x20exportQuery','OMcqg':_0x21568b(0x16d),'QArfT':_0x21568b(0xfb),'UXeed':function(_0x2ad7fa,_0x4719e7){return _0x2ad7fa===_0x4719e7;},'jGcKE':'export_fetch_start','PYnqb':'Fetching\x20data\x20from\x20database','vZmua':_0x21568b(0x12b),'tYFVr':_0x21568b(0xfe),'nCVZv':'Failed\x20to\x20fetch\x20data'};try{const {tableName:_0xa3f1ca,columns:_0x4bce09,exportQuery:_0x4135cf,where:_0x1710a9,sort_columns:_0x552c21}=_0x49b80a;if(!_0xa3f1ca||!_0x4bce09||_0x4bce09[_0x21568b(0x147)]===0x0)throw new Error(_0x41a1aa[_0x21568b(0xf7)]);const _0x24a1df=_0x41a1aa[_0x21568b(0x174)](_0xa3f1ca['replace'](/\./g,'_'),_0x21568b(0xf4));let _0xd49564;if(_0x4135cf&&_0x4135cf[_0x21568b(0x178)]()){let _0x3fb6a2=_0x4135cf;_0x4135cf[_0x21568b(0x178)]()['startsWith'](_0x41a1aa['uQBkJ'])&&(_0x3fb6a2=this['resolveExportQuery'](_0x4135cf)),_0xd49564='WITH\x20'+_0x24a1df+'\x20AS\x20(\x0a\x20\x20\x20\x20'+_0x3fb6a2+'\x0a)',logger[_0x21568b(0x17b)]({'event':'export_using_custom_query','query':_0x3fb6a2['substring'](0x0,0x64)},_0x41a1aa['qfUae']);}else{const _0x8e21ac=_0x4bce09[_0x21568b(0x13f)](_0x11f395=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x11f395)['join'](',');_0xd49564='WITH\x20'+_0x24a1df+_0x21568b(0x130)+_0x8e21ac+'\x0a\x20\x20\x20\x20FROM\x20'+_0xa3f1ca+'\x0a)',logger[_0x21568b(0x17b)]({'event':_0x41a1aa['OMcqg'],'tableName':_0xa3f1ca,'columnCount':_0x4bce09['length']},_0x41a1aa[_0x21568b(0x123)]);}const _0x2b20b6=!_0x4bce09||_0x4bce09['length']===0x0||_0x41a1aa['UXeed'](_0x4bce09[_0x21568b(0x147)],0x1)&&(_0x4bce09[0x0]==='*'||_0x4bce09[0x0]['toLowerCase']()===_0x21568b(0x162)),_0x42365c=_0x2b20b6?'*':_0x4bce09['join'](',\x20');_0xd49564+='\x0aSELECT\x20'+_0x42365c+_0x21568b(0x161)+_0x24a1df;if(_0x1710a9){const _0x211369=this['buildWhereClause'](_0x1710a9);_0x211369&&(_0xd49564+=_0x21568b(0x111)+_0x211369);}if(_0x552c21&&_0x552c21['length']>0x0){const _0x2cbf14=this[_0x21568b(0x113)](_0x552c21);_0x2cbf14&&(_0xd49564+='\x0aORDER\x20BY\x20'+_0x2cbf14);}logger['info']({'event':_0x41a1aa['jGcKE'],'query':_0xd49564['substring'](0x0,0xc8)},_0x41a1aa['PYnqb']);const _0x1f5099=await executeQuery(_0xd49564);let _0x13e632=_0x1f5099;return dbType===_0x41a1aa['vZmua']&&_0x1f5099&&_0x1f5099['length']>0x0&&(_0x13e632=_0x1f5099['map'](_0x393fe5=>{const _0x270d46=_0x21568b,_0x52e89f={};for(const [_0x1bdab0,_0x5eb317]of Object[_0x270d46(0x171)](_0x393fe5)){_0x52e89f[_0x1bdab0[_0x270d46(0x182)]()]=_0x5eb317;}return _0x52e89f;})),logger[_0x21568b(0x17b)]({'event':_0x41a1aa[_0x21568b(0x17f)],'rows':_0x13e632[_0x21568b(0x147)]},_0x21568b(0x14d)),_0x13e632;}catch(_0x40a280){logError(_0x40a280,{'event':_0x21568b(0xf6)},_0x41a1aa['nCVZv']);throw _0x40a280;}}[a0_0x112c38(0x12d)](_0x1023b6){const _0x773796=a0_0x112c38,_0x272359={'Hgrzk':function(_0x189d34,_0x530841){return _0x189d34===_0x530841;},'SOkgt':_0x773796(0x108)};if(_0x272359[_0x773796(0x119)](typeof _0x1023b6,_0x272359['SOkgt']))return _0x1023b6[_0x773796(0x131)](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')[_0x773796(0x178)]();else{if(Array[_0x773796(0x124)](_0x1023b6))return _0x1023b6['map'](_0x54a62e=>this[_0x773796(0x12d)](_0x54a62e));}return _0x1023b6;}['buildWhereClause'](_0x34f73e){const _0x36c139=a0_0x112c38,_0x442c48={'LYbuw':function(_0x37f277,_0x4a5bcf){return _0x37f277===_0x4a5bcf;},'ZPtUC':'invalid_condition','kiuSQ':function(_0x348cb6,_0x4a7242){return _0x348cb6!==_0x4a7242;},'VWGRw':function(_0x4f959e,_0xc238b2){return _0x4f959e===_0xc238b2;},'ACvwx':_0x36c139(0x140),'WGxaB':_0x36c139(0x12f),'CvVnk':'IS\x20NULL','DzTxh':'IS\x20NOT\x20NULL','LSFwC':_0x36c139(0x137)};if(!_0x34f73e||!_0x34f73e[_0x36c139(0xec)]||_0x34f73e[_0x36c139(0xec)]['length']===0x0)return'';const {logic:_0x4b989f,conditions:_0x296f46}=_0x34f73e,_0x5b4286=_0x4b989f&&_0x442c48['LYbuw'](_0x4b989f['toUpperCase'](),'OR')?'\x20OR\x20':_0x442c48['LSFwC'],_0x1742dc=_0x296f46[_0x36c139(0x13f)](_0x481449=>{const _0x1bec5a=_0x36c139,_0x599cde={'qMTiJ':function(_0x40208f,_0x1a75e5){return _0x442c48['LYbuw'](_0x40208f,_0x1a75e5);},'asvYr':'string'},{key:_0x518823,operator:_0x353817,value:_0x4e67ac,sensitive:_0x156d67}=_0x481449;if(!_0x518823||!_0x353817)return logger[_0x1bec5a(0x132)]({'event':_0x442c48[_0x1bec5a(0xf0)],'condition':_0x481449},_0x1bec5a(0x10b)),null;const _0x17192c=this[_0x1bec5a(0x12d)](_0x4e67ac),_0x305aec=_0x442c48['kiuSQ'](_0x156d67,undefined)?_0x156d67:!![];let _0x372d29=_0x518823,_0x40d164=_0x17192c;!_0x305aec&&(_0x372d29=_0x1bec5a(0x144)+_0x518823+')',typeof _0x4e67ac===_0x1bec5a(0x108)&&(_0x40d164=_0x4e67ac['toUpperCase']()));const _0xa65df5=_0x442c48['VWGRw'](typeof _0x40d164,_0x1bec5a(0x108))?'\x27'+_0x40d164['replace'](/'/g,'\x27\x27')+'\x27':_0x40d164;switch(_0x353817['toUpperCase']()){case'=':case'!=':case'<>':return _0x372d29+'\x20'+_0x353817+'\x20'+_0xa65df5;case'>':case'<':case'>=':case'<=':const _0x21cad6=_0x442c48['LYbuw'](typeof _0x17192c,_0x1bec5a(0x108))?'\x27'+_0x17192c[_0x1bec5a(0x131)](/'/g,'\x27\x27')+'\x27':_0x17192c;return _0x518823+'\x20'+_0x353817+'\x20'+_0x21cad6;case _0x442c48[_0x1bec5a(0x152)]:case _0x442c48[_0x1bec5a(0x181)]:return _0x372d29+'\x20'+_0x353817+'\x20'+_0xa65df5;case'IN':if(Array[_0x1bec5a(0x124)](_0x17192c)){let _0x4d07b5;return!_0x305aec?_0x4d07b5=_0x17192c[_0x1bec5a(0x13f)](_0x248ae2=>{const _0x21b285=_0x599cde['qMTiJ'](typeof _0x248ae2,_0x599cde['asvYr'])?_0x248ae2['toUpperCase']():_0x248ae2;return typeof _0x21b285===_0x599cde['asvYr']?'\x27'+_0x21b285['replace'](/'/g,'\x27\x27')+'\x27':_0x21b285;})[_0x1bec5a(0x165)](',\x20'):_0x4d07b5=_0x17192c['map'](_0x297ef1=>typeof _0x297ef1==='string'?'\x27'+_0x297ef1[_0x1bec5a(0x131)](/'/g,'\x27\x27')+'\x27':_0x297ef1)[_0x1bec5a(0x165)](',\x20'),_0x372d29+_0x1bec5a(0x16f)+_0x4d07b5+')';}return _0x372d29+_0x1bec5a(0x16f)+_0xa65df5+')';case _0x442c48[_0x1bec5a(0x120)]:return _0x518823+_0x1bec5a(0x121);case _0x442c48['DzTxh']:return _0x518823+'\x20IS\x20NOT\x20NULL';default:logger['warn']({'event':_0x1bec5a(0x151),'operator':_0x353817},'Unknown\x20operator,\x20using\x20=\x20as\x20default');return _0x372d29+_0x1bec5a(0xf2)+_0xa65df5;}})[_0x36c139(0x14f)](_0x514c21=>_0x514c21!==null);if(_0x1742dc[_0x36c139(0x147)]===0x0)return'';return _0x1742dc[_0x36c139(0x165)](_0x5b4286);}[a0_0x112c38(0x113)](_0x3267c4){const _0x14ce79=a0_0x112c38,_0xd31d12={'pmVLH':_0x14ce79(0xeb),'NMFaU':'DESC','yUiSQ':_0x14ce79(0x104),'RuWpY':function(_0x28a993,_0x176aed){return _0x28a993===_0x176aed;}};if(!_0x3267c4||_0xd31d12[_0x14ce79(0x13b)](_0x3267c4[_0x14ce79(0x147)],0x0))return'';const _0x4b9a41=_0x3267c4['map'](_0x26bc47=>{const _0xd976c5=_0x14ce79,{column:_0x15bd6f,direction:_0x57ae1f}=_0x26bc47;if(!_0x15bd6f)return logger[_0xd976c5(0x132)]({'event':_0xd31d12['pmVLH'],'item':_0x26bc47},_0xd976c5(0x177)),null;const _0x5864f9=_0x57ae1f&&_0x57ae1f['toUpperCase']()===_0xd31d12['NMFaU']?_0xd31d12['NMFaU']:_0xd31d12['yUiSQ'];return _0x15bd6f+'\x20'+_0x5864f9;})['filter'](_0xfacf72=>_0xfacf72!==null);if(_0xd31d12['RuWpY'](_0x4b9a41[_0x14ce79(0x147)],0x0))return'';return _0x4b9a41[_0x14ce79(0x165)](',\x20');}async[a0_0x112c38(0x172)](_0x545cb4,_0xcbfda4,_0x5228e0){const _0x100e58=a0_0x112c38,_0x54c01b={'sVvDY':function(_0x29c2bf,_0x7e06d8){return _0x29c2bf*_0x7e06d8;},'GIFTe':function(_0xad3271,_0x54f24a){return _0xad3271/_0x54f24a;},'AudAZ':'./excel-generator','tuZuS':function(_0xce4c09,_0x22bf8b){return _0xce4c09===_0x22bf8b;},'QSdeW':_0x100e58(0x162),'aecWt':function(_0x27fe85,_0x44041d){return _0x27fe85>_0x44041d;},'MoSlO':_0x100e58(0x13a)},_0x14be0e=require(_0x54c01b[_0x100e58(0x159)]),_0x49998f=new _0x14be0e(),_0x31a766=_0x5228e0['filename']?_0x5228e0[_0x100e58(0xef)]+'-'+_0x545cb4:'export-'+_0x545cb4,_0x26ca3d=path['join'](this[_0x100e58(0x10c)],_0x31a766+'.xlsx');let _0x183de1=_0x5228e0[_0x100e58(0x143)];const _0x1dc746=_0x183de1&&_0x54c01b[_0x100e58(0x150)](_0x183de1['length'],0x1)&&(_0x54c01b['tuZuS'](_0x183de1[0x0],'*')||_0x183de1[0x0]['toLowerCase']()===_0x54c01b[_0x100e58(0x14c)]);if(_0xcbfda4['length']>0x0){const _0x418a80=Object['keys'](_0xcbfda4[0x0]);if(_0x1dc746)_0x183de1=_0x418a80,logger[_0x100e58(0x17b)]({'event':'excel_columns_select_all','columns':_0x183de1},'Using\x20all\x20'+_0x183de1[_0x100e58(0x147)]+'\x20columns\x20(wildcard\x20requested)');else{if(_0x183de1&&_0x183de1[_0x100e58(0x147)]>0x0){const _0x34cc09=_0x183de1[_0x100e58(0x14f)](_0x45c4e2=>_0x418a80['includes'](_0x45c4e2));_0x54c01b[_0x100e58(0xed)](_0x34cc09['length'],0x0)?(_0x183de1=_0x34cc09,logger[_0x100e58(0x17b)]({'event':_0x100e58(0x12e),'requestedColumns':_0x5228e0[_0x100e58(0x143)],'validColumns':_0x183de1},_0x100e58(0x138)+_0x183de1['length']+'\x20columns\x20from\x20request')):(_0x183de1=_0x418a80,logger[_0x100e58(0x132)]({'event':'excel_columns_fallback','requestedColumns':_0x5228e0[_0x100e58(0x143)],'availableColumns':_0x418a80},_0x100e58(0x126)+_0x418a80['length']+_0x100e58(0x10d)));}else _0x183de1=_0x418a80,logger[_0x100e58(0x17b)]({'event':_0x54c01b['MoSlO'],'columns':_0x183de1},_0x100e58(0x138)+_0x183de1['length']+_0x100e58(0x169));}}else logger['info']({'event':_0x100e58(0x158),'columns':_0x183de1},_0x100e58(0x138)+(_0x183de1?.['length']||0x0)+'\x20columns\x20from\x20config\x20(no\x20data)');return await _0x49998f['generate']({'data':_0xcbfda4,'columns':_0x183de1,'columnFormats':_0x5228e0['columnFormats']||null,'fieldLabels':_0x5228e0[_0x100e58(0x10a)]||null,'filePath':_0x26ca3d,'onProgress':async _0xda3892=>{const _0x13ac4b=_0x100e58;await redisHelper[_0x13ac4b(0x163)](_0x545cb4,{'progress':Math['round'](_0xda3892),'processed_rows':Math[_0x13ac4b(0x14a)](_0x54c01b['sVvDY'](_0x54c01b['GIFTe'](_0xda3892,0x64),_0xcbfda4['length']))});}}),_0x26ca3d;}async['getFilePath'](_0x3accb){const _0x10c2b5=a0_0x112c38,_0x2971c0={'yZMAr':_0x10c2b5(0x122),'egjgl':'export_file_not_found','cEjrr':'Export\x20file\x20not\x20found'},_0x4efe17=await redisHelper['getJob'](_0x3accb);if(!_0x4efe17||_0x4efe17[_0x10c2b5(0x13c)]!==_0x2971c0['yZMAr'])return null;try{return await fs['access'](_0x4efe17['file_path']),_0x4efe17['file_path'];}catch(_0x536ba4){return logError(_0x536ba4,{'event':_0x2971c0['egjgl'],'jobId':_0x3accb,'path':_0x4efe17['file_path']},_0x2971c0['cEjrr']),null;}}async['cleanup'](){const _0xb7f6c=a0_0x112c38,_0x3634ce={'spaSO':'Starting\x20export\x20cleanup','yyibT':function(_0x2c2e23,_0x21f562){return _0x2c2e23/_0x21f562;},'lOwfs':function(_0x3438ee,_0xdc09ae){return _0x3438ee-_0xdc09ae;},'mocSV':function(_0x32e9ca,_0x57e87a){return _0x32e9ca*_0x57e87a;},'iNPZu':function(_0x543d0c,_0x4e7432){return _0x543d0c>_0x4e7432;},'myalP':'export_file_deleted','GPeGj':'export_file_delete_error'};logger[_0xb7f6c(0x17b)]({'event':'export_cleanup_start'},_0x3634ce[_0xb7f6c(0x15f)]);const _0x29e28d=await redisHelper['getAllJobs']();let _0x2fe24c=0x0;for(const _0x2a4862 of _0x29e28d){const _0x8094bc=new Date(_0x2a4862['created_at']),_0x73fe3b=new Date(),_0x46ed16=_0x3634ce[_0xb7f6c(0x157)](_0x3634ce['lOwfs'](_0x73fe3b,_0x8094bc),_0x3634ce['mocSV'](0x3e8,0x3c)*0x3c);if(_0x3634ce['iNPZu'](_0x46ed16,0x1)){if(_0x2a4862[_0xb7f6c(0xf1)])try{await fs[_0xb7f6c(0x17c)](_0x2a4862[_0xb7f6c(0xf1)]),logger[_0xb7f6c(0x17b)]({'event':_0x3634ce['myalP'],'path':_0x2a4862['file_path']},'Export\x20file\x20deleted');}catch(_0x2c54a7){logger[_0xb7f6c(0x132)]({'event':_0x3634ce[_0xb7f6c(0x17a)],'path':_0x2a4862[_0xb7f6c(0xf1)],'error':_0x2c54a7[_0xb7f6c(0x164)]},_0xb7f6c(0x11a));}await redisHelper[_0xb7f6c(0x155)](_0x2a4862['job_id']),_0x2fe24c++;}}return logger[_0xb7f6c(0x17b)]({'event':_0xb7f6c(0xfc),'deleted':_0x2fe24c},_0xb7f6c(0x17d)),_0x2fe24c;}}module['exports']=new ExportService();
1
+ const a0_0x21cb03=a0_0x5c2d;(function(_0x41b78e,_0x3553a9){const _0x25dfa9=a0_0x5c2d,_0x67afe5=_0x41b78e();while(!![]){try{const _0x340eea=parseInt(_0x25dfa9(0xdd))/0x1*(parseInt(_0x25dfa9(0xd6))/0x2)+-parseInt(_0x25dfa9(0xee))/0x3*(-parseInt(_0x25dfa9(0xa1))/0x4)+parseInt(_0x25dfa9(0xaf))/0x5*(parseInt(_0x25dfa9(0xd5))/0x6)+parseInt(_0x25dfa9(0x66))/0x7*(-parseInt(_0x25dfa9(0xa7))/0x8)+-parseInt(_0x25dfa9(0xa4))/0x9*(-parseInt(_0x25dfa9(0x6e))/0xa)+parseInt(_0x25dfa9(0xbe))/0xb+-parseInt(_0x25dfa9(0xc7))/0xc;if(_0x340eea===_0x3553a9)break;else _0x67afe5['push'](_0x67afe5['shift']());}catch(_0xc32327){_0x67afe5['push'](_0x67afe5['shift']());}}}(a0_0x2f32,0x6b4d6));const {v7:uuidv7}=require(a0_0x21cb03(0xac)),path=require('path'),fs=require('fs')[a0_0x21cb03(0xf2)],fsSync=require('fs'),redisHelper=require('../caching/redis-helper'),{logger,logError}=require(a0_0x21cb03(0x88)),dbType=(process['env'][a0_0x21cb03(0x92)]||'postgresql')[a0_0x21cb03(0x71)]();let executeQuery;if(dbType==='oracle'){const oracleDb=require('../database/db-oracle');executeQuery=(_0x599603,_0x5d65e1)=>oracleDb[a0_0x21cb03(0xf1)](_0x599603,_0x5d65e1);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0xd44082,_0x30aec2)=>mysqlDb[a0_0x21cb03(0xf1)](_0xd44082,_0x30aec2);}else executeQuery=require('../../core/utils/db')[a0_0x21cb03(0xf1)];}function a0_0x2f32(){const _0xda2e23=['y2HHCKf0','mtyYoduXmwvlvwLKCq','Bw9KDwXLtMfTzq','zxHWB3j0x2nSzwfUDxbFy29TCgXLDgu','zxHLy3v0zvf1zxj5','ChjVBwLZzxm','y3jLyxrLzf9HDa','lI4VlI4VzxHWB3j0CY8','zxHWB3j0rgLY','z2v0rMLSzvbHDgG','zxHWB3j0x2zPBgvFzgvSzxrLza','A2v5CW','CM91BMq','yNvPBgrxAgvYzunSyxvZzq','ChjVz3jLC3m','lI9LEgnLBc1Nzw5LCMf0B3i','qvnd','Dw5RBM93BL9VCgvYyxrVCG','DgTHvwO','rxHWB3j0ihbYB2nLC3nPBMCGzMfPBgvK','nta4mZC5owfvD3vwrq','z0LZwMm','z2jivKu','Dw5SAw5R','sLrcv3u','EMTUqLi','ru5pru5u','rxHWB3j0ihnLCNzPy2uGAw5PDgLHBgL6zwq','mtKWsNfJrfDt','Aw5MBW','EefVyvC','Dg9mB3DLCKnHC2u','yNvPBgrpCMrLCKj5q2XHDxnL','C3vIC3rYAw5N','v0Lusca','B3jHy2XL','CMrfr3q','y29UzgL0Aw9UCW','qMn1Cvm','u2TPChbPBMCGAw52ywXPzcbJB25KAxrPB24','Dg9tDhjPBMC','AxnbCNjHEq','z0HZsu0','s2X3svy','y29TCgXLDgvK','Dw5iChq','qK13BfK','zvPoANO','BwfW','yuzivwe','rxHWB3j0ihbYB2nLC3nPBMCGC3rHCNrLza','CgP3sfm','z2v0sM9Iu3rHDhvZ','CgvUzgLUzW','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','l2v4Cg9YDc1KB3DUBg9Hzd9QB2jFAwq9','tg9HzgvKifnrtcbXDwvYEsbMCM9TigzPBguGka','AM9PBG','Dg9ju09tDhjPBMC','zxjYB3i','EhndEfy','zxHWB3j0x3nLCNzPy2vFAw5PDa','cK9srevsiejzia','v1jeyw0','rejFvfLqrq','zxHWB3j0x2zHAwXLza','BwTKAxjtEw5J','CMvWBgfJzq','C3rHDhvZ','qMLdBNu','zMLSzw5HBwu','vxnPBMCGyxv0BY1Nzw5LCMf0zwqGCxvLCNK','rxHWB3j0igzPBguGzgvSzxrLza','u2TPChbPBMCGAw52ywXPzcbVCMrLCIbJBgf1C2u','yxzqtNa','zw50CMLLCW','B1zuv0q','z2v0sM9I','ignVBhvTBNmGzNjVBsbJB25MAwCGkg5VigrHDgeP','nhnfBKzgrG','zxHJzwXFy29SDw1UC19MCM9Tx2nVBMzPzW','CMvZB2X2zq','nZy2mtDSsu1zrMe','rMfPBgvKihrVigLUAxrPywXPEMuGzxHWB3j0ihnLCNzPy2u','zMv0y2HeyxrH','oevyAgnVua','DxbKyxrLsM9I','ChjVy2vZC2vKx3jVD3m','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','qxfrr04','DxvPza','z2vUzxjHDgu','zxHWB3j0x2zLDgnOx2vYCM9Y','odi4mtbuCNjLCu8','ignVBhvTBNmGkhDPBgrJyxjKihjLCxvLC3rLzcK','zxHJzwXFy29SDw1UC19MCM9Tx3f1zxj5x3jLC3vSDa','C0jLAKy','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','DhjPBq','ieLtie5vteW','ignVBhvTBNmGzNjVBsbXDwvYEsbYzxn1Bhq','vxnPBMCG','BMPJvhe','rMfPBgvKihrVihjLywqGzxHWB3j0ihf1zxj5igzPBgu6ia','revtqW','Cgf5Bg9Hza','zxHWB3j0x3bYB2nLC3nFzxjYB3i','zxHWB3j0CW','ndiWodiWnePWCKL0tG','zw5KCg9PBNroyw1L','cIaGicaGicaG','rxHWB3j0ignSzwfUDxaGy29TCgXLDgvK','zxHJzwXFy29SDw1UC19MCM9Tx3jLCxvLC3q','twDLD0m','C3rYAw5N','ignVBhvTBNmGzNjVBsbYzxf1zxn0','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','mte4mJqXndbcEhrVs3O','tvbhEMW','BwPlA0G','zMLSzv9WyxrO','BgvUz3rO','u3rHCNrPBMCGzxHWB3j0ignSzwfUDxa','y3jLyxrLsM9I','cLDirvjfia','rxHWB3j0igPVyIbJCMvHDgvK','rxHWB3j0igzPBguGBM90igzVDw5K','whfdt3e','y29SDw1UCW','zMLSDgvY','tK9uieXjs0u','mtGWwxfwEwDs','mZjWuNL3qvK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','zxHWB3j0x3bYB2nLC3nPBMDFC3rHCNq','ALHzD1C','zxHWB3j0lq','C3rHCNrZv2L0Aa','cKzst00G','mZu0ndrOAe5Jvw0','zxHWB3j0x2zLDgnOx3n0yxj0','ChjVy2vZC2LUzW','Dg9vChbLCKnHC2u','BwvZC2fNzq','zgvMyxvSDa','D2fYBG','CMvHzezPBgvtEw5J','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','tuHdwei','CMfUzg9T','x2v4Cg9YDerPCG','yLjgDhi','y2XLyw51Ca','sgDmCwW','refivgC'];a0_0x2f32=function(){return _0xda2e23;};return a0_0x2f32();}function a0_0x5c2d(_0x581855,_0x2a3405){_0x581855=_0x581855-0x64;const _0x2f3249=a0_0x2f32();let _0x5c2d92=_0x2f3249[_0x581855];if(a0_0x5c2d['KmVkWQ']===undefined){var _0xdce85=function(_0x56a7f8){const _0x53ff98='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4a6efb='',_0x29f235='';for(let _0x160b71=0x0,_0x42d3f6,_0x272c65,_0x574357=0x0;_0x272c65=_0x56a7f8['charAt'](_0x574357++);~_0x272c65&&(_0x42d3f6=_0x160b71%0x4?_0x42d3f6*0x40+_0x272c65:_0x272c65,_0x160b71++%0x4)?_0x4a6efb+=String['fromCharCode'](0xff&_0x42d3f6>>(-0x2*_0x160b71&0x6)):0x0){_0x272c65=_0x53ff98['indexOf'](_0x272c65);}for(let _0x52875c=0x0,_0x29813d=_0x4a6efb['length'];_0x52875c<_0x29813d;_0x52875c++){_0x29f235+='%'+('00'+_0x4a6efb['charCodeAt'](_0x52875c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29f235);};a0_0x5c2d['CvksHf']=_0xdce85,a0_0x5c2d['ckxBJc']={},a0_0x5c2d['KmVkWQ']=!![];}const _0x1ee601=_0x2f3249[0x0],_0x573350=_0x581855+_0x1ee601,_0xe30f99=a0_0x5c2d['ckxBJc'][_0x573350];return!_0xe30f99?(_0x5c2d92=a0_0x5c2d['CvksHf'](_0x5c2d92),a0_0x5c2d['ckxBJc'][_0x573350]=_0x5c2d92):_0x5c2d92=_0xe30f99,_0x5c2d92;}class ExportService{constructor(){const _0x47d435=a0_0x21cb03;this[_0x47d435(0xe8)]=null;}get[a0_0x21cb03(0xf5)](){const _0x3e5043=a0_0x21cb03,_0x449cd9={'OgKYp':_0x3e5043(0xe2),'DAHTg':_0x3e5043(0x8f)};if(!this[_0x3e5043(0xe8)]){const _0x339e2d=process['env'][_0x3e5043(0xd7)]||_0x449cd9['OgKYp'];this[_0x3e5043(0xe8)]=process['env']['EXPORT_DIR']||path['join'](__dirname,_0x3e5043(0xf4)+_0x339e2d);try{!fsSync['existsSync'](this[_0x3e5043(0xe8)])&&fsSync[_0x3e5043(0x94)](this[_0x3e5043(0xe8)],{'recursive':!![]}),logger['info']({'event':_0x449cd9[_0x3e5043(0xec)],'dir':this[_0x3e5043(0xe8)]},_0x3e5043(0x6d));}catch(_0xa5c784){logError(_0xa5c784,{'event':'export_service_init_error'},_0x3e5043(0xa5));}}return this['_exportDir'];}['resolveExportQuery'](_0x39c676,_0x2dfb6f=null){const _0x4c563d=a0_0x21cb03,_0x25639d={'GQbhF':'file:','byzmd':'utf8','WRDam':'export_query_file_loaded','clrFD':function(_0x17e754,_0x44f397){return _0x17e754===_0x44f397;},'PWdjH':_0x4c563d(0x6c)};if(!_0x39c676||typeof _0x39c676!==_0x4c563d(0xc4))return _0x39c676;const _0x517e8a=_0x39c676[_0x4c563d(0xb4)]();if(!_0x517e8a[_0x4c563d(0xdb)](_0x25639d['GQbhF']))return _0x517e8a;const _0x281573=_0x517e8a['replace'](/^file:/,'')['trim']();if(!_0x281573)throw new Error('Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty');const _0x56fbfc=_0x2dfb6f||path['join'](process['cwd'](),_0x4c563d(0xbb)),_0x5960ed=path[_0x4c563d(0xa3)](_0x56fbfc,_0x281573);logger['info']({'event':'export_query_file_resolve','relativePath':_0x281573,'baseDir':_0x56fbfc,'absolutePath':_0x5960ed},_0x4c563d(0xe5)+_0x281573);if(!fsSync['existsSync'](_0x5960ed))throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0x5960ed);try{const _0x4aa569=fsSync[_0x4c563d(0xe4)](_0x5960ed,_0x25639d['byzmd']);if(!_0x4aa569||!_0x4aa569['trim']())throw new Error('Export\x20query\x20file\x20is\x20empty:\x20'+_0x5960ed);return logger[_0x4c563d(0x6f)]({'event':_0x25639d[_0x4c563d(0x91)],'file':_0x5960ed,'queryLength':_0x4aa569['length']},_0x4c563d(0x8a)+_0x4aa569['length']+'\x20chars)'),_0x4aa569[_0x4c563d(0xb4)]();}catch(_0x11a8db){if(_0x25639d['clrFD'](_0x11a8db['code'],_0x25639d['PWdjH']))throw new Error(_0x4c563d(0xaa)+_0x5960ed);throw new Error(_0x4c563d(0xb9)+_0x11a8db[_0x4c563d(0xe1)]);}}['generateJobId'](){const _0x18eac4=a0_0x21cb03,_0x3b86b1={'awvup':'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','YIkhZ':function(_0x2c76d4,_0x2905ed){return _0x2c76d4-_0x2905ed;},'NaMMC':function(_0x3ee4f3,_0x1fa97e){return _0x3ee4f3<_0x1fa97e;}},_0x42b0c6=_0x3b86b1['awvup'],_0x1db61f=Date['now']()[_0x18eac4(0x7a)](0x24),_0x37b106=uuidv7()['replace'](/-/g,'')[_0x18eac4(0x73)](0x0,_0x3b86b1['YIkhZ'](0xc,_0x1db61f['length'])),_0x5d6fa3=(_0x1db61f+_0x37b106)[_0x18eac4(0x73)](0x0,0xc);let _0x3a9c9c='';for(let _0x571d2e=0x0;_0x3b86b1['NaMMC'](_0x571d2e,0xc);_0x571d2e++){_0x5d6fa3[_0x571d2e]?_0x3a9c9c+=_0x5d6fa3[_0x571d2e]:_0x3a9c9c+=_0x42b0c6[_0x18eac4(0xed)](Math['floor'](Math[_0x18eac4(0xe7)]()*_0x42b0c6[_0x18eac4(0xcb)]));}return _0x3a9c9c;}async[a0_0x21cb03(0xcd)](_0x4a60f0){const _0x166caf=a0_0x21cb03,_0x57dd49={'utQRy':function(_0x1ed304,_0x4ebb19,_0x290fe9,_0x2559fb){return _0x1ed304(_0x4ebb19,_0x290fe9,_0x2559fb);},'sktQZ':_0x166caf(0x65),'xsCxV':_0x166caf(0xcf),'zknBR':_0x166caf(0x87)},_0x1d725d=this['generateJobId'](),_0x233e51={'job_id':_0x1d725d,'status':_0x166caf(0x87),'progress':0x0,'created_at':new Date()[_0x166caf(0x8c)](),'params':_0x4a60f0,'total_rows':0x0,'processed_rows':0x0};return await redisHelper['setJob'](_0x1d725d,_0x233e51),logger[_0x166caf(0x6f)]({'event':'export_job_created','jobId':_0x1d725d,'params':_0x4a60f0},_0x57dd49[_0x166caf(0x8e)]),this['processJob'](_0x1d725d,_0x4a60f0)['catch'](_0x550f61=>{const _0x2bfe95=_0x166caf;_0x57dd49['utQRy'](logError,_0x550f61,{'event':_0x2bfe95(0xbc),'jobId':_0x1d725d},_0x57dd49['sktQZ']);}),{'job_id':_0x1d725d,'status':_0x57dd49[_0x166caf(0x6b)]};}async[a0_0x21cb03(0x86)](_0x4a8c09){const _0x4fe3e7=a0_0x21cb03,_0x1fdb7e={'gHsIM':'completed'},_0x401d1d=await redisHelper[_0x4fe3e7(0x9f)](_0x4a8c09);if(!_0x401d1d)return{'success':![],'error':'Job\x20not\x20found\x20or\x20expired'};return{'success':!![],'data':{'job_id':_0x401d1d['job_id'],'status':_0x401d1d[_0x4fe3e7(0x96)],'progress':_0x401d1d[_0x4fe3e7(0xfb)],'total_rows':_0x401d1d['total_rows'],'processed_rows':_0x401d1d[_0x4fe3e7(0xa9)],'file_url':_0x401d1d[_0x4fe3e7(0x96)]===_0x1fdb7e[_0x4fe3e7(0x7c)]?'/api/'+_0x401d1d['params'][_0x4fe3e7(0xef)]+'/'+_0x401d1d['params'][_0x4fe3e7(0xbf)]+_0x4fe3e7(0x89)+_0x4a8c09:null,'error':_0x401d1d[_0x4fe3e7(0x8d)]||null,'created_at':_0x401d1d[_0x4fe3e7(0xf3)],'completed_at':_0x401d1d['completed_at']||null}};}async['processJob'](_0x1029e4,_0x233092){const _0x4f0e5f=a0_0x21cb03,_0xa56002={'qeUGx':_0x4f0e5f(0xd8),'WYJmK':_0x4f0e5f(0x84),'njcTq':'Export\x20completed\x20successfully','LAZMf':_0x4f0e5f(0x93)};try{await redisHelper[_0x4f0e5f(0xa8)](_0x1029e4,{'status':_0x4f0e5f(0xdf),'started_at':new Date()['toISOString']()}),logger[_0x4f0e5f(0x6f)]({'event':_0xa56002['qeUGx'],'jobId':_0x1029e4},_0xa56002['WYJmK']);const _0x2051a4=await this[_0x4f0e5f(0xa6)](_0x233092);await redisHelper['updateJob'](_0x1029e4,{'total_rows':_0x2051a4[_0x4f0e5f(0xcb)]});const _0x11bfc8=await this['generateExcel'](_0x1029e4,_0x2051a4,_0x233092);await redisHelper['updateJob'](_0x1029e4,{'status':_0x4f0e5f(0x7e),'progress':0x64,'file_path':_0x11bfc8,'completed_at':new Date()[_0x4f0e5f(0x8c)]()}),logger['info']({'event':'export_completed','jobId':_0x1029e4,'rows':_0x2051a4[_0x4f0e5f(0xcb)]},_0xa56002[_0x4f0e5f(0xb8)]);}catch(_0x41b451){logError(_0x41b451,{'event':_0xa56002['LAZMf'],'jobId':_0x1029e4},'Export\x20failed'),await redisHelper['updateJob'](_0x1029e4,{'status':'failed','error':_0x41b451['message'],'failed_at':new Date()[_0x4f0e5f(0x8c)]()});}}async['fetchData'](_0x5c608d){const _0x1107c3=a0_0x21cb03,_0x236beb={'aFHUa':function(_0x59634b,_0x184023){return _0x59634b===_0x184023;},'AqQGN':'_data','mjKkH':'Using\x20custom\x20exportQuery','KMeji':function(_0x320dfd,_0x44e0ab){return _0x320dfd>_0x44e0ab;},'bRFtr':function(_0x351dcf,_0x364391){return _0x351dcf(_0x364391);},'unHpt':_0x1107c3(0x75)};try{const {tableName:_0x5b479f,columns:_0x40cd44,exportQuery:_0x56879e,where:_0x5c6f41,sort_columns:_0x33d051}=_0x5c608d;if(!_0x5b479f||!_0x40cd44||_0x236beb[_0x1107c3(0x83)](_0x40cd44['length'],0x0))throw new Error('tableName\x20and\x20columns\x20are\x20required');const _0x16dc7a=_0x5b479f[_0x1107c3(0x95)](/\./g,'_')+_0x236beb[_0x1107c3(0xab)];let _0x4088dc;if(_0x56879e&&_0x56879e['trim']()){let _0x5809f3=_0x56879e;_0x56879e[_0x1107c3(0xb4)]()[_0x1107c3(0xdb)]('file:')&&(_0x5809f3=this['resolveExportQuery'](_0x56879e)),_0x4088dc=_0x1107c3(0x74)+_0x16dc7a+'\x20AS\x20(\x0a\x20\x20\x20\x20'+_0x5809f3+'\x0a)',logger[_0x1107c3(0x6f)]({'event':'export_using_custom_query','query':_0x5809f3[_0x1107c3(0x73)](0x0,0x64)},_0x236beb[_0x1107c3(0xc9)]);}else{const _0x24abf3=_0x40cd44['map'](_0x3caeac=>_0x1107c3(0xc0)+_0x3caeac)[_0x1107c3(0x8b)](',');_0x4088dc=_0x1107c3(0x74)+_0x16dc7a+'\x20AS\x20(\x0a\x20\x20\x20\x20SELECT\x20'+_0x24abf3+'\x0a\x20\x20\x20\x20FROM\x20'+_0x5b479f+'\x0a)',logger['info']({'event':'export_using_auto_query','tableName':_0x5b479f,'columnCount':_0x40cd44[_0x1107c3(0xcb)]},_0x1107c3(0x99));}const _0x124d0e=!_0x40cd44||_0x236beb['aFHUa'](_0x40cd44[_0x1107c3(0xcb)],0x0)||_0x40cd44[_0x1107c3(0xcb)]===0x1&&(_0x40cd44[0x0]==='*'||_0x40cd44[0x0][_0x1107c3(0x71)]()==='all'),_0xfbdb2e=_0x124d0e?'*':_0x40cd44[_0x1107c3(0x8b)](',\x20');_0x4088dc+='\x0aSELECT\x20'+_0xfbdb2e+_0x1107c3(0xdc)+_0x16dc7a;if(_0x5c6f41){const _0x3c3b67=this[_0x1107c3(0xfa)](_0x5c6f41);_0x3c3b67&&(_0x4088dc+=_0x1107c3(0xce)+_0x3c3b67);}if(_0x33d051&&_0x236beb['KMeji'](_0x33d051['length'],0x0)){const _0x2c53df=this[_0x1107c3(0x72)](_0x33d051);_0x2c53df&&(_0x4088dc+=_0x1107c3(0x90)+_0x2c53df);}logger[_0x1107c3(0x6f)]({'event':_0x1107c3(0xde),'query':_0x4088dc[_0x1107c3(0x73)](0x0,0xc8)},'Fetching\x20data\x20from\x20database');const _0x232d57=await _0x236beb[_0x1107c3(0xe9)](executeQuery,_0x4088dc);let _0x2e2fab=_0x232d57;return dbType===_0x236beb[_0x1107c3(0x7f)]&&_0x232d57&&_0x236beb['KMeji'](_0x232d57[_0x1107c3(0xcb)],0x0)&&(_0x2e2fab=_0x232d57[_0x1107c3(0x82)](_0x27aece=>{const _0x71265e=_0x1107c3,_0x56bb29={};for(const [_0x491212,_0x5e6a6e]of Object[_0x71265e(0x9d)](_0x27aece)){_0x56bb29[_0x491212[_0x71265e(0x71)]()]=_0x5e6a6e;}return _0x56bb29;})),logger['info']({'event':'export_fetch_complete','rows':_0x2e2fab[_0x1107c3(0xcb)]},'Data\x20fetched\x20successfully'),_0x2e2fab;}catch(_0x222017){logError(_0x222017,{'event':_0x1107c3(0xae)},'Failed\x20to\x20fetch\x20data');throw _0x222017;}}['sanitizeValue'](_0x5cb2d6){const _0x41028a=a0_0x21cb03,_0xb58a36={'gbHVE':function(_0xaf2fac,_0x43d36f){return _0xaf2fac===_0x43d36f;}};if(_0xb58a36[_0x41028a(0x68)](typeof _0x5cb2d6,_0x41028a(0xc4)))return _0x5cb2d6['replace'](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')['trim']();else{if(Array[_0x41028a(0x7b)](_0x5cb2d6))return _0x5cb2d6[_0x41028a(0x82)](_0x4e487c=>this['sanitizeValue'](_0x4e487c));}return _0x5cb2d6;}[a0_0x21cb03(0xfa)](_0x20f9b4){const _0x419a40=a0_0x21cb03,_0x497344={'mXIzH':function(_0x19460d,_0x5b447c){return _0x19460d===_0x5b447c;},'kYLUg':function(_0x390cfa,_0x246474){return _0x390cfa||_0x246474;},'YjnCb':'invalid_condition','tkaUj':_0x419a40(0x79),'MHCXB':function(_0x18ae0f,_0xb14743){return _0x18ae0f!==_0xb14743;},'JTBWu':function(_0x2234d2,_0x32e05d){return _0x2234d2===_0x32e05d;},'WwssD':_0x419a40(0xc4),'KlwIV':'LIKE','YytPM':_0x419a40(0xd4),'qzHhm':'IS\x20NULL','pjwHS':'IS\x20NOT\x20NULL','XqCOq':_0x419a40(0xfe),'VaIIX':function(_0x27b1cb,_0x4680fe){return _0x27b1cb===_0x4680fe;},'BMwlY':'\x20OR\x20','kUiyA':'\x20AND\x20'};if(!_0x20f9b4||!_0x20f9b4['conditions']||_0x497344['VaIIX'](_0x20f9b4[_0x419a40(0x77)][_0x419a40(0xcb)],0x0))return'';const {logic:_0x3db26f,conditions:_0x22ae85}=_0x20f9b4,_0x2709fb=_0x3db26f&&_0x3db26f['toUpperCase']()==='OR'?_0x497344[_0x419a40(0x80)]:_0x497344['kUiyA'],_0x3c8756=_0x22ae85['map'](_0x17ff39=>{const _0x4511fe=_0x419a40,{key:_0x2171af,operator:_0x211b50,value:_0x50a991,sensitive:_0x16010a}=_0x17ff39;if(_0x497344['kYLUg'](!_0x2171af,!_0x211b50))return logger['warn']({'event':_0x497344['YjnCb'],'condition':_0x17ff39},_0x497344[_0x4511fe(0x64)]),null;const _0x33d087=this['sanitizeValue'](_0x50a991),_0x3a4388=_0x497344[_0x4511fe(0xe6)](_0x16010a,undefined)?_0x16010a:!![];let _0x1445fe=_0x2171af,_0x4a55cb=_0x33d087;!_0x3a4388&&(_0x1445fe='UPPER('+_0x2171af+')',_0x497344['mXIzH'](typeof _0x50a991,'string')&&(_0x4a55cb=_0x50a991['toUpperCase']()));const _0x27ece8=typeof _0x4a55cb==='string'?'\x27'+_0x4a55cb[_0x4511fe(0x95)](/'/g,'\x27\x27')+'\x27':_0x4a55cb;switch(_0x211b50[_0x4511fe(0xe0)]()){case'=':case'!=':case'<>':return _0x1445fe+'\x20'+_0x211b50+'\x20'+_0x27ece8;case'>':case'<':case'>=':case'<=':const _0x27ab67=_0x497344[_0x4511fe(0x6a)](typeof _0x33d087,_0x497344['WwssD'])?'\x27'+_0x33d087[_0x4511fe(0x95)](/'/g,'\x27\x27')+'\x27':_0x33d087;return _0x2171af+'\x20'+_0x211b50+'\x20'+_0x27ab67;case _0x497344[_0x4511fe(0x7d)]:case _0x497344['YytPM']:return _0x1445fe+'\x20'+_0x211b50+'\x20'+_0x27ece8;case'IN':if(Array[_0x4511fe(0x7b)](_0x33d087)){let _0x126834;return!_0x3a4388?_0x126834=_0x33d087['map'](_0x9b8a6c=>{const _0x3044e8=_0x4511fe,_0x423af3=_0x497344['mXIzH'](typeof _0x9b8a6c,'string')?_0x9b8a6c['toUpperCase']():_0x9b8a6c;return typeof _0x423af3==='string'?'\x27'+_0x423af3[_0x3044e8(0x95)](/'/g,'\x27\x27')+'\x27':_0x423af3;})['join'](',\x20'):_0x126834=_0x33d087['map'](_0x20f0dd=>typeof _0x20f0dd==='string'?'\x27'+_0x20f0dd[_0x4511fe(0x95)](/'/g,'\x27\x27')+'\x27':_0x20f0dd)[_0x4511fe(0x8b)](',\x20'),_0x1445fe+'\x20IN\x20('+_0x126834+')';}return _0x1445fe+'\x20IN\x20('+_0x27ece8+')';case _0x497344['qzHhm']:return _0x2171af+_0x4511fe(0xb5);case _0x497344[_0x4511fe(0x85)]:return _0x2171af+'\x20IS\x20NOT\x20NULL';default:logger[_0x4511fe(0xe3)]({'event':_0x497344[_0x4511fe(0xd1)],'operator':_0x211b50},_0x4511fe(0xc6));return _0x1445fe+'\x20=\x20'+_0x27ece8;}})['filter'](_0x49f647=>_0x49f647!==null);if(_0x3c8756[_0x419a40(0xcb)]===0x0)return'';return _0x3c8756[_0x419a40(0x8b)](_0x2709fb);}['buildOrderByClause'](_0x3255d7){const _0x53867c=a0_0x21cb03,_0x46e4f0={'gZEeE':'invalid_order','fmHPZ':_0x53867c(0xba),'BiCnu':function(_0x3d436d,_0x3405c4){return _0x3d436d===_0x3405c4;},'avPNp':function(_0x4f81aa,_0x35b363){return _0x4f81aa===_0x35b363;}};if(!_0x3255d7||_0x46e4f0[_0x53867c(0x97)](_0x3255d7[_0x53867c(0xcb)],0x0))return'';const _0x354c7a=_0x3255d7['map'](_0x3efed8=>{const _0x3b7198=_0x53867c,{column:_0x57e992,direction:_0x22ffc2}=_0x3efed8;if(!_0x57e992)return logger[_0x3b7198(0xe3)]({'event':_0x46e4f0['gZEeE'],'item':_0x3efed8},_0x3b7198(0x9b)),null;const _0x897610=_0x22ffc2&&_0x22ffc2['toUpperCase']()===_0x46e4f0['fmHPZ']?_0x3b7198(0xba):_0x3b7198(0xfd);return _0x57e992+'\x20'+_0x897610;})[_0x53867c(0xd3)](_0x1367af=>_0x1367af!==null);if(_0x46e4f0[_0x53867c(0x9c)](_0x354c7a[_0x53867c(0xcb)],0x0))return'';return _0x354c7a[_0x53867c(0x8b)](',\x20');}async['generateExcel'](_0x4f3553,_0x23298f,_0x18804b){const _0x5eb51c=a0_0x21cb03,_0x3f65b6={'jXYwW':function(_0x476bf1,_0x32a726){return _0x476bf1*_0x32a726;},'rdEGt':function(_0x377b9c,_0x2f18a7){return _0x377b9c/_0x2f18a7;},'eZNjz':function(_0x29aebc,_0x147b03){return _0x29aebc===_0x147b03;},'gIsZc':'all','xAoaW':function(_0x44fada,_0x4418a0){return _0x44fada>_0x4418a0;},'KSxPw':_0x5eb51c(0xc2),'vLSmG':'excel_columns_fallback','HgLql':_0x5eb51c(0xb1)},_0x304bdf=require(_0x5eb51c(0xfc)),_0x3339bf=new _0x304bdf(),_0x558c8e=_0x18804b[_0x5eb51c(0x98)]?_0x18804b['filename']+'-'+_0x4f3553:_0x5eb51c(0xda)+_0x4f3553,_0x317a9c=path[_0x5eb51c(0x8b)](this['exportDir'],_0x558c8e+'.xlsx');let _0x185add=_0x18804b[_0x5eb51c(0xd2)];const _0xa2a254=_0x185add&&_0x185add[_0x5eb51c(0xcb)]===0x1&&(_0x3f65b6[_0x5eb51c(0x81)](_0x185add[0x0],'*')||_0x3f65b6[_0x5eb51c(0x81)](_0x185add[0x0][_0x5eb51c(0x71)](),_0x3f65b6[_0x5eb51c(0x67)]));if(_0x3f65b6[_0x5eb51c(0x70)](_0x23298f['length'],0x0)){const _0x596756=Object[_0x5eb51c(0xf8)](_0x23298f[0x0]);if(_0xa2a254)_0x185add=_0x596756,logger['info']({'event':'excel_columns_select_all','columns':_0x185add},'Using\x20all\x20'+_0x185add[_0x5eb51c(0xcb)]+_0x5eb51c(0xb0));else{if(_0x185add&&_0x185add['length']>0x0){const _0x2c045c=_0x185add[_0x5eb51c(0xd3)](_0x3deb90=>_0x596756['includes'](_0x3deb90));_0x2c045c[_0x5eb51c(0xcb)]>0x0?(_0x185add=_0x2c045c,logger['info']({'event':_0x3f65b6['KSxPw'],'requestedColumns':_0x18804b['columns'],'validColumns':_0x185add},_0x5eb51c(0xb7)+_0x185add['length']+_0x5eb51c(0xc5))):(_0x185add=_0x596756,logger[_0x5eb51c(0xe3)]({'event':_0x3f65b6['vLSmG'],'requestedColumns':_0x18804b[_0x5eb51c(0xd2)],'availableColumns':_0x596756},_0x5eb51c(0xb3)+_0x596756[_0x5eb51c(0xcb)]+'\x20columns'));}else _0x185add=_0x596756,logger['info']({'event':_0x3f65b6[_0x5eb51c(0xeb)],'columns':_0x185add},'Using\x20'+_0x185add[_0x5eb51c(0xcb)]+_0x5eb51c(0xb6));}}else logger[_0x5eb51c(0x6f)]({'event':_0x5eb51c(0xa2),'columns':_0x185add},_0x5eb51c(0xb7)+(_0x185add?.['length']||0x0)+_0x5eb51c(0xa0));return await _0x3339bf[_0x5eb51c(0xad)]({'data':_0x23298f,'columns':_0x185add,'columnFormats':_0x18804b['columnFormats']||null,'fieldLabels':_0x18804b['fieldLabels']||null,'filePath':_0x317a9c,'onProgress':async _0xe0bd05=>{const _0x2169cf=_0x5eb51c;await redisHelper[_0x2169cf(0xa8)](_0x4f3553,{'progress':Math['round'](_0xe0bd05),'processed_rows':Math[_0x2169cf(0xf9)](_0x3f65b6[_0x2169cf(0xd9)](_0x3f65b6[_0x2169cf(0x76)](_0xe0bd05,0x64),_0x23298f[_0x2169cf(0xcb)]))});}}),_0x317a9c;}async[a0_0x21cb03(0xf6)](_0x25d2a9){const _0x3f5be2=a0_0x21cb03,_0x583ce0={'gJpzT':_0x3f5be2(0x7e),'iYcAA':function(_0x11d15e,_0x5da31a,_0x407c79,_0x106b0a){return _0x11d15e(_0x5da31a,_0x407c79,_0x106b0a);},'oVTWD':'export_file_not_found','MgewC':_0x3f5be2(0xd0)},_0x8ba801=await redisHelper[_0x3f5be2(0x9f)](_0x25d2a9);if(!_0x8ba801||_0x8ba801[_0x3f5be2(0x96)]!==_0x583ce0['gJpzT'])return null;try{return await fs['access'](_0x8ba801['file_path']),_0x8ba801['file_path'];}catch(_0x4e18f8){return _0x583ce0['iYcAA'](logError,_0x4e18f8,{'event':_0x583ce0[_0x3f5be2(0x9e)],'jobId':_0x25d2a9,'path':_0x8ba801['file_path']},_0x583ce0[_0x3f5be2(0xc3)]),null;}}async[a0_0x21cb03(0xea)](){const _0x59bf2e=a0_0x21cb03,_0x156885={'sBejF':function(_0x4f1b96,_0x43fc8f){return _0x4f1b96/_0x43fc8f;},'vESUz':function(_0x2aa3a7,_0x2ecbbc){return _0x2aa3a7*_0x2ecbbc;},'MPGzl':function(_0x20d310,_0x430f49){return _0x20d310>_0x430f49;},'LwgHq':_0x59bf2e(0xf7),'Zuhpv':_0x59bf2e(0x9a),'PudIF':'Failed\x20to\x20delete\x20export\x20file','BcuqS':_0x59bf2e(0xf0),'ttWdo':_0x59bf2e(0xc1)};logger[_0x59bf2e(0x6f)]({'event':'export_cleanup_start'},_0x59bf2e(0xcc));const _0x178ead=await redisHelper['getAllJobs']();let _0x1cf725=0x0;for(const _0xf8ee62 of _0x178ead){const _0x1b65cc=new Date(_0xf8ee62[_0x59bf2e(0xf3)]),_0xd86e4b=new Date(),_0x2e8645=_0x156885[_0x59bf2e(0xb2)](_0xd86e4b-_0x1b65cc,_0x156885['vESUz'](0x3e8,0x3c)*0x3c);if(_0x156885[_0x59bf2e(0xc8)](_0x2e8645,0x1)){if(_0xf8ee62['file_path'])try{await fs[_0x59bf2e(0x69)](_0xf8ee62['file_path']),logger['info']({'event':_0x156885['LwgHq'],'path':_0xf8ee62[_0x59bf2e(0xca)]},_0x156885['Zuhpv']);}catch(_0x263421){logger['warn']({'event':'export_file_delete_error','path':_0xf8ee62['file_path'],'error':_0x263421[_0x59bf2e(0xe1)]},_0x156885['PudIF']);}await redisHelper['deleteJob'](_0xf8ee62['job_id']),_0x1cf725++;}}return logger['info']({'event':_0x156885[_0x59bf2e(0x78)],'deleted':_0x1cf725},_0x156885['ttWdo']),_0x1cf725;}}module[a0_0x21cb03(0xbd)]=new ExportService();
@@ -1 +1 @@
1
- function a0_0x39a5(_0xa74146,_0x40c44a){_0xa74146=_0xa74146-0x104;const _0x5653c2=a0_0x5653();let _0x39a53a=_0x5653c2[_0xa74146];if(a0_0x39a5['zhqRFc']===undefined){var _0x570070=function(_0x44b744){const _0x76af69='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4f44f9='',_0x2c61ad='';for(let _0x4acfc4=0x0,_0x2cf653,_0x236088,_0x29c1e1=0x0;_0x236088=_0x44b744['charAt'](_0x29c1e1++);~_0x236088&&(_0x2cf653=_0x4acfc4%0x4?_0x2cf653*0x40+_0x236088:_0x236088,_0x4acfc4++%0x4)?_0x4f44f9+=String['fromCharCode'](0xff&_0x2cf653>>(-0x2*_0x4acfc4&0x6)):0x0){_0x236088=_0x76af69['indexOf'](_0x236088);}for(let _0x149e2e=0x0,_0x11924d=_0x4f44f9['length'];_0x149e2e<_0x11924d;_0x149e2e++){_0x2c61ad+='%'+('00'+_0x4f44f9['charCodeAt'](_0x149e2e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2c61ad);};a0_0x39a5['LzsPaq']=_0x570070,a0_0x39a5['uqPdtc']={},a0_0x39a5['zhqRFc']=!![];}const _0x578aff=_0x5653c2[0x0],_0x32053b=_0xa74146+_0x578aff,_0x1287ef=a0_0x39a5['uqPdtc'][_0x32053b];return!_0x1287ef?(_0x39a53a=a0_0x39a5['LzsPaq'](_0x39a53a),a0_0x39a5['uqPdtc'][_0x32053b]=_0x39a53a):_0x39a53a=_0x1287ef,_0x39a53a;}function a0_0x5653(){const _0x2b0d5a=['t25SEsb4Bhn4igzVCM1HDcbPCYbZDxbWB3j0zwq','rMfPBgvKihrVigDLDcbLEhbVCNqGC3rHDhvZ','y2XLyw51Cf9LCNjVCG','sw52ywXPzcb3AgvYzsbMAwvSza','nLjysufwtG','mJy1nfnosLjwqq','q29SDw1Uici','AgfUzgXLrxHWB3j0rg93BMXVywq','y29SDw1UrM9YBwf0CW','BwTyqw8','z1jNvwC','z2v0','y29UzgL0Aw9UCW','zxHWB3j0x2rVD25SB2fKzwq','swr4rNu','EgXZEa','CMvNAxn0zxjdBgvHBNvWuM91Dgu','ANnVBG','mtq1oti1nM9owNL3CW','l2v4Cg9YDc1KB3DUBg9Hza','AgfUzgXLrxHWB3j0u3rHDhvZ','t3jdzfm','mZu2mdiZmKLAAvHYqq','sw52ywXPzcbZB3j0ignVBhvTBG','y3jLyxrLsM9I','sezzAeG','CMvNAxn0zxjsB3v0zxm','mJaYmZq3nwXVqMTirq','Bg9NAwm','Cg9ZDa','ufDnrwC','zeXbsey','zxHWB3j0uxvLCNK','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','rvrVyuy','AgfUzgXLrxHWB3j0vhjPz2DLCG','y29SDw1U','DgfIBgvoyw1L','BwvZC2fNzq','rMLSzsbUB3qGCMvHzhKGB3iGBM90igzVDw5KlIbdAgvJAYbQB2iGC3rHDhvZigzPCNn0lG','Cgf0Aa','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','q2XLyw51CcbJB21WBgv0zwq','AgvHzgvYC1nLBNq','ndmWodK0muzOEgvwqW','A2v5','wfD5r0K','mtK1mJGZnJbyEMjTrwu','ota3CLr0rM1y','z2v0sM9Iu3rHDhvZ','C3rHDhvZ','zxHWB3j0x3rYAwDNzxjFzxjYB3i','rMLLBgqGiG','AxnbCNjHEq','mtC0mdK4mxbpEvHhyW','BLD4z3e','ouvuChjkBW','rMfPBgvKihrVigrVD25SB2fKigzPBgu','zgXiAxq','AK9iu0m'];a0_0x5653=function(){return _0x2b0d5a;};return a0_0x5653();}const a0_0x4ba3cf=a0_0x39a5;(function(_0x32181c,_0x512ce4){const _0x5224d6=a0_0x39a5,_0x1c7b84=_0x32181c();while(!![]){try{const _0x6e9ab=-parseInt(_0x5224d6(0x122))/0x1*(-parseInt(_0x5224d6(0x133))/0x2)+parseInt(_0x5224d6(0x128))/0x3+parseInt(_0x5224d6(0x108))/0x4+parseInt(_0x5224d6(0x10d))/0x5+-parseInt(_0x5224d6(0x132))/0x6*(parseInt(_0x5224d6(0x11e))/0x7)+-parseInt(_0x5224d6(0x104))/0x8*(-parseInt(_0x5224d6(0x12a))/0x9)+-parseInt(_0x5224d6(0x121))/0xa;if(_0x6e9ab===_0x512ce4)break;else _0x1c7b84['push'](_0x1c7b84['shift']());}catch(_0x5885c0){_0x1c7b84['push'](_0x1c7b84['shift']());}}}(a0_0x5653,0xa91c5));const exportService=require('../../services/export-service'),{logger,logError}=require('../../utils/logger'),path=require(a0_0x4ba3cf(0x11a));class ExportHandler{static[a0_0x4ba3cf(0x10c)](_0x297e13,_0x451dcb,_0x573d63,_0x4d5e93){const _0x3ba2f5=a0_0x4ba3cf,_0x36647d={'nWxgq':function(_0x206f8e,_0x897957,_0x58350b,_0x1c488f){return _0x206f8e(_0x897957,_0x58350b,_0x1c488f);},'dlHit':'Failed\x20to\x20trigger\x20export','dLAHF':'Failed\x20to\x20download\x20export'},_0x2af50e='/api/'+_0x451dcb+'/'+_0x573d63;_0x297e13[_0x3ba2f5(0x10f)](_0x2af50e+'/export',async(_0x65906e,_0x3cfb50)=>{const _0x503ccc=_0x3ba2f5;try{await this['handleExportTrigger'](_0x65906e,_0x3cfb50,_0x4d5e93,_0x451dcb,_0x573d63);}catch(_0x56c826){_0x36647d[_0x503ccc(0x129)](logError,_0x56c826,{'event':_0x503ccc(0x125)},_0x36647d[_0x503ccc(0x12c)]),_0x3cfb50['status'](0x1f4)['json']({'success':![],'error':_0x56c826[_0x503ccc(0x118)]});}}),_0x297e13[_0x3ba2f5(0x139)](_0x2af50e+'/export-status',async(_0x29383c,_0x549c5c)=>{const _0x14309a=_0x3ba2f5;try{await this['handleExportStatus'](_0x29383c,_0x549c5c);}catch(_0x5601a1){_0x36647d['nWxgq'](logError,_0x5601a1,{'event':'export_status_error'},_0x14309a(0x12f)),_0x549c5c['status'](0x1f4)[_0x14309a(0x13f)]({'success':![],'error':_0x5601a1[_0x14309a(0x118)]});}}),_0x297e13['get'](_0x2af50e+_0x3ba2f5(0x105),async(_0x1e7544,_0x4edf2e)=>{const _0x386b30=_0x3ba2f5;try{await this[_0x386b30(0x135)](_0x1e7544,_0x4edf2e);}catch(_0x359af2){logError(_0x359af2,{'event':'export_download_error'},_0x36647d[_0x386b30(0x111)]),!_0x4edf2e[_0x386b30(0x11d)]&&_0x4edf2e[_0x386b30(0x124)](0x1f4)['json']({'success':![],'error':_0x359af2[_0x386b30(0x118)]});}});}static async[a0_0x4ba3cf(0x115)](_0x42dd31,_0x3f7f3d,_0x5cf698,_0x1385d0,_0x24c750){const _0x2361f8=a0_0x4ba3cf,_0x514234={'HFYhH':_0x2361f8(0x13d),'XWyGI':_0x2361f8(0x109),'IdxFu':function(_0x41b311,_0x536614){return _0x41b311+_0x536614;},'mkXAo':'-export','OrCdS':function(_0xf4998b,_0x246af5){return _0xf4998b||_0x246af5;},'gRgUg':function(_0x302840,_0x13c332){return _0x302840||_0x13c332;}},{format:_0x19aa42,filename:_0x4709b3,columns:_0x1916c2,where:_0x155e47,sort_columns:_0x15772f}=_0x42dd31['body'];if(_0x19aa42&&_0x19aa42!==_0x514234[_0x2361f8(0x10b)])return _0x3f7f3d[_0x2361f8(0x124)](0x190)[_0x2361f8(0x13f)]({'success':![],'error':_0x2361f8(0x12e)});if(_0x155e47){if(!_0x155e47[_0x2361f8(0x10e)]||!_0x155e47['conditions']||!Array['isArray'](_0x155e47[_0x2361f8(0x13a)]))return _0x3f7f3d[_0x2361f8(0x124)](0x190)['json']({'success':![],'error':'Invalid\x20where\x20structure.\x20Expected:\x20{\x20logic:\x20\x22AND|OR\x22,\x20conditions:\x20[...]\x20}'});}if(_0x15772f){if(!Array[_0x2361f8(0x127)](_0x15772f))return _0x3f7f3d['status'](0x190)['json']({'success':![],'error':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]'});}const _0x4f0a57=_0x5cf698['columns']||[];if(_0x155e47&&Array['isArray'](_0x155e47['conditions']))for(const _0x31a130 of _0x155e47['conditions']){if(_0x31a130['key']&&!_0x4f0a57['includes'](_0x31a130[_0x2361f8(0x11f)]))return _0x3f7f3d[_0x2361f8(0x124)](0x190)['json']({'success':![],'error':_0x2361f8(0x131),'message':_0x2361f8(0x126)+_0x31a130[_0x2361f8(0x11f)]+'\x22\x20is\x20not\x20allowed','validFields':_0x4f0a57});}if(Array[_0x2361f8(0x127)](_0x15772f))for(const _0x19ff35 of _0x15772f){if(_0x19ff35['column']&&!_0x4f0a57['includes'](_0x19ff35[_0x2361f8(0x116)]))return _0x3f7f3d[_0x2361f8(0x124)](0x190)[_0x2361f8(0x13f)]({'success':![],'error':_0x514234[_0x2361f8(0x120)],'message':_0x2361f8(0x134)+_0x19ff35['column']+'\x22\x20is\x20not\x20allowed','validFields':_0x4f0a57});}const _0x4e7116=_0x514234[_0x2361f8(0x13c)](_0x5cf698[_0x2361f8(0x117)]['replace']('.','-'),_0x514234[_0x2361f8(0x137)]),_0x4846f6=await exportService[_0x2361f8(0x10a)]({'moduleName':_0x1385d0,'endpointName':_0x24c750,'tableName':_0x5cf698[_0x2361f8(0x117)],'format':_0x19aa42||_0x514234[_0x2361f8(0x10b)],'filename':_0x514234[_0x2361f8(0x107)](_0x4709b3,_0x4e7116),'columns':_0x1916c2||_0x5cf698['columns'],'exportQuery':_0x5cf698[_0x2361f8(0x112)]||null,'columnFormats':_0x5cf698[_0x2361f8(0x136)]||null,'fieldLabels':_0x5cf698['fieldLabels']||null,'where':_0x514234[_0x2361f8(0x138)](_0x155e47,null),'sort_columns':_0x514234['OrCdS'](_0x15772f,null)});_0x3f7f3d[_0x2361f8(0x13f)]({'success':!![],'data':_0x4846f6});}static async[a0_0x4ba3cf(0x106)](_0x44d2f0,_0x57dc19){const _0x49ea5d=a0_0x4ba3cf,_0x43eeed={'jOHSC':_0x49ea5d(0x113)},{job_id:_0x17c516}=_0x44d2f0['query'];if(!_0x17c516)return _0x57dc19[_0x49ea5d(0x124)](0x190)['json']({'success':![],'error':_0x43eeed[_0x49ea5d(0x12d)]});const _0x3423a3=await exportService[_0x49ea5d(0x123)](_0x17c516);if(!_0x3423a3['success'])return _0x57dc19[_0x49ea5d(0x124)](0x194)['json'](_0x3423a3);_0x57dc19[_0x49ea5d(0x13f)](_0x3423a3);}static async[a0_0x4ba3cf(0x135)](_0x23c4f6,_0x5db87f){const _0x269c4d=a0_0x4ba3cf,_0x281ac4={'jLnkk':function(_0xb4ad90,_0x144a51,_0x2a19df,_0x31f585){return _0xb4ad90(_0x144a51,_0x2a19df,_0x31f585);},'dCyoA':'Failed\x20to\x20download\x20export\x20file','PEByv':'job_id\x20parameter\x20is\x20required'},{job_id:_0x3c69c}=_0x23c4f6['query'];if(!_0x3c69c)return _0x5db87f['status'](0x190)[_0x269c4d(0x13f)]({'success':![],'error':_0x281ac4['PEByv']});const _0x4e5165=await exportService['getFilePath'](_0x3c69c);if(!_0x4e5165)return _0x5db87f[_0x269c4d(0x124)](0x194)[_0x269c4d(0x13f)]({'success':![],'error':_0x269c4d(0x119)});_0x5db87f['download'](_0x4e5165,''+path['basename'](_0x4e5165),_0x581480=>{const _0x3664bd=_0x269c4d;_0x581480?(_0x281ac4['jLnkk'](logError,_0x581480,{'event':'export_download_error','jobId':_0x3c69c},_0x281ac4['dCyoA']),!_0x5db87f['headersSent']&&_0x5db87f['status'](0x1f4)['json']({'success':![],'error':_0x3664bd(0x12b)})):logger['info']({'event':_0x3664bd(0x13b),'jobId':_0x3c69c},'Export\x20file\x20downloaded\x20successfully');});}static[a0_0x4ba3cf(0x13e)](_0x4b8548){const _0x5b682a=a0_0x4ba3cf,_0x1f7b8e={'PWMEg':_0x5b682a(0x11c),'EToaF':_0x5b682a(0x11b)};_0x4b8548['get'](_0x1f7b8e[_0x5b682a(0x114)],async(_0x299586,_0xff2cfb)=>{const _0x3d85ab=_0x5b682a;try{const _0x20a0fb=await exportService['cleanup']();_0xff2cfb[_0x3d85ab(0x13f)]({'success':!![],'data':{'deleted':_0x20a0fb,'message':_0x1f7b8e[_0x3d85ab(0x110)]}});}catch(_0x3c217f){logError(_0x3c217f,{'event':_0x3d85ab(0x130)},'Cleanup\x20failed'),_0xff2cfb[_0x3d85ab(0x124)](0x1f4)['json']({'success':![],'error':_0x3c217f[_0x3d85ab(0x118)]});}});}}module['exports']=ExportHandler;
1
+ const a0_0x164c0e=a0_0x2e38;function a0_0x53bf(){const _0x3e42d5=['Aw5JBhvKzxm','iIbPCYbUB3qGywXSB3DLza','t25SEsb4Bhn4igzVCM1HDcbPCYbZDxbWB3j0zwq','AxnbCNjHEq','q2XLyw51CcbMywLSzwq','ndK2ndG3neLwCePpBG','ntiZodyYwhrWCMrY','y29SDw1UCW','DgfIBgvoyw1L','yM9KEq','CvPwq0K','mtm1D2vKwMnl','nduZu2rWAe5d','EgXZEa','mtm0ntuWne9Orxv2Aq','DKzVuw8','mtaZodGZndbHuwvXCMW','Bg9NAwm','ANnVBG','C3vJy2vZCW','zMLLBgrmywjLBhm','suDpBNG','AgfUzgXLrxHWB3j0rg93BMXVywq','rMLSzsbUB3qGCMvHzhKGB3iGBM90igzVDw5KlIbdAgvJAYbQB2iGC3rHDhvZigzPCNn0lG','mtf1wxrHBw4','rMfPBgvKihrVigrVD25SB2fKigv4Cg9YDa','yMfZzw5HBwu','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','y29UzgL0Aw9UCW','mtb4Ae1YBwK','zxHWB3j0x3rYAwDNzxjFzxjYB3i','y3jLyxrLsM9I','nJK1mZi3nw9us0Tcrq','rMfPBgvKihrVihrYAwDNzxiGzxHWB3j0','q2XLyw51CcbJB21WBgv0zwq','zxHWB3j0uxvLCNK','nJm1mdyWzgDZrhPd','seTwz1K','oeDtqwzWsG','wNDsCfO','CxvLCNK','rMfPBgvKihrVigDLDcbLEhbVCNqGC3rHDhvZ','y2XLyw51Ca','l2v4Cg9YDc1KB3DUBg9Hza','z2v0sM9Iu3rHDhvZ','lI4VlI4VDxrPBhmVBg9Nz2vY','nZCYnK5RCg9ICG','C3rHDhvZ','EKTkqK4','AgfUzgXLrxHWB3j0u3rHDhvZ','z2v0','zxHWB3j0x3n0yxr1C19LCNjVCG','AgvHzgvYC1nLBNq','zxHWB3j0x2rVD25SB2fKx2vYCM9Y','AujcDMq','y2XLyw51Cf9LCNjVCG','y0XRwhm'];a0_0x53bf=function(){return _0x3e42d5;};return a0_0x53bf();}(function(_0x437e59,_0x4bfaa2){const _0x454dfe=a0_0x2e38,_0x2fed67=_0x437e59();while(!![]){try{const _0x546271=parseInt(_0x454dfe(0x7d))/0x1+-parseInt(_0x454dfe(0x6c))/0x2*(-parseInt(_0x454dfe(0x83))/0x3)+parseInt(_0x454dfe(0x85))/0x4*(-parseInt(_0x454dfe(0x94))/0x5)+-parseInt(_0x454dfe(0x7c))/0x6+parseInt(_0x454dfe(0x97))/0x7*(parseInt(_0x454dfe(0x9d))/0x8)+-parseInt(_0x454dfe(0x82))/0x9*(parseInt(_0x454dfe(0x9b))/0xa)+parseInt(_0x454dfe(0x8f))/0xb*(parseInt(_0x454dfe(0x87))/0xc);if(_0x546271===_0x4bfaa2)break;else _0x2fed67['push'](_0x2fed67['shift']());}catch(_0x3500ea){_0x2fed67['push'](_0x2fed67['shift']());}}}(a0_0x53bf,0x7d55e));const exportService=require('../../services/export-service'),{logger,logError}=require(a0_0x164c0e(0xa4)),path=require('path');function a0_0x2e38(_0xf3b5eb,_0x1142aa){_0xf3b5eb=_0xf3b5eb-0x6c;const _0x53bf1c=a0_0x53bf();let _0x2e388f=_0x53bf1c[_0xf3b5eb];if(a0_0x2e38['WqqMAl']===undefined){var _0x43a5e4=function(_0x434b2f){const _0x3f9273='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37a502='',_0x1cda90='';for(let _0x518b84=0x0,_0x45ca59,_0x16a6c,_0x2eb754=0x0;_0x16a6c=_0x434b2f['charAt'](_0x2eb754++);~_0x16a6c&&(_0x45ca59=_0x518b84%0x4?_0x45ca59*0x40+_0x16a6c:_0x16a6c,_0x518b84++%0x4)?_0x37a502+=String['fromCharCode'](0xff&_0x45ca59>>(-0x2*_0x518b84&0x6)):0x0){_0x16a6c=_0x3f9273['indexOf'](_0x16a6c);}for(let _0x4149b9=0x0,_0x557213=_0x37a502['length'];_0x4149b9<_0x557213;_0x4149b9++){_0x1cda90+='%'+('00'+_0x37a502['charCodeAt'](_0x4149b9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1cda90);};a0_0x2e38['QllPJJ']=_0x43a5e4,a0_0x2e38['YIVflx']={},a0_0x2e38['WqqMAl']=!![];}const _0x409d61=_0x53bf1c[0x0],_0x491418=_0xf3b5eb+_0x409d61,_0x55c93d=a0_0x2e38['YIVflx'][_0x491418];return!_0x55c93d?(_0x2e388f=a0_0x2e38['QllPJJ'](_0x2e388f),a0_0x2e38['YIVflx'][_0x491418]=_0x2e388f):_0x2e388f=_0x55c93d,_0x2e388f;}class ExportHandler{static['registerRoutes'](_0xe5ff89,_0x2a3b6f,_0x23d63a,_0x469cb8){const _0x3b937a=a0_0x164c0e,_0x52b5c6={'zKJBN':function(_0x59bd37,_0x4621e9,_0x6f915c,_0x504d77){return _0x59bd37(_0x4621e9,_0x6f915c,_0x504d77);},'vFoQo':_0x3b937a(0x95),'iBBvd':function(_0x3884be,_0x3a2d18,_0x302d63,_0x43933f){return _0x3884be(_0x3a2d18,_0x302d63,_0x43933f);},'GTmRX':_0x3b937a(0xa0)},_0x5e11a4='/api/'+_0x2a3b6f+'/'+_0x23d63a;_0xe5ff89['post'](_0x5e11a4+'/export',async(_0x137839,_0x5aa662)=>{const _0x14f1e0=_0x3b937a;try{await this['handleExportTrigger'](_0x137839,_0x5aa662,_0x469cb8,_0x2a3b6f,_0x23d63a);}catch(_0xcf62ac){_0x52b5c6[_0x14f1e0(0x6e)](logError,_0xcf62ac,{'event':_0x52b5c6[_0x14f1e0(0x86)]},_0x14f1e0(0x98)),_0x5aa662['status'](0x1f4)['json']({'success':![],'error':_0xcf62ac['message']});}}),_0xe5ff89['get'](_0x5e11a4+'/export-status',async(_0xd7ef1b,_0x1b9680)=>{const _0x44c7fb=_0x3b937a;try{await this[_0x44c7fb(0x6f)](_0xd7ef1b,_0x1b9680);}catch(_0x56fb40){_0x52b5c6[_0x44c7fb(0x74)](logError,_0x56fb40,{'event':_0x44c7fb(0x71)},_0x52b5c6['GTmRX']),_0x1b9680['status'](0x1f4)[_0x44c7fb(0x89)]({'success':![],'error':_0x56fb40['message']});}}),_0xe5ff89[_0x3b937a(0x70)](_0x5e11a4+_0x3b937a(0xa2),async(_0x2d0e39,_0x2e6428)=>{const _0x20b4f9=_0x3b937a;try{await this[_0x20b4f9(0x8d)](_0x2d0e39,_0x2e6428);}catch(_0x358670){logError(_0x358670,{'event':_0x20b4f9(0x73)},_0x20b4f9(0x90)),!_0x2e6428['headersSent']&&_0x2e6428['status'](0x1f4)[_0x20b4f9(0x89)]({'success':![],'error':_0x358670['message']});}});}static async['handleExportTrigger'](_0x40187f,_0x57eefd,_0x134c2c,_0x3375fd,_0x469ea6){const _0x3cc666=a0_0x164c0e,_0x149232={'qZVCI':function(_0x5ebc05,_0x210e79){return _0x5ebc05!==_0x210e79;},'QbZZK':'xlsx','ZwRpZ':_0x3cc666(0x79),'baaiR':function(_0x44e731,_0x260366){return _0x44e731+_0x260366;},'iPjoE':function(_0x3cc8fd,_0x38288b){return _0x3cc8fd||_0x38288b;},'cLkXs':function(_0x4afbe4,_0x364857){return _0x4afbe4||_0x364857;}},{format:_0x48140a,filename:_0x1cc619,columns:_0x3ea4c8,where:_0x1a3ab5,sort_columns:_0x19dba4}=_0x40187f[_0x3cc666(0x80)];if(_0x48140a&&_0x149232[_0x3cc666(0x81)](_0x48140a,_0x149232['QbZZK']))return _0x57eefd[_0x3cc666(0x6d)](0x190)['json']({'success':![],'error':_0x149232[_0x3cc666(0x9e)]});if(_0x1a3ab5){if(!_0x1a3ab5[_0x3cc666(0x88)]||!_0x1a3ab5[_0x3cc666(0x93)]||!Array[_0x3cc666(0x7a)](_0x1a3ab5[_0x3cc666(0x93)]))return _0x57eefd[_0x3cc666(0x6d)](0x190)[_0x3cc666(0x89)]({'success':![],'error':'Invalid\x20where\x20structure.\x20Expected:\x20{\x20logic:\x20\x22AND|OR\x22,\x20conditions:\x20[...]\x20}'});}if(_0x19dba4){if(!Array[_0x3cc666(0x7a)](_0x19dba4))return _0x57eefd[_0x3cc666(0x6d)](0x190)[_0x3cc666(0x89)]({'success':![],'error':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]'});}const _0x248f40=_0x134c2c[_0x3cc666(0x7e)]||[];if(_0x1a3ab5&&Array[_0x3cc666(0x7a)](_0x1a3ab5[_0x3cc666(0x93)]))for(const _0xd19187 of _0x1a3ab5['conditions']){if(_0xd19187['key']&&!_0x248f40[_0x3cc666(0x77)](_0xd19187['key']))return _0x57eefd['status'](0x190)[_0x3cc666(0x89)]({'success':![],'error':'Invalid\x20where\x20field','message':'Field\x20\x22'+_0xd19187['key']+_0x3cc666(0x78),'validFields':_0x248f40});}if(Array['isArray'](_0x19dba4))for(const _0x4098c7 of _0x19dba4){if(_0x4098c7['column']&&!_0x248f40['includes'](_0x4098c7['column']))return _0x57eefd[_0x3cc666(0x6d)](0x190)['json']({'success':![],'error':'Invalid\x20sort\x20column','message':'Column\x20\x22'+_0x4098c7['column']+'\x22\x20is\x20not\x20allowed','validFields':_0x248f40});}const _0x4973cc=_0x149232['baaiR'](_0x134c2c[_0x3cc666(0x7f)]['replace']('.','-'),'-export'),_0x42ec6f=await exportService[_0x3cc666(0x96)]({'moduleName':_0x3375fd,'endpointName':_0x469ea6,'tableName':_0x134c2c[_0x3cc666(0x7f)],'format':_0x48140a||_0x3cc666(0x84),'filename':_0x149232['iPjoE'](_0x1cc619,_0x4973cc),'columns':_0x3ea4c8||_0x134c2c[_0x3cc666(0x7e)],'exportQuery':_0x134c2c[_0x3cc666(0x9a)]||null,'columnFormats':_0x134c2c['columnFormats']||null,'fieldLabels':_0x134c2c[_0x3cc666(0x8b)]||null,'where':_0x149232['iPjoE'](_0x1a3ab5,null),'sort_columns':_0x149232[_0x3cc666(0x76)](_0x19dba4,null)});_0x57eefd[_0x3cc666(0x89)]({'success':!![],'data':_0x42ec6f});}static async['handleExportStatus'](_0x249780,_0x1b4cc9){const _0x2b8c52=a0_0x164c0e,{job_id:_0x792cfe}=_0x249780[_0x2b8c52(0x9f)];if(!_0x792cfe)return _0x1b4cc9['status'](0x190)[_0x2b8c52(0x89)]({'success':![],'error':'job_id\x20parameter\x20is\x20required'});const _0x59ff94=await exportService[_0x2b8c52(0xa3)](_0x792cfe);if(!_0x59ff94[_0x2b8c52(0x8a)])return _0x1b4cc9[_0x2b8c52(0x6d)](0x194)['json'](_0x59ff94);_0x1b4cc9[_0x2b8c52(0x89)](_0x59ff94);}static async['handleExportDownload'](_0x290a89,_0x52b42f){const _0x2ab577=a0_0x164c0e,_0x16d1b5={'IGOnx':function(_0x196164,_0x37a9a9,_0x1ae27a,_0x54f376){return _0x196164(_0x37a9a9,_0x1ae27a,_0x54f376);},'STipl':'export_downloaded','JygUs':'Export\x20file\x20downloaded\x20successfully','HKVgY':_0x2ab577(0x8e)},{job_id:_0x16d4e1}=_0x290a89['query'];if(!_0x16d4e1)return _0x52b42f[_0x2ab577(0x6d)](0x190)['json']({'success':![],'error':'job_id\x20parameter\x20is\x20required'});const _0x4dbfc0=await exportService['getFilePath'](_0x16d4e1);if(!_0x4dbfc0)return _0x52b42f['status'](0x194)['json']({'success':![],'error':_0x16d1b5[_0x2ab577(0x9c)]});_0x52b42f['download'](_0x4dbfc0,''+path[_0x2ab577(0x91)](_0x4dbfc0),_0x5b463c=>{const _0x18ea29=_0x2ab577;_0x5b463c?(_0x16d1b5[_0x18ea29(0x8c)](logError,_0x5b463c,{'event':'export_download_error','jobId':_0x16d4e1},'Failed\x20to\x20download\x20export\x20file'),!_0x52b42f[_0x18ea29(0x72)]&&_0x52b42f['status'](0x1f4)['json']({'success':![],'error':'Failed\x20to\x20download\x20file'})):logger['info']({'event':_0x16d1b5['STipl'],'jobId':_0x16d4e1},_0x16d1b5['JygUs']);});}static['registerCleanupRoute'](_0x40e4a3){const _0x2e8004=a0_0x164c0e;_0x40e4a3['get'](_0x2e8004(0x92),async(_0x24a8eb,_0x356fb7)=>{const _0x13b3ed=_0x2e8004;try{const _0x14f4ba=await exportService[_0x13b3ed(0xa1)]();_0x356fb7[_0x13b3ed(0x89)]({'success':!![],'data':{'deleted':_0x14f4ba,'message':_0x13b3ed(0x99)}});}catch(_0x199da6){logError(_0x199da6,{'event':_0x13b3ed(0x75)},_0x13b3ed(0x7b)),_0x356fb7[_0x13b3ed(0x6d)](0x1f4)[_0x13b3ed(0x89)]({'success':![],'error':_0x199da6['message']});}});}}module['exports']=ExportHandler;