@restforgejs/platform 5.0.9 → 5.1.4

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 (181) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/data/pull.js +95 -0
  5. package/generators/cli/data/push.js +85 -0
  6. package/generators/cli/fast-track.js +950 -0
  7. package/generators/cli/payload/sync.js +18 -2
  8. package/generators/cli/schema/introspect.js +10 -10
  9. package/generators/lib/data/db-executor.js +440 -0
  10. package/generators/lib/data/dialect-kit.js +56 -0
  11. package/generators/lib/data/envelope.js +220 -0
  12. package/generators/lib/data/pull-runner.js +407 -0
  13. package/generators/lib/data/push-runner.js +382 -0
  14. package/generators/lib/data/sdf-reader.js +132 -0
  15. package/generators/lib/data/table-order.js +126 -0
  16. package/generators/lib/data/value-codec.js +188 -0
  17. package/generators/lib/migrate/field-type-resolver.js +18 -5
  18. package/generators/lib/payload/payload-runner.js +724 -39
  19. package/generators/lib/templates/dashboard-catalog.js +1 -1
  20. package/generators/lib/templates/db-connection-env.js +1 -1
  21. package/generators/lib/templates/dbschema-catalog.js +1 -1
  22. package/generators/lib/templates/field-validation-catalog.js +1 -1
  23. package/generators/lib/templates/mysql-template.js +1 -1
  24. package/generators/lib/templates/oracle-template.js +1 -1
  25. package/generators/lib/templates/postgres-template.js +1 -1
  26. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  27. package/generators/lib/templates/sqlite-template.js +1 -1
  28. package/integrity-manifest.json +18 -18
  29. package/package.json +1 -1
  30. package/scripts/verify-integrity.js +1 -1
  31. package/server.js +1 -1
  32. package/src/components/handlers/adjust_handler.js +1 -1
  33. package/src/components/handlers/audit_handler.js +1 -1
  34. package/src/components/handlers/delete_handler.js +1 -1
  35. package/src/components/handlers/export_handler.js +1 -1
  36. package/src/components/handlers/import_handler.js +1 -1
  37. package/src/components/handlers/insert_handler.js +1 -1
  38. package/src/components/handlers/update_handler.js +1 -1
  39. package/src/components/handlers/upload_handler.js +1 -1
  40. package/src/components/handlers/workflow_handler.js +1 -1
  41. package/src/components/integrations/webhook.js +1 -1
  42. package/src/consumers/baseConsumer.js +1 -1
  43. package/src/consumers/declarativeMapper.js +1 -1
  44. package/src/consumers/handlers/apiHandler.js +1 -1
  45. package/src/consumers/handlers/consoleHandler.js +1 -1
  46. package/src/consumers/handlers/databaseHandler.js +1 -1
  47. package/src/consumers/handlers/index.js +1 -1
  48. package/src/consumers/handlers/kafkaHandler.js +1 -1
  49. package/src/consumers/index.js +1 -1
  50. package/src/consumers/messageTransformer.js +1 -1
  51. package/src/consumers/validator.js +1 -1
  52. package/src/core/db/dialect/base-dialect.js +1 -1
  53. package/src/core/db/dialect/index.js +1 -1
  54. package/src/core/db/dialect/mysql-dialect.js +1 -1
  55. package/src/core/db/dialect/oracle-dialect.js +1 -1
  56. package/src/core/db/dialect/postgres-dialect.js +1 -1
  57. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  58. package/src/core/db/flatten-helper.js +1 -1
  59. package/src/core/db/query-builder-error.js +1 -1
  60. package/src/core/db/query-builder.js +1 -1
  61. package/src/core/db/relation-helper.js +1 -1
  62. package/src/core/handlers/delete_handler.js +1 -1
  63. package/src/core/handlers/insert_handler.js +1 -1
  64. package/src/core/handlers/update_handler.js +1 -1
  65. package/src/core/models/base-model.js +1 -1
  66. package/src/core/utils/cache-manager.js +1 -1
  67. package/src/core/utils/component-engine.js +1 -1
  68. package/src/core/utils/context-builder.js +1 -1
  69. package/src/core/utils/datetime-formatter.js +1 -1
  70. package/src/core/utils/datetime-parser.js +1 -1
  71. package/src/core/utils/db.js +1 -1
  72. package/src/core/utils/logger.js +1 -1
  73. package/src/core/utils/payload-loader.js +1 -1
  74. package/src/core/utils/security-checks.js +1 -1
  75. package/src/middleware/body-options.js +1 -1
  76. package/src/middleware/cors.js +1 -1
  77. package/src/middleware/idempotency.js +1 -1
  78. package/src/middleware/rate-limiter.js +1 -1
  79. package/src/middleware/request-logger.js +1 -1
  80. package/src/middleware/security-headers.js +1 -1
  81. package/src/models/base-model-mysql.js +1 -1
  82. package/src/models/base-model-oracle.js +1 -1
  83. package/src/models/base-model-sqlite.js +1 -1
  84. package/src/models/base-model.js +1 -1
  85. package/src/pro/caching/redis-client.js +1 -1
  86. package/src/pro/caching/redis-helper.js +1 -1
  87. package/src/pro/consumers/baseConsumer.js +1 -1
  88. package/src/pro/consumers/declarativeMapper.js +1 -1
  89. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  90. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  91. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  92. package/src/pro/consumers/handlers/index.js +1 -1
  93. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  94. package/src/pro/consumers/index.js +1 -1
  95. package/src/pro/consumers/messageTransformer.js +1 -1
  96. package/src/pro/consumers/validator.js +1 -1
  97. package/src/pro/database/base-model-mysql.js +1 -1
  98. package/src/pro/database/base-model-oracle.js +1 -1
  99. package/src/pro/database/base-model-sqlite.js +1 -1
  100. package/src/pro/database/db-mysql.js +1 -1
  101. package/src/pro/database/db-oracle.js +1 -1
  102. package/src/pro/database/db-sqlite.js +1 -1
  103. package/src/pro/excel/excel-generator.js +1 -1
  104. package/src/pro/excel/excel-parser.js +1 -1
  105. package/src/pro/excel/export-service.js +1 -1
  106. package/src/pro/excel/export_handler.js +1 -1
  107. package/src/pro/excel/import-service.js +1 -1
  108. package/src/pro/excel/import-validator.js +1 -1
  109. package/src/pro/excel/import_handler.js +1 -1
  110. package/src/pro/excel/upsert-builder.js +1 -1
  111. package/src/pro/idgen/idgen-routes.js +1 -1
  112. package/src/pro/integrations/lookup-resolver.js +1 -1
  113. package/src/pro/integrations/upload-handler-v2.js +1 -1
  114. package/src/pro/integrations/upload-handler.js +1 -1
  115. package/src/pro/integrations/webhook.js +1 -1
  116. package/src/pro/locking/lock-routes.js +1 -1
  117. package/src/pro/locking/resource-lock-manager.js +1 -1
  118. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  119. package/src/pro/messaging/kafkaService.js +1 -1
  120. package/src/pro/messaging/messagehubService.js +1 -1
  121. package/src/pro/messaging/rabbitmqService.js +1 -1
  122. package/src/pro/scheduler/job-manager.js +1 -1
  123. package/src/pro/scheduler/job-routes.js +1 -1
  124. package/src/pro/scheduler/job-validator.js +1 -1
  125. package/src/pro/storage/base-storage-provider.js +1 -1
  126. package/src/pro/storage/file-metadata-helper.js +1 -1
  127. package/src/pro/storage/index.js +1 -1
  128. package/src/pro/storage/local-storage-provider.js +1 -1
  129. package/src/pro/storage/s3-storage-provider.js +1 -1
  130. package/src/pro/storage/upload-cleanup-job.js +1 -1
  131. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  132. package/src/pro/storage/upload-pending-tracker.js +1 -1
  133. package/src/pro/websocket/broadcast-helper.js +1 -1
  134. package/src/pro/websocket/index.js +1 -1
  135. package/src/pro/websocket/livesync-server.js +1 -1
  136. package/src/pro/websocket/ws-broadcaster.js +1 -1
  137. package/src/services/export-service.js +1 -1
  138. package/src/services/import-service.js +1 -1
  139. package/src/services/kafkaConsumerService.js +1 -1
  140. package/src/services/kafkaService.js +1 -1
  141. package/src/services/messagehubService.js +1 -1
  142. package/src/services/rabbitmqService.js +1 -1
  143. package/src/utils/cache-invalidation-registry.js +1 -1
  144. package/src/utils/cache-manager.js +1 -1
  145. package/src/utils/component-engine.js +1 -1
  146. package/src/utils/config-extractor.js +1 -1
  147. package/src/utils/consumerLogger.js +1 -1
  148. package/src/utils/context-builder.js +1 -1
  149. package/src/utils/dashboard-helpers.js +1 -1
  150. package/src/utils/dateHelper.js +1 -1
  151. package/src/utils/datetime-formatter.js +1 -1
  152. package/src/utils/datetime-parser.js +1 -1
  153. package/src/utils/db-bootstrap.js +1 -1
  154. package/src/utils/db-mysql.js +1 -1
  155. package/src/utils/db-oracle.js +1 -1
  156. package/src/utils/db-sqlite.js +1 -1
  157. package/src/utils/db.js +1 -1
  158. package/src/utils/demo-generator.js +1 -1
  159. package/src/utils/excel-generator.js +1 -1
  160. package/src/utils/excel-parser.js +1 -1
  161. package/src/utils/file-watcher.js +1 -1
  162. package/src/utils/id-generator.js +1 -1
  163. package/src/utils/idempotency-manager.js +1 -1
  164. package/src/utils/import-validator.js +1 -1
  165. package/src/utils/license-client.js +1 -1
  166. package/src/utils/lock-manager.js +1 -1
  167. package/src/utils/logger.js +1 -1
  168. package/src/utils/lookup-resolver.js +1 -1
  169. package/src/utils/payload-loader.js +1 -1
  170. package/src/utils/processor-response.js +1 -1
  171. package/src/utils/rabbitmq.js +1 -1
  172. package/src/utils/redis-client.js +1 -1
  173. package/src/utils/redis-helper.js +1 -1
  174. package/src/utils/request-scope.js +1 -1
  175. package/src/utils/security-checks.js +1 -1
  176. package/src/utils/service-resolver.js +1 -1
  177. package/src/utils/shutdown-coordinator.js +1 -1
  178. package/src/utils/trusted-keys.js +1 -1
  179. package/src/utils/upload-handler.js +1 -1
  180. package/src/utils/upsert-builder.js +1 -1
  181. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
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
+ const a0_0x28494f=a0_0x3383;(function(_0x41a9d5,_0x1ef6ef){const _0x201fe0=a0_0x3383,_0x214028=_0x41a9d5();while(!![]){try{const _0x15408c=parseInt(_0x201fe0(0x192))/0x1+parseInt(_0x201fe0(0x159))/0x2+parseInt(_0x201fe0(0x18f))/0x3+-parseInt(_0x201fe0(0x17e))/0x4*(-parseInt(_0x201fe0(0x168))/0x5)+parseInt(_0x201fe0(0x149))/0x6*(-parseInt(_0x201fe0(0x147))/0x7)+parseInt(_0x201fe0(0x139))/0x8*(-parseInt(_0x201fe0(0x154))/0x9)+-parseInt(_0x201fe0(0x198))/0xa*(parseInt(_0x201fe0(0x146))/0xb);if(_0x15408c===_0x1ef6ef)break;else _0x214028['push'](_0x214028['shift']());}catch(_0x2b2ae3){_0x214028['push'](_0x214028['shift']());}}}(a0_0x42c2,0x4bb95));const oracledb=require(a0_0x28494f(0x142)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x28494f(0x190));function a0_0x42c2(){const _0x2ced19=['t3jHy2XLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','yxbMv3m','rejFue9ptf9nsu4','yNvPBgrdB25Uzwn0Aw9Uu3rYAw5N','tKnmt0i','mtG1mta2ogLXuxvXua','rxjYB3iGC2fHDcbTzw1IDwf0ie9YywnSzsbJB25Uzwn0Aw9UihbVB2W6ia','AePPAMu','q1D4sNm','y2XVC2u','B3jHy2XLx3bVB2XFy3jLyxrLza','CgfYyw1Z','CxzqtfG','rejFse9tva','u0Lhsu5u','wvzvz0q','tvvpt0m','rxjYB3iGy2XVC2LUzYbpCMfJBguGy29UBMvJDgLVBJOG','y3jLyxrLug9VBa','rvDzuKW','t3jHy2XLihrYyw5Zywn0Aw9UigzHAwXLzdOG','CNzpDhC','mte3mJy3ouTly21qqG','lI9SB2DNzxi','zgvIDwC','nJi5nZHfrfbdCfu','u0Lhvevstq','DvbcC3i','rejFvvnfuG','zxHPDa','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','mJyWndmWD25su3P2','u0vmrunuifnzu0rbveuGyxmGy3vYCMvUDf9KyxrLlcbvu0vsigfZign1CNjLBNrFDxnLCIbguK9niervquW','ogzVs2PRta','B3jHy2XLx3bVB2XFy2XVC2vK','AfDfwe8','CM93C0fMzMvJDgvK','C3fSx2vYCM9Y','CM9SBgjHy2S','rxLyCwW','y29UzMLN','CM9SBgjHy2TFzxjYB3i','B3jHy2XLzgi','CMPvvu0','CM93CW','rejFue9ptf9usu1ft1vu','nZDLugfjz3C','mZvrAujfv3G','Aw5MBW','nJKWmZu0r3DIENjk','mtuYmq','BgvUz3rO','seHHz20','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbZDwrHAcbHzge','Cvj2Ege','Aw5PDgLHBgL6zvbVB2W','vgvZDgLUzYbpCMfJBguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','Cg9VBe1HEa','rejFtKfnrq','DxLxwNa','mta2nZm4mNjJyLLeAG','Cg9VBe1PBG','BMfSCLG','C3fS','t1vux0zpuK1bvf9pqKPfq1q','ntm5ndqYC0P4sg1e','r0jVuKW','zxHLy3v0zq','ChnVDhO','BwvZC2fNzq','qvLIzMy','ANPezeC','B3jHy2XLx3bVB2XFzxjYB3i','B3jHy2XLx3rYyw5Zywn0Aw9Ux2nVBM5Ly3rPB25Fy2XVC2vFzxjYB3i','t3jHy2XLignVBM5Ly3rPB24GCg9VBcbJBg9Zzwq','rxjYB3iGzhvYAw5Nie9YywnSzsbWB29SihnODxrKB3DUoIa','y2XVC2vqB29S','vejJt2y','B3jHy2XLx3nODxrKB3DU','q0XpqG','nvPQsxzOBG','qKXpqG','B3jHy2XLx2nVBM5Ly3rPB25FDgvZDf9ZDwnJzxnZ','AgXhyMu','nhWZFdf8mhWY','nhWZFdj8mxWW','r3zeyNi','rejFue9ptf9jtKnsru1ftLq','y29TBwL0','zw52','zxHWB3j0CW','B3jHy2XL','yxv0B0nVBw1PDa','quXurviGu0vtu0LptIbtrvqGtKXtx1rjtuvtvefnuf9gt1jnqvqGpsaNwvLzws1nts1ercjuiKHimJq6tuK6u1mUrKyZjW','t3jHy2XLihrYyw5Zywn0Aw9UignVBw1PDhrLzcaO','Cg9VBa','B3jHy2XLx3bVB2XFy2XVC2LUzW'];a0_0x42c2=function(){return _0x2ced19;};return a0_0x42c2();}function a0_0x3383(_0x10a4ce,_0x4f7fd8){_0x10a4ce=_0x10a4ce-0x138;const _0x42c208=a0_0x42c2();let _0x33831b=_0x42c208[_0x10a4ce];if(a0_0x3383['nLhhiX']===undefined){var _0x182314=function(_0x326dc3){const _0x20b2f4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x13de46='',_0x10ddf6='';for(let _0x271d5a=0x0,_0x55b0ce,_0x579b95,_0x4cbb7a=0x0;_0x579b95=_0x326dc3['charAt'](_0x4cbb7a++);~_0x579b95&&(_0x55b0ce=_0x271d5a%0x4?_0x55b0ce*0x40+_0x579b95:_0x579b95,_0x271d5a++%0x4)?_0x13de46+=String['fromCharCode'](0xff&_0x55b0ce>>(-0x2*_0x271d5a&0x6)):0x0){_0x579b95=_0x20b2f4['indexOf'](_0x579b95);}for(let _0x1f2562=0x0,_0x12edfa=_0x13de46['length'];_0x1f2562<_0x12edfa;_0x1f2562++){_0x10ddf6+='%'+('00'+_0x13de46['charCodeAt'](_0x1f2562)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x10ddf6);};a0_0x3383['vHRIIF']=_0x182314,a0_0x3383['EFcCqA']={},a0_0x3383['nLhhiX']=!![];}const _0x3e11eb=_0x42c208[0x0],_0x5726bf=_0x10a4ce+_0x3e11eb,_0x39a9f7=a0_0x3383['EFcCqA'][_0x5726bf];return!_0x39a9f7?(_0x33831b=a0_0x3383['vHRIIF'](_0x33831b),a0_0x3383['EFcCqA'][_0x5726bf]=_0x33831b):_0x33831b=_0x39a9f7,_0x33831b;}oracledb['fetchAsString']=[oracledb[a0_0x28494f(0x167)],oracledb[a0_0x28494f(0x17d)]],oracledb['fetchAsBuffer']=[oracledb[a0_0x28494f(0x169)]];async function ensureNlsReady(_0x55e711){const _0x3e5e72=a0_0x28494f,_0x22b2c1={'EWYRL':_0x3e5e72(0x16d)},_0x432ca6=_0x22b2c1[_0x3e5e72(0x18c)]['split']('|');let _0x576213=0x0;while(!![]){switch(_0x432ca6[_0x576213++]){case'0':_0x55e711['_nlsReady']=!![];continue;case'1':await _0x55e711['execute']('ALTER\x20SESSION\x20SET\x20NLS_TIMESTAMP_TZ_FORMAT\x20=\x20\x27YYYY-MM-DD\x22T\x22HH24:MI:SS.FF3TZH:TZM\x27');continue;case'2':await _0x55e711['execute'](_0x3e5e72(0x175));continue;case'3':await _0x55e711['execute']('ALTER\x20SESSION\x20SET\x20NLS_DATE_FORMAT\x20=\x20\x27YYYY-MM-DD\x27');continue;case'4':if(_0x55e711['_nlsReady'])return;continue;}break;}}class OracleDatabase{constructor(){const _0x2fdf95=a0_0x28494f,_0x3f6937={'MUOOC':function(_0x5724e4,_0x202cde){return _0x5724e4(_0x202cde);},'AYbff':function(_0x55d2e4,_0x3fe1a5){return _0x55d2e4(_0x3fe1a5);},'uyWZp':'localhost','GBoRL':'oracle'};this[_0x2fdf95(0x177)]=null,this[_0x2fdf95(0x140)]={'user':process[_0x2fdf95(0x171)][_0x2fdf95(0x195)]||'hr','password':process[_0x2fdf95(0x171)]['DB_PASSWORD']||'hr','connectString':this[_0x2fdf95(0x17c)](),'poolMin':parseInt(process[_0x2fdf95(0x171)][_0x2fdf95(0x17b)])||0x2,'poolMax':_0x3f6937[_0x2fdf95(0x189)](parseInt,process['env']['DB_POOL_MAX'])||0xa,'poolIncrement':parseInt(process['env'][_0x2fdf95(0x16f)])||0x1,'poolTimeout':_0x3f6937[_0x2fdf95(0x15e)](parseInt,process['env'][_0x2fdf95(0x145)])||0x3c,'autoCommit':!![],'fetchAsString':[oracledb[_0x2fdf95(0x167)],oracledb[_0x2fdf95(0x17d)]],'fetchAsBuffer':[oracledb[_0x2fdf95(0x169)]]},logDatabaseConfig({'host':process['env'][_0x2fdf95(0x186)]||_0x3f6937[_0x2fdf95(0x153)],'port':process['env']['DB_PORT']||_0x2fdf95(0x14a),'database':process[_0x2fdf95(0x171)]['DB_NAME']||'XE','type':_0x3f6937[_0x2fdf95(0x15a)],'user':this[_0x2fdf95(0x140)]['user'],'poolMin':this['config'][_0x2fdf95(0x155)],'poolMax':this['config'][_0x2fdf95(0x151)]});}['buildConnectionString'](){const _0x489b97=a0_0x28494f,_0x2122f9={'WUAhP':'localhost','AOhMF':_0x489b97(0x14a),'pgTXP':'oracle_connection_string'},_0x536cd4=process[_0x489b97(0x171)][_0x489b97(0x186)]||_0x2122f9['WUAhP'],_0x17259f=process['env']['DB_PORT']||_0x2122f9['AOhMF'],_0xf43d65=process['env'][_0x489b97(0x152)]||'XE',_0x1eb408='//'+_0x536cd4+':'+_0x17259f+'/'+_0xf43d65;return logger['debug']({'event':_0x2122f9['pgTXP'],'connectionString':_0x1eb408},'Oracle\x20Connection\x20String:\x20'+_0x1eb408),_0x1eb408;}async['initializePool'](){const _0x34f154=a0_0x28494f,_0x5d3723={'qRvxa':_0x34f154(0x16c),'apfWs':'Oracle\x20connection\x20pool\x20created\x20successfully','OEdmU':'oracle_pool_exists','hWEXO':function(_0xd87521,_0x42141b,_0x5a4336,_0x5d4f00){return _0xd87521(_0x42141b,_0x5a4336,_0x5d4f00);}};try{const _0x34bdca=_0x5d3723[_0x34f154(0x14e)]['split']('|');let _0x10a37a=0x0;while(!![]){switch(_0x34bdca[_0x10a37a++]){case'0':logger[_0x34f154(0x148)]({'event':_0x34f154(0x183)},_0x5d3723[_0x34f154(0x17a)]);continue;case'1':this['pool']=await oracledb[_0x34f154(0x18b)](this['config']);continue;case'2':await this['testConnection']();continue;case'3':logger[_0x34f154(0x148)]({'event':'oracle_pool_creating'},'Creating\x20Oracle\x20connection\x20pool...');continue;case'4':if(this[_0x34f154(0x177)]){logger['debug']({'event':_0x5d3723['OEdmU']},_0x34f154(0x14d));return;}continue;}break;}}catch(_0x2839ee){_0x5d3723[_0x34f154(0x13b)](logError,_0x2839ee,{'event':_0x34f154(0x160)},_0x34f154(0x17f)+_0x2839ee['message']);throw _0x2839ee;}}async['testConnection'](){const _0x1396b1=a0_0x28494f,_0x4b0f32={'psotz':_0x1396b1(0x197),'erZSW':function(_0x4a8d71,_0x21aae8){return _0x4a8d71(_0x21aae8);},'YVUgD':_0x1396b1(0x138),'rkTxL':_0x1396b1(0x16a),'FSSTz':'oracle_connection_test_failed'};let _0x45c42f;try{logger[_0x1396b1(0x191)]({'event':_0x4b0f32[_0x1396b1(0x15c)]},_0x1396b1(0x150)),_0x45c42f=await this[_0x1396b1(0x177)]['getConnection'](),await _0x4b0f32['erZSW'](ensureNlsReady,_0x45c42f);const _0x34a91f=await _0x45c42f[_0x1396b1(0x15b)](_0x4b0f32[_0x1396b1(0x188)]);logger[_0x1396b1(0x148)]({'event':_0x4b0f32['rkTxL'],'currentDate':_0x34a91f[_0x1396b1(0x144)][0x0][0x0],'currentUser':_0x34a91f['rows'][0x0][0x1]},'Oracle\x20connection\x20test\x20berhasil\x20-\x20User:\x20'+_0x34a91f['rows'][0x0][0x1]);}catch(_0x80785b){logError(_0x80785b,{'event':_0x4b0f32['FSSTz']},_0x1396b1(0x179)+_0x80785b['message']);throw _0x80785b;}finally{if(_0x45c42f)try{await _0x45c42f['close']();}catch(_0x2a286a){logError(_0x2a286a,{'event':'oracle_test_connection_close_error'},'Error\x20closing\x20test\x20connection:\x20'+_0x2a286a['message']);}}}async['executeQuery'](_0x15ef3b,_0x23e16f=[],_0x445363={}){const _0x1612df=a0_0x28494f,_0x2e9a90={'cxTKG':function(_0x1612ab,_0x42c953){return _0x1612ab(_0x42c953);},'hlGbe':function(_0x52030b,_0x483bc8,_0x4ad7e9,_0x4a130b){return _0x52030b(_0x483bc8,_0x4ad7e9,_0x4a130b);},'qvPLX':function(_0x345bfb){return _0x345bfb();}};let _0x8e78f4;const _0x5056e6=startQueryTimer();try{!this[_0x1612df(0x177)]&&await this['initializePool']();_0x8e78f4=await this['pool']['getConnection'](),await _0x2e9a90['cxTKG'](ensureNlsReady,_0x8e78f4);const _0x5e104b={'outFormat':oracledb[_0x1612df(0x158)],'autoCommit':_0x445363['autoCommit']!==undefined?_0x445363[_0x1612df(0x174)]:!![],..._0x445363},_0x2db1a0=await _0x8e78f4[_0x1612df(0x15b)](_0x15ef3b,_0x23e16f,_0x5e104b),_0x4d3cae=_0x5056e6(),_0x27e8b3=_0x2db1a0[_0x1612df(0x144)]?_0x2db1a0[_0x1612df(0x144)]['length']:_0x2db1a0[_0x1612df(0x13c)];return _0x2e9a90[_0x1612df(0x16b)](logQuery,_0x15ef3b,_0x23e16f,{'duration':_0x4d3cae,'rowsAffected':_0x27e8b3,'dbType':_0x1612df(0x173)}),_0x2db1a0['rows']?_0x2db1a0[_0x1612df(0x144)]:{'rowsAffected':_0x2db1a0['rowsAffected'],'lastRowid':_0x2db1a0['lastRowid']};}catch(_0x2041d9){const _0x18c2a3=_0x2e9a90[_0x1612df(0x185)](_0x5056e6);logError(_0x2041d9,{'event':_0x1612df(0x13d),'query':_0x15ef3b['substring'](0x0,0x1f4),'paramCount':_0x23e16f[_0x1612df(0x14b)],'durationMs':_0x18c2a3,'code':_0x2041d9['errorNum'],'dbType':'oracle'},'Oracle\x20SQL\x20Error:\x20'+_0x2041d9[_0x1612df(0x15d)]);throw _0x2041d9;}finally{if(_0x8e78f4)try{await _0x8e78f4[_0x1612df(0x182)]();}catch(_0x5caf41){logError(_0x5caf41,{'event':'oracle_connection_close_error'},_0x1612df(0x18a)+_0x5caf41[_0x1612df(0x15d)]);}}}async['executeTransaction'](_0xb179f9){const _0x33fb4b=a0_0x28494f,_0x431a34={'GvDbr':function(_0x36de82){return _0x36de82();},'nalrX':function(_0x26834f,_0x59f417,_0x214a7c){return _0x26834f(_0x59f417,_0x214a7c);},'DSmSI':'start','rvOtw':function(_0x4e8c72){return _0x4e8c72();},'CWxJs':function(_0x2ae5c6,_0x5e63d2,_0x384423,_0x270ebd){return _0x2ae5c6(_0x5e63d2,_0x384423,_0x270ebd);},'UsFEa':function(_0x2024f3,_0x4088e3,_0x175c86){return _0x2024f3(_0x4088e3,_0x175c86);},'jzDdG':'transaction_complete','HHagm':function(_0x34d538){return _0x34d538();},'uPBsr':function(_0xacecad,_0x5daafe,_0x30d3da,_0x2e9a3b){return _0xacecad(_0x5daafe,_0x30d3da,_0x2e9a3b);},'hQmiI':_0x33fb4b(0x13e),'hJije':_0x33fb4b(0x141)};let _0x4e40a0;const _0x576292=_0x431a34[_0x33fb4b(0x16e)](startQueryTimer);try{!this[_0x33fb4b(0x177)]&&await this[_0x33fb4b(0x14f)]();_0x4e40a0=await this['pool']['getConnection'](),await ensureNlsReady(_0x4e40a0),_0x431a34[_0x33fb4b(0x156)](logTransaction,_0x431a34['DSmSI'],_0xb179f9[_0x33fb4b(0x14b)]);const _0xd6a85=[];for(const _0x348978 of _0xb179f9){const _0x2676a0=startQueryTimer(),_0x821de3=await _0x4e40a0['execute'](_0x348978[_0x33fb4b(0x157)],_0x348978[_0x33fb4b(0x184)]||[],{'autoCommit':![],'outFormat':oracledb['OUT_FORMAT_OBJECT']}),_0x44064d=_0x431a34[_0x33fb4b(0x18e)](_0x2676a0),_0x4056a4=_0x821de3[_0x33fb4b(0x144)]?_0x821de3[_0x33fb4b(0x144)]['length']:_0x821de3[_0x33fb4b(0x13c)];_0x431a34[_0x33fb4b(0x181)](logQuery,_0x348978[_0x33fb4b(0x157)],_0x348978['params']||[],{'duration':_0x44064d,'rowsAffected':_0x4056a4,'dbType':_0x33fb4b(0x173)}),_0xd6a85['push'](_0x821de3);}await _0x4e40a0['commit']();const _0x739829=_0x576292();return _0x431a34['UsFEa'](logTransaction,_0x33fb4b(0x170),_0xb179f9['length']),logger[_0x33fb4b(0x148)]({'event':_0x431a34[_0x33fb4b(0x15f)],'queryCount':_0xb179f9['length'],'totalDurationMs':_0x739829,'dbType':'oracle'},_0x33fb4b(0x176)+_0x739829+'ms,\x20'+_0xb179f9['length']+'\x20queries)'),_0xd6a85;}catch(_0x13e72c){const _0x362f38=_0x431a34[_0x33fb4b(0x14c)](_0x576292);_0x431a34['uPBsr'](logError,_0x13e72c,{'event':'transaction_error','queryCount':_0xb179f9['length'],'totalDurationMs':_0x362f38,'code':_0x13e72c['errorNum'],'dbType':'oracle'},_0x33fb4b(0x18d)+_0x13e72c['message']);if(_0x4e40a0)try{await _0x4e40a0['rollback'](),_0x431a34['UsFEa'](logTransaction,_0x431a34['hQmiI'],_0xb179f9[_0x33fb4b(0x14b)]);}catch(_0x3f83cf){_0x431a34[_0x33fb4b(0x194)](logError,_0x3f83cf,{'event':_0x431a34[_0x33fb4b(0x180)],'dbType':'oracle'},'Error\x20rolling\x20back\x20Oracle\x20transaction:\x20'+_0x3f83cf['message']);}throw _0x13e72c;}finally{if(_0x4e40a0)try{await _0x4e40a0[_0x33fb4b(0x182)]();}catch(_0x42d0e4){_0x431a34[_0x33fb4b(0x181)](logError,_0x42d0e4,{'event':_0x33fb4b(0x161)},'Error\x20closing\x20Oracle\x20transaction\x20connection:\x20'+_0x42d0e4['message']);}}}async['closePool'](){const _0x403b8f=a0_0x28494f,_0x1960c9={'TBcOf':_0x403b8f(0x178),'SRvEl':'Closing\x20Oracle\x20connection\x20pool...','rjUUM':function(_0x5126f9,_0x33a8fd,_0x141d2f,_0xeeef42){return _0x5126f9(_0x33a8fd,_0x141d2f,_0xeeef42);},'LlrYZ':'oracle_pool_close_error'};try{this['pool']&&(logger['info']({'event':_0x1960c9[_0x403b8f(0x165)]},_0x1960c9['SRvEl']),await this['pool']['close'](0xa),this['pool']=null,logger[_0x403b8f(0x148)]({'event':_0x403b8f(0x13a)},_0x403b8f(0x162)));}catch(_0x421485){_0x1960c9[_0x403b8f(0x143)](logError,_0x421485,{'event':_0x1960c9['LlrYZ']},'Error\x20closing\x20Oracle\x20connection\x20pool:\x20'+_0x421485[_0x403b8f(0x15d)]);throw _0x421485;}}['getPoolStatistics'](){const _0x292fb5=a0_0x28494f;if(!this['pool'])return{'status':'Pool\x20not\x20initialized'};return{'connectionsInUse':this[_0x292fb5(0x177)]['connectionsInUse'],'connectionsOpen':this['pool']['connectionsOpen'],'poolAlias':this[_0x292fb5(0x177)]['poolAlias'],'poolMin':this[_0x292fb5(0x177)][_0x292fb5(0x155)],'poolMax':this['pool']['poolMax'],'poolIncrement':this['pool']['poolIncrement'],'poolTimeout':this['pool']['poolTimeout'],'status':'Active'};}}const oracleDb=new OracleDatabase();process['on']('SIGINT',async()=>{const _0x521c31=a0_0x28494f,_0x150864={'QeBga':_0x521c31(0x166)};logger[_0x521c31(0x148)]({'event':_0x150864['QeBga'],'signal':'SIGINT'},'Received\x20SIGINT,\x20closing\x20Oracle\x20connection\x20pool...');try{await oracleDb['closePool'](),process['exit'](0x0);}catch(_0x3d2ae4){logError(_0x3d2ae4,{'event':'oracle_shutdown_error','signal':_0x521c31(0x187)},_0x521c31(0x163)+_0x3d2ae4[_0x521c31(0x15d)]),process[_0x521c31(0x196)](0x1);}}),process['on'](a0_0x28494f(0x193),async()=>{const _0x1046c6=a0_0x28494f,_0x19114d={'WKxXt':'oracle_shutdown','EyXql':'SIGTERM','KRYWf':'Received\x20SIGTERM,\x20closing\x20Oracle\x20connection\x20pool...','FKPsT':function(_0x1ea173,_0x1fa5c0,_0x1f9ae6,_0x31280c){return _0x1ea173(_0x1fa5c0,_0x1f9ae6,_0x31280c);},'kgraL':'oracle_shutdown_error'};logger[_0x1046c6(0x148)]({'event':_0x19114d['WKxXt'],'signal':_0x19114d[_0x1046c6(0x13f)]},_0x19114d['KRYWf']);try{await oracleDb[_0x1046c6(0x164)](),process['exit'](0x0);}catch(_0x52ef08){_0x19114d['FKPsT'](logError,_0x52ef08,{'event':_0x19114d['kgraL'],'signal':_0x19114d['EyXql']},'Error\x20during\x20Oracle\x20pool\x20shutdown:\x20'+_0x52ef08['message']),process[_0x1046c6(0x196)](0x1);}}),module[a0_0x28494f(0x172)]=oracleDb;
@@ -1 +1 @@
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
+ function a0_0x4198(_0x4ffece,_0xf97e4b){_0x4ffece=_0x4ffece-0x1b6;const _0x3f0322=a0_0x3f03();let _0x4198aa=_0x3f0322[_0x4ffece];if(a0_0x4198['EZNVIb']===undefined){var _0x460eda=function(_0x36242e){const _0x5a1a37='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4b36ce='',_0x3d0926='';for(let _0x39c96e=0x0,_0xc1aac3,_0x423a09,_0x32bd63=0x0;_0x423a09=_0x36242e['charAt'](_0x32bd63++);~_0x423a09&&(_0xc1aac3=_0x39c96e%0x4?_0xc1aac3*0x40+_0x423a09:_0x423a09,_0x39c96e++%0x4)?_0x4b36ce+=String['fromCharCode'](0xff&_0xc1aac3>>(-0x2*_0x39c96e&0x6)):0x0){_0x423a09=_0x5a1a37['indexOf'](_0x423a09);}for(let _0x4d3285=0x0,_0x1a696d=_0x4b36ce['length'];_0x4d3285<_0x1a696d;_0x4d3285++){_0x3d0926+='%'+('00'+_0x4b36ce['charCodeAt'](_0x4d3285)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3d0926);};a0_0x4198['DTVDmR']=_0x460eda,a0_0x4198['iCVNpz']={},a0_0x4198['EZNVIb']=!![];}const _0x1762c0=_0x3f0322[0x0],_0x5a113b=_0x4ffece+_0x1762c0,_0x28f493=a0_0x4198['iCVNpz'][_0x5a113b];return!_0x28f493?(_0x4198aa=a0_0x4198['DTVDmR'](_0x4198aa),a0_0x4198['iCVNpz'][_0x5a113b]=_0x4198aa):_0x4198aa=_0x28f493,_0x4198aa;}const a0_0x2fedfc=a0_0x4198;function a0_0x3f03(){const _0x3fcc09=['AM91CM5HBf9TB2rLid0Gv0fm','zgvIDwC','ndCYntq4me5fuhvfDG','BgvUz3rO','mZyYotHNugDdwLC','ENHIv3y','C3bUsxC','mtbtD2jjA0K','uMvJzwL2zwqGu0Lhsu5ulcbJBg9ZAw5NifnrtgL0zsbKyxrHyMfZzs4UlG','BgfZDeLUC2vYDfjVD2LK','uhHbDg4','qxzuswK','CgfYyw1Z','u0vmrunuideGyxmGDgvZDf9JB25Uzwn0Aw9U','DgvZDa','u0Lhsu5u','uM1gzwK','C3fS','C3fSAxrLx3nODxrKB3DU','Aw5MBW','ngDjqvLWrq','vMvItMu','q2XVC2LUzYbtuuXPDguGzgf0ywjHC2uGy29UBMvJDgLVBI4UlG','C3fSAxrLx2rIx2v4Axn0CW','zM9YzwLNBL9RzxLZid0Gt04','svfnA3y','wenLz2W','y29TBwL0','C3fSAxrLx3nODxrKB3DUx2vYCM9Y','rejFtKfnrq','Aw5PDgLHBgL6zurHDgfIyxnL','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9MywLSzwq','y3nABvi','y2XVC2vqB29S','DhjHBNnHy3rPB25Fy29TCgXLDgu','uuXKA0C','yMv0DgvYlxnXBgL0ztm','DgvZDenVBM5Ly3rPB24','BwvZC2fNzq','zw52','nJe5nJy3muzbA0ndtG','C3fSAxrL','y2XVC2u','ywjND1G','y2HHBMDLCW','DhjHBNnHy3rPB24','u0vmrunuide','u1fmAxrLigrHDgfIyxnLignVBM5Ly3rPB24GC3vKywGGywrH','mJq3mdu5nvDUz1zgqG','nLfAAfPkCG','nZK0mJiWn0j1r2rZuq','ChjLCgfYzq','uMvJzwL2zwqGu0LhvevstsWGy2XVC2LUzYbtuuXPDguGzgf0ywjHC2uUlI4','mZu3mJC2nMLfsu5oyW','C3fSAxrLx2nSB3nLx2vYCM9Y','C3vIC3rYAw5N','zxHPDa','r0jAAxq','C3fSAxrLx2nSB3nLza','yNvZEvrPBwvVDxq','mhW0Fdf8mNWZ','qMjqAxy','C3fSx2vYCM9Y','z2v0ug9VBa','y29Kzq','u1fmAxrLignVBM5Ly3rPB24GDgvZDcbNywDHBdOG','oti5mtu5CuPMBwPP','mtzLyw5Tr1y','zgjqyxrO','rxjYB3iGzhvYAw5NifnrtgL0zsbZAhv0zg93BJOG','C3fSAxrLx2nVBM5Ly3rPB25FDgvZDf9ZDgfYDa','EwDZsvK','CMTYtfq'];a0_0x3f03=function(){return _0x3fcc09;};return a0_0x3f03();}(function(_0x477e1c,_0x5ec79c){const _0x20f56c=a0_0x4198,_0x882b85=_0x477e1c();while(!![]){try{const _0x81267f=parseInt(_0x20f56c(0x1cc))/0x1*(-parseInt(_0x20f56c(0x1c2))/0x2)+-parseInt(_0x20f56c(0x1fd))/0x3*(-parseInt(_0x20f56c(0x1dc))/0x4)+-parseInt(_0x20f56c(0x1f8))/0x5+-parseInt(_0x20f56c(0x1f9))/0x6*(parseInt(_0x20f56c(0x1fa))/0x7)+parseInt(_0x20f56c(0x1ca))/0x8+-parseInt(_0x20f56c(0x1f0))/0x9*(-parseInt(_0x20f56c(0x1cf))/0xa)+parseInt(_0x20f56c(0x1c1))/0xb;if(_0x81267f===_0x5ec79c)break;else _0x882b85['push'](_0x882b85['shift']());}catch(_0x371c1e){_0x882b85['push'](_0x882b85['shift']());}}}(a0_0x3f03,0x9b263));const Database=require(a0_0x2fedfc(0x1ec)),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger');class SqliteDatabase{constructor(){const _0x4363d4=a0_0x2fedfc,_0x5ce4ec={'NjgRd':function(_0x4a347d,_0x16cf23){return _0x4a347d(_0x16cf23);},'eLaTf':'5000','BbPiv':'sqlite'};this['db']=null,this[_0x4363d4(0x1c3)]=process[_0x4363d4(0x1ef)][_0x4363d4(0x1e5)]||'./data/restforge.db',this['busyTimeout']=_0x5ce4ec['NjgRd'](parseInt,process[_0x4363d4(0x1ef)]['DB_BUSY_TIMEOUT']||_0x5ce4ec['eLaTf']),logDatabaseConfig({'database':this['dbPath'],'type':_0x5ce4ec[_0x4363d4(0x1bc)],'busyTimeout':this['busyTimeout']});}[a0_0x2fedfc(0x1e6)](){const _0x2b1c14=a0_0x2fedfc,_0x50cf78={'RmFei':_0x2b1c14(0x1e0),'ygsIY':'sqlite_init_error'};try{const _0x524a50=_0x2b1c14(0x1bb)['split']('|');let _0x66698b=0x0;while(!![]){switch(_0x524a50[_0x66698b++]){case'0':if(this['db']){logger[_0x2b1c14(0x1c9)]({'event':_0x2b1c14(0x1df)},_0x2b1c14(0x1f7));return;}continue;case'1':this['db']['pragma'](_0x2b1c14(0x1c8));continue;case'2':this['db']['pragma'](_0x50cf78[_0x2b1c14(0x1d8)]);continue;case'3':this[_0x2b1c14(0x1ed)]();continue;case'4':this['db']=new Database(this[_0x2b1c14(0x1c3)],{'timeout':this[_0x2b1c14(0x1ba)]});continue;}break;}}catch(_0x5d8789){logError(_0x5d8789,{'event':_0x50cf78[_0x2b1c14(0x1c6)]},'Error\x20saat\x20membuka\x20SQLite\x20database:\x20'+_0x5d8789[_0x2b1c14(0x1ee)]);throw _0x5d8789;}}[a0_0x2fedfc(0x1ed)](){const _0x3b0035=a0_0x2fedfc,_0x3840ec={'QEiPW':_0x3b0035(0x1c5),'GAjnj':function(_0x4bff4a,_0x5f074a,_0x1cf579,_0x2b71f3){return _0x4bff4a(_0x5f074a,_0x1cf579,_0x2b71f3);},'rDsvo':_0x3b0035(0x1e7)};try{logger['debug']({'event':_0x3840ec['QEiPW']},'Testing\x20SQLite\x20database\x20connection...'),this['db'][_0x3b0035(0x1fb)](_0x3b0035(0x1d5))['get']();}catch(_0x1f1382){_0x3840ec['GAjnj'](logError,_0x1f1382,{'event':_0x3840ec['rDsvo']},_0x3b0035(0x1c0)+_0x1f1382['message']);throw _0x1f1382;}}async['executeQuery'](_0x50b16a,_0x56475f=[]){const _0x34fec7=a0_0x2fedfc,_0x1ce7d8={'rkrLT':function(_0x2c8874,_0x5ba082,_0x2cc893,_0x3e6010){return _0x2c8874(_0x5ba082,_0x2cc893,_0x3e6010);},'TGhKy':_0x34fec7(0x1f1),'VmFuY':function(_0x21a56e,_0x1ebfb5,_0x3583b0,_0x5afd27){return _0x21a56e(_0x1ebfb5,_0x3583b0,_0x5afd27);},'ywsDv':_0x34fec7(0x1bd)},_0xa234f6=startQueryTimer();try{!this['db']&&this['initializeDatabase']();const _0x4b36c0=this['db']['prepare'](_0x50b16a),_0x55cdb0=/\bRETURNING\b/i['test'](_0x50b16a),_0x9edb2f=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0x34fec7(0x1d6)](_0x50b16a);let _0x36897a,_0x54b15d;if(_0x9edb2f||_0x55cdb0){const _0x513547=_0x4b36c0['all'](..._0x56475f),_0x5e9aeb=_0xa234f6();return _0x1ce7d8[_0x34fec7(0x1c7)](logQuery,_0x50b16a,_0x56475f,{'duration':_0x5e9aeb,'rowsAffected':_0x513547[_0x34fec7(0x1cb)],'dbType':_0x1ce7d8['TGhKy']}),_0x513547;}else{const _0x4888eb=_0x4b36c0['run'](..._0x56475f),_0x412949=_0xa234f6();return _0x36897a={'rowsAffected':_0x4888eb[_0x34fec7(0x1f4)],'insertId':_0x4888eb[_0x34fec7(0x1d1)]},logQuery(_0x50b16a,_0x56475f,{'duration':_0x412949,'rowsAffected':_0x4888eb['changes'],'dbType':'sqlite'}),_0x36897a;}}catch(_0x547b54){const _0x535011=_0xa234f6();_0x1ce7d8['VmFuY'](logError,_0x547b54,{'event':_0x1ce7d8['ywsDv'],'query':_0x50b16a[_0x34fec7(0x1b6)](0x0,0x1f4),'paramCount':_0x56475f['length'],'durationMs':_0x535011,'code':_0x547b54['code'],'dbType':_0x1ce7d8['TGhKy']},'SQLite\x20SQL\x20Error:\x20'+_0x547b54[_0x34fec7(0x1ee)]);throw _0x547b54;}}async['executeTransaction'](_0x19f036){const _0x59a46a=a0_0x2fedfc,_0x4e34a8={'IQMkv':function(_0x521a90){return _0x521a90();},'VDSQO':'sqlite','PxAtn':function(_0xcf202b){return _0xcf202b();},'XCegl':function(_0x11dae6,_0x5689d4,_0x2e3210){return _0x11dae6(_0x5689d4,_0x2e3210);},'zxbWv':function(_0x1c4ddc){return _0x1c4ddc();},'csZmR':'rollback','tAjFv':'transaction_error'},_0xeb07f0=_0x4e34a8[_0x59a46a(0x1d2)](startQueryTimer);try{!this['db']&&this[_0x59a46a(0x1e6)]();_0x4e34a8['XCegl'](logTransaction,'start',_0x19f036['length']);const _0x545a27=this['db'][_0x59a46a(0x1f5)](_0x2f66dc=>{const _0xe72717=_0x59a46a,_0x4be3bb=[];for(const _0x423d11 of _0x2f66dc){const _0x24c8c5=_0x4e34a8[_0xe72717(0x1e1)](startQueryTimer),_0x27760e=_0x423d11[_0xe72717(0x1d4)]||[],_0x405e49=this['db'][_0xe72717(0x1fb)](_0x423d11[_0xe72717(0x1d9)]),_0x442518=/\bRETURNING\b/i['test'](_0x423d11['sql']),_0x3b6a40=/^\s*(SELECT|PRAGMA|EXPLAIN|WITH\s)/i[_0xe72717(0x1d6)](_0x423d11['sql']);if(_0x3b6a40||_0x442518){const _0x57a5ff=_0x405e49['all'](..._0x27760e),_0x543e7a=_0x24c8c5();logQuery(_0x423d11['sql'],_0x27760e,{'duration':_0x543e7a,'rowsAffected':_0x57a5ff[_0xe72717(0x1cb)],'dbType':_0xe72717(0x1f1)}),_0x4be3bb['push'](_0x57a5ff);}else{const _0x3cdc46=_0x405e49['run'](..._0x27760e),_0xf12bf7=_0x4e34a8[_0xe72717(0x1e1)](_0x24c8c5);logQuery(_0x423d11[_0xe72717(0x1d9)],_0x27760e,{'duration':_0xf12bf7,'rowsAffected':_0x3cdc46[_0xe72717(0x1f4)],'dbType':_0x4e34a8['VDSQO']}),_0x4be3bb['push']({'rowsAffected':_0x3cdc46['changes'],'insertId':_0x3cdc46[_0xe72717(0x1d1)]});}}return _0x4be3bb;}),_0x5f22a0=_0x545a27(_0x19f036),_0x511cb6=_0x4e34a8[_0x59a46a(0x1cd)](_0xeb07f0);return _0x4e34a8[_0x59a46a(0x1e2)](logTransaction,_0x59a46a(0x1e3),_0x19f036[_0x59a46a(0x1cb)]),logger[_0x59a46a(0x1db)]({'event':_0x59a46a(0x1ea),'queryCount':_0x19f036[_0x59a46a(0x1cb)],'totalDurationMs':_0x511cb6,'dbType':'sqlite'},'Transaction\x20committed\x20('+_0x511cb6+'ms,\x20'+_0x19f036[_0x59a46a(0x1cb)]+'\x20queries)'),_0x5f22a0;}catch(_0x561856){const _0x165282=_0xeb07f0();logTransaction(_0x4e34a8[_0x59a46a(0x1e8)],_0x19f036['length']),logError(_0x561856,{'event':_0x4e34a8['tAjFv'],'queryCount':_0x19f036[_0x59a46a(0x1cb)],'totalDurationMs':_0x165282,'code':_0x561856[_0x59a46a(0x1bf)],'dbType':'sqlite'},'Transaction\x20failed:\x20'+_0x561856['message']);throw _0x561856;}}[a0_0x2fedfc(0x1be)](){const _0x25f09a=a0_0x2fedfc;return!this['db']&&this[_0x25f09a(0x1e6)](),this['db'];}[a0_0x2fedfc(0x1e9)](){const _0x4eb3b8=a0_0x2fedfc,_0x501583={'GBZit':'sqlite_closing','GhjFD':'SQLite\x20database\x20connection\x20closed'};try{this['db']&&(logger[_0x4eb3b8(0x1db)]({'event':_0x501583[_0x4eb3b8(0x1b8)]},_0x4eb3b8(0x1de)),this['db'][_0x4eb3b8(0x1f2)](),this['db']=null,logger['info']({'event':_0x4eb3b8(0x1b9)},_0x501583['GhjFD']));}catch(_0x3614f7){logError(_0x3614f7,{'event':_0x4eb3b8(0x1fe)},'Error\x20closing\x20SQLite\x20database:\x20'+_0x3614f7[_0x4eb3b8(0x1ee)]);throw _0x3614f7;}}async['checkConnection'](){const _0x5cdc9c=a0_0x2fedfc,_0x11dc02={'IfpHH':_0x5cdc9c(0x1f6),'ZrWFi':function(_0x3a9a20,_0x325853,_0x265e8a,_0x1b80b5){return _0x3a9a20(_0x325853,_0x265e8a,_0x1b80b5);}};try{return!this['db']&&this['initializeDatabase'](),this['db'][_0x5cdc9c(0x1fb)](_0x11dc02['IfpHH'])['get'](),!![];}catch(_0x208144){return _0x11dc02['ZrWFi'](logError,_0x208144,{'event':'sqlite_connection_check_error'},'Error\x20checking\x20SQLite\x20connection:\x20'+_0x208144['message']),![];}}}const sqliteDb=new SqliteDatabase();process['on'](a0_0x2fedfc(0x1d7),()=>{const _0x3cdb63=a0_0x2fedfc,_0x51a0a6={'VebNe':_0x3cdb63(0x1da),'AvTIi':_0x3cdb63(0x1d7),'BuEjU':_0x3cdb63(0x1e4)};logger['info']({'event':_0x51a0a6[_0x3cdb63(0x1dd)],'signal':_0x51a0a6['AvTIi']},_0x3cdb63(0x1d0));try{sqliteDb[_0x3cdb63(0x1e9)](),process[_0x3cdb63(0x1b7)](0x0);}catch(_0x4d6618){logError(_0x4d6618,{'event':_0x51a0a6['BuEjU'],'signal':_0x51a0a6[_0x3cdb63(0x1d3)]},'Error\x20during\x20SQLite\x20shutdown:\x20'+_0x4d6618[_0x3cdb63(0x1ee)]),process[_0x3cdb63(0x1b7)](0x1);}}),process['on']('SIGTERM',()=>{const _0x2f4629=a0_0x2fedfc,_0x444e60={'spnIw':_0x2f4629(0x1da),'QLdkG':'SIGTERM','abgwX':_0x2f4629(0x1fc)};logger[_0x2f4629(0x1db)]({'event':_0x444e60[_0x2f4629(0x1ce)],'signal':_0x444e60[_0x2f4629(0x1eb)]},_0x444e60[_0x2f4629(0x1f3)]);try{sqliteDb['closePool'](),process['exit'](0x0);}catch(_0x31367f){logError(_0x31367f,{'event':'sqlite_shutdown_error','signal':_0x444e60[_0x2f4629(0x1eb)]},_0x2f4629(0x1c4)+_0x31367f['message']),process[_0x2f4629(0x1b7)](0x1);}}),module['exports']=sqliteDb;
@@ -1 +1 @@
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
+ const a0_0x11d67f=a0_0x2bbe;(function(_0x59c91f,_0x1279d5){const _0x1100c0=a0_0x2bbe,_0x500ec6=_0x59c91f();while(!![]){try{const _0x2d50f5=parseInt(_0x1100c0(0x216))/0x1+parseInt(_0x1100c0(0x214))/0x2*(-parseInt(_0x1100c0(0x253))/0x3)+-parseInt(_0x1100c0(0x22a))/0x4+-parseInt(_0x1100c0(0x24b))/0x5*(parseInt(_0x1100c0(0x210))/0x6)+-parseInt(_0x1100c0(0x25e))/0x7*(parseInt(_0x1100c0(0x20e))/0x8)+parseInt(_0x1100c0(0x257))/0x9+-parseInt(_0x1100c0(0x23a))/0xa*(-parseInt(_0x1100c0(0x1fb))/0xb);if(_0x2d50f5===_0x1279d5)break;else _0x500ec6['push'](_0x500ec6['shift']());}catch(_0x3e0a79){_0x500ec6['push'](_0x500ec6['shift']());}}}(a0_0x301d,0xaa6f9));function a0_0x301d(){const _0x23d074=['nJaZnJK1ExzQzKnL','u1bQBw0','uMnMANC','CgfKu3rHCNq','z2vUzxjHDgvtAw1WBgu','y2H1BMTtAxPL','BNvTyMvY','zM9YBwf0rgf0zvn0CMLUzW','B05TBgS','ywrKv29YA3nOzwv0','se5VCeW','vgjYtMq','y2fnrMe','CM91BMq','Dg9mB3DLCKnHC2u','z2v0vvrdtw9UDgG','CgvYy2vUDgfNzq','C3rYzwfT','ExL5Es1TBs1Kza','ywrKuM93CW','nduWmJKXmLrXC1fwDq','ywXPz25Tzw50','A2v5CW','z2v0uM93','sLbdqxu','Aw5MBW','C29SAwq','zgf0zq','sMPoD3G','whvWs28','t1LHA2i','rNDNzxm','EgXZEa','rerzB2G','ChjLChjVy2vZC1rLEhrdB2X1Bw5Z','DgnQzhi','mtu4mdCZmeDRDKjuAW','Aw5JBhvKzxm','zMLSDgvY','zxHJzwXFz2vUzxjHDgLVBL9JB21WBgv0zq','C3f3tLi','z3fXA0u','yvDYq3u','DMfSDwu','zM9YrwfJAa','D3jPDgvgAwXL','shvgywm','sgvtCLu','ChjLChjVy2vZC1rLEhrsB3C','yxbWBhLsB3DgB3jTyxr0Aw5N','DMLLD3m','BwLKzgXL','ihjVD3m','ndK2odvWBLPLD2m','qLrstuC','Dg9vChbLCKnHC2u','wKDsEMi','qNDuzgG','CMvWBgfJzq','Dgv4Da','zNjgs2u','mte3uxHrv2rt','z2v0vvrdrgf0zq','wKrVsgK','y3LMC0u','mta2odeZotHJEfnnrve','sw52ywXPzcbJB2X1Bw5ZoIa','zM9YBwf0sgvHzgvY','DhLWzq','ChvZAa','Bw0VzgqVExL5Eq','ywrKuM93','n0XwuhfuCG','shnwquG','C2LTCgXL','vw1YBu4','Dw1mr3a','z2v0rxHJzwXgB3jTyxq','BNvTrM10','y3vYCMvUy3K','Bw53uLq','zM9YBwf0q2vSBa','Cgf0DgvYBG','C3rYAw5N','zfDwvwu','vLrfsve','zM9UDa','zgqVBw0VExL5Eq','C3r5Bgu','mtG3CLrwzM1d','uhjVy2vZC2vKia','DMfSAwrHDgvdB2X1Bw5Z','z2v0q2vSBa','BLzJz0K','revnCe0','yxv0BW','z3v6v2S','qvHoteO','rgf0yq','qwztyLu','BwfW','sgDpCwG','CgfYC2voDw1Izxi','Au9bA3u','B3ffsKy','uvjQugy','ANPZrfy','zxHWB3j0CW','oti1odmXmMj2q01mzG','BgvUz3rO','nJa2z0fltfPh','v09vrha','y2vUDgvY','rxHJzwWGz2vUzxjHDgvKicHZAw1WBguGBwv0Ag9Kkq','mJuYodjxv1Lpse4','rKy0ndCYqZq'];a0_0x301d=function(){return _0x23d074;};return a0_0x301d();}const ExcelJS=require('exceljs'),{logger}=require('./logger');function a0_0x2bbe(_0xb5e627,_0x13a309){_0xb5e627=_0xb5e627-0x1f4;const _0x301d1c=a0_0x301d();let _0x2bbe43=_0x301d1c[_0xb5e627];if(a0_0x2bbe['llebmk']===undefined){var _0x1594cc=function(_0x6e172e){const _0x498ad0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3fae44='',_0x178fc9='';for(let _0x3a3fbf=0x0,_0x1147d2,_0x57815f,_0x521b86=0x0;_0x57815f=_0x6e172e['charAt'](_0x521b86++);~_0x57815f&&(_0x1147d2=_0x3a3fbf%0x4?_0x1147d2*0x40+_0x57815f:_0x57815f,_0x3a3fbf++%0x4)?_0x3fae44+=String['fromCharCode'](0xff&_0x1147d2>>(-0x2*_0x3a3fbf&0x6)):0x0){_0x57815f=_0x498ad0['indexOf'](_0x57815f);}for(let _0xc66fa=0x0,_0x14da09=_0x3fae44['length'];_0xc66fa<_0x14da09;_0xc66fa++){_0x178fc9+='%'+('00'+_0x3fae44['charCodeAt'](_0xc66fa)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x178fc9);};a0_0x2bbe['KKAFEC']=_0x1594cc,a0_0x2bbe['nsqpMD']={},a0_0x2bbe['llebmk']=!![];}const _0x2f2ec8=_0x301d1c[0x0],_0x156dc1=_0xb5e627+_0x2f2ec8,_0x5318ba=a0_0x2bbe['nsqpMD'][_0x156dc1];return!_0x5318ba?(_0x2bbe43=a0_0x2bbe['KKAFEC'](_0x2bbe43),a0_0x2bbe['nsqpMD'][_0x156dc1]=_0x2bbe43):_0x2bbe43=_0x5318ba,_0x2bbe43;}class ExcelGenerator{constructor(){const _0x178eed=a0_0x2bbe;this[_0x178eed(0x21b)]=parseInt(process['env']['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async['generate'](_0x2fd48b){const _0xaae532=a0_0x2bbe,_0x557301={'yizJa':'excel_generation_start','AdYXI':_0xaae532(0x201),'BLrDD':'Excel\x20generation\x20started','ZGRzb':function(_0x4781b9,_0x37332d){return _0x4781b9<=_0x37332d;}},{data:_0x20ff41,columns:_0x5c6b31,columnFormats:_0x431905,fieldLabels:_0x5defb1,filePath:_0x18c994,onProgress:_0x366242}=_0x2fd48b;logger[_0xaae532(0x22f)]({'event':_0x557301['yizJa'],'rows':_0x20ff41['length'],'columns':_0x5c6b31?.[_0xaae532(0x20f)]||_0x557301['AdYXI'],'columnFormats':_0x431905?Object[_0xaae532(0x22c)](_0x431905):null,'fieldLabels':_0x5defb1?Object['keys'](_0x5defb1):null,'streaming':_0x20ff41[_0xaae532(0x20f)]>this['chunkSize']},_0x557301['BLrDD']);if(_0x557301[_0xaae532(0x24e)](_0x20ff41['length'],this['chunkSize']))return await this['generateSimple'](_0x20ff41,_0x5c6b31,_0x431905,_0x5defb1,_0x18c994,_0x366242);return await this['generateStreaming'](_0x20ff41,_0x5c6b31,_0x431905,_0x5defb1,_0x18c994,_0x366242);}async[a0_0x11d67f(0x21a)](_0x294ae3,_0x23199e,_0xa7dfa6,_0x546288,_0x3f5da,_0x73181c){const _0xd28881=a0_0x11d67f,_0x2534f1={'BwTdh':_0xd28881(0x231),'WOUDp':'FFFFFFFF','RCFKK':'FF4472C4','aZuLC':_0xd28881(0x249),'CjDNt':_0xd28881(0x212),'JPCAu':function(_0x496c4d,_0x2579e5){return _0x496c4d(_0x2579e5);},'sqwNR':function(_0x3f1249,_0x342a49){return _0x3f1249(_0x342a49);},'nVcgI':_0xd28881(0x260)},_0x219e0c=new ExcelJS['Workbook'](),_0x12f558=_0x219e0c[_0xd28881(0x21f)](_0xd28881(0x204)),_0x1286d7=_0x23199e||(_0x294ae3['length']>0x0?Object[_0xd28881(0x22c)](_0x294ae3[0x0]):[]);_0x12f558['columns']=_0x1286d7['map'](_0x585d9b=>{const _0x180ac3=_0xd28881,_0xae98dc={'header':this['formatHeader'](_0x585d9b,_0x546288),'key':_0x585d9b,'width':0x14};if(_0xa7dfa6&&_0xa7dfa6[_0x585d9b]){const _0x290af2=_0xa7dfa6[_0x585d9b];if(_0x290af2['type']&&_0x290af2[_0x180ac3(0x25a)][_0x180ac3(0x224)]()!==_0x2534f1[_0x180ac3(0x24f)]){const _0x39ae9f=this[_0x180ac3(0x263)](_0x290af2);_0x39ae9f&&(_0xae98dc['style']={'numFmt':_0x39ae9f});}}return _0xae98dc;}),_0x12f558[_0xd28881(0x22d)](0x1)[_0xd28881(0x1f8)]={'bold':!![],'color':{'argb':_0x2534f1[_0xd28881(0x211)]}},_0x12f558[_0xd28881(0x22d)](0x1)['fill']={'type':'pattern','pattern':_0xd28881(0x230),'fgColor':{'argb':_0x2534f1['RCFKK']}},_0x12f558[_0xd28881(0x22d)](0x1)[_0xd28881(0x22b)]={'vertical':_0x2534f1['aZuLC'],'horizontal':_0x2534f1['CjDNt']};const _0x645ae4=_0xa7dfa6?this['preprocessTextColumns'](_0x294ae3,_0x1286d7,_0xa7dfa6):_0x294ae3;return _0x12f558[_0xd28881(0x229)](_0x645ae4),_0xa7dfa6&&this['applyCellFormatting'](_0x12f558,_0x1286d7,_0xa7dfa6,_0x294ae3['length']),_0x73181c&&await _0x2534f1[_0xd28881(0x22e)](_0x73181c,0x32),_0x12f558['autoFilter']={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x1286d7[_0xd28881(0x20f)]}},_0x12f558[_0xd28881(0x248)]=[{'state':'frozen','xSplit':0x0,'ySplit':0x1}],await _0x219e0c['xlsx'][_0xd28881(0x243)](_0x3f5da),_0x73181c&&await _0x2534f1[_0xd28881(0x23e)](_0x73181c,0x64),logger['info']({'event':'excel_generation_complete','method':_0x2534f1[_0xd28881(0x1ff)],'rows':_0x294ae3['length']},_0xd28881(0x213)),_0x3f5da;}async['generateStreaming'](_0x173742,_0x46d970,_0x686209,_0x5d63f2,_0xbb3e91,_0x5063f4){const _0x566330=a0_0x11d67f,_0x467bfd={'HZnIo':function(_0x11e9ea,_0x3db13e){return _0x11e9ea+_0x3db13e;},'BkgmU':function(_0x249327,_0x2d5cb7){return _0x249327!==_0x2d5cb7;},'UmrmN':_0x566330(0x231),'JjNwx':function(_0xeebca9,_0x242aa6){return _0xeebca9>_0x242aa6;},'guzWk':'FFFFFFFF','gqqkE':_0x566330(0x215),'AfSbU':'center','AXNLJ':function(_0x5c9ce6,_0x45c675){return _0x5c9ce6+_0x45c675;},'UDeKK':function(_0x29dde5,_0x45ae25){return _0x29dde5*_0x45ae25;},'cyfsE':function(_0x3bc7ee,_0x2e0bd6){return _0x3bc7ee(_0x2e0bd6);},'zndHj':'excel_chunk_processed','WAvFS':_0x566330(0x23d),'iOBNK':function(_0x3b5ef4,_0xd86327){return _0x3b5ef4/_0xd86327;}},_0x52b3e6=new ExcelJS[(_0x566330(0x227))][(_0x566330(0x236))]['WorkbookWriter']({'filename':_0xbb3e91,'useStyles':!![],'useSharedStrings':!![]}),_0x48655b=_0x52b3e6[_0x566330(0x21f)]('Data'),_0x5d876b=_0x46d970||(_0x467bfd[_0x566330(0x232)](_0x173742[_0x566330(0x20f)],0x0)?Object['keys'](_0x173742[0x0]):[]),_0x536e93={};_0x5d876b['forEach']((_0x491b3c,_0x23108a)=>{_0x536e93[_0x491b3c]=_0x467bfd['HZnIo'](_0x23108a,0x1);}),_0x48655b['columns']=_0x5d876b['map'](_0xe17330=>{const _0x249727=_0x566330,_0x23803b={'header':this[_0x249727(0x259)](_0xe17330,_0x5d63f2),'key':_0xe17330,'width':0x14};if(_0x686209&&_0x686209[_0xe17330]){const _0x5b1623=_0x686209[_0xe17330];if(_0x5b1623['type']&&_0x467bfd['BkgmU'](_0x5b1623[_0x249727(0x25a)][_0x249727(0x224)](),_0x467bfd[_0x249727(0x261)])){const _0x1a73a1=this[_0x249727(0x263)](_0x5b1623);_0x1a73a1&&(_0x23803b[_0x249727(0x1fa)]={'numFmt':_0x1a73a1});}}return _0x23803b;});const _0xa98797=_0x48655b['getRow'](0x1);_0xa98797[_0x566330(0x1f8)]={'bold':!![],'color':{'argb':_0x467bfd[_0x566330(0x202)]}},_0xa98797['fill']={'type':_0x566330(0x1f4),'pattern':'solid','fgColor':{'argb':_0x467bfd[_0x566330(0x23f)]}},_0xa98797[_0x566330(0x22b)]={'vertical':_0x566330(0x249),'horizontal':_0x467bfd[_0x566330(0x205)]},_0xa98797['commit']();const _0x4de68=_0x173742['length'];let _0x50c483=0x0;for(let _0x392047=0x0;_0x392047<_0x4de68;_0x392047+=this['chunkSize']){const _0x2f6749=_0x173742['slice'](_0x392047,_0x467bfd[_0x566330(0x203)](_0x392047,this['chunkSize']));for(const _0x116a57 of _0x2f6749){const _0x20b383=_0x686209?this[_0x566330(0x246)](_0x116a57,_0x5d876b,_0x686209):_0x116a57,_0x873883=_0x48655b[_0x566330(0x25d)](_0x20b383);_0x686209&&this['applyRowFormatting'](_0x873883,_0x20b383,_0x5d876b,_0x686209),_0x873883['commit'](),_0x50c483++;}if(_0x5063f4){const _0x459928=Math[_0x566330(0x223)](_0x467bfd['UDeKK'](_0x50c483/_0x4de68,0x64));await _0x467bfd[_0x566330(0x256)](_0x5063f4,_0x459928);}logger['debug']({'event':_0x467bfd['zndHj'],'processed':_0x50c483,'total':_0x4de68},_0x566330(0x1fc)+_0x50c483+'/'+_0x4de68+_0x566330(0x24a));}return _0x48655b['commit'](),await _0x52b3e6['commit'](),logger[_0x566330(0x22f)]({'event':_0x467bfd['WAvFS'],'method':'streaming','rows':_0x4de68,'chunks':Math['ceil'](_0x467bfd['iOBNK'](_0x4de68,this[_0x566330(0x21b)]))},'Excel\x20generated\x20(streaming\x20method)'),_0xbb3e91;}[a0_0x11d67f(0x259)](_0x197ad9,_0x7d1bd5){const _0x477db7=a0_0x11d67f,_0xe851ac={'frFKe':function(_0x1b24dc,_0x580f25){return _0x1b24dc(_0x580f25);}};if(_0x7d1bd5&&_0x7d1bd5[_0x197ad9])return _0x7d1bd5[_0x197ad9];return _0xe851ac[_0x477db7(0x252)](String,_0x197ad9)[_0x477db7(0x24d)]();}[a0_0x11d67f(0x1fd)](_0x1c5376,_0x2be646){const _0x43e9fa=a0_0x11d67f,_0x1d8f3c={'flSYR':function(_0x54cbd7,_0xc4dafa){return _0x54cbd7===_0xc4dafa;},'QRjPf':function(_0x26fea6,_0x300f66){return _0x26fea6>_0x300f66;}};if(!_0x2be646||_0x2be646['length']===0x0)return!![];if(_0x1d8f3c['flSYR'](_0x1c5376['length'],0x0))return!![];const _0x1f0b4f=Object['keys'](_0x1c5376[0x0]),_0x170b31=_0x2be646[_0x43e9fa(0x23c)](_0x468f1e=>!_0x1f0b4f[_0x43e9fa(0x23b)](_0x468f1e));if(_0x1d8f3c[_0x43e9fa(0x20b)](_0x170b31['length'],0x0))throw new Error(_0x43e9fa(0x258)+_0x170b31['join'](',\x20'));return!![];}['getExcelFormat'](_0x4eaae0){const _0x115a73=a0_0x11d67f,_0x2ef4e4={'qskLd':'number','Fwges':'#,##0.00','BTRMG':_0x115a73(0x265),'VTEIQ':function(_0xaf0d3f,_0x30c0ac){return _0xaf0d3f||_0x30c0ac;},'DDYoh':'\x22Rp\x20\x22#,##0','OcEPS':_0x115a73(0x226),'HgOqh':function(_0x37e6de,_0x7f8e74){return _0x37e6de||_0x7f8e74;},'iOAku':'0.00%','oqEJF':'text'};if(!_0x4eaae0||!_0x4eaae0['type'])return null;const {type:_0x1fcd91,format:_0x2351e5}=_0x4eaae0;switch(_0x1fcd91['toLowerCase']()){case'date':return _0x2351e5?_0x2351e5['toLowerCase']():_0x115a73(0x1f9);case _0x2ef4e4['qskLd']:return _0x2351e5||_0x2ef4e4[_0x115a73(0x235)];case _0x2ef4e4[_0x115a73(0x24c)]:return _0x2ef4e4[_0x115a73(0x1f7)](_0x2351e5,_0x2ef4e4[_0x115a73(0x237)]);case _0x2ef4e4['OcEPS']:return _0x2ef4e4[_0x115a73(0x207)](_0x2351e5,_0x2ef4e4[_0x115a73(0x209)]);case _0x2ef4e4[_0x115a73(0x20a)]:return'@';default:return null;}}['applyCellFormatting'](_0x361d80,_0x4386ba,_0x194a08,_0x4e64a0){const _0x427771=a0_0x11d67f,_0x104835={'HNopL':function(_0x5d0a65,_0x1bb73c){return _0x5d0a65+_0x1bb73c;},'mnwRT':function(_0x4a395b,_0x28b940){return _0x4a395b<=_0x28b940;}};if(!_0x194a08)return;_0x4386ba[_0x427771(0x242)]((_0x92c4d9,_0x564ea8)=>{const _0x101dec=_0x427771,_0x4c9a61=_0x194a08[_0x92c4d9];if(!_0x4c9a61)return;const _0x61b26e=_0x104835[_0x101dec(0x220)](_0x564ea8,0x1);for(let _0x27f75f=0x2;_0x104835[_0x101dec(0x266)](_0x27f75f,_0x4e64a0+0x1);_0x27f75f++){const _0x1b5b2b=_0x361d80['getCell'](_0x27f75f,_0x61b26e);this[_0x101dec(0x267)](_0x1b5b2b,_0x4c9a61);}});}[a0_0x11d67f(0x247)](_0x2ded8e,_0x3dec07,_0x35a85b,_0x615051){const _0x53857c=a0_0x11d67f,_0x27a4d2={'rgVwx':function(_0xd46b18,_0x18af41){return _0xd46b18+_0x18af41;}};if(!_0x615051)return;_0x35a85b[_0x53857c(0x242)]((_0xd031a,_0x410ce5)=>{const _0x3808fd=_0x53857c,_0x430fea=_0x615051[_0xd031a];if(!_0x430fea)return;const _0x3a66f0=_0x2ded8e[_0x3808fd(0x1fe)](_0x27a4d2['rgVwx'](_0x410ce5,0x1));this['formatCell'](_0x3a66f0,_0x430fea);});}[a0_0x11d67f(0x267)](_0x10e7af,_0x48a483){const _0x5dd3df=a0_0x11d67f,_0x5046ea={'HsVAH':function(_0x2147ab,_0x2ff887){return _0x2147ab===_0x2ff887;},'ppsrI':'number','DEMpM':function(_0x479489,_0x367579){return _0x479489===_0x367579;},'Tiajw':'currency','TbrNd':'percentage','MSyfC':function(_0x2e8bdb,_0x23ecc1){return _0x2e8bdb!==_0x23ecc1;},'SMZNZ':'text','tvAxS':_0x5dd3df(0x1f5),'tcjdr':function(_0x3e393e,_0xeb8e36){return _0x3e393e(_0xeb8e36);},'SPjmm':'left'};if(!_0x48a483||!_0x48a483[_0x5dd3df(0x25a)])return;const {type:_0xf568ed,format:_0x1863d7}=_0x48a483;if(_0x5046ea[_0x5dd3df(0x25f)](_0xf568ed['toLowerCase'](),_0x5dd3df(0x231))&&_0x10e7af['value']){const _0xff7728=this[_0x5dd3df(0x21d)](_0x10e7af['value'],_0x1863d7);_0xff7728&&(_0x10e7af['value']=_0xff7728);return;}if((_0x5046ea['HsVAH'](_0xf568ed['toLowerCase'](),_0x5046ea['ppsrI'])||_0x5046ea[_0x5dd3df(0x200)](_0xf568ed[_0x5dd3df(0x224)](),_0x5046ea['Tiajw'])||_0x5046ea[_0x5dd3df(0x25f)](_0xf568ed[_0x5dd3df(0x224)](),_0x5046ea[_0x5dd3df(0x221)]))&&_0x10e7af['value']){const _0x1fe0cc=this[_0x5dd3df(0x208)](_0x10e7af[_0x5dd3df(0x241)]);if(_0x5046ea['MSyfC'](_0x1fe0cc,null)){_0x10e7af['value']=_0x1fe0cc;const _0xe2f59=this['getExcelFormat'](_0x48a483);_0xe2f59&&(_0x10e7af[_0x5dd3df(0x264)]=_0xe2f59);}}_0xf568ed[_0x5dd3df(0x224)]()===_0x5046ea['SMZNZ']&&_0x10e7af[_0x5dd3df(0x241)]&&(_0x10e7af['numFmt']='@',typeof _0x10e7af['value']!==_0x5046ea['tvAxS']&&(_0x10e7af[_0x5dd3df(0x241)]=_0x5046ea[_0x5dd3df(0x239)](String,_0x10e7af['value'])),_0x10e7af['alignment']={'horizontal':_0x5046ea[_0x5dd3df(0x217)],'vertical':'middle'});}['formatDateString'](_0x175035,_0x2bacc8){const _0x4925c0=a0_0x11d67f,_0x21c23e={'aWrCu':function(_0x4dfab9,_0x2de767){return _0x4dfab9+_0x2de767;},'dWVUe':function(_0x3d3fac,_0x1b7456){return _0x3d3fac===_0x1b7456;},'ZDoHi':function(_0x4888c4,_0x27e783,_0x37628a){return _0x4888c4(_0x27e783,_0x37628a);},'yMMOW':_0x4925c0(0x21c),'JNYBx':function(_0x35fe67,_0x443e62){return _0x35fe67(_0x443e62);},'aVQkP':function(_0x11a543,_0x22cfe3){return _0x11a543||_0x22cfe3;},'BMJEf':'dd-mm-yyyy','QSyfy':'yyyy/mm/dd'};if(!_0x175035)return null;let _0x4d1b7c,_0x4bd9cb,_0x5a8bd1;if(_0x175035 instanceof Date)_0x4d1b7c=_0x175035['getUTCFullYear'](),_0x4bd9cb=_0x21c23e[_0x4925c0(0x240)](_0x175035[_0x4925c0(0x225)](),0x1),_0x5a8bd1=_0x175035[_0x4925c0(0x254)]();else{if(_0x21c23e['dWVUe'](typeof _0x175035,'string')){const _0x3cf8cc=_0x175035['match'](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x3cf8cc)_0x4d1b7c=parseInt(_0x3cf8cc[0x1],0xa),_0x4bd9cb=_0x21c23e[_0x4925c0(0x255)](parseInt,_0x3cf8cc[0x2],0xa),_0x5a8bd1=parseInt(_0x3cf8cc[0x3],0xa);else{const _0x13b04a=_0x175035['match'](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x13b04a)_0x5a8bd1=_0x21c23e[_0x4925c0(0x255)](parseInt,_0x13b04a[0x1],0xa),_0x4bd9cb=parseInt(_0x13b04a[0x2],0xa),_0x4d1b7c=parseInt(_0x13b04a[0x3],0xa);else{const _0x23f9b6=_0x175035['match'](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x23f9b6&&(_0x4d1b7c=_0x21c23e['ZDoHi'](parseInt,_0x23f9b6[0x1],0xa),_0x4bd9cb=_0x21c23e[_0x4925c0(0x255)](parseInt,_0x23f9b6[0x2],0xa),_0x5a8bd1=parseInt(_0x23f9b6[0x3],0xa));}}}else{if(typeof _0x175035===_0x21c23e['yMMOW']){const _0x4ab5fd=new Date(_0x175035);!isNaN(_0x4ab5fd['getTime']())&&(_0x4d1b7c=_0x4ab5fd['getUTCFullYear'](),_0x4bd9cb=_0x4ab5fd[_0x4925c0(0x225)]()+0x1,_0x5a8bd1=_0x4ab5fd[_0x4925c0(0x254)]());}}}if(!_0x4d1b7c||!_0x4bd9cb||!_0x5a8bd1)return null;const _0x55dc5e=_0x21c23e['JNYBx'](String,_0x5a8bd1)[_0x4925c0(0x219)](0x2,'0'),_0x3464f7=String(_0x4bd9cb)[_0x4925c0(0x219)](0x2,'0'),_0x4aad17=_0x21c23e['JNYBx'](String,_0x4d1b7c),_0x426f79=_0x21c23e['aVQkP'](_0x2bacc8,'DD/MM/YYYY')['toLowerCase']();if(_0x426f79===_0x4925c0(0x1f9))return _0x55dc5e+'/'+_0x3464f7+'/'+_0x4aad17;else{if(_0x426f79===_0x4925c0(0x25c))return _0x3464f7+'/'+_0x55dc5e+'/'+_0x4aad17;else{if(_0x426f79===_0x4925c0(0x228))return _0x4aad17+'-'+_0x3464f7+'-'+_0x55dc5e;else{if(_0x426f79===_0x21c23e['BMJEf'])return _0x55dc5e+'-'+_0x3464f7+'-'+_0x4aad17;else return _0x21c23e[_0x4925c0(0x1f6)](_0x426f79,_0x21c23e['QSyfy'])?_0x4aad17+'/'+_0x3464f7+'/'+_0x55dc5e:_0x55dc5e+'/'+_0x3464f7+'/'+_0x4aad17;}}}}['parseNumber'](_0x4c2aed){const _0xc0236d=a0_0x11d67f,_0x4775ac={'SZjlZ':'number','Rcfjw':function(_0x3e1ac0,_0x3014c5){return _0x3e1ac0===_0x3014c5;},'ehKzK':'string','jzsDV':function(_0x2185a8,_0x4d5eb1){return _0x2185a8(_0x4d5eb1);},'caMFa':function(_0x4e3d88,_0x30077d){return _0x4e3d88(_0x30077d);}};if(typeof _0x4c2aed===_0x4775ac['SZjlZ'])return _0x4c2aed;if(_0x4775ac[_0xc0236d(0x218)](typeof _0x4c2aed,_0x4775ac['ehKzK'])){const _0x960aac=_0x4c2aed[_0xc0236d(0x250)](/[^\d.-]/g,''),_0x3d3a82=_0x4775ac[_0xc0236d(0x20c)](parseFloat,_0x960aac);if(!_0x4775ac[_0xc0236d(0x222)](isNaN,_0x3d3a82))return _0x3d3a82;}return null;}[a0_0x11d67f(0x238)](_0xbe3095,_0x114e93,_0x572a6b){const _0x27d298=a0_0x11d67f,_0x4d0ec9={'umLGp':function(_0xeb5fd,_0xb8c1a0){return _0xeb5fd===_0xb8c1a0;},'oNmlk':function(_0x18dfc9,_0x10b69b){return _0x18dfc9!==_0x10b69b;}};if(!_0x572a6b)return _0xbe3095;const _0x2bb1c1=[];_0x114e93['forEach'](_0xed5a67=>{const _0xa00331=a0_0x2bbe,_0x592164=_0x572a6b[_0xed5a67];_0x592164&&_0x592164[_0xa00331(0x25a)]&&_0x4d0ec9[_0xa00331(0x262)](_0x592164['type'][_0xa00331(0x224)](),_0xa00331(0x251))&&_0x2bb1c1['push'](_0xed5a67);});if(_0x2bb1c1['length']===0x0)return _0xbe3095;return _0xbe3095[_0x27d298(0x206)](_0x5b5fd2=>{const _0x1bcfd5=_0x27d298,_0x1f011c={'jrBeO':function(_0xde7f36,_0x1fe12b){const _0x1df725=a0_0x2bbe;return _0x4d0ec9[_0x1df725(0x21e)](_0xde7f36,_0x1fe12b);},'HeSrU':function(_0x5949c7,_0x31b054){return _0x5949c7(_0x31b054);}},_0x7d3c79={..._0x5b5fd2};return _0x2bb1c1[_0x1bcfd5(0x242)](_0x13e84c=>{const _0x519263=_0x1bcfd5;_0x7d3c79[_0x13e84c]!==null&&_0x1f011c['jrBeO'](_0x7d3c79[_0x13e84c],undefined)&&(_0x7d3c79[_0x13e84c]='\x27'+_0x1f011c[_0x519263(0x245)](String,_0x7d3c79[_0x13e84c]));}),_0x7d3c79;});}['preprocessTextRow'](_0xe7c5dc,_0x5384d7,_0x4bdf4e){const _0x24b5c3=a0_0x11d67f,_0x376608={'HuFac':'text','OYakb':function(_0x43b349,_0x4271bb){return _0x43b349!==_0x4271bb;},'tuSqh':function(_0x1f8540,_0x48c94a){return _0x1f8540+_0x48c94a;},'XupKo':function(_0x458c83,_0x5a3717){return _0x458c83===_0x5a3717;}};if(!_0x4bdf4e)return _0xe7c5dc;const _0x227998=[];_0x5384d7[_0x24b5c3(0x242)](_0x2c2cf1=>{const _0x58c129=_0x24b5c3,_0x462872=_0x4bdf4e[_0x2c2cf1];_0x462872&&_0x462872['type']&&_0x462872['type']['toLowerCase']()===_0x376608[_0x58c129(0x244)]&&_0x227998[_0x58c129(0x25b)](_0x2c2cf1);});if(_0x376608[_0x24b5c3(0x233)](_0x227998[_0x24b5c3(0x20f)],0x0))return _0xe7c5dc;const _0x2e694f={..._0xe7c5dc};return _0x227998['forEach'](_0x583bbc=>{const _0x25431c=_0x24b5c3;_0x376608[_0x25431c(0x234)](_0x2e694f[_0x583bbc],null)&&_0x2e694f[_0x583bbc]!==undefined&&(_0x2e694f[_0x583bbc]=_0x376608['tuSqh']('\x27',String(_0x2e694f[_0x583bbc])));}),_0x2e694f;}}module[a0_0x11d67f(0x20d)]=ExcelGenerator;
@@ -1 +1 @@
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
+ function a0_0x1ff7(){const _0x3da382=['nZaYmJqYCuDTEefM','ndC3mJy0uuPWA25n','CMLJAfrLEhq','mJi3mZu1m05gr1LvBa','rNbQBMm','CMvHzezPBgu','BM9YBwfSAxPLsgvHzgvY','mtm0oenszKPuva','mZq5odKZmhDSC0Xxzq','tM8GD29YA3nOzwv0igzVDw5KigLUiev4y2vSigzPBgu','CgfYC2vfEgnLBezPBgu','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu','nJyYodu0EKjOr2Hu','BM9YBwfSAxPLq2vSBfzHBhvL','veP0uxm','B2jQzwn0','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu6ia','zxjYB3i','D3bQCM8','Dg9mB3DLCKnHC2u','CMvWBgfJzq','v29YA2jVB2S','BwfW','ChvZAa','Ew9KsgS','mZy4n0nlzgXqzG','C2XPy2u','zMLSDgvY','mte2mfnRywnxAG','DMfSAwrHDgvfEgnLBfn0CNvJDhvYzq','BgvUz3rO','CeLcqwy','mJqXntDABKvXu0C','CgfKu3rHCNq','Dgv4Da'];a0_0x1ff7=function(){return _0x3da382;};return a0_0x1ff7();}const a0_0x2f78db=a0_0x5c61;(function(_0x4abd85,_0x2e2c23){const _0x16d32c=a0_0x5c61,_0x29701e=_0x4abd85();while(!![]){try{const _0x573b4f=parseInt(_0x16d32c(0x18d))/0x1+-parseInt(_0x16d32c(0x199))/0x2+parseInt(_0x16d32c(0x1a6))/0x3*(parseInt(_0x16d32c(0x194))/0x4)+-parseInt(_0x16d32c(0x195))/0x5+parseInt(_0x16d32c(0x18e))/0x6+parseInt(_0x16d32c(0x1ad))/0x7*(parseInt(_0x16d32c(0x1a9))/0x8)+-parseInt(_0x16d32c(0x190))/0x9;if(_0x573b4f===_0x2e2c23)break;else _0x29701e['push'](_0x29701e['shift']());}catch(_0x245e95){_0x29701e['push'](_0x29701e['shift']());}}}(a0_0x1ff7,0x64b6c));const ExcelJS=require('exceljs'),{logger}=require('./logger');function a0_0x5c61(_0x467d6c,_0x6603a0){_0x467d6c=_0x467d6c-0x18b;const _0x1ff7cf=a0_0x1ff7();let _0x5c6124=_0x1ff7cf[_0x467d6c];if(a0_0x5c61['VrXSTx']===undefined){var _0x473588=function(_0x43049d){const _0x1b88c8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x54b6a2='',_0xb32acb='';for(let _0x56209b=0x0,_0x4229b4,_0x1184a5,_0x2bf5cf=0x0;_0x1184a5=_0x43049d['charAt'](_0x2bf5cf++);~_0x1184a5&&(_0x4229b4=_0x56209b%0x4?_0x4229b4*0x40+_0x1184a5:_0x1184a5,_0x56209b++%0x4)?_0x54b6a2+=String['fromCharCode'](0xff&_0x4229b4>>(-0x2*_0x56209b&0x6)):0x0){_0x1184a5=_0x1b88c8['indexOf'](_0x1184a5);}for(let _0x163c3b=0x0,_0x55a6d2=_0x54b6a2['length'];_0x163c3b<_0x55a6d2;_0x163c3b++){_0xb32acb+='%'+('00'+_0x54b6a2['charCodeAt'](_0x163c3b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xb32acb);};a0_0x5c61['hMnMsG']=_0x473588,a0_0x5c61['dJemyn']={},a0_0x5c61['VrXSTx']=!![];}const _0x1d1479=_0x1ff7cf[0x0],_0x229668=_0x467d6c+_0x1d1479,_0x192b71=a0_0x5c61['dJemyn'][_0x229668];return!_0x192b71?(_0x5c6124=a0_0x5c61['hMnMsG'](_0x5c6124),a0_0x5c61['dJemyn'][_0x229668]=_0x5c6124):_0x5c6124=_0x192b71,_0x5c6124;}class ExcelParser{async[a0_0x2f78db(0x197)](_0x5a359d){const _0x367f89=a0_0x2f78db,_0x5286d2={'pIBAf':function(_0x1420d8,_0x2a0062){return _0x1420d8===_0x2a0062;},'yodHk':_0x367f89(0x196),'HBUyo':'Excel\x20file\x20parsed\x20successfully','oRKIg':'excel_parse_error'};try{const _0x3f335d=new ExcelJS[(_0x367f89(0x1a2))]();await _0x3f335d['xlsx'][_0x367f89(0x192)](_0x5a359d);const _0x985e58=_0x3f335d['worksheets'][0x0];if(!_0x985e58)throw new Error(_0x5286d2[_0x367f89(0x1a5)]);const _0x545e38=[];let _0x2919b6=[];return _0x985e58['eachRow']((_0x40bc28,_0x21d904)=>{const _0x203795=_0x367f89,_0x3ab4d8=_0x40bc28['values'];if(_0x5286d2[_0x203795(0x1ac)](_0x21d904,0x1))_0x2919b6=_0x3ab4d8[_0x203795(0x1a7)](0x1)['map'](_0x1686ad=>this[_0x203795(0x193)](_0x1686ad));else{const _0x145a81={};_0x2919b6['forEach']((_0x3da995,_0xcd83ec)=>{const _0x2427b8=_0x203795,_0x3e27f8=_0x3ab4d8[_0xcd83ec+0x1];_0x145a81[_0x3da995]=this[_0x2427b8(0x19a)](_0x3e27f8);}),_0x545e38[_0x203795(0x1a4)](_0x145a81);}}),logger['info']({'event':'excel_parsed','filePath':_0x5a359d,'totalRows':_0x545e38['length'],'headers':_0x2919b6[_0x367f89(0x1ab)]},_0x5286d2['HBUyo']),{'headers':_0x2919b6,'rows':_0x545e38,'totalRows':_0x545e38['length']};}catch(_0x1e243a){logger[_0x367f89(0x19e)]({'event':_0x5286d2['oRKIg'],'filePath':_0x5a359d,'error':_0x1e243a['message']},_0x367f89(0x198));throw new Error(_0x367f89(0x19d)+_0x1e243a['message']);}}['normalizeHeader'](_0x2d1111){const _0x27381b=a0_0x2f78db,_0x52cc28={'wpjro':function(_0xa53e5d,_0x2e8e92){return _0xa53e5d===_0x2e8e92;},'TJtQs':'$1_$2'};if(_0x52cc28[_0x27381b(0x19f)](_0x2d1111,null)||_0x2d1111===undefined)return'';let _0x49ea5c=String(_0x2d1111)['trim']();return _0x49ea5c=_0x49ea5c[_0x27381b(0x1a1)](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,'$1_$2')[_0x27381b(0x1a1)](/([A-Z]+)([A-Z][a-z])/g,_0x52cc28[_0x27381b(0x19b)])[_0x27381b(0x1a0)](),_0x49ea5c;}[a0_0x2f78db(0x19a)](_0x1651a0){const _0x9bc640=a0_0x2f78db,_0x22095f={'ZOSsV':function(_0x372312,_0x51cc98){return _0x372312===_0x51cc98;},'MHbfs':function(_0xcba7af,_0x39b89e){return _0xcba7af+_0x39b89e;},'pJQjt':function(_0x3595b8,_0x1aceff){return _0x3595b8(_0x1aceff);},'Fpjnc':'string','sWXSG':function(_0x155507,_0x1b6e20){return _0x155507===_0x1b6e20;}};if(_0x22095f['ZOSsV'](_0x1651a0,null)||_0x22095f['ZOSsV'](_0x1651a0,undefined))return null;if(_0x1651a0 instanceof Date){const _0x4b26e=_0x1651a0['getFullYear'](),_0x1f30d8=String(_0x22095f['MHbfs'](_0x1651a0['getMonth'](),0x1))['padStart'](0x2,'0'),_0x4d27d7=_0x22095f['pJQjt'](String,_0x1651a0['getDate']())[_0x9bc640(0x18b)](0x2,'0');return _0x4b26e+'-'+_0x1f30d8+'-'+_0x4d27d7;}if(typeof _0x1651a0===_0x22095f[_0x9bc640(0x191)]){const _0x419588=_0x1651a0['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x419588){const _0x369277=_0x22095f['pJQjt'](String,_0x419588[0x1])['padStart'](0x2,'0'),_0x1f8fb2=_0x22095f['pJQjt'](String,_0x419588[0x2])[_0x9bc640(0x18b)](0x2,'0'),_0x815e87=_0x419588[0x3];return _0x815e87+'-'+_0x1f8fb2+'-'+_0x369277;}}if(_0x1651a0&&typeof _0x1651a0==='object'&&_0x1651a0['richText'])return _0x1651a0[_0x9bc640(0x18f)][_0x9bc640(0x1a3)](_0x134181=>_0x134181[_0x9bc640(0x18c)])['join']('');if(_0x1651a0&&typeof _0x1651a0===_0x9bc640(0x19c)&&_0x1651a0['result']!==undefined)return this[_0x9bc640(0x19a)](_0x1651a0['result']);if(_0x22095f['sWXSG'](typeof _0x1651a0,_0x22095f['Fpjnc']))return _0x1651a0['trim']();return _0x1651a0;}[a0_0x2f78db(0x1aa)](_0x93797,_0x2e8ac1){const _0x133a8d=a0_0x2f78db,_0x33cf12=new Set(_0x93797),_0xdbc0d1=new Set(_0x2e8ac1),_0x3a0e91=_0x2e8ac1['filter'](_0x5132ca=>!_0x33cf12['has'](_0x5132ca)),_0x122f8d=_0x93797[_0x133a8d(0x1a8)](_0x513ced=>!_0xdbc0d1['has'](_0x513ced)),_0x2891c8=_0x3a0e91[_0x133a8d(0x1ab)]===0x0;return{'valid':_0x2891c8,'missingFields':_0x3a0e91,'extraFields':_0x122f8d};}}module['exports']=new ExcelParser();
@@ -1 +1 @@
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
+ function a0_0x1a9d(){const _0x1057d6=['zMv0y2HeyxrH','zxHWB3j0x3f1zxj5x2zPBgvFCMvZB2X2zq','AM9Ix2LK','Dg9mB3DLCKnHC2u','x2v4Cg9YDerPCG','ndG1nZy2mhnJrK5TsW','BgnOquC','zxHWB3j0CW','mJC3mZC2t3noDuLm','zw50CMLLCW','ignVBhvTBNmGzNjVBsbYzxf1zxn0','CMvWBgfJzq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','zxHWB3j0x3nLCNzPy2vFAw5PDa','zxHWB3j0rgLY','zxHWB3j0x3f1zxj5x2zPBgvFBg9HzgvK','z2v0rMLSzvbHDgG','y3DK','C2fUAxrPEMvwywX1zq','z2v0sM9I','vxnPBMCG','y29TCgXLDgvK','rgf0ysbMzxrJAgvKihn1y2nLC3nMDwXSEq','zMLSzw5HBwu','Cg9ZDgDYzxnXBa','lNHSC3G','DgfIBgvoyw1LigfUzcbJB2X1Bw5ZigfYzsbYzxf1AxjLza','C3vIC3rYAw5N','y2HHCKf0','C2v0sM9I','C3rHCNrZv2L0Aa','zw52','yLbSEMW','wKTHAgK','zxHJzwXFy29SDw1UC19MCM9Tx3jLCxvLC3q','zfjwyxG','BxLZCwW','q1zNDhq','zxHWB3j0x2nSzwfUDxbFy29TCgXLDgu','rxHWB3j0igzHAwXLza','Dg9ju09tDhjPBMC','vwPqEuq','r0ftvvO','revtqW','zxHJzwXFy29SDw1UC19MywXSyMfJAW','DxbKyxrLsM9I','BwvZC2fNzq','ieLtie5pvcbovuXm','ignOyxjZkq','Cgf0Aa','yNvPBgrxAgvYzunSyxvZzq','mtG1AhjxD25N','zxHJzwXFy29SDw1UC19MCM9Tx2nVBMzPzW','zMfPBgvK','ywXS','yw5wCwO','sfDNqwq','rxHWB3j0igzPBguGzgvSzxrLza','AxnbCNjHEq','yNvPBgrpCMrLCKj5q2XHDxnL','rMfPBgvKihrVigLUAxrPywXPEMuGzxHWB3j0ihnLCNzPy2u','zw5KCg9PBNroyw1L','y3jLyxrLzf9HDa','mJG1mJi0uwfUuxH4','y29SDw1UrM9YBwf0CW','uunsEfm','cIaGicbguK9nia','zxHWB3j0x3nLCNzPy2vFAw5PDf9LCNjVCG','AM9PBG','zxHWB3j0x2zLDgnOx2nVBxbSzxrL','mtiZmte3mg9Nuvztuq','vxnPBMCGy3vZDg9Tigv4Cg9YDff1zxj5','zxHPC3rZu3LUyW','C3rYAw5N','rxHWB3j0igPVyIbJCMvHDgvK','ugXNwK0','sgDhDMq','BwfW','C3LAzLa','Aw93Dxi','ywnJzxnZ','svmGtK9uie5vteW','ChjVy2vZC2LUzW','D2fYBG','Dg9vChbLCKnHC2u','rMv0y2HPBMCGzgf0ysbMCM9TigrHDgfIyxnL','DhjPBq','B0rmBKy','zMLSztO','teLlrq','zMLSzv9WyxrO','y29Kzq','twH5rfq','CMvZB2X2zuv4Cg9YDff1zxj5','vw5RBM93BIbVCgvYyxrVCIWGDxnPBMCGpsbHCYbKzwzHDwX0','rKToEuu','AfPTwLK','zxHWB3j0x2zPBgvFzgvSzxrLza','rxHWB3j0ihbYB2nLC3nPBMCGC3rHCNrLza','sM9kywK','rxHWB3j0ihf1zxj5igzPBguGAxmGzw1WDhK6ia','rM1vwKO','odCYmZzPuxfJvLK','qvnd','rvHqt1jux0rjuG','ignVBhvTBNmGzNjVBsbJB25MAwCGkg5VigrHDgeP','BM93','zMLSDgvY','DKrxrxO','zxHWB3j0x2zPBgvFBM90x2zVDw5K','B3jHy2XL','CM91BMq','zxHiBMC','z3P6s3C','BgvUz3rO','zxHLy3v0zvf1zxj5','rxHWB3j0igzPBguGBM90igzVDw5K','we9nC2C','ChjVy2vZC0PVyG','uMvXDwvZDgvKignVBhvTBNmGBM90igzVDw5KigLUigrHDgeSihvZAw5NigfSBca','y29TCgXLDgvKx2f0','wKjpDNq','zgvSzxrLsM9I','cIaGicaGicaG','DLvbAwW','u2DzvLq','C3rHDhvZ','CKvZsgq','zxHJzwXFy29SDw1UC19MCM9Tx3f1zxj5x3jLC3vSDa','cK9srevsiejzia','n3rZrvDYEG','mJe4otyXnLrxCuPqsG','zxHJzwXFy29SDw1UC19ZzwXLy3rFywXS','z2vUzxjHDgvkB2jjza','z2vUzxjHDgvfEgnLBa','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','lI4Vzgf0ywjHC2uVzgiTBxLZCwW','EgnVC1u','ieLoicG','rxHWB3j0ihf1zxj5igzPBguGBM90igzVDw5KoIa','y3jLyxrLsM9I','rfjUDLu','rMfPBgvKihrVigzLDgnOigrHDge','ignVBhvTBNm','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','zMLLBgrmywjLBhm','rMfPBgvKihrVihjLywqGzxHWB3j0ihf1zxj5igzPBgu6ia','mJK4otGZu3vxDNH5','Dw5SAw5R','Aw5MBW','uMvZB2X2Aw5Nigv4Cg9YDff1zxj5igzYB20GzMLSztOG','CMfUzg9T','tK9uieXjs0u','y29SDw1UCW','zxHWB3j0lq','Aw52ywXPzf9JB25KAxrPB24','u2vwz2q'];a0_0x1a9d=function(){return _0x1057d6;};return a0_0x1a9d();}const a0_0x58662f=a0_0x3027;function a0_0x3027(_0x467489,_0x169634){_0x467489=_0x467489-0x1d4;const _0x1a9d6f=a0_0x1a9d();let _0x30273e=_0x1a9d6f[_0x467489];if(a0_0x3027['KOlOvj']===undefined){var _0x1491de=function(_0x29b62e){const _0x1b0c83='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x27f341='',_0xff6785='';for(let _0x54c3ce=0x0,_0x31641e,_0x1bca9e,_0x3e68de=0x0;_0x1bca9e=_0x29b62e['charAt'](_0x3e68de++);~_0x1bca9e&&(_0x31641e=_0x54c3ce%0x4?_0x31641e*0x40+_0x1bca9e:_0x1bca9e,_0x54c3ce++%0x4)?_0x27f341+=String['fromCharCode'](0xff&_0x31641e>>(-0x2*_0x54c3ce&0x6)):0x0){_0x1bca9e=_0x1b0c83['indexOf'](_0x1bca9e);}for(let _0x177785=0x0,_0x4463e3=_0x27f341['length'];_0x177785<_0x4463e3;_0x177785++){_0xff6785+='%'+('00'+_0x27f341['charCodeAt'](_0x177785)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xff6785);};a0_0x3027['hXUcrl']=_0x1491de,a0_0x3027['JDqVgP']={},a0_0x3027['KOlOvj']=!![];}const _0x35d176=_0x1a9d6f[0x0],_0x1ac11c=_0x467489+_0x35d176,_0x4f45fa=a0_0x3027['JDqVgP'][_0x1ac11c];return!_0x4f45fa?(_0x30273e=a0_0x3027['hXUcrl'](_0x30273e),a0_0x3027['JDqVgP'][_0x1ac11c]=_0x30273e):_0x30273e=_0x4f45fa,_0x30273e;}(function(_0x1f9415,_0x2caba1){const _0x1c53e0=a0_0x3027,_0x2a0d0c=_0x1f9415();while(!![]){try{const _0x3c97f7=-parseInt(_0x1c53e0(0x202))/0x1+-parseInt(_0x1c53e0(0x214))/0x2+parseInt(_0x1c53e0(0x1f2))/0x3+-parseInt(_0x1c53e0(0x1d5))/0x4*(-parseInt(_0x1c53e0(0x23f))/0x5)+parseInt(_0x1c53e0(0x252))/0x6*(parseInt(_0x1c53e0(0x1f1))/0x7)+parseInt(_0x1c53e0(0x24b))/0x8+-parseInt(_0x1c53e0(0x211))/0x9;if(_0x3c97f7===_0x2caba1)break;else _0x2a0d0c['push'](_0x2a0d0c['shift']());}catch(_0x2fe155){_0x2a0d0c['push'](_0x2a0d0c['shift']());}}}(a0_0x1a9d,0xc35f2));const {v7:uuidv7}=require('uuid'),path=require(a0_0x58662f(0x23d)),fs=require('fs')['promises'],fsSync=require('fs'),redisHelper=require('../caching/redis-helper'),{logger,logError}=require(a0_0x58662f(0x1ff)),dbType=(process[a0_0x58662f(0x22b)]['DB_TYPE']||a0_0x58662f(0x224))['toLowerCase']();let executeQuery;if(dbType==='oracle'){const oracleDb=require('../database/db-oracle');executeQuery=(_0x10152d,_0x3ee2c0)=>oracleDb['executeQuery'](_0x10152d,_0x3ee2c0);}else{if(dbType===a0_0x58662f(0x230)){const mysqlDb=require(a0_0x58662f(0x1f7));executeQuery=(_0x57eb40,_0x4acc0c)=>mysqlDb[a0_0x58662f(0x1e2)](_0x57eb40,_0x4acc0c);}else executeQuery=require('../../core/utils/db')[a0_0x58662f(0x1e2)];}class ExportService{constructor(){this['_exportDir']=null;}get[a0_0x58662f(0x21a)](){const _0x566b35=a0_0x58662f,_0x11d378={'VlaUE':_0x566b35(0x219),'CVgtt':function(_0xd8e27b,_0x5a8a14,_0x3b9eda,_0x4a883a){return _0xd8e27b(_0x5a8a14,_0x3b9eda,_0x4a883a);},'FVIcr':_0x566b35(0x248)};if(!this[_0x566b35(0x210)]){const _0x472ca0=process['env'][_0x566b35(0x218)]||'default';this['_exportDir']=process['env'][_0x566b35(0x1d7)]||path['join'](__dirname,'../../exports/'+_0x472ca0);try{!fsSync['existsSync'](this['_exportDir'])&&fsSync['mkdirSync'](this['_exportDir'],{'recursive':!![]}),logger[_0x566b35(0x204)]({'event':_0x11d378['VlaUE'],'dir':this['_exportDir']},'Export\x20service\x20initialized');}catch(_0xbaee06){_0x11d378[_0x566b35(0x231)](logError,_0xbaee06,{'event':_0x566b35(0x24f)},_0x11d378['FVIcr']);}}return this['_exportDir'];}[a0_0x58662f(0x269)](_0x47b18e,_0x5947a2=null){const _0x4932d3=a0_0x58662f,_0xe11c16={'hZmZY':function(_0x105619,_0x989a60){return _0x105619!==_0x989a60;},'YkIQh':'string','HgGvd':'payload','ZKahi':_0x4932d3(0x21b),'HWgAd':'ENOENT'};if(!_0x47b18e||_0xe11c16[_0x4932d3(0x26c)](typeof _0x47b18e,_0xe11c16['YkIQh']))return _0x47b18e;const _0x1cd911=_0x47b18e['trim']();if(!_0x1cd911[_0x4932d3(0x22a)]('file:'))return _0x1cd911;const _0x350af4=_0x1cd911['replace'](/^file:/,'')[_0x4932d3(0x262)]();if(!_0x350af4)throw new Error('Invalid\x20file:\x20reference\x20-\x20path\x20is\x20empty');const _0xf7959d=_0x5947a2||path[_0x4932d3(0x250)](process[_0x4932d3(0x21d)](),_0xe11c16[_0x4932d3(0x258)]),_0x3e0aa9=path['resolve'](_0xf7959d,_0x350af4);logger[_0x4932d3(0x204)]({'event':_0x4932d3(0x20d),'relativePath':_0x350af4,'baseDir':_0xf7959d,'absolutePath':_0x3e0aa9},_0x4932d3(0x205)+_0x350af4);if(!fsSync[_0x4932d3(0x254)](_0x3e0aa9))throw new Error(_0x4932d3(0x1fa)+_0x3e0aa9);try{const _0x365bfa=fsSync['readFileSync'](_0x3e0aa9,'utf8');if(!_0x365bfa||!_0x365bfa[_0x4932d3(0x262)]())throw new Error(_0x4932d3(0x270)+_0x3e0aa9);return logger[_0x4932d3(0x204)]({'event':_0xe11c16[_0x4932d3(0x22d)],'file':_0x3e0aa9,'queryLength':_0x365bfa[_0x4932d3(0x1e1)]},'Loaded\x20SQL\x20query\x20from\x20file\x20('+_0x365bfa[_0x4932d3(0x1e1)]+_0x4932d3(0x23c)),_0x365bfa['trim']();}catch(_0x35f721){if(_0x35f721[_0x4932d3(0x267)]===_0xe11c16[_0x4932d3(0x244)])throw new Error('Export\x20query\x20file\x20not\x20found:\x20'+_0x3e0aa9);throw new Error(_0x4932d3(0x201)+_0x35f721[_0x4932d3(0x23a)]);}}['generateJobId'](){const _0x359080=a0_0x58662f,_0x553d98={'kzGfe':function(_0x2f97ca){return _0x2f97ca();},'BsBlF':function(_0x42612c,_0x2af5b9){return _0x42612c*_0x2af5b9;}},_0x301f76=_0x359080(0x1f6),_0x86d69=Date[_0x359080(0x1d9)]()['toString'](0x24),_0x2e999d=_0x553d98['kzGfe'](uuidv7)[_0x359080(0x217)](/-/g,'')['substring'](0x0,0xc-_0x86d69[_0x359080(0x1e1)]),_0x5e0c10=(_0x86d69+_0x2e999d)[_0x359080(0x227)](0x0,0xc);let _0x496697='';for(let _0x1c96af=0x0;_0x1c96af<0xc;_0x1c96af++){_0x5e0c10[_0x1c96af]?_0x496697+=_0x5e0c10[_0x1c96af]:_0x496697+=_0x301f76[_0x359080(0x228)](Math['floor'](_0x553d98['BsBlF'](Math[_0x359080(0x206)](),_0x301f76['length'])));}return _0x496697;}async[a0_0x58662f(0x1fb)](_0x3ca040){const _0x3ff69f=a0_0x58662f,_0x237041={'tWybl':'export_process_error','lYdVL':'pending','EIPJf':'export_job_created','gzzKw':_0x3ff69f(0x256)},_0x41ef80=this[_0x3ff69f(0x1f4)](),_0x560cf7={'job_id':_0x41ef80,'status':_0x237041['lYdVL'],'progress':0x0,'created_at':new Date()[_0x3ff69f(0x234)](),'params':_0x3ca040,'total_rows':0x0,'processed_rows':0x0};return await redisHelper[_0x3ff69f(0x229)](_0x41ef80,_0x560cf7),logger[_0x3ff69f(0x204)]({'event':_0x237041['EIPJf'],'jobId':_0x41ef80,'params':_0x3ca040},_0x237041[_0x3ff69f(0x1e0)]),this[_0x3ff69f(0x1e5)](_0x41ef80,_0x3ca040)['catch'](_0x403f50=>{logError(_0x403f50,{'event':_0x237041['tWybl'],'jobId':_0x41ef80},'Export\x20processing\x20failed');}),{'job_id':_0x41ef80,'status':_0x237041['lYdVL']};}async['getJobStatus'](_0x8b054){const _0x12a965=a0_0x58662f,_0x50d1cf={'vDWEz':'Job\x20not\x20found\x20or\x20expired','xcosU':function(_0x1a508a,_0x3578dc){return _0x1a508a===_0x3578dc;},'FKNyE':_0x12a965(0x221)},_0x1af10b=await redisHelper[_0x12a965(0x21f)](_0x8b054);if(!_0x1af10b)return{'success':![],'error':_0x50d1cf[_0x12a965(0x1db)]};return{'success':!![],'data':{'job_id':_0x1af10b['job_id'],'status':_0x1af10b['status'],'progress':_0x1af10b['progress'],'total_rows':_0x1af10b['total_rows'],'processed_rows':_0x1af10b['processed_rows'],'file_url':_0x50d1cf[_0x12a965(0x1f8)](_0x1af10b[_0x12a965(0x1ed)],_0x50d1cf[_0x12a965(0x26b)])?'/api/'+_0x1af10b['params']['moduleName']+'/'+_0x1af10b['params'][_0x12a965(0x249)]+'/export-download?job_id='+_0x8b054:null,'error':_0x1af10b['error']||null,'created_at':_0x1af10b[_0x12a965(0x24a)],'completed_at':_0x1af10b[_0x12a965(0x1e7)]||null}};}async[a0_0x58662f(0x1e5)](_0x204a73,_0x18de95){const _0xa48ba3=a0_0x58662f,_0x1d1287={'nNttF':_0xa48ba3(0x25e),'NwCiY':_0xa48ba3(0x26e),'iyDLy':'completed','xPlNo':'export_completed'};try{await redisHelper['updateJob'](_0x204a73,{'status':_0x1d1287['nNttF'],'started_at':new Date()['toISOString']()}),logger[_0xa48ba3(0x204)]({'event':'export_processing_start','jobId':_0x204a73},_0x1d1287['NwCiY']);const _0x79f2aa=await this['fetchData'](_0x18de95);await redisHelper['updateJob'](_0x204a73,{'total_rows':_0x79f2aa['length']});const _0xd1894d=await this['generateExcel'](_0x204a73,_0x79f2aa,_0x18de95);await redisHelper['updateJob'](_0x204a73,{'status':_0x1d1287['iyDLy'],'progress':0x64,'file_path':_0xd1894d,'completed_at':new Date()['toISOString']()}),logger['info']({'event':_0x1d1287['xPlNo'],'jobId':_0x204a73,'rows':_0x79f2aa['length']},'Export\x20completed\x20successfully');}catch(_0x2cde91){logError(_0x2cde91,{'event':'export_failed','jobId':_0x204a73},_0xa48ba3(0x233)),await redisHelper[_0xa48ba3(0x239)](_0x204a73,{'status':_0xa48ba3(0x241),'error':_0x2cde91['message'],'failed_at':new Date()[_0xa48ba3(0x234)]()});}}async[a0_0x58662f(0x20c)](_0x292e96){const _0x2973d6=a0_0x58662f,_0x256a07={'GASUZ':function(_0x59ab7a,_0x4bfe83){return _0x59ab7a||_0x4bfe83;},'ZBOvt':'_data','iowur':'export_using_custom_query','HsoeE':'export_using_auto_query','anVqj':function(_0x5c41e6,_0x4318d7){return _0x5c41e6===_0x4318d7;},'QkeVj':function(_0x48d60a,_0x4ecd91){return _0x48d60a>_0x4ecd91;},'UOOAC':'export_fetch_start','MEFfa':_0x2973d6(0x261),'cMCug':function(_0x12c404,_0x5b5467){return _0x12c404(_0x5b5467);},'PlgZM':_0x2973d6(0x1dd),'EVIqv':function(_0x209de3,_0x314b4c){return _0x209de3>_0x314b4c;},'dRVax':_0x2973d6(0x251),'QCRxS':_0x2973d6(0x222),'eczcm':function(_0x3b2afa,_0x1db9f6,_0x55fc90,_0x23be33){return _0x3b2afa(_0x1db9f6,_0x55fc90,_0x23be33);},'QGlRb':_0x2973d6(0x1fd)};try{const {tableName:_0x584e01,columns:_0x2b0c1f,exportQuery:_0x5c6006,where:_0x1c5727,sort_columns:_0x595154}=_0x292e96;if(_0x256a07[_0x2973d6(0x236)](!_0x584e01,!_0x2b0c1f)||_0x2b0c1f['length']===0x0)throw new Error(_0x2973d6(0x226));const _0xe2d054=_0x584e01['replace'](/\./g,'_')+_0x256a07[_0x2973d6(0x1e8)];let _0xc5cc90;if(_0x5c6006&&_0x5c6006['trim']()){let _0x166e42=_0x5c6006;_0x5c6006[_0x2973d6(0x262)]()['startsWith'](_0x2973d6(0x264))&&(_0x166e42=this[_0x2973d6(0x269)](_0x5c6006)),_0xc5cc90='WITH\x20'+_0xe2d054+'\x20AS\x20(\x0a\x20\x20\x20\x20'+_0x166e42+'\x0a)',logger[_0x2973d6(0x204)]({'event':_0x256a07[_0x2973d6(0x25b)],'query':_0x166e42['substring'](0x0,0x64)},_0x2973d6(0x253));}else{const _0x571643=_0x2b0c1f[_0x2973d6(0x259)](_0x96e47d=>_0x2973d6(0x1ea)+_0x96e47d)[_0x2973d6(0x250)](',');_0xc5cc90='WITH\x20'+_0xe2d054+'\x20AS\x20(\x0a\x20\x20\x20\x20SELECT\x20'+_0x571643+_0x2973d6(0x24e)+_0x584e01+'\x0a)',logger[_0x2973d6(0x204)]({'event':_0x256a07['HsoeE'],'tableName':_0x584e01,'columnCount':_0x2b0c1f['length']},'Using\x20auto-generated\x20query');}const _0x33c3d0=!_0x2b0c1f||_0x2b0c1f['length']===0x0||_0x2b0c1f['length']===0x1&&(_0x256a07[_0x2973d6(0x243)](_0x2b0c1f[0x0],'*')||_0x2b0c1f[0x0][_0x2973d6(0x20f)]()==='all'),_0x370a7a=_0x33c3d0?'*':_0x2b0c1f[_0x2973d6(0x250)](',\x20');_0xc5cc90+='\x0aSELECT\x20'+_0x370a7a+'\x0aFROM\x20'+_0xe2d054;if(_0x1c5727){const _0x43ca83=this[_0x2973d6(0x23e)](_0x1c5727);_0x43ca83&&(_0xc5cc90+='\x0aWHERE\x20'+_0x43ca83);}if(_0x595154&&_0x256a07['QkeVj'](_0x595154[_0x2973d6(0x1e1)],0x0)){const _0x14e17d=this[_0x2973d6(0x247)](_0x595154);_0x14e17d&&(_0xc5cc90+=_0x2973d6(0x1f0)+_0x14e17d);}logger['info']({'event':_0x256a07['UOOAC'],'query':_0xc5cc90['substring'](0x0,0xc8)},_0x256a07['MEFfa']);const _0x14c7ab=await _0x256a07['cMCug'](executeQuery,_0xc5cc90);let _0x939aa2=_0x14c7ab;return dbType===_0x256a07[_0x2973d6(0x257)]&&_0x14c7ab&&_0x256a07['EVIqv'](_0x14c7ab['length'],0x0)&&(_0x939aa2=_0x14c7ab[_0x2973d6(0x259)](_0x3bc7fc=>{const _0x2a2669=_0x2973d6,_0x4051f7={};for(const [_0x31e76d,_0x14aef7]of Object[_0x2a2669(0x215)](_0x3bc7fc)){_0x4051f7[_0x31e76d[_0x2a2669(0x20f)]()]=_0x14aef7;}return _0x4051f7;})),logger[_0x2973d6(0x204)]({'event':_0x256a07[_0x2973d6(0x22f)],'rows':_0x939aa2[_0x2973d6(0x1e1)]},_0x256a07[_0x2973d6(0x24d)]),_0x939aa2;}catch(_0x275054){_0x256a07['eczcm'](logError,_0x275054,{'event':'export_fetch_error'},_0x256a07['QGlRb']);throw _0x275054;}}[a0_0x58662f(0x21e)](_0x33b235){const _0x287d38=a0_0x58662f,_0x46d57c={'oDLnF':function(_0x892401,_0x299095){return _0x892401===_0x299095;},'wxXMQ':_0x287d38(0x255)};if(_0x46d57c[_0x287d38(0x263)](typeof _0x33b235,_0x46d57c['wxXMQ']))return _0x33b235[_0x287d38(0x217)](/[\u200B-\u200D\uFEFF\u2060\u00AD]/g,'')[_0x287d38(0x262)]();else{if(Array[_0x287d38(0x246)](_0x33b235))return _0x33b235[_0x287d38(0x259)](_0x563df0=>this[_0x287d38(0x21e)](_0x563df0));}return _0x33b235;}['buildWhereClause'](_0x215ea4){const _0x1d0daa=a0_0x58662f,_0xe3d03a={'kjEVS':function(_0x18b095,_0x51be66){return _0x18b095||_0x51be66;},'DdVod':'Skipping\x20invalid\x20condition','UjPyD':function(_0x1f4d83,_0x477b1f){return _0x1f4d83!==_0x477b1f;},'SeVgd':function(_0x5cb777,_0x82dfda){return _0x5cb777===_0x82dfda;},'lchAG':'string','JoJai':_0x1d0daa(0x207),'NJRFN':function(_0x2a6c33,_0x394ce2){return _0x2a6c33===_0x394ce2;},'tQfjm':'\x20OR\x20','Uebvr':'\x20AND\x20','rEsHd':function(_0x50a6c6,_0x376900){return _0x50a6c6===_0x376900;}};if(!_0x215ea4||!_0x215ea4['conditions']||_0x215ea4['conditions']['length']===0x0)return'';const {logic:_0x2d3c63,conditions:_0x269420}=_0x215ea4,_0x24c907=_0x2d3c63&&_0xe3d03a['NJRFN'](_0x2d3c63[_0x1d0daa(0x260)](),'OR')?_0xe3d03a['tQfjm']:_0xe3d03a['Uebvr'],_0x1f686c=_0x269420[_0x1d0daa(0x259)](_0x35248e=>{const _0x3bdd5a=_0x1d0daa,{key:_0x558cd2,operator:_0x23d6ac,value:_0xa3a522,sensitive:_0x3e206c}=_0x35248e;if(_0xe3d03a['kjEVS'](!_0x558cd2,!_0x23d6ac))return logger['warn']({'event':_0x3bdd5a(0x20a),'condition':_0x35248e},_0xe3d03a['DdVod']),null;const _0x2680a7=this[_0x3bdd5a(0x21e)](_0xa3a522),_0x5254ed=_0xe3d03a[_0x3bdd5a(0x235)](_0x3e206c,undefined)?_0x3e206c:!![];let _0x19f834=_0x558cd2,_0x1b2820=_0x2680a7;!_0x5254ed&&(_0x19f834='UPPER('+_0x558cd2+')',_0xe3d03a[_0x3bdd5a(0x20b)](typeof _0xa3a522,_0xe3d03a[_0x3bdd5a(0x212)])&&(_0x1b2820=_0xa3a522[_0x3bdd5a(0x260)]()));const _0x5990de=typeof _0x1b2820===_0x3bdd5a(0x255)?'\x27'+_0x1b2820['replace'](/'/g,'\x27\x27')+'\x27':_0x1b2820;switch(_0x23d6ac['toUpperCase']()){case'=':case'!=':case'<>':return _0x19f834+'\x20'+_0x23d6ac+'\x20'+_0x5990de;case'>':case'<':case'>=':case'<=':const _0x1502b3=_0xe3d03a[_0x3bdd5a(0x20b)](typeof _0x2680a7,_0xe3d03a['lchAG'])?'\x27'+_0x2680a7['replace'](/'/g,'\x27\x27')+'\x27':_0x2680a7;return _0x558cd2+'\x20'+_0x23d6ac+'\x20'+_0x1502b3;case _0x3bdd5a(0x265):case _0xe3d03a[_0x3bdd5a(0x26f)]:return _0x19f834+'\x20'+_0x23d6ac+'\x20'+_0x5990de;case'IN':if(Array['isArray'](_0x2680a7)){let _0x33e40c;return!_0x5254ed?_0x33e40c=_0x2680a7['map'](_0x8a3844=>{const _0x5d714d=_0x3bdd5a,_0x3f8c60=typeof _0x8a3844==='string'?_0x8a3844['toUpperCase']():_0x8a3844;return typeof _0x3f8c60===_0x5d714d(0x255)?'\x27'+_0x3f8c60['replace'](/'/g,'\x27\x27')+'\x27':_0x3f8c60;})['join'](',\x20'):_0x33e40c=_0x2680a7['map'](_0x4a7122=>typeof _0x4a7122===_0x3bdd5a(0x255)?'\x27'+_0x4a7122[_0x3bdd5a(0x217)](/'/g,'\x27\x27')+'\x27':_0x4a7122)[_0x3bdd5a(0x250)](',\x20'),_0x19f834+'\x20IN\x20('+_0x33e40c+')';}return _0x19f834+_0x3bdd5a(0x1f9)+_0x5990de+')';case'IS\x20NULL':return _0x558cd2+'\x20IS\x20NULL';case _0x3bdd5a(0x25d):return _0x558cd2+_0x3bdd5a(0x23b);default:logger[_0x3bdd5a(0x25f)]({'event':'unknown_operator','operator':_0x23d6ac},_0x3bdd5a(0x26a));return _0x19f834+'\x20=\x20'+_0x5990de;}})[_0x1d0daa(0x1da)](_0x589888=>_0x589888!==null);if(_0xe3d03a[_0x1d0daa(0x1ee)](_0x1f686c['length'],0x0))return'';return _0x1f686c[_0x1d0daa(0x250)](_0x24c907);}['buildOrderByClause'](_0xe13f00){const _0x1d340e=a0_0x58662f,_0x2b24c9={'OGzMU':'invalid_order','vBpGP':'Skipping\x20invalid\x20order\x20clause','syZfP':function(_0x14dbd1,_0xbe8d05){return _0x14dbd1===_0xbe8d05;}};if(!_0xe13f00||_0xe13f00[_0x1d340e(0x1e1)]===0x0)return'';const _0xceec25=_0xe13f00[_0x1d340e(0x259)](_0x37afa3=>{const _0x5d865f=_0x1d340e,{column:_0x1ac809,direction:_0x172f24}=_0x37afa3;if(!_0x1ac809)return logger[_0x5d865f(0x25f)]({'event':_0x2b24c9['OGzMU'],'item':_0x37afa3},_0x2b24c9['vBpGP']),null;const _0x38c2a7=_0x172f24&&_0x172f24['toUpperCase']()===_0x5d865f(0x237)?_0x5d865f(0x237):_0x5d865f(0x1d6);return _0x1ac809+'\x20'+_0x38c2a7;})['filter'](_0x5dc6fc=>_0x5dc6fc!==null);if(_0x2b24c9[_0x1d340e(0x25a)](_0xceec25['length'],0x0))return'';return _0xceec25['join'](',\x20');}async[a0_0x58662f(0x1f5)](_0x175c4d,_0x3c2136,_0x2f813b){const _0x2ead34=a0_0x58662f,_0x4bfa7d={'vUAil':function(_0x44db55,_0x3921af){return _0x44db55===_0x3921af;},'MzdVP':function(_0x32a2df,_0x2e3ff8){return _0x32a2df===_0x2e3ff8;},'gvPwu':function(_0x2d1569,_0x4f88ff){return _0x2d1569===_0x4f88ff;},'bPlzl':_0x2ead34(0x242),'exHng':function(_0x154399,_0x5e20fc){return _0x154399>_0x5e20fc;},'zxfuR':_0x2ead34(0x22e),'MdgcW':_0x2ead34(0x1ef)},_0x5b8a5b=require('./excel-generator'),_0x151704=new _0x5b8a5b(),_0x1f66ec=_0x2f813b['filename']?_0x2f813b[_0x2ead34(0x223)]+'-'+_0x175c4d:_0x2ead34(0x209)+_0x175c4d,_0x253290=path['join'](this['exportDir'],_0x1f66ec+_0x2ead34(0x225));let _0x1f9577=_0x2f813b['columns'];const _0x544e2b=_0x1f9577&&_0x4bfa7d[_0x2ead34(0x1eb)](_0x1f9577['length'],0x1)&&(_0x4bfa7d['MzdVP'](_0x1f9577[0x0],'*')||_0x4bfa7d['gvPwu'](_0x1f9577[0x0]['toLowerCase'](),_0x4bfa7d[_0x2ead34(0x22c)]));if(_0x3c2136['length']>0x0){const _0x25db2b=Object['keys'](_0x3c2136[0x0]);if(_0x544e2b)_0x1f9577=_0x25db2b,logger[_0x2ead34(0x204)]({'event':_0x2ead34(0x1f3),'columns':_0x1f9577},'Using\x20all\x20'+_0x1f9577['length']+'\x20columns\x20(wildcard\x20requested)');else{if(_0x1f9577&&_0x4bfa7d[_0x2ead34(0x1df)](_0x1f9577['length'],0x0)){const _0x5b86a2=_0x1f9577[_0x2ead34(0x1da)](_0x3b1466=>_0x25db2b['includes'](_0x3b1466));_0x5b86a2['length']>0x0?(_0x1f9577=_0x5b86a2,logger[_0x2ead34(0x204)]({'event':_0x4bfa7d['zxfuR'],'requestedColumns':_0x2f813b[_0x2ead34(0x208)],'validColumns':_0x1f9577},'Using\x20'+_0x1f9577[_0x2ead34(0x1e1)]+_0x2ead34(0x216))):(_0x1f9577=_0x25db2b,logger['warn']({'event':_0x2ead34(0x238),'requestedColumns':_0x2f813b['columns'],'availableColumns':_0x25db2b},_0x2ead34(0x1e6)+_0x25db2b[_0x2ead34(0x1e1)]+_0x2ead34(0x1fe)));}else _0x1f9577=_0x25db2b,logger[_0x2ead34(0x204)]({'event':_0x4bfa7d['MdgcW'],'columns':_0x1f9577},_0x2ead34(0x220)+_0x1f9577['length']+'\x20columns\x20from\x20query\x20result');}}else logger[_0x2ead34(0x204)]({'event':_0x2ead34(0x240),'columns':_0x1f9577},_0x2ead34(0x220)+(_0x1f9577?.[_0x2ead34(0x1e1)]||0x0)+_0x2ead34(0x1d8));return await _0x151704['generate']({'data':_0x3c2136,'columns':_0x1f9577,'columnFormats':_0x2f813b[_0x2ead34(0x24c)]||null,'fieldLabels':_0x2f813b[_0x2ead34(0x200)]||null,'filePath':_0x253290,'onProgress':async _0x30c436=>{const _0x58794a=_0x2ead34;await redisHelper[_0x58794a(0x239)](_0x175c4d,{'progress':Math['round'](_0x30c436),'processed_rows':Math[_0x58794a(0x1de)](_0x30c436/0x64*_0x3c2136[_0x58794a(0x1e1)])});}}),_0x253290;}async[a0_0x58662f(0x21c)](_0x43b139){const _0xad1772=a0_0x58662f,_0x2d5835={'MhyDT':function(_0x18711c,_0x53ee39){return _0x18711c!==_0x53ee39;},'FmUZJ':_0xad1772(0x1dc),'XOMsg':_0xad1772(0x1e3)},_0x3d01ad=await redisHelper['getJob'](_0x43b139);if(!_0x3d01ad||_0x2d5835[_0xad1772(0x268)](_0x3d01ad[_0xad1772(0x1ed)],'completed'))return null;try{return await fs[_0xad1772(0x25c)](_0x3d01ad['file_path']),_0x3d01ad[_0xad1772(0x266)];}catch(_0x4faca9){return logError(_0x4faca9,{'event':_0x2d5835[_0xad1772(0x1d4)],'jobId':_0x43b139,'path':_0x3d01ad[_0xad1772(0x266)]},_0x2d5835[_0xad1772(0x1e4)]),null;}}async['cleanup'](){const _0x24a1b2=a0_0x58662f,_0x521737={'peQIf':_0x24a1b2(0x26d),'yuxMH':_0x24a1b2(0x245),'DRnvU':'export_file_delete_error','wWMlj':_0x24a1b2(0x232),'SgYVT':'Export\x20cleanup\x20completed'};logger[_0x24a1b2(0x204)]({'event':'export_cleanup_start'},'Starting\x20export\x20cleanup');const _0x1b3e76=await redisHelper['getAllJobs']();let _0x59a225=0x0;for(const _0x22ff3a of _0x1b3e76){const _0xffc676=new Date(_0x22ff3a[_0x24a1b2(0x24a)]),_0x418d27=new Date(),_0x2d6661=(_0x418d27-_0xffc676)/(0x3e8*0x3c*0x3c);if(_0x2d6661>0x1){if(_0x22ff3a['file_path'])try{await fs[_0x24a1b2(0x203)](_0x22ff3a[_0x24a1b2(0x266)]),logger['info']({'event':_0x521737['peQIf'],'path':_0x22ff3a[_0x24a1b2(0x266)]},_0x521737['yuxMH']);}catch(_0x3e2782){logger[_0x24a1b2(0x25f)]({'event':_0x521737[_0x24a1b2(0x1fc)],'path':_0x22ff3a[_0x24a1b2(0x266)],'error':_0x3e2782['message']},'Failed\x20to\x20delete\x20export\x20file');}await redisHelper[_0x24a1b2(0x1e9)](_0x22ff3a[_0x24a1b2(0x20e)]),_0x59a225++;}}return logger['info']({'event':_0x521737['wWMlj'],'deleted':_0x59a225},_0x521737[_0x24a1b2(0x1ec)]),_0x59a225;}}module[a0_0x58662f(0x213)]=new ExportService();
@@ -1 +1 @@
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;
1
+ const a0_0x12f3f9=a0_0xc56f;(function(_0x3b70ea,_0x5999e8){const _0x2ae900=a0_0xc56f,_0x1c6aeb=_0x3b70ea();while(!![]){try{const _0x2f7ba5=-parseInt(_0x2ae900(0x106))/0x1*(-parseInt(_0x2ae900(0x104))/0x2)+parseInt(_0x2ae900(0x134))/0x3+parseInt(_0x2ae900(0x10f))/0x4+-parseInt(_0x2ae900(0x11e))/0x5+-parseInt(_0x2ae900(0x13b))/0x6+-parseInt(_0x2ae900(0x10a))/0x7+parseInt(_0x2ae900(0x12a))/0x8;if(_0x2f7ba5===_0x5999e8)break;else _0x1c6aeb['push'](_0x1c6aeb['shift']());}catch(_0x380130){_0x1c6aeb['push'](_0x1c6aeb['shift']());}}}(a0_0x1246,0x2420d));const exportService=require(a0_0x12f3f9(0x136)),{logger,logError}=require(a0_0x12f3f9(0x11d)),path=require('path');class ExportHandler{static['registerRoutes'](_0x4fd187,_0x248dcf,_0x1ec4ae,_0x200896){const _0x4ac047=a0_0x12f3f9,_0x58e745={'NSVcF':function(_0x13fc98,_0x5d8130,_0x2d822a,_0x2c347f){return _0x13fc98(_0x5d8130,_0x2d822a,_0x2c347f);},'ODZdF':_0x4ac047(0x12c),'dVAzT':'Failed\x20to\x20trigger\x20export','mirRf':'export_status_error','LuNpS':function(_0x48142a,_0x293ed3,_0x29eaf4,_0x5c32dd){return _0x48142a(_0x293ed3,_0x29eaf4,_0x5c32dd);},'lYgSw':_0x4ac047(0x120)},_0x455c25=_0x4ac047(0x112)+_0x248dcf+'/'+_0x1ec4ae;_0x4fd187[_0x4ac047(0x111)](_0x455c25+_0x4ac047(0x124),async(_0x8e7c2a,_0x48c20e)=>{const _0x1b8db9=_0x4ac047;try{await this['handleExportTrigger'](_0x8e7c2a,_0x48c20e,_0x200896,_0x248dcf,_0x1ec4ae);}catch(_0x23fdb6){_0x58e745[_0x1b8db9(0x132)](logError,_0x23fdb6,{'event':_0x58e745['ODZdF']},_0x58e745[_0x1b8db9(0x129)]),_0x48c20e['status'](0x1f4)[_0x1b8db9(0x109)]({'success':![],'error':_0x23fdb6[_0x1b8db9(0x138)]});}}),_0x4fd187['get'](_0x455c25+_0x4ac047(0x128),async(_0x4cf552,_0x29e455)=>{const _0x5967fa=_0x4ac047;try{await this['handleExportStatus'](_0x4cf552,_0x29e455);}catch(_0x43186c){logError(_0x43186c,{'event':_0x58e745[_0x5967fa(0x122)]},_0x5967fa(0x127)),_0x29e455['status'](0x1f4)['json']({'success':![],'error':_0x43186c[_0x5967fa(0x138)]});}}),_0x4fd187['get'](_0x455c25+_0x4ac047(0x105),async(_0x11eb90,_0x2ff726)=>{const _0x2cd3af=_0x4ac047;try{await this['handleExportDownload'](_0x11eb90,_0x2ff726);}catch(_0x4a4671){_0x58e745['LuNpS'](logError,_0x4a4671,{'event':_0x58e745['lYgSw']},'Failed\x20to\x20download\x20export'),!_0x2ff726[_0x2cd3af(0x115)]&&_0x2ff726['status'](0x1f4)['json']({'success':![],'error':_0x4a4671['message']});}});}static async[a0_0x12f3f9(0x117)](_0x3e6e09,_0x1269b4,_0x3fab1e,_0x275c79,_0xe6464b){const _0x1347e8=a0_0x12f3f9,_0x2d8124={'vqEQR':'xlsx','TbBJv':'Invalid\x20sort_columns\x20structure.\x20Expected:\x20[{\x20column:\x20\x22col\x22,\x20direction:\x20\x22ASC|DESC\x22\x20}]','lSKtO':_0x1347e8(0x131),'vLRrh':function(_0x83837,_0x333091){return _0x83837||_0x333091;}},{format:_0x153077,filename:_0x3fa5cc,columns:_0x1b952e,where:_0xc1ea31,sort_columns:_0x3f63fe}=_0x3e6e09[_0x1347e8(0x13d)];if(_0x153077&&_0x153077!==_0x2d8124['vqEQR'])return _0x1269b4['status'](0x190)['json']({'success':![],'error':_0x1347e8(0x12b)});if(_0xc1ea31){if(!_0xc1ea31[_0x1347e8(0x10b)]||!_0xc1ea31[_0x1347e8(0x11c)]||!Array['isArray'](_0xc1ea31[_0x1347e8(0x11c)]))return _0x1269b4[_0x1347e8(0x12f)](0x190)['json']({'success':![],'error':_0x1347e8(0x118)});}if(_0x3f63fe){if(!Array[_0x1347e8(0x11f)](_0x3f63fe))return _0x1269b4[_0x1347e8(0x12f)](0x190)['json']({'success':![],'error':_0x2d8124[_0x1347e8(0x130)]});}const _0x553aa2=_0x3fab1e[_0x1347e8(0x133)]||[];if(_0xc1ea31&&Array['isArray'](_0xc1ea31['conditions']))for(const _0x14dadd of _0xc1ea31[_0x1347e8(0x11c)]){if(_0x14dadd['key']&&!_0x553aa2['includes'](_0x14dadd['key']))return _0x1269b4['status'](0x190)['json']({'success':![],'error':_0x2d8124['lSKtO'],'message':_0x1347e8(0x113)+_0x14dadd['key']+_0x1347e8(0x123),'validFields':_0x553aa2});}if(Array[_0x1347e8(0x11f)](_0x3f63fe))for(const _0x292d91 of _0x3f63fe){if(_0x292d91['column']&&!_0x553aa2['includes'](_0x292d91[_0x1347e8(0x12e)]))return _0x1269b4[_0x1347e8(0x12f)](0x190)['json']({'success':![],'error':_0x1347e8(0x10c),'message':_0x1347e8(0x125)+_0x292d91[_0x1347e8(0x12e)]+_0x1347e8(0x123),'validFields':_0x553aa2});}const _0x4ffa72=_0x3fab1e[_0x1347e8(0x116)][_0x1347e8(0x13e)]('.','-')+_0x1347e8(0x11b),_0x65e19c=await exportService['createJob']({'moduleName':_0x275c79,'endpointName':_0xe6464b,'tableName':_0x3fab1e['tableName'],'format':_0x2d8124[_0x1347e8(0x103)](_0x153077,'xlsx'),'filename':_0x3fa5cc||_0x4ffa72,'columns':_0x1b952e||_0x3fab1e[_0x1347e8(0x133)],'exportQuery':_0x3fab1e['exportQuery']||null,'columnFormats':_0x3fab1e['columnFormats']||null,'fieldLabels':_0x3fab1e['fieldLabels']||null,'where':_0xc1ea31||null,'sort_columns':_0x3f63fe||null});_0x1269b4[_0x1347e8(0x109)]({'success':!![],'data':_0x65e19c});}static async[a0_0x12f3f9(0x110)](_0x1e58fa,_0x1543e3){const _0x1a48b9=a0_0x12f3f9,_0x51332e={'yMOVY':'job_id\x20parameter\x20is\x20required'},{job_id:_0xf4dfeb}=_0x1e58fa['query'];if(!_0xf4dfeb)return _0x1543e3[_0x1a48b9(0x12f)](0x190)[_0x1a48b9(0x109)]({'success':![],'error':_0x51332e['yMOVY']});const _0x2ad253=await exportService[_0x1a48b9(0x114)](_0xf4dfeb);if(!_0x2ad253[_0x1a48b9(0x121)])return _0x1543e3['status'](0x194)['json'](_0x2ad253);_0x1543e3['json'](_0x2ad253);}static async['handleExportDownload'](_0x4ca79f,_0x5cce5e){const _0x40563d=a0_0x12f3f9,_0x2a5ced={'jzHTp':_0x40563d(0x120),'YRmYx':_0x40563d(0x11a),'SJSvh':'export_downloaded','BMhmx':_0x40563d(0x139)},{job_id:_0x3d9a24}=_0x4ca79f['query'];if(!_0x3d9a24)return _0x5cce5e[_0x40563d(0x12f)](0x190)[_0x40563d(0x109)]({'success':![],'error':_0x2a5ced['BMhmx']});const _0x6301d0=await exportService['getFilePath'](_0x3d9a24);if(!_0x6301d0)return _0x5cce5e[_0x40563d(0x12f)](0x194)['json']({'success':![],'error':_0x40563d(0x12d)});_0x5cce5e['download'](_0x6301d0,''+path['basename'](_0x6301d0),_0x19a2a8=>{const _0x11258b=_0x40563d;_0x19a2a8?(logError(_0x19a2a8,{'event':_0x2a5ced['jzHTp'],'jobId':_0x3d9a24},'Failed\x20to\x20download\x20export\x20file'),!_0x5cce5e['headersSent']&&_0x5cce5e['status'](0x1f4)['json']({'success':![],'error':_0x2a5ced['YRmYx']})):logger[_0x11258b(0x137)]({'event':_0x2a5ced[_0x11258b(0x107)],'jobId':_0x3d9a24},'Export\x20file\x20downloaded\x20successfully');});}static['registerCleanupRoute'](_0x646913){const _0x13e041=a0_0x12f3f9,_0x101bc3={'fxpSl':'Cleanup\x20completed','pWAAy':function(_0x17ba3c,_0x324c46,_0x49b52c,_0x5c8370){return _0x17ba3c(_0x324c46,_0x49b52c,_0x5c8370);},'gOCuQ':_0x13e041(0x126)};_0x646913[_0x13e041(0x10e)](_0x13e041(0x119),async(_0x31e031,_0x491da6)=>{const _0x3d35dc=_0x13e041;try{const _0x23a370=await exportService[_0x3d35dc(0x10d)]();_0x491da6['json']({'success':!![],'data':{'deleted':_0x23a370,'message':_0x101bc3[_0x3d35dc(0x13a)]}});}catch(_0x5db4eb){_0x101bc3[_0x3d35dc(0x108)](logError,_0x5db4eb,{'event':_0x3d35dc(0x135)},_0x101bc3['gOCuQ']),_0x491da6['status'](0x1f4)['json']({'success':![],'error':_0x5db4eb['message']});}});}}function a0_0x1246(){const _0x34880e=['mta1mdyWmNvIsuzvrq','Bg9NAwm','sw52ywXPzcbZB3j0ignVBhvTBG','y2XLyw51Ca','z2v0','ntmZnZm2tK5LwLff','AgfUzgXLrxHWB3j0u3rHDhvZ','Cg9ZDa','l2fWAs8','rMLLBgqGiG','z2v0sM9Iu3rHDhvZ','AgvHzgvYC1nLBNq','DgfIBgvoyw1L','AgfUzgXLrxHWB3j0vhjPz2DLCG','sw52ywXPzcb3AgvYzsbZDhj1y3r1CMuUiev4CgvJDgvKoIb7igXVz2LJoIaIqu5eFe9siIWGy29UzgL0Aw9UCZOGwY4UlL0GFq','l2fWAs9Hzg1PBI9LEhbVCNqTy2XLyw51Ca','rMfPBgvKihrVigrVD25SB2fKigzPBgu','lwv4Cg9YDa','y29UzgL0Aw9UCW','lI4VlI4VDxrPBhmVBg9Nz2vY','mte1ndeXmg5IB1j0Eq','AxnbCNjHEq','zxHWB3j0x2rVD25SB2fKx2vYCM9Y','C3vJy2vZCW','BwLYuMy','iIbPCYbUB3qGywXSB3DLza','l2v4Cg9YDa','q29SDw1Uici','q2XLyw51CcbMywLSzwq','rMfPBgvKihrVigDLDcbLEhbVCNqGC3rHDhvZ','l2v4Cg9YDc1ZDgf0Dxm','zfzbELq','mJm4nZK4neL6A1f1CG','t25SEsb4Bhn4igzVCM1HDcbPCYbZDxbWB3j0zwq','zxHWB3j0x3rYAwDNzxjFzxjYB3i','rMLSzsbUB3qGCMvHzhKGB3iGBM90igzVDw5KlIbdAgvJAYbQB2iGC3rHDhvZigzPCNn0lG','y29SDw1U','C3rHDhvZ','vgjcsNy','sw52ywXPzcb3AgvYzsbMAwvSza','tLnwy0y','y29SDw1UCW','mtC5mti3uuHpru1j','y2XLyw51Cf9LCNjVCG','lI4VlI4VC2vYDMLJzxmVzxHWB3j0lxnLCNzPy2u','Aw5MBW','BwvZC2fNzq','AM9Ix2LKihbHCMfTzxrLCIbPCYbYzxf1AxjLza','zNHWu2W','oteXote2Du9Qqw9n','zxHWB3j0CW','yM9KEq','CMvWBgfJzq','DKXsCMG','mJeWmJzIt3fqy2e','l2v4Cg9YDc1KB3DUBg9Hza','mtHMzvPmvhi','u0PtDMG','CfDbqxK','ANnVBG'];a0_0x1246=function(){return _0x34880e;};return a0_0x1246();}function a0_0xc56f(_0x3ee6f5,_0x34ebab){_0x3ee6f5=_0x3ee6f5-0x103;const _0x1246d0=a0_0x1246();let _0xc56f07=_0x1246d0[_0x3ee6f5];if(a0_0xc56f['NnOaZF']===undefined){var _0x15e232=function(_0x1a96b4){const _0x4bb854='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2dfdfe='',_0xce99bf='';for(let _0x45a0fd=0x0,_0x556a1c,_0x3e3380,_0x46ebca=0x0;_0x3e3380=_0x1a96b4['charAt'](_0x46ebca++);~_0x3e3380&&(_0x556a1c=_0x45a0fd%0x4?_0x556a1c*0x40+_0x3e3380:_0x3e3380,_0x45a0fd++%0x4)?_0x2dfdfe+=String['fromCharCode'](0xff&_0x556a1c>>(-0x2*_0x45a0fd&0x6)):0x0){_0x3e3380=_0x4bb854['indexOf'](_0x3e3380);}for(let _0x2bf354=0x0,_0x270f4e=_0x2dfdfe['length'];_0x2bf354<_0x270f4e;_0x2bf354++){_0xce99bf+='%'+('00'+_0x2dfdfe['charCodeAt'](_0x2bf354)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xce99bf);};a0_0xc56f['goCPTA']=_0x15e232,a0_0xc56f['hmDsMH']={},a0_0xc56f['NnOaZF']=!![];}const _0x1c574f=_0x1246d0[0x0],_0x3c235d=_0x3ee6f5+_0x1c574f,_0x51441c=a0_0xc56f['hmDsMH'][_0x3c235d];return!_0x51441c?(_0xc56f07=a0_0xc56f['goCPTA'](_0xc56f07),a0_0xc56f['hmDsMH'][_0x3c235d]=_0xc56f07):_0xc56f07=_0x51441c,_0xc56f07;}module[a0_0x12f3f9(0x13c)]=ExportHandler;