@restforgejs/platform 5.2.11 → 5.2.12

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 (169) 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/fast-track.js +147 -27
  5. package/generators/lib/templates/dashboard-catalog.js +1 -1
  6. package/generators/lib/templates/db-connection-env.js +1 -1
  7. package/generators/lib/templates/dbschema-catalog.js +1 -1
  8. package/generators/lib/templates/field-validation-catalog.js +1 -1
  9. package/generators/lib/templates/mysql-template.js +1 -1
  10. package/generators/lib/templates/oracle-template.js +1 -1
  11. package/generators/lib/templates/postgres-template.js +1 -1
  12. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  13. package/generators/lib/templates/sqlite-template.js +1 -1
  14. package/integrity-manifest.json +18 -18
  15. package/package.json +1 -1
  16. package/scripts/verify-integrity.js +1 -1
  17. package/server.js +1 -1
  18. package/src/components/handlers/adjust_handler.js +1 -1
  19. package/src/components/handlers/audit_handler.js +1 -1
  20. package/src/components/handlers/delete_handler.js +1 -1
  21. package/src/components/handlers/export_handler.js +1 -1
  22. package/src/components/handlers/import_handler.js +1 -1
  23. package/src/components/handlers/insert_handler.js +1 -1
  24. package/src/components/handlers/update_handler.js +1 -1
  25. package/src/components/handlers/upload_handler.js +1 -1
  26. package/src/components/handlers/workflow_handler.js +1 -1
  27. package/src/components/integrations/webhook.js +1 -1
  28. package/src/consumers/baseConsumer.js +1 -1
  29. package/src/consumers/declarativeMapper.js +1 -1
  30. package/src/consumers/handlers/apiHandler.js +1 -1
  31. package/src/consumers/handlers/consoleHandler.js +1 -1
  32. package/src/consumers/handlers/databaseHandler.js +1 -1
  33. package/src/consumers/handlers/index.js +1 -1
  34. package/src/consumers/handlers/kafkaHandler.js +1 -1
  35. package/src/consumers/index.js +1 -1
  36. package/src/consumers/messageTransformer.js +1 -1
  37. package/src/consumers/validator.js +1 -1
  38. package/src/core/db/dialect/base-dialect.js +1 -1
  39. package/src/core/db/dialect/index.js +1 -1
  40. package/src/core/db/dialect/mysql-dialect.js +1 -1
  41. package/src/core/db/dialect/oracle-dialect.js +1 -1
  42. package/src/core/db/dialect/postgres-dialect.js +1 -1
  43. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  44. package/src/core/db/flatten-helper.js +1 -1
  45. package/src/core/db/query-builder-error.js +1 -1
  46. package/src/core/db/query-builder.js +1 -1
  47. package/src/core/db/relation-helper.js +1 -1
  48. package/src/core/handlers/delete_handler.js +1 -1
  49. package/src/core/handlers/insert_handler.js +1 -1
  50. package/src/core/handlers/update_handler.js +1 -1
  51. package/src/core/models/base-model.js +1 -1
  52. package/src/core/utils/cache-manager.js +1 -1
  53. package/src/core/utils/component-engine.js +1 -1
  54. package/src/core/utils/context-builder.js +1 -1
  55. package/src/core/utils/datetime-formatter.js +1 -1
  56. package/src/core/utils/datetime-parser.js +1 -1
  57. package/src/core/utils/db.js +1 -1
  58. package/src/core/utils/logger.js +1 -1
  59. package/src/core/utils/payload-loader.js +1 -1
  60. package/src/core/utils/security-checks.js +1 -1
  61. package/src/middleware/body-options.js +1 -1
  62. package/src/middleware/cors.js +1 -1
  63. package/src/middleware/idempotency.js +1 -1
  64. package/src/middleware/rate-limiter.js +1 -1
  65. package/src/middleware/request-logger.js +1 -1
  66. package/src/middleware/security-headers.js +1 -1
  67. package/src/models/base-model-mysql.js +1 -1
  68. package/src/models/base-model-oracle.js +1 -1
  69. package/src/models/base-model-sqlite.js +1 -1
  70. package/src/models/base-model.js +1 -1
  71. package/src/pro/caching/redis-client.js +1 -1
  72. package/src/pro/caching/redis-helper.js +1 -1
  73. package/src/pro/consumers/baseConsumer.js +1 -1
  74. package/src/pro/consumers/declarativeMapper.js +1 -1
  75. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  76. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  77. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  78. package/src/pro/consumers/handlers/index.js +1 -1
  79. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  80. package/src/pro/consumers/index.js +1 -1
  81. package/src/pro/consumers/messageTransformer.js +1 -1
  82. package/src/pro/consumers/validator.js +1 -1
  83. package/src/pro/database/base-model-mysql.js +1 -1
  84. package/src/pro/database/base-model-oracle.js +1 -1
  85. package/src/pro/database/base-model-sqlite.js +1 -1
  86. package/src/pro/database/db-mysql.js +1 -1
  87. package/src/pro/database/db-oracle.js +1 -1
  88. package/src/pro/database/db-sqlite.js +1 -1
  89. package/src/pro/excel/excel-generator.js +1 -1
  90. package/src/pro/excel/excel-parser.js +1 -1
  91. package/src/pro/excel/export-service.js +1 -1
  92. package/src/pro/excel/export_handler.js +1 -1
  93. package/src/pro/excel/import-service.js +1 -1
  94. package/src/pro/excel/import-validator.js +1 -1
  95. package/src/pro/excel/import_handler.js +1 -1
  96. package/src/pro/excel/upsert-builder.js +1 -1
  97. package/src/pro/idgen/idgen-routes.js +1 -1
  98. package/src/pro/integrations/lookup-resolver.js +1 -1
  99. package/src/pro/integrations/upload-handler-v2.js +1 -1
  100. package/src/pro/integrations/upload-handler.js +1 -1
  101. package/src/pro/integrations/webhook.js +1 -1
  102. package/src/pro/locking/lock-routes.js +1 -1
  103. package/src/pro/locking/resource-lock-manager.js +1 -1
  104. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  105. package/src/pro/messaging/kafkaService.js +1 -1
  106. package/src/pro/messaging/messagehubService.js +1 -1
  107. package/src/pro/messaging/rabbitmqService.js +1 -1
  108. package/src/pro/scheduler/job-manager.js +1 -1
  109. package/src/pro/scheduler/job-routes.js +1 -1
  110. package/src/pro/scheduler/job-validator.js +1 -1
  111. package/src/pro/storage/base-storage-provider.js +1 -1
  112. package/src/pro/storage/file-metadata-helper.js +1 -1
  113. package/src/pro/storage/index.js +1 -1
  114. package/src/pro/storage/local-storage-provider.js +1 -1
  115. package/src/pro/storage/s3-storage-provider.js +1 -1
  116. package/src/pro/storage/upload-cleanup-job.js +1 -1
  117. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  118. package/src/pro/storage/upload-pending-tracker.js +1 -1
  119. package/src/pro/websocket/broadcast-helper.js +1 -1
  120. package/src/pro/websocket/index.js +1 -1
  121. package/src/pro/websocket/livesync-server.js +1 -1
  122. package/src/pro/websocket/ws-broadcaster.js +1 -1
  123. package/src/services/export-service.js +1 -1
  124. package/src/services/import-service.js +1 -1
  125. package/src/services/kafkaConsumerService.js +1 -1
  126. package/src/services/kafkaService.js +1 -1
  127. package/src/services/messagehubService.js +1 -1
  128. package/src/services/rabbitmqService.js +1 -1
  129. package/src/utils/cache-invalidation-registry.js +1 -1
  130. package/src/utils/cache-manager.js +1 -1
  131. package/src/utils/component-engine.js +1 -1
  132. package/src/utils/config-extractor.js +1 -1
  133. package/src/utils/consumerLogger.js +1 -1
  134. package/src/utils/context-builder.js +1 -1
  135. package/src/utils/dashboard-helpers.js +1 -1
  136. package/src/utils/dateHelper.js +1 -1
  137. package/src/utils/datetime-formatter.js +1 -1
  138. package/src/utils/datetime-parser.js +1 -1
  139. package/src/utils/db-bootstrap.js +1 -1
  140. package/src/utils/db-mysql.js +1 -1
  141. package/src/utils/db-oracle.js +1 -1
  142. package/src/utils/db-sqlite.js +1 -1
  143. package/src/utils/db.js +1 -1
  144. package/src/utils/demo-generator.js +1 -1
  145. package/src/utils/excel-generator.js +1 -1
  146. package/src/utils/excel-parser.js +1 -1
  147. package/src/utils/file-watcher.js +1 -1
  148. package/src/utils/id-generator.js +1 -1
  149. package/src/utils/idempotency-manager.js +1 -1
  150. package/src/utils/import-validator.js +1 -1
  151. package/src/utils/license-client.js +1 -1
  152. package/src/utils/lock-manager.js +1 -1
  153. package/src/utils/logger.js +1 -1
  154. package/src/utils/lookup-resolver.js +1 -1
  155. package/src/utils/payload-loader.js +1 -1
  156. package/src/utils/processor-response.js +1 -1
  157. package/src/utils/rabbitmq.js +1 -1
  158. package/src/utils/redis-client.js +1 -1
  159. package/src/utils/redis-helper.js +1 -1
  160. package/src/utils/request-scope.js +1 -1
  161. package/src/utils/security-checks.js +1 -1
  162. package/src/utils/service-resolver.js +1 -1
  163. package/src/utils/shutdown-coordinator.js +1 -1
  164. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  165. package/src/utils/sql-table-extractor.js +1 -1
  166. package/src/utils/trusted-keys.js +1 -1
  167. package/src/utils/upload-handler.js +1 -1
  168. package/src/utils/upsert-builder.js +1 -1
  169. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x7ff064=a0_0x3cae;(function(_0x3bced8,_0x1a92a9){const _0x1eb6f1=a0_0x3cae,_0x5badbf=_0x3bced8();while(!![]){try{const _0x5563e7=-parseInt(_0x1eb6f1(0x18e))/0x1+parseInt(_0x1eb6f1(0x173))/0x2+parseInt(_0x1eb6f1(0x170))/0x3*(parseInt(_0x1eb6f1(0x17f))/0x4)+-parseInt(_0x1eb6f1(0x182))/0x5*(parseInt(_0x1eb6f1(0x17d))/0x6)+-parseInt(_0x1eb6f1(0x188))/0x7+-parseInt(_0x1eb6f1(0x18d))/0x8*(parseInt(_0x1eb6f1(0x18f))/0x9)+-parseInt(_0x1eb6f1(0x18c))/0xa*(-parseInt(_0x1eb6f1(0x175))/0xb);if(_0x5563e7===_0x1a92a9)break;else _0x5badbf['push'](_0x5badbf['shift']());}catch(_0x31aab0){_0x5badbf['push'](_0x5badbf['shift']());}}}(a0_0x2358,0xef1ef));class DateTimeFormatter{static['format'](_0x587a55,_0x29fd13,_0x5a7b95){const _0x466e4d=a0_0x3cae,_0x60c473={'iMznf':function(_0x177313,_0x170cde){return _0x177313===_0x170cde;},'NZbCf':_0x466e4d(0x177),'vNnsQ':function(_0x2faf65,_0x5f220c){return _0x2faf65===_0x5f220c;}};if(!_0x587a55)return null;try{if(_0x60c473[_0x466e4d(0x18b)](_0x5a7b95,_0x60c473[_0x466e4d(0x179)]))return this[_0x466e4d(0x185)](_0x587a55,_0x29fd13);else{if(_0x5a7b95==='timestamp')return this[_0x466e4d(0x180)](_0x587a55,_0x29fd13);else{if(_0x60c473[_0x466e4d(0x176)](_0x5a7b95,_0x466e4d(0x181)))return this['formatTime'](_0x587a55,_0x29fd13);}}return _0x587a55;}catch(_0x32afb9){return console[_0x466e4d(0x184)]('Error\x20formatting\x20datetime:\x20'+_0x32afb9['message']),_0x587a55;}}static[a0_0x7ff064(0x185)](_0x380e49,_0x2d6f46){const _0x559758=a0_0x7ff064,_0xc14820={'LemZH':function(_0x217491,_0x1ccf1){return _0x217491(_0x1ccf1);},'RLfkM':function(_0x520bd4,_0x1d4756){return _0x520bd4(_0x1d4756);},'ocxKl':function(_0x37212b,_0x11aa0d){return _0x37212b+_0x11aa0d;}},_0x144266=new Date(_0x380e49);if(_0xc14820[_0x559758(0x17a)](isNaN,_0x144266[_0x559758(0x172)]()))return console[_0x559758(0x18a)]('Invalid\x20date\x20value:\x20'+_0x380e49),_0x380e49;const _0x348fd4=_0xc14820['RLfkM'](String,_0x144266['getDate']())[_0x559758(0x190)](0x2,'0'),_0x75bb05=_0xc14820[_0x559758(0x17a)](String,_0xc14820[_0x559758(0x183)](_0x144266['getMonth'](),0x1))['padStart'](0x2,'0'),_0x592570=_0x144266['getFullYear'](),_0x1d48d2={'dd/MM/yyyy':_0x348fd4+'/'+_0x75bb05+'/'+_0x592570,'dd-MM-yyyy':_0x348fd4+'-'+_0x75bb05+'-'+_0x592570,'MM/dd/yyyy':_0x75bb05+'/'+_0x348fd4+'/'+_0x592570,'yyyy/MM/dd':_0x592570+'/'+_0x75bb05+'/'+_0x348fd4,'yyyy-MM-dd':_0x592570+'-'+_0x75bb05+'-'+_0x348fd4};return _0x1d48d2[_0x2d6f46]||_0x592570+'-'+_0x75bb05+'-'+_0x348fd4;}static['formatTimestamp'](_0x232bbd,_0x4f5e69){const _0x1a54d6=a0_0x7ff064,_0x11f207={'sEgfE':function(_0x59b42a,_0x5e0468){return _0x59b42a(_0x5e0468);},'EfdEM':function(_0x292f35,_0x16a423){return _0x292f35(_0x16a423);},'PbbPk':function(_0x3fe79e,_0xd561e7){return _0x3fe79e+_0xd561e7;},'jkhkw':function(_0x580953,_0x621396){return _0x580953(_0x621396);}},_0x1bb62d=new Date(_0x232bbd);if(isNaN(_0x1bb62d['getTime']()))return console[_0x1a54d6(0x18a)](_0x1a54d6(0x186)+_0x232bbd),_0x232bbd;const _0x52d923=_0x11f207[_0x1a54d6(0x17b)](String,_0x1bb62d[_0x1a54d6(0x171)]())['padStart'](0x2,'0'),_0x2c56c2=_0x11f207['EfdEM'](String,_0x11f207['PbbPk'](_0x1bb62d['getMonth'](),0x1))['padStart'](0x2,'0'),_0x2837a6=_0x1bb62d['getFullYear'](),_0x409f2c=_0x11f207[_0x1a54d6(0x17c)](String,_0x1bb62d['getHours']())['padStart'](0x2,'0'),_0x174aae=_0x11f207[_0x1a54d6(0x189)](String,_0x1bb62d['getMinutes']())[_0x1a54d6(0x190)](0x2,'0'),_0x4f23e4=_0x11f207[_0x1a54d6(0x17b)](String,_0x1bb62d[_0x1a54d6(0x178)]())['padStart'](0x2,'0'),_0x5b3331=_0x4f5e69[_0x1a54d6(0x17e)]('\x20');if(_0x5b3331[_0x1a54d6(0x174)]!==0x2)return _0x2837a6+'-'+_0x2c56c2+'-'+_0x52d923+'\x20'+_0x409f2c+':'+_0x174aae+':'+_0x4f23e4;const _0x52d4c9=_0x5b3331[0x0],_0x379b0b=_0x5b3331[0x1],_0x30d62c={'dd/MM/yyyy':_0x52d923+'/'+_0x2c56c2+'/'+_0x2837a6,'dd-MM-yyyy':_0x52d923+'-'+_0x2c56c2+'-'+_0x2837a6,'MM/dd/yyyy':_0x2c56c2+'/'+_0x52d923+'/'+_0x2837a6,'yyyy/MM/dd':_0x2837a6+'/'+_0x2c56c2+'/'+_0x52d923,'yyyy-MM-dd':_0x2837a6+'-'+_0x2c56c2+'-'+_0x52d923},_0x57ce52={'HH:mm':_0x409f2c+':'+_0x174aae,'HH:mm:ss':_0x409f2c+':'+_0x174aae+':'+_0x4f23e4,'hh:mm':_0x409f2c+':'+_0x174aae},_0xd96c58=_0x30d62c[_0x52d4c9]||_0x2837a6+'-'+_0x2c56c2+'-'+_0x52d923,_0x2c1003=_0x57ce52[_0x379b0b]||_0x409f2c+':'+_0x174aae+':'+_0x4f23e4;return _0xd96c58+'\x20'+_0x2c1003;}static[a0_0x7ff064(0x187)](_0xd26d14,_0x22de50){const _0x49a9ed=a0_0x7ff064;if(typeof _0xd26d14!=='string')return _0xd26d14;const _0x4e4696=_0xd26d14['split'](':');if(_0x4e4696[_0x49a9ed(0x174)]<0x2)return console['warn']('Invalid\x20time\x20value:\x20'+_0xd26d14),_0xd26d14;const _0x44294c=_0x4e4696[0x0][_0x49a9ed(0x190)](0x2,'0'),_0xd7c00d=_0x4e4696[0x1]['padStart'](0x2,'0'),_0x5e5181=_0x4e4696[0x2]?_0x4e4696[0x2]['split']('.')[0x0][_0x49a9ed(0x190)](0x2,'0'):'00',_0x12edf8={'HH:mm':_0x44294c+':'+_0xd7c00d,'HH:mm:ss':_0x44294c+':'+_0xd7c00d+':'+_0x5e5181,'hh:mm':_0x44294c+':'+_0xd7c00d};return _0x12edf8[_0x22de50]||_0x44294c+':'+_0xd7c00d+':'+_0x5e5181;}}function a0_0x2358(){const _0x20da16=['mZC5ody2mhH4AgPLCq','nJy4meT4wufisG','mtq5mdCXn0vqs3fVvq','mtmYmZLosLbsBLm','CgfKu3rHCNq','ota1n3z2vhrRsW','z2v0rgf0zq','z2v0vgLTzq','mtG0nJyXmKnJtvLKva','BgvUz3rO','mtiXyvvYrurb','DK5UC1e','zgf0zq','z2v0u2vJB25KCW','tLPIq2y','tgvTwKG','C0vNzKu','AMTOA3C','mJaWmZK4mKPnC3vNtW','C3bSAxq','mtmYyxfrrK9g','zM9YBwf0vgLTzxn0yw1W','DgLTzq','mtb2ywj0Axu','B2n4s2W','zxjYB3i','zM9YBwf0rgf0zq','sw52ywXPzcb0Aw1LC3rHBxaGDMfSDwu6ia','zM9YBwf0vgLTzq','ntG0nte2ogrPAwPwBa','rwzKru0','D2fYBG','Au16BMy'];a0_0x2358=function(){return _0x20da16;};return a0_0x2358();}function a0_0x3cae(_0x56b127,_0x5e3555){_0x56b127=_0x56b127-0x170;const _0x23580b=a0_0x2358();let _0x3cae0d=_0x23580b[_0x56b127];if(a0_0x3cae['poRWlV']===undefined){var _0x17c0b8=function(_0x368bf1){const _0x2389d1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1acc12='',_0x2544f1='';for(let _0x4290f2=0x0,_0x3394ed,_0xac8921,_0x97347=0x0;_0xac8921=_0x368bf1['charAt'](_0x97347++);~_0xac8921&&(_0x3394ed=_0x4290f2%0x4?_0x3394ed*0x40+_0xac8921:_0xac8921,_0x4290f2++%0x4)?_0x1acc12+=String['fromCharCode'](0xff&_0x3394ed>>(-0x2*_0x4290f2&0x6)):0x0){_0xac8921=_0x2389d1['indexOf'](_0xac8921);}for(let _0x51a903=0x0,_0x413786=_0x1acc12['length'];_0x51a903<_0x413786;_0x51a903++){_0x2544f1+='%'+('00'+_0x1acc12['charCodeAt'](_0x51a903)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2544f1);};a0_0x3cae['IiCKws']=_0x17c0b8,a0_0x3cae['MjuYpY']={},a0_0x3cae['poRWlV']=!![];}const _0x4d4f89=_0x23580b[0x0],_0x4580a9=_0x56b127+_0x4d4f89,_0x23c08b=a0_0x3cae['MjuYpY'][_0x4580a9];return!_0x23c08b?(_0x3cae0d=a0_0x3cae['IiCKws'](_0x3cae0d),a0_0x3cae['MjuYpY'][_0x4580a9]=_0x3cae0d):_0x3cae0d=_0x23c08b,_0x3cae0d;}module['exports']=DateTimeFormatter;
1
+ const a0_0x31e7e9=a0_0x4689;function a0_0x4689(_0x20c430,_0x212cde){_0x20c430=_0x20c430-0xbe;const _0x29d0f6=a0_0x29d0();let _0x4689e2=_0x29d0f6[_0x20c430];if(a0_0x4689['zrwdgE']===undefined){var _0x497688=function(_0x48da26){const _0x2656e4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc17624='',_0x537a8f='';for(let _0x1381c0=0x0,_0x57fb97,_0x4f0f93,_0x33855d=0x0;_0x4f0f93=_0x48da26['charAt'](_0x33855d++);~_0x4f0f93&&(_0x57fb97=_0x1381c0%0x4?_0x57fb97*0x40+_0x4f0f93:_0x4f0f93,_0x1381c0++%0x4)?_0xc17624+=String['fromCharCode'](0xff&_0x57fb97>>(-0x2*_0x1381c0&0x6)):0x0){_0x4f0f93=_0x2656e4['indexOf'](_0x4f0f93);}for(let _0x5049d3=0x0,_0x442052=_0xc17624['length'];_0x5049d3<_0x442052;_0x5049d3++){_0x537a8f+='%'+('00'+_0xc17624['charCodeAt'](_0x5049d3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x537a8f);};a0_0x4689['yeCIQO']=_0x497688,a0_0x4689['XYnIQn']={},a0_0x4689['zrwdgE']=!![];}const _0x4a695d=_0x29d0f6[0x0],_0x3b4acf=_0x20c430+_0x4a695d,_0x13c619=a0_0x4689['XYnIQn'][_0x3b4acf];return!_0x13c619?(_0x4689e2=a0_0x4689['yeCIQO'](_0x4689e2),a0_0x4689['XYnIQn'][_0x3b4acf]=_0x4689e2):_0x4689e2=_0x13c619,_0x4689e2;}function a0_0x29d0(){const _0x1500c5=['vg1Ny0q','z2v0tw9UDgG','z2v0rgf0zq','mty2mZbJyNz4Aeu','mJrJr09Lr3u','mtCWotq2zen2C0LX','mtnrrNDuv2W','D2fYBG','z2v0rNvSBfLLyxi','mZuWntG0tKfMtfnd','ntiZodu2CKjhDLLJ','z2v0vgLTzq','z2v0u2vJB25KCW','swr5zuS','ww5mDey','BgvUz3rO','mLLkyMjRrW','zxHWB3j0CW','rhbgze4','vuXVyK8','C3bSAxq','mtbKAMffswu','sw52ywXPzcbKyxrLihzHBhvLoIa','zMT6ufC','CgfKu3rHCNq','mte4mte4nZzkt3rvuvy','ntmXm2HJwfnnzq','n0nmsg1pqG','zM9YBwf0vgLTzxn0yw1W','mteZmtKWnJzUufz0DKu','DgLTzq','mZy2nZi0mNPiq1HYwa'];a0_0x29d0=function(){return _0x1500c5;};return a0_0x29d0();}(function(_0x114f31,_0xf2937d){const _0x32a55e=a0_0x4689,_0x479f7a=_0x114f31();while(!![]){try{const _0x96d445=-parseInt(_0x32a55e(0xc2))/0x1*(-parseInt(_0x32a55e(0xc8))/0x2)+parseInt(_0x32a55e(0xdd))/0x3*(parseInt(_0x32a55e(0xdc))/0x4)+-parseInt(_0x32a55e(0xcd))/0x5*(parseInt(_0x32a55e(0xd7))/0x6)+-parseInt(_0x32a55e(0xd3))/0x7*(parseInt(_0x32a55e(0xc1))/0x8)+parseInt(_0x32a55e(0xd5))/0x9+parseInt(_0x32a55e(0xdb))/0xa*(parseInt(_0x32a55e(0xd2))/0xb)+parseInt(_0x32a55e(0xd1))/0xc*(-parseInt(_0x32a55e(0xbe))/0xd);if(_0x96d445===_0xf2937d)break;else _0x479f7a['push'](_0x479f7a['shift']());}catch(_0x45362e){_0x479f7a['push'](_0x479f7a['shift']());}}}(a0_0x29d0,0xa50fb));class DateTimeFormatter{static['format'](_0x45c00c,_0x4b739e,_0xb75ca8){const _0x2195d7=a0_0x4689,_0x17207e={'YnLtF':function(_0x2cc4f3,_0x3a425f){return _0x2cc4f3===_0x3a425f;},'ULobO':'date','StKSC':_0x2195d7(0xd6)};if(!_0x45c00c)return null;try{if(_0x17207e[_0x2195d7(0xc6)](_0xb75ca8,_0x17207e[_0x2195d7(0xcb)]))return this['formatDate'](_0x45c00c,_0x4b739e);else{if(_0xb75ca8==='timestamp')return this[_0x2195d7(0xd4)](_0x45c00c,_0x4b739e);else{if(_0xb75ca8===_0x17207e['StKSC'])return this['formatTime'](_0x45c00c,_0x4b739e);}}return _0x45c00c;}catch(_0x4c2c9c){return console['error']('Error\x20formatting\x20datetime:\x20'+_0x4c2c9c['message']),_0x45c00c;}}static['formatDate'](_0x4ef4ea,_0x1bb4b1){const _0x18fa19=a0_0x4689,_0x247280={'OXSAI':function(_0x2ddef1,_0x5ce3c0){return _0x2ddef1(_0x5ce3c0);},'uBDxC':function(_0x1c1198,_0xbae8d0){return _0x1c1198+_0xbae8d0;}},_0x386984=new Date(_0x4ef4ea);if(isNaN(_0x386984[_0x18fa19(0xc3)]()))return console[_0x18fa19(0xbf)](_0x18fa19(0xce)+_0x4ef4ea),_0x4ef4ea;const _0xf82502=_0x247280['OXSAI'](String,_0x386984['getDate']())[_0x18fa19(0xd0)](0x2,'0'),_0x2a43f3=String(_0x247280['uBDxC'](_0x386984[_0x18fa19(0xd9)](),0x1))['padStart'](0x2,'0'),_0x3b1ca5=_0x386984[_0x18fa19(0xc0)](),_0x25db50={'dd/MM/yyyy':_0xf82502+'/'+_0x2a43f3+'/'+_0x3b1ca5,'dd-MM-yyyy':_0xf82502+'-'+_0x2a43f3+'-'+_0x3b1ca5,'MM/dd/yyyy':_0x2a43f3+'/'+_0xf82502+'/'+_0x3b1ca5,'yyyy/MM/dd':_0x3b1ca5+'/'+_0x2a43f3+'/'+_0xf82502,'yyyy-MM-dd':_0x3b1ca5+'-'+_0x2a43f3+'-'+_0xf82502};return _0x25db50[_0x1bb4b1]||_0x3b1ca5+'-'+_0x2a43f3+'-'+_0xf82502;}static['formatTimestamp'](_0x186bce,_0x5640f1){const _0x6c3127=a0_0x4689,_0x4b6d93={'DpFdN':function(_0x44ada3,_0x17fa76){return _0x44ada3(_0x17fa76);},'fkzPW':function(_0x2afa2c,_0x118a43){return _0x2afa2c+_0x118a43;},'IdyeK':function(_0x29b17c,_0x203b8b){return _0x29b17c(_0x203b8b);},'TmgcD':function(_0x5c1f2f,_0x4a1ec3){return _0x5c1f2f!==_0x4a1ec3;}},_0x2384f4=new Date(_0x186bce);if(_0x4b6d93['DpFdN'](isNaN,_0x2384f4['getTime']()))return console['warn']('Invalid\x20timestamp\x20value:\x20'+_0x186bce),_0x186bce;const _0x48cd63=String(_0x2384f4[_0x6c3127(0xda)]())[_0x6c3127(0xd0)](0x2,'0'),_0x37bd51=_0x4b6d93[_0x6c3127(0xca)](String,_0x4b6d93[_0x6c3127(0xcf)](_0x2384f4['getMonth'](),0x1))[_0x6c3127(0xd0)](0x2,'0'),_0x168f7=_0x2384f4[_0x6c3127(0xc0)](),_0x27f0b1=_0x4b6d93[_0x6c3127(0xc5)](String,_0x2384f4['getHours']())['padStart'](0x2,'0'),_0x2002dc=_0x4b6d93[_0x6c3127(0xc5)](String,_0x2384f4['getMinutes']())[_0x6c3127(0xd0)](0x2,'0'),_0x445e28=_0x4b6d93[_0x6c3127(0xc5)](String,_0x2384f4[_0x6c3127(0xc4)]())['padStart'](0x2,'0'),_0x66f57a=_0x5640f1['split']('\x20');if(_0x4b6d93[_0x6c3127(0xd8)](_0x66f57a[_0x6c3127(0xc7)],0x2))return _0x168f7+'-'+_0x37bd51+'-'+_0x48cd63+'\x20'+_0x27f0b1+':'+_0x2002dc+':'+_0x445e28;const _0x36aab5=_0x66f57a[0x0],_0x2af881=_0x66f57a[0x1],_0x384143={'dd/MM/yyyy':_0x48cd63+'/'+_0x37bd51+'/'+_0x168f7,'dd-MM-yyyy':_0x48cd63+'-'+_0x37bd51+'-'+_0x168f7,'MM/dd/yyyy':_0x37bd51+'/'+_0x48cd63+'/'+_0x168f7,'yyyy/MM/dd':_0x168f7+'/'+_0x37bd51+'/'+_0x48cd63,'yyyy-MM-dd':_0x168f7+'-'+_0x37bd51+'-'+_0x48cd63},_0xebe597={'HH:mm':_0x27f0b1+':'+_0x2002dc,'HH:mm:ss':_0x27f0b1+':'+_0x2002dc+':'+_0x445e28,'hh:mm':_0x27f0b1+':'+_0x2002dc},_0x31f5d5=_0x384143[_0x36aab5]||_0x168f7+'-'+_0x37bd51+'-'+_0x48cd63,_0x42a226=_0xebe597[_0x2af881]||_0x27f0b1+':'+_0x2002dc+':'+_0x445e28;return _0x31f5d5+'\x20'+_0x42a226;}static['formatTime'](_0x69621f,_0x2cf704){const _0x68169d=a0_0x4689,_0x50d33e={'MsxjA':function(_0x30e41d,_0x1f8a6f){return _0x30e41d<_0x1f8a6f;}};if(typeof _0x69621f!=='string')return _0x69621f;const _0x4f46d4=_0x69621f[_0x68169d(0xcc)](':');if(_0x50d33e['MsxjA'](_0x4f46d4[_0x68169d(0xc7)],0x2))return console['warn']('Invalid\x20time\x20value:\x20'+_0x69621f),_0x69621f;const _0x21d4f9=_0x4f46d4[0x0]['padStart'](0x2,'0'),_0x1a5a88=_0x4f46d4[0x1]['padStart'](0x2,'0'),_0x265fca=_0x4f46d4[0x2]?_0x4f46d4[0x2]['split']('.')[0x0][_0x68169d(0xd0)](0x2,'0'):'00',_0x393088={'HH:mm':_0x21d4f9+':'+_0x1a5a88,'HH:mm:ss':_0x21d4f9+':'+_0x1a5a88+':'+_0x265fca,'hh:mm':_0x21d4f9+':'+_0x1a5a88};return _0x393088[_0x2cf704]||_0x21d4f9+':'+_0x1a5a88+':'+_0x265fca;}}module[a0_0x31e7e9(0xc9)]=DateTimeFormatter;
@@ -1 +1 @@
1
- const a0_0x47ea90=a0_0x205b;function a0_0x1d42(){const _0x2178f0=['C3bSAxq','BgvUz3rO','zgf5','mtrVrhfxuNe','Bwf0y2G','CgfYC2vuAw1LC3rHBxa','CK1eEvG','BgDWrfm','zxHWB3j0CW','rxjYB3iGCgfYC2LUzYbKyxrLDgLTztOG','zLnsAKK','CgfYC2vuAw1L','mtaZmdC0mefsvuL6sG','sKLJr2K','ExL5Es1nts1KzcbisdPTBtPZCW','t1bRD0m','B3jKzxi','mtKZndGYtuLKwMrL','mJK0ntK3AefJtMfo','oJaW','nZq0oteYAfPJENfS','DxPXzgG','D2fYBG','zfv4De0','ntyXnJHvu3HpB2e','ExL5Es1nts1Kza','y3PcCwK','CgfYC2u','yKfwALC','BwvZC2fNzq','CgfYC2veyxrL','EwvHCG','DgLTzq','ndy2nZu3nNLLB2jeCW','zgf0zq','otiXmdbuvuzftxu','zxjYB3i','seG6Bw0','Bw9UDgG','yMjqqLi','ovLusuL3DW'];a0_0x1d42=function(){return _0x2178f0;};return a0_0x1d42();}function a0_0x205b(_0x29d1ea,_0x2cd119){_0x29d1ea=_0x29d1ea-0xd1;const _0x1d4230=a0_0x1d42();let _0x205be2=_0x1d4230[_0x29d1ea];if(a0_0x205b['qZUjiM']===undefined){var _0x589fe1=function(_0x3981e3){const _0x2c87e2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x54c1ce='',_0x40ea09='';for(let _0xa15edc=0x0,_0x132b16,_0x2e0b11,_0x2f9977=0x0;_0x2e0b11=_0x3981e3['charAt'](_0x2f9977++);~_0x2e0b11&&(_0x132b16=_0xa15edc%0x4?_0x132b16*0x40+_0x2e0b11:_0x2e0b11,_0xa15edc++%0x4)?_0x54c1ce+=String['fromCharCode'](0xff&_0x132b16>>(-0x2*_0xa15edc&0x6)):0x0){_0x2e0b11=_0x2c87e2['indexOf'](_0x2e0b11);}for(let _0x1d8079=0x0,_0x240a5c=_0x54c1ce['length'];_0x1d8079<_0x240a5c;_0x1d8079++){_0x40ea09+='%'+('00'+_0x54c1ce['charCodeAt'](_0x1d8079)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x40ea09);};a0_0x205b['yYVIFs']=_0x589fe1,a0_0x205b['ZFIXtf']={},a0_0x205b['qZUjiM']=!![];}const _0x2783df=_0x1d4230[0x0],_0x3860be=_0x29d1ea+_0x2783df,_0x850f4c=a0_0x205b['ZFIXtf'][_0x3860be];return!_0x850f4c?(_0x205be2=a0_0x205b['yYVIFs'](_0x205be2),a0_0x205b['ZFIXtf'][_0x3860be]=_0x205be2):_0x205be2=_0x850f4c,_0x205be2;}(function(_0x1e3f2c,_0x3fe669){const _0x3e66d8=a0_0x205b,_0x39a337=_0x1e3f2c();while(!![]){try{const _0x5787fb=parseInt(_0x3e66d8(0xf4))/0x1+parseInt(_0x3e66d8(0xd6))/0x2+-parseInt(_0x3e66d8(0xee))/0x3+-parseInt(_0x3e66d8(0xf0))/0x4+-parseInt(_0x3e66d8(0xe8))/0x5+parseInt(_0x3e66d8(0xed))/0x6*(-parseInt(_0x3e66d8(0xdf))/0x7)+-parseInt(_0x3e66d8(0xd4))/0x8*(-parseInt(_0x3e66d8(0xdb))/0x9);if(_0x5787fb===_0x3fe669)break;else _0x39a337['push'](_0x39a337['shift']());}catch(_0x5cc376){_0x39a337['push'](_0x39a337['shift']());}}}(a0_0x1d42,0x1fe24));class DateTimeParser{static[a0_0x47ea90(0xf7)](_0x5bd4a9,_0x3848dc,_0x24b026){const _0x464437=a0_0x47ea90,_0x1d1675={'fSRjI':_0x464437(0xd5),'bbPBR':function(_0x1cde56,_0x54a2a4){return _0x1cde56===_0x54a2a4;},'LCuGC':_0x464437(0xd3)};if(!_0x5bd4a9||_0x5bd4a9==='')return null;try{if(_0x24b026===_0x1d1675[_0x464437(0xe6)])return this['parseDate'](_0x5bd4a9,_0x3848dc);else{if(_0x1d1675[_0x464437(0xda)](_0x24b026,'timestamp'))return this['parseTimestamp'](_0x5bd4a9,_0x3848dc);else{if(_0x24b026===_0x1d1675['LCuGC'])return this['parseTime'](_0x5bd4a9,_0x3848dc);}}return _0x5bd4a9;}catch(_0x132aa4){return console[_0x464437(0xd7)](_0x464437(0xe5)+_0x132aa4[_0x464437(0xf9)]),null;}}static['parseDate'](_0x11dbe1,_0x6ddfc7){const _0x1635c9=a0_0x47ea90,_0x2971b8={'bAVjW':function(_0x5a4d2a,_0x36bf74){return _0x5a4d2a+_0x36bf74;},'iaFkG':function(_0x348871,_0x5da295){return _0x348871===_0x5da295;},'lgpDS':_0x1635c9(0xde),'dUxtM':_0x1635c9(0xd9),'JIcGi':_0x1635c9(0xd2)};if(!_0x6ddfc7||_0x2971b8['iaFkG'](_0x6ddfc7,_0x1635c9(0xf5)))return _0x11dbe1;const _0x4e921a={'dd/MM/yyyy':{'pattern':/^(\d{2})\/(\d{2})\/(\d{4})$/,'order':[_0x2971b8[_0x1635c9(0xe3)],_0x2971b8[_0x1635c9(0xf3)],_0x2971b8[_0x1635c9(0xe9)]]},'dd-MM-yyyy':{'pattern':/^(\d{2})-(\d{2})-(\d{4})$/,'order':[_0x1635c9(0xde),_0x1635c9(0xd9),_0x1635c9(0xd2)]},'MM/dd/yyyy':{'pattern':/^(\d{2})\/(\d{2})\/(\d{4})$/,'order':['month','day',_0x1635c9(0xd2)]},'yyyy/MM/dd':{'pattern':/^(\d{4})\/(\d{2})\/(\d{2})$/,'order':[_0x2971b8['JIcGi'],'month',_0x2971b8['lgpDS']]}},_0x4e5ee9=_0x4e921a[_0x6ddfc7];if(!_0x4e5ee9)return console['warn']('Unknown\x20date\x20format:\x20'+_0x6ddfc7+',\x20returning\x20null'),null;const _0x1bb6c6=_0x11dbe1['match'](_0x4e5ee9['pattern']);if(!_0x1bb6c6)return console[_0x1635c9(0xf2)]('Date\x20value\x20\x22'+_0x11dbe1+'\x22\x20doesn\x27t\x20match\x20format\x20\x22'+_0x6ddfc7+'\x22'),null;const _0x1b1c47={'day':null,'month':null,'year':null};return _0x4e5ee9[_0x1635c9(0xec)]['forEach']((_0x20c2f2,_0x2a43e0)=>{const _0x4ad5df=_0x1635c9;_0x1b1c47[_0x20c2f2]=_0x1bb6c6[_0x2971b8[_0x4ad5df(0xf8)](_0x2a43e0,0x1)];}),_0x1b1c47['year']+'-'+_0x1b1c47[_0x1635c9(0xd9)]+'-'+_0x1b1c47[_0x1635c9(0xde)];}static[a0_0x47ea90(0xe1)](_0x434999,_0x5004ae){const _0x3a24f7=a0_0x47ea90,_0x35c07b={'czBqi':function(_0x196295,_0x354d9d){return _0x196295!==_0x354d9d;},'rMDyX':function(_0x55278e,_0x293cd7){return _0x55278e===_0x293cd7;}};if(!_0x5004ae||_0x5004ae===_0x3a24f7(0xea))return _0x434999;const _0x2260be=_0x434999[_0x3a24f7(0xdc)]('\x20');if(_0x35c07b[_0x3a24f7(0xf6)](_0x2260be[_0x3a24f7(0xdd)],0x2))return console[_0x3a24f7(0xf2)]('Invalid\x20timestamp\x20format:\x20'+_0x434999),null;const [_0x58669f,_0x4775e0]=_0x2260be,_0x576f1d=_0x5004ae['split']('\x20')[0x0],_0x4b9070=this[_0x3a24f7(0xd1)](_0x58669f,_0x576f1d);if(!_0x4b9070)return null;const _0x2b9499=_0x35c07b[_0x3a24f7(0xe2)](_0x4775e0[_0x3a24f7(0xdc)](':')['length'],0x2)?_0x4775e0+_0x3a24f7(0xef):_0x4775e0;return _0x4b9070+'\x20'+_0x2b9499;}static[a0_0x47ea90(0xe7)](_0x1d83aa,_0x35b286){const _0x11d8ec=a0_0x47ea90,_0x4e2936={'uzqdh':function(_0x2ec698,_0x3c9037){return _0x2ec698===_0x3c9037;},'OPkwC':'HH:mm:ss'};if(!_0x35b286||_0x4e2936['uzqdh'](_0x35b286,_0x4e2936[_0x11d8ec(0xeb)]))return _0x1d83aa;if(_0x4e2936[_0x11d8ec(0xf1)](_0x35b286,_0x11d8ec(0xd8))){if(_0x1d83aa[_0x11d8ec(0xe0)](/^\d{2}:\d{2}$/))return _0x1d83aa+':00';}return _0x1d83aa;}}module[a0_0x47ea90(0xe4)]=DateTimeParser;
1
+ const a0_0x569a9d=a0_0x2d2f;(function(_0x2ca948,_0x44b3a1){const _0x39ee64=a0_0x2d2f,_0x54413a=_0x2ca948();while(!![]){try{const _0x295355=parseInt(_0x39ee64(0x175))/0x1*(parseInt(_0x39ee64(0x180))/0x2)+-parseInt(_0x39ee64(0x189))/0x3+-parseInt(_0x39ee64(0x17a))/0x4*(parseInt(_0x39ee64(0x17d))/0x5)+parseInt(_0x39ee64(0x17b))/0x6*(parseInt(_0x39ee64(0x18b))/0x7)+parseInt(_0x39ee64(0x184))/0x8*(-parseInt(_0x39ee64(0x178))/0x9)+-parseInt(_0x39ee64(0x18d))/0xa+parseInt(_0x39ee64(0x17c))/0xb;if(_0x295355===_0x44b3a1)break;else _0x54413a['push'](_0x54413a['shift']());}catch(_0x2bb720){_0x54413a['push'](_0x54413a['shift']());}}}(a0_0xe0c1,0x258eb));class DateTimeParser{static['parse'](_0x76ce5b,_0x1da521,_0x52508b){const _0x5b8ba3=a0_0x2d2f,_0x100c98={'EmEOy':'time'};if(!_0x76ce5b||_0x76ce5b==='')return null;try{if(_0x52508b===_0x5b8ba3(0x18f))return this[_0x5b8ba3(0x172)](_0x76ce5b,_0x1da521);else{if(_0x52508b==='timestamp')return this[_0x5b8ba3(0x181)](_0x76ce5b,_0x1da521);else{if(_0x52508b===_0x100c98['EmEOy'])return this['parseTime'](_0x76ce5b,_0x1da521);}}return _0x76ce5b;}catch(_0x22afdb){return console[_0x5b8ba3(0x173)]('Error\x20parsing\x20datetime:\x20'+_0x22afdb['message']),null;}}static['parseDate'](_0x1a3107,_0x531417){const _0x309996=a0_0x2d2f,_0x21e6f8={'RkmAp':function(_0x44800e,_0x3bea37){return _0x44800e===_0x3bea37;},'WYmdj':'month','ETguD':_0x309996(0x190),'yVUxP':'day'};if(!_0x531417||_0x21e6f8[_0x309996(0x17e)](_0x531417,_0x309996(0x182)))return _0x1a3107;const _0x1c6ae0={'dd/MM/yyyy':{'pattern':/^(\d{2})\/(\d{2})\/(\d{4})$/,'order':['day',_0x21e6f8['WYmdj'],_0x21e6f8[_0x309996(0x177)]]},'dd-MM-yyyy':{'pattern':/^(\d{2})-(\d{2})-(\d{4})$/,'order':['day',_0x21e6f8['WYmdj'],'year']},'MM/dd/yyyy':{'pattern':/^(\d{2})\/(\d{2})\/(\d{4})$/,'order':['month',_0x21e6f8['yVUxP'],_0x309996(0x190)]},'yyyy/MM/dd':{'pattern':/^(\d{4})\/(\d{2})\/(\d{2})$/,'order':[_0x309996(0x190),_0x21e6f8['WYmdj'],'day']}},_0x1500e7=_0x1c6ae0[_0x531417];if(!_0x1500e7)return console[_0x309996(0x183)]('Unknown\x20date\x20format:\x20'+_0x531417+_0x309996(0x18e)),null;const _0x72bec0=_0x1a3107['match'](_0x1500e7['pattern']);if(!_0x72bec0)return console[_0x309996(0x183)]('Date\x20value\x20\x22'+_0x1a3107+'\x22\x20doesn\x27t\x20match\x20format\x20\x22'+_0x531417+'\x22'),null;const _0x2266ec={'day':null,'month':null,'year':null};return _0x1500e7[_0x309996(0x17f)][_0x309996(0x174)]((_0x152039,_0x33df96)=>{_0x2266ec[_0x152039]=_0x72bec0[_0x33df96+0x1];}),_0x2266ec[_0x309996(0x190)]+'-'+_0x2266ec[_0x309996(0x188)]+'-'+_0x2266ec['day'];}static[a0_0x569a9d(0x181)](_0x12f849,_0xdcec59){const _0x2d2fbb=a0_0x569a9d,_0x307519={'DMQan':function(_0x45c13c,_0xe15f6e){return _0x45c13c!==_0xe15f6e;},'kxmSh':function(_0x1c7441,_0x596a5d){return _0x1c7441===_0x596a5d;}};if(!_0xdcec59||_0xdcec59===_0x2d2fbb(0x185))return _0x12f849;const _0x31bc8a=_0x12f849[_0x2d2fbb(0x18c)]('\x20');if(_0x307519['DMQan'](_0x31bc8a[_0x2d2fbb(0x187)],0x2))return console['warn']('Invalid\x20timestamp\x20format:\x20'+_0x12f849),null;const [_0x283790,_0x3e6f16]=_0x31bc8a,_0x16703e=_0xdcec59[_0x2d2fbb(0x18c)]('\x20')[0x0],_0xf1f555=this['parseDate'](_0x283790,_0x16703e);if(!_0xf1f555)return null;const _0x100593=_0x307519['kxmSh'](_0x3e6f16['split'](':')[_0x2d2fbb(0x187)],0x2)?_0x3e6f16+_0x2d2fbb(0x186):_0x3e6f16;return _0xf1f555+'\x20'+_0x100593;}static[a0_0x569a9d(0x179)](_0x454269,_0x4bb19b){const _0x35b328=a0_0x569a9d,_0x5b0feb={'MZdjx':function(_0x5ea809,_0x25e608){return _0x5ea809===_0x25e608;}};if(!_0x4bb19b||_0x5b0feb['MZdjx'](_0x4bb19b,_0x35b328(0x176)))return _0x454269;if(_0x4bb19b==='HH:mm'){if(_0x454269[_0x35b328(0x18a)](/^\d{2}:\d{2}$/))return _0x454269+':00';}return _0x454269;}}function a0_0x2d2f(_0x2fdb99,_0x562420){_0x2fdb99=_0x2fdb99-0x172;const _0xe0c12a=a0_0xe0c1();let _0x2d2f24=_0xe0c12a[_0x2fdb99];if(a0_0x2d2f['iYxWsb']===undefined){var _0x752637=function(_0x56b29d){const _0x103b95='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x318e7d='',_0x1ca334='';for(let _0x1f4b8b=0x0,_0x307d8b,_0x224881,_0x1eae52=0x0;_0x224881=_0x56b29d['charAt'](_0x1eae52++);~_0x224881&&(_0x307d8b=_0x1f4b8b%0x4?_0x307d8b*0x40+_0x224881:_0x224881,_0x1f4b8b++%0x4)?_0x318e7d+=String['fromCharCode'](0xff&_0x307d8b>>(-0x2*_0x1f4b8b&0x6)):0x0){_0x224881=_0x103b95['indexOf'](_0x224881);}for(let _0x3b4cce=0x0,_0x2ca1cc=_0x318e7d['length'];_0x3b4cce<_0x2ca1cc;_0x3b4cce++){_0x1ca334+='%'+('00'+_0x318e7d['charCodeAt'](_0x3b4cce)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ca334);};a0_0x2d2f['NDvIUE']=_0x752637,a0_0x2d2f['RZIFkW']={},a0_0x2d2f['iYxWsb']=!![];}const _0x151bd7=_0xe0c12a[0x0],_0x4f497c=_0x2fdb99+_0x151bd7,_0x8b571d=a0_0x2d2f['RZIFkW'][_0x4f497c];return!_0x8b571d?(_0x2d2f24=a0_0x2d2f['NDvIUE'](_0x2d2f24),a0_0x2d2f['RZIFkW'][_0x4f497c]=_0x2d2f24):_0x2d2f24=_0x8b571d,_0x2d2f24;}module['exports']=DateTimeParser;function a0_0xe0c1(){const _0x449c81=['Bwf0y2G','mJfpseDfDKO','C3bSAxq','mtC5nJy1mffkww92sG','lcbYzxr1CM5PBMCGBNvSBa','zgf0zq','EwvHCG','CgfYC2veyxrL','zxjYB3i','zM9YrwfJAa','mNvmvw5LtG','seG6Bw06C3m','rvrNDuq','ounzvhLgqG','CgfYC2vuAw1L','ndK2oefmwePhsq','mZGYndCWAgvXrxHq','nZy2ndy3oxPqvMfMBa','nte1qNj2teff','uMTTqxa','B3jKzxi','ndyYmJHjvgnws1a','CgfYC2vuAw1LC3rHBxa','ExL5Es1nts1Kza','D2fYBG','mtm3mJa5nMP6ruLjwq','ExL5Es1nts1KzcbisdPTBtPZCW','oJaW','BgvUz3rO','Bw9UDgG','otaZotqYyunOBgnN'];a0_0xe0c1=function(){return _0x449c81;};return a0_0xe0c1();}
@@ -1 +1 @@
1
- const a0_0x5a5942=a0_0x59d4;(function(_0x4df327,_0x199580){const _0x5f1aaa=a0_0x59d4,_0x5cf1a2=_0x4df327();while(!![]){try{const _0x1125dd=-parseInt(_0x5f1aaa(0xae))/0x1*(-parseInt(_0x5f1aaa(0xc4))/0x2)+-parseInt(_0x5f1aaa(0xcb))/0x3+-parseInt(_0x5f1aaa(0xbb))/0x4+-parseInt(_0x5f1aaa(0xc8))/0x5*(-parseInt(_0x5f1aaa(0xcc))/0x6)+-parseInt(_0x5f1aaa(0xe3))/0x7+parseInt(_0x5f1aaa(0xc3))/0x8*(parseInt(_0x5f1aaa(0xde))/0x9)+parseInt(_0x5f1aaa(0xd2))/0xa*(-parseInt(_0x5f1aaa(0xdc))/0xb);if(_0x1125dd===_0x199580)break;else _0x5cf1a2['push'](_0x5cf1a2['shift']());}catch(_0x2350c2){_0x5cf1a2['push'](_0x5cf1a2['shift']());}}}(a0_0x47e2,0xc01e2));const {Pool}=require('pg'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x5a5942(0xbd)),dbConfig={'host':process[a0_0x5a5942(0xa7)][a0_0x5a5942(0xd8)]||a0_0x5a5942(0xb3),'port':parseInt(process['env']['DB_PORT']||a0_0x5a5942(0xc5)),'user':process[a0_0x5a5942(0xa7)][a0_0x5a5942(0xd7)]||a0_0x5a5942(0xbf),'password':process[a0_0x5a5942(0xa7)]['DB_PASSWORD']||a0_0x5a5942(0xad),'database':process[a0_0x5a5942(0xa7)]['DB_NAME']||a0_0x5a5942(0xc1)};logDatabaseConfig({'host':dbConfig['host'],'port':dbConfig[a0_0x5a5942(0xea)],'database':dbConfig[a0_0x5a5942(0xaf)],'type':a0_0x5a5942(0xc9),'user':dbConfig['user']});function a0_0x47e2(){const _0x5d468c=['mtKYnti5nfz4sMDmCW','Aw5MBW','y29UBMvJDa','C3fS','vefctevFtK9ux0zpvu5e','u1fmievYCM9YoIa','rND6t2m','Cg9YDa','zgjFCg9VBf9JBg9Zzv9LCNjVCG','u0vmrunuide','zw52','yxL4EKS','y29TBwL0','A1b0weG','zgjFCg9VBf9JBg9Zzwq','BgvUz3rO','Cg9ZDgDYzxmXmJm0','ntC4ndbYAvzfs0m','zgf0ywjHC2u','u1Lovefyx0vsuK9s','uxvLCNKGCMv0DxjUzwqG','vM1pCLq','mtKYlJe2oc4XmdaUmq','DwrVCuu','C3rHCNq','CwPky0K','q09otKvdveLptL9fuLjpuG','zgjFy29UBMvJDgLVBL9JAgvJA19LCNjVCG','C3vIC3rYAw5N','CxvLCNK','mJy3ndiWog1jzwDLsG','qKvhsu4','lI9SB2DNzxi','zgjFCg9VBf9HBhjLywr5x2nSB3nLza','Cg9ZDgDYzxm','Dwzxsuy','zgj4ytaZ','wK1iB0O','nZm1otu2ohzAC0PfCq','ndzJqu5hvwm','ntqZmG','zxHWB3j0CW','C3fSx2vYCM9Y','mJe3nvb1txPMEG','Cg9ZDgDYzxnXBa','y2zVEwC','mZa4mtC3ne9MDu9juq','nZu5mffrEhPTqq','CMvSzwfZzq','q3jLyxrPBMCGBMv3igrHDgfIyxnLihbVB2WGkhbYzxzPB3vZihbVB2WGD2fZignSB3nLzcK','CM93CW','qw9mzvq','y2XPzw50x3jLBgvHC2vFzxjYB3i','odu1ntbZzfb4DKC','EwPkuMK','C3LUDgf4igvYCM9Y','q09ntuLu','zgjFCg9VBf9YzwnYzwf0zq','rejFvvnfuG','rejFse9tva','qvvusevoveLdqvrjt05Frvjst1i','thDIvue','rxjYB3iGCMvSzwfZAw5NihrYyw5Zywn0Aw9UignSAwvUDdOG','ntvPthv4v1q','rxjYB3iGy2XVC2LUzYbKyxrHyMfZzsbWB29SoIa','owvyCKHoCW','CM9SBgjHy2S','y29Kzq','zw5K','BwvZC2fNzq'];a0_0x47e2=function(){return _0x5d468c;};return a0_0x47e2();}let pool=new Pool(dbConfig),isPoolClosed=![];function getPool(){const _0x489fa1=a0_0x5a5942;return isPoolClosed&&(logger['info']({'event':_0x489fa1(0xd6)},_0x489fa1(0xce)),pool=new Pool(dbConfig),isPoolClosed=![]),pool;}async function executeQuery(_0x386125,_0x243faf=[]){const _0x335bb1=a0_0x5a5942,_0x7f72b9={'AoLeT':'postgresql','PGOFm':function(_0x54e2a3){return _0x54e2a3();},'Gypkn':function(_0x4cbea7,_0x294523,_0x5b27d1,_0x1f281f){return _0x4cbea7(_0x294523,_0x5b27d1,_0x1f281f);},'kPtXH':_0x335bb1(0xc7)},_0x34b9fb=startQueryTimer();try{const _0x1fa8f0=getPool(),_0x4c8690=await _0x1fa8f0[_0x335bb1(0xe5)]();try{const _0x100003=await _0x4c8690['query'](_0x386125,_0x243faf),_0x1001c9=_0x34b9fb();return logQuery(_0x386125,_0x243faf,{'duration':_0x1001c9,'rowsAffected':_0x100003['rowCount'],'dbType':_0x7f72b9['AoLeT']}),_0x100003[_0x335bb1(0xcf)];}finally{_0x4c8690['release']();}}catch(_0x1fb222){const _0x4fb78b=_0x7f72b9['PGOFm'](_0x34b9fb);_0x7f72b9['Gypkn'](logError,_0x1fb222,{'event':_0x7f72b9[_0x335bb1(0xaa)],'query':_0x386125[_0x335bb1(0xb9)](0x0,0x1f4),'paramCount':_0x243faf['length'],'durationMs':_0x4fb78b,'code':_0x1fb222[_0x335bb1(0xe0)],'dbType':_0x7f72b9[_0x335bb1(0xd0)]},_0x335bb1(0xe8)+_0x1fb222[_0x335bb1(0xe2)]);throw _0x1fb222;}}function formatResponse(_0x5ccc02,_0x101116=null){const _0x539c8e=a0_0x5a5942,_0x136d81={'yjJRi':_0x539c8e(0xd4),'qjJcI':'42P01','trwqi':_0x539c8e(0xe7),'ufWIF':function(_0x4ae96d,_0x390a6b){return _0x4ae96d===_0x390a6b;},'qpmfw':'28P01','cfoyg':_0x539c8e(0xd9),'eDWBi':'08001','ZMHoJ':'No\x20data\x20found.'};if(_0x101116){let _0x17aed1='UNKNOWN_ERROR';if(_0x101116[_0x539c8e(0xe2)]['includes'](_0x136d81[_0x539c8e(0xd3)]))_0x17aed1=_0x539c8e(0xb0);else{if(_0x101116['code']===_0x136d81[_0x539c8e(0xb6)])_0x17aed1=_0x136d81['trwqi'];else{if(_0x136d81[_0x539c8e(0xc0)](_0x101116[_0x539c8e(0xe0)],_0x136d81['qpmfw']))_0x17aed1=_0x136d81[_0x539c8e(0xca)];else(_0x136d81['ufWIF'](_0x101116[_0x539c8e(0xe0)],'08006')||_0x101116['code']===_0x136d81['eDWBi'])&&(_0x17aed1=_0x539c8e(0xb7));}}return{'success':![],'message':'Database\x20error:\x20'+_0x101116['message'],'count':-0x1,'error_code':_0x17aed1};}else{if(!_0x5ccc02||_0x5ccc02[_0x539c8e(0xac)]===0x0)return{'success':!![],'message':_0x136d81[_0x539c8e(0xc2)],'count':0x0,'data':[]};return{'success':!![],'message':_0x539c8e(0xb1)+_0x5ccc02[_0x539c8e(0xac)]+'\x20row'+(_0x136d81[_0x539c8e(0xc0)](_0x5ccc02[_0x539c8e(0xac)],0x1)?'':'s')+'.','count':_0x5ccc02['length'],'data':_0x5ccc02};}}function a0_0x59d4(_0x42258f,_0x208c47){_0x42258f=_0x42258f-0xa6;const _0x47e200=a0_0x47e2();let _0x59d4b8=_0x47e200[_0x42258f];if(a0_0x59d4['NyMrUs']===undefined){var _0x484cf5=function(_0x3bf38e){const _0x1769f4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x576efb='',_0x1a8352='';for(let _0x14dee0=0x0,_0x49bd14,_0x3a71f7,_0xfd00f6=0x0;_0x3a71f7=_0x3bf38e['charAt'](_0xfd00f6++);~_0x3a71f7&&(_0x49bd14=_0x14dee0%0x4?_0x49bd14*0x40+_0x3a71f7:_0x3a71f7,_0x14dee0++%0x4)?_0x576efb+=String['fromCharCode'](0xff&_0x49bd14>>(-0x2*_0x14dee0&0x6)):0x0){_0x3a71f7=_0x1769f4['indexOf'](_0x3a71f7);}for(let _0x210f63=0x0,_0x58302f=_0x576efb['length'];_0x210f63<_0x58302f;_0x210f63++){_0x1a8352+='%'+('00'+_0x576efb['charCodeAt'](_0x210f63)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a8352);};a0_0x59d4['MkwudJ']=_0x484cf5,a0_0x59d4['xPLWQr']={},a0_0x59d4['NyMrUs']=!![];}const _0x5564c6=_0x47e200[0x0],_0x5603a2=_0x42258f+_0x5564c6,_0x505522=a0_0x59d4['xPLWQr'][_0x5603a2];return!_0x505522?(_0x59d4b8=a0_0x59d4['MkwudJ'](_0x59d4b8),a0_0x59d4['xPLWQr'][_0x5603a2]=_0x59d4b8):_0x59d4b8=_0x505522,_0x59d4b8;}async function closePool(){const _0x2b6714=a0_0x5a5942,_0x40a7f4={'CwqmO':_0x2b6714(0xbe),'LZYGn':'Database\x20pool\x20was\x20already\x20closed'};if(!isPoolClosed)try{isPoolClosed=!![],await pool[_0x2b6714(0xe1)](),logger[_0x2b6714(0xe4)]({'event':_0x2b6714(0xab)},'Database\x20pool\x20closed\x20successfully');}catch(_0x38c9e7){logError(_0x38c9e7,{'event':_0x2b6714(0xeb)},_0x2b6714(0xdd)+_0x38c9e7['message']);}else logger['debug']({'event':_0x40a7f4['CwqmO']},_0x40a7f4['LZYGn']);}async function checkConnection(){const _0x3f8843=a0_0x5a5942,_0x2aaba2={'PpYcw':function(_0x2ebede){return _0x2ebede();},'MbgyT':_0x3f8843(0xa6)};try{const _0x5dfc9e=_0x2aaba2['PpYcw'](getPool),_0x2038bf=await _0x5dfc9e['connect']();try{return await _0x2038bf['query'](_0x2aaba2['MbgyT']),!![];}finally{_0x2038bf[_0x3f8843(0xcd)]();}}catch(_0x1aeb29){return logError(_0x1aeb29,{'event':_0x3f8843(0xb8)},'Error\x20checking\x20database\x20connection:\x20'+_0x1aeb29[_0x3f8843(0xe2)]),![];}}async function executeTransaction(_0x4a78ea){const _0x1033c9=a0_0x5a5942,_0x594f4d={'FwzOc':function(_0x1f2e97){return _0x1f2e97();},'sXByO':function(_0x46a3dc,_0x4bf40e,_0x2b0c55){return _0x46a3dc(_0x4bf40e,_0x2b0c55);},'KgEqX':function(_0x2caa24){return _0x2caa24();},'udoqE':'postgresql','LwbUA':_0x1033c9(0xd5),'scMLe':function(_0x36bf4f,_0x384ccc,_0x3c8c93){return _0x36bf4f(_0x384ccc,_0x3c8c93);},'VmOrT':function(_0x5906e2){return _0x5906e2();},'ayxzK':function(_0x342e24,_0x3cae0f,_0x5bbab7,_0x3954a5){return _0x342e24(_0x3cae0f,_0x5bbab7,_0x3954a5);},'sMhkP':'ROLLBACK','qildJ':'rollback_error'};let _0x21212b;const _0x2e30d6=startQueryTimer();try{const _0x5c1a7c=_0x594f4d[_0x1033c9(0xe9)](getPool);_0x21212b=await _0x5c1a7c['connect'](),_0x594f4d['sXByO'](logTransaction,_0x1033c9(0xb5),_0x4a78ea[_0x1033c9(0xac)]),await _0x21212b[_0x1033c9(0xba)](_0x1033c9(0xbc));const _0x1c61f4=[];for(const _0x47eb1d of _0x4a78ea){const _0x173737=startQueryTimer(),_0x375bb3=await _0x21212b[_0x1033c9(0xba)](_0x47eb1d[_0x1033c9(0xe6)],_0x47eb1d['params']||[]),_0x39f701=_0x594f4d['KgEqX'](_0x173737);logQuery(_0x47eb1d[_0x1033c9(0xe6)],_0x47eb1d['params']||[],{'duration':_0x39f701,'rowsAffected':_0x375bb3['rowCount'],'dbType':_0x594f4d['udoqE']}),_0x1c61f4['push'](_0x375bb3[_0x1033c9(0xcf)]);}await _0x21212b['query'](_0x594f4d[_0x1033c9(0xda)]);const _0x1306f2=_0x2e30d6();return _0x594f4d['scMLe'](logTransaction,_0x1033c9(0xa9),_0x4a78ea[_0x1033c9(0xac)]),logger[_0x1033c9(0xe4)]({'event':'transaction_complete','queryCount':_0x4a78ea[_0x1033c9(0xac)],'totalDurationMs':_0x1306f2,'dbType':_0x594f4d[_0x1033c9(0xb4)]},'Transaction\x20committed\x20('+_0x1306f2+'ms,\x20'+_0x4a78ea[_0x1033c9(0xac)]+'\x20queries)'),_0x1c61f4;}catch(_0x4f3f5a){const _0xc3ff45=_0x594f4d[_0x1033c9(0xb2)](_0x2e30d6);_0x594f4d[_0x1033c9(0xa8)](logError,_0x4f3f5a,{'event':'transaction_error','queryCount':_0x4a78ea['length'],'totalDurationMs':_0xc3ff45,'code':_0x4f3f5a['code'],'dbType':'postgresql'},'Transaction\x20failed:\x20'+_0x4f3f5a[_0x1033c9(0xe2)]);if(_0x21212b)try{await _0x21212b['query'](_0x594f4d['sMhkP']),logTransaction(_0x1033c9(0xdf),_0x4a78ea[_0x1033c9(0xac)]);}catch(_0xb947a7){logError(_0xb947a7,{'event':_0x594f4d['qildJ'],'dbType':_0x594f4d[_0x1033c9(0xb4)]},'Error\x20rolling\x20back\x20transaction:\x20'+_0xb947a7['message']);}throw _0x4f3f5a;}finally{if(_0x21212b)try{_0x21212b[_0x1033c9(0xcd)]();}catch(_0x8fa403){logger['error']({'event':_0x1033c9(0xd1),'error':_0x8fa403['message'],'dbType':_0x1033c9(0xc9)},_0x1033c9(0xdb)+_0x8fa403[_0x1033c9(0xe2)]);}}}module[a0_0x5a5942(0xc6)]={'executeQuery':executeQuery,'executeTransaction':executeTransaction,'formatResponse':formatResponse,'closePool':closePool,'getPool':getPool,'checkConnection':checkConnection};
1
+ const a0_0x1832d1=a0_0x4b83;(function(_0x121c4b,_0x34abcd){const _0x38d9fd=a0_0x4b83,_0x4e6ba7=_0x121c4b();while(!![]){try{const _0x176870=-parseInt(_0x38d9fd(0x1de))/0x1*(-parseInt(_0x38d9fd(0x1f4))/0x2)+-parseInt(_0x38d9fd(0x209))/0x3+-parseInt(_0x38d9fd(0x1d7))/0x4+-parseInt(_0x38d9fd(0x20b))/0x5+parseInt(_0x38d9fd(0x20e))/0x6*(-parseInt(_0x38d9fd(0x1dd))/0x7)+parseInt(_0x38d9fd(0x20a))/0x8*(-parseInt(_0x38d9fd(0x1e1))/0x9)+parseInt(_0x38d9fd(0x214))/0xa;if(_0x176870===_0x34abcd)break;else _0x4e6ba7['push'](_0x4e6ba7['shift']());}catch(_0x4a04ca){_0x4e6ba7['push'](_0x4e6ba7['shift']());}}}(a0_0x4e9c,0x2da10));const {Pool}=require('pg'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger'),dbConfig={'host':process[a0_0x1832d1(0x1e6)]['DB_HOST']||'192.168.100.1','port':parseInt(process['env']['DB_PORT']||a0_0x1832d1(0x208)),'user':process['env']['DB_USER']||'postgres','password':process[a0_0x1832d1(0x1e6)]['DB_PASSWORD']||'postgres1234','database':process[a0_0x1832d1(0x1e6)]['DB_NAME']||a0_0x1832d1(0x1eb)};logDatabaseConfig({'host':dbConfig[a0_0x1832d1(0x1d4)],'port':dbConfig['port'],'database':dbConfig[a0_0x1832d1(0x1f3)],'type':'postgresql','user':dbConfig[a0_0x1832d1(0x1fc)]});let pool=new Pool(dbConfig),isPoolClosed=![];function getPool(){return isPoolClosed&&(logger['info']({'event':'db_pool_recreate'},'Creating\x20new\x20database\x20pool\x20(previous\x20pool\x20was\x20closed)'),pool=new Pool(dbConfig),isPoolClosed=![]),pool;}async function executeQuery(_0x153afd,_0x39cfc9=[]){const _0x123356=a0_0x1832d1,_0x3becdc={'Wjjiv':function(_0x1f0323){return _0x1f0323();},'CDqkh':function(_0x3243c3,_0x30afd9,_0x30c6db,_0x35830c){return _0x3243c3(_0x30afd9,_0x30c6db,_0x35830c);},'OJweB':_0x123356(0x1e3),'ktZMZ':function(_0xc57179){return _0xc57179();}},_0x16a91b=startQueryTimer();try{const _0x48d7cd=_0x3becdc['Wjjiv'](getPool),_0x5f1512=await _0x48d7cd['connect']();try{const _0x238f9b=await _0x5f1512[_0x123356(0x20c)](_0x153afd,_0x39cfc9),_0x79ef24=_0x16a91b();return _0x3becdc['CDqkh'](logQuery,_0x153afd,_0x39cfc9,{'duration':_0x79ef24,'rowsAffected':_0x238f9b[_0x123356(0x1ef)],'dbType':_0x3becdc['OJweB']}),_0x238f9b[_0x123356(0x1d5)];}finally{_0x5f1512[_0x123356(0x1e4)]();}}catch(_0x285e9c){const _0x4d9997=_0x3becdc[_0x123356(0x211)](_0x16a91b);logError(_0x285e9c,{'event':_0x123356(0x1d6),'query':_0x153afd[_0x123356(0x1e2)](0x0,0x1f4),'paramCount':_0x39cfc9['length'],'durationMs':_0x4d9997,'code':_0x285e9c[_0x123356(0x1f9)],'dbType':_0x123356(0x1e3)},'SQL\x20Error:\x20'+_0x285e9c['message']);throw _0x285e9c;}}function a0_0x4e9c(){const _0x1c4ff6=['rgf0ywjHC2uGzxjYB3i6ia','Cg1WANK','tM8Gzgf0ysbMB3vUzc4','DKfiEM4','zgj4ytaZ','Aw5MBW','wNHZsue','swzSwwK','CM93q291BNq','y3jPv2u','q09otKvdveLptL9fuLjpuG','twnnvhq','zgf0ywjHC2u','nZuZmhf3DxbrtW','ChvZAa','CgfYyw1Z','u1Lovefyx0vsuK9s','uK9mtejbq0S','y29Kzq','q2rtsLO','y29TBwL0','DxnLCG','vhjHBNnHy3rPB24GzMfPBgvKoIa','BgvUz3rO','Eu50DKm','C3rHCNq','Aw5JBhvKzxm','BwvZC2fNzq','veLzzuS','u0vmrunuide','reHVCxm','sxDdC1u','zgvIDwC','ntqZmG','mZiWmde2v1LcvgzH','mtz3t1zWEKW','nti1odCWAwDbyMvp','CxvLCNK','y29UBMvJDa','mtK4yM5WCvHm','ihjVDW','vefctevFtK9ux0zpvu5e','A3rAtvO','q09ntuLu','BxmSia','ody0ntCWmef5B21kra','DhjHBNnHy3rPB25Fy29TCgXLDgu','y2XPzw50x3jLBgvHC2vFzxjYB3i','CM9SBgjHy2S','u1jezhy','r0jPy0e','Ag9ZDa','CM93CW','C3fSx2vYCM9Y','nZm0mtmYCMvRBMf6','CM9SBgjHy2TFzxjYB3i','zgjFCg9VBf9JBg9Zzv9LCNjVCG','mdGWmdy','zw5K','mdGWmde','ntC5mtf4BuHZBLK','ndryExbjz0C','C3LUDgf4igvYCM9Y','rxjYB3iGCMvSzwfZAw5NihrYyw5Zywn0Aw9UignSAwvUDdOG','nZG3mJu3s3Pwzw1M','C3vIC3rYAw5N','Cg9ZDgDYzxnXBa','CMvSzwfZzq','mJHqmde','zw52'];a0_0x4e9c=function(){return _0x1c4ff6;};return a0_0x4e9c();}function formatResponse(_0x3541d6,_0xc06f1a=null){const _0x3ae95=a0_0x1832d1,_0xf5b686={'McMTt':'UNKNOWN_ERROR','IwCsU':function(_0x460daa,_0x1a7008){return _0x460daa===_0x1a7008;},'saexa':_0x3ae95(0x1da)};if(_0xc06f1a){let _0x5e3401=_0xf5b686[_0x3ae95(0x1f2)];if(_0xc06f1a[_0x3ae95(0x202)][_0x3ae95(0x201)](_0x3ae95(0x1df)))_0x5e3401=_0x3ae95(0x1f7);else{if(_0xf5b686[_0x3ae95(0x206)](_0xc06f1a['code'],'42P01'))_0x5e3401=_0x3ae95(0x210);else{if(_0xf5b686['IwCsU'](_0xc06f1a[_0x3ae95(0x1f9)],_0x3ae95(0x1e5)))_0x5e3401='AUTHENTICATION_ERROR';else(_0xc06f1a[_0x3ae95(0x1f9)]===_0xf5b686['saexa']||_0xc06f1a[_0x3ae95(0x1f9)]===_0x3ae95(0x1dc))&&(_0x5e3401=_0x3ae95(0x1f1));}}return{'success':![],'message':_0x3ae95(0x1e7)+_0xc06f1a[_0x3ae95(0x202)],'count':-0x1,'error_code':_0x5e3401};}else{if(!_0x3541d6||_0x3541d6[_0x3ae95(0x1fe)]===0x0)return{'success':!![],'message':_0x3ae95(0x1e9),'count':0x0,'data':[]};return{'success':!![],'message':'Query\x20returned\x20'+_0x3541d6[_0x3ae95(0x1fe)]+_0x3ae95(0x20f)+(_0xf5b686['IwCsU'](_0x3541d6['length'],0x1)?'':'s')+'.','count':_0x3541d6['length'],'data':_0x3541d6};}}function a0_0x4b83(_0x39adc4,_0x447d7f){_0x39adc4=_0x39adc4-0x1cf;const _0x4e9cfb=a0_0x4e9c();let _0x4b8366=_0x4e9cfb[_0x39adc4];if(a0_0x4b83['teWHnG']===undefined){var _0x5946a1=function(_0x5de133){const _0x5e3ea4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x586a76='',_0x1dcfaa='';for(let _0x4c141d=0x0,_0x2e33a0,_0xf48fdc,_0x151741=0x0;_0xf48fdc=_0x5de133['charAt'](_0x151741++);~_0xf48fdc&&(_0x2e33a0=_0x4c141d%0x4?_0x2e33a0*0x40+_0xf48fdc:_0xf48fdc,_0x4c141d++%0x4)?_0x586a76+=String['fromCharCode'](0xff&_0x2e33a0>>(-0x2*_0x4c141d&0x6)):0x0){_0xf48fdc=_0x5e3ea4['indexOf'](_0xf48fdc);}for(let _0x58b50d=0x0,_0x1eb58b=_0x586a76['length'];_0x58b50d<_0x1eb58b;_0x58b50d++){_0x1dcfaa+='%'+('00'+_0x586a76['charCodeAt'](_0x58b50d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1dcfaa);};a0_0x4b83['ASMmwx']=_0x5946a1,a0_0x4b83['JTvmTh']={},a0_0x4b83['teWHnG']=!![];}const _0x8e2d43=_0x4e9cfb[0x0],_0xea6146=_0x39adc4+_0x8e2d43,_0x5db861=a0_0x4b83['JTvmTh'][_0xea6146];return!_0x5db861?(_0x4b8366=a0_0x4b83['ASMmwx'](_0x4b8366),a0_0x4b83['JTvmTh'][_0xea6146]=_0x4b8366):_0x4b8366=_0x5db861,_0x4b8366;}async function closePool(){const _0x4ffe56=a0_0x1832d1,_0x5416c7={'SRZqf':'db_pool_closed','PioiO':'Database\x20pool\x20closed\x20successfully','CdSJZ':function(_0x446c6f,_0x4f3e33,_0x116a04,_0x63a35b){return _0x446c6f(_0x4f3e33,_0x116a04,_0x63a35b);}};if(!isPoolClosed)try{isPoolClosed=!![],await pool[_0x4ffe56(0x1db)](),logger['info']({'event':_0x5416c7['SRZqf']},_0x5416c7['PioiO']);}catch(_0x194cc6){_0x5416c7[_0x4ffe56(0x1fa)](logError,_0x194cc6,{'event':_0x4ffe56(0x1d9)},'Error\x20closing\x20database\x20pool:\x20'+_0x194cc6['message']);}else logger[_0x4ffe56(0x207)]({'event':'db_pool_already_closed'},'Database\x20pool\x20was\x20already\x20closed');}async function checkConnection(){const _0x2aa2bd=a0_0x1832d1,_0x8c4178={'OlKev':function(_0x2334c5){return _0x2334c5();},'vAHzn':'db_connection_check_error'};try{const _0x1e7ef6=_0x8c4178['OlKev'](getPool),_0x25d606=await _0x1e7ef6[_0x2aa2bd(0x20d)]();try{return await _0x25d606['query'](_0x2aa2bd(0x204)),!![];}finally{_0x25d606[_0x2aa2bd(0x1e4)]();}}catch(_0x413fda){return logError(_0x413fda,{'event':_0x8c4178[_0x2aa2bd(0x1ea)]},'Error\x20checking\x20database\x20connection:\x20'+_0x413fda['message']),![];}}async function executeTransaction(_0x45cf3d){const _0x7440d2=a0_0x1832d1,_0x4ffe9c={'pmpjy':function(_0x5d7a2b,_0x358a2e,_0x5b8d79){return _0x5d7a2b(_0x358a2e,_0x5b8d79);},'TIYeK':'BEGIN','SRDdv':function(_0x24bbbb){return _0x24bbbb();},'IflYi':function(_0x367993,_0x5d2799,_0x231f81,_0x11d6f1){return _0x367993(_0x5d2799,_0x231f81,_0x11d6f1);},'ZxsIA':'postgresql','VvRZb':_0x7440d2(0x212),'GBicA':_0x7440d2(0x1fb),'DHoqs':_0x7440d2(0x1cf),'yNtvC':function(_0x143316){return _0x143316();},'TcKMQ':_0x7440d2(0x1d1),'criWe':_0x7440d2(0x1d0)};let _0x213689;const _0x556926=startQueryTimer();try{const _0x8ff0ac=getPool();_0x213689=await _0x8ff0ac['connect'](),_0x4ffe9c[_0x7440d2(0x1e8)](logTransaction,_0x7440d2(0x200),_0x45cf3d[_0x7440d2(0x1fe)]),await _0x213689[_0x7440d2(0x20c)](_0x4ffe9c[_0x7440d2(0x203)]);const _0x2fc112=[];for(const _0x487b3e of _0x45cf3d){const _0x2d4d57=_0x4ffe9c[_0x7440d2(0x1d2)](startQueryTimer),_0x526a20=await _0x213689[_0x7440d2(0x20c)](_0x487b3e['sql'],_0x487b3e[_0x7440d2(0x1f6)]||[]),_0x75ac2a=_0x2d4d57();_0x4ffe9c[_0x7440d2(0x1ee)](logQuery,_0x487b3e['sql'],_0x487b3e[_0x7440d2(0x1f6)]||[],{'duration':_0x75ac2a,'rowsAffected':_0x526a20[_0x7440d2(0x1ef)],'dbType':_0x4ffe9c[_0x7440d2(0x1ed)]}),_0x2fc112[_0x7440d2(0x1f5)](_0x526a20['rows']);}await _0x213689[_0x7440d2(0x20c)](_0x4ffe9c['VvRZb']);const _0x4897c1=_0x556926();return logTransaction(_0x4ffe9c[_0x7440d2(0x1d3)],_0x45cf3d['length']),logger[_0x7440d2(0x1ec)]({'event':_0x4ffe9c[_0x7440d2(0x205)],'queryCount':_0x45cf3d[_0x7440d2(0x1fe)],'totalDurationMs':_0x4897c1,'dbType':_0x4ffe9c[_0x7440d2(0x1ed)]},'Transaction\x20committed\x20('+_0x4897c1+_0x7440d2(0x213)+_0x45cf3d['length']+'\x20queries)'),_0x2fc112;}catch(_0x97d6b7){const _0x3962d0=_0x4ffe9c[_0x7440d2(0x1ff)](_0x556926);_0x4ffe9c[_0x7440d2(0x1ee)](logError,_0x97d6b7,{'event':'transaction_error','queryCount':_0x45cf3d[_0x7440d2(0x1fe)],'totalDurationMs':_0x3962d0,'code':_0x97d6b7['code'],'dbType':'postgresql'},_0x7440d2(0x1fd)+_0x97d6b7['message']);if(_0x213689)try{await _0x213689[_0x7440d2(0x20c)](_0x7440d2(0x1f8)),logTransaction(_0x4ffe9c['TcKMQ'],_0x45cf3d['length']);}catch(_0x225f93){logError(_0x225f93,{'event':_0x7440d2(0x1d8),'dbType':_0x4ffe9c['ZxsIA']},'Error\x20rolling\x20back\x20transaction:\x20'+_0x225f93[_0x7440d2(0x202)]);}throw _0x97d6b7;}finally{if(_0x213689)try{_0x213689[_0x7440d2(0x1e4)]();}catch(_0x4ce726){logger['error']({'event':_0x4ffe9c[_0x7440d2(0x1f0)],'error':_0x4ce726[_0x7440d2(0x202)],'dbType':_0x4ffe9c['ZxsIA']},_0x7440d2(0x1e0)+_0x4ce726[_0x7440d2(0x202)]);}}}module['exports']={'executeQuery':executeQuery,'executeTransaction':executeTransaction,'formatResponse':formatResponse,'closePool':closePool,'getPool':getPool,'checkConnection':checkConnection};
@@ -1 +1 @@
1
- function a0_0x39bb(_0x43a33e,_0x147d8e){_0x43a33e=_0x43a33e-0x19e;const _0x1d11df=a0_0x1d11();let _0x39bb35=_0x1d11df[_0x43a33e];if(a0_0x39bb['CQCnbZ']===undefined){var _0x172d70=function(_0x3f179a){const _0x501dc7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4cb1aa='',_0x1abea1='';for(let _0xad9e07=0x0,_0x3f3310,_0x266594,_0x2e364b=0x0;_0x266594=_0x3f179a['charAt'](_0x2e364b++);~_0x266594&&(_0x3f3310=_0xad9e07%0x4?_0x3f3310*0x40+_0x266594:_0x266594,_0xad9e07++%0x4)?_0x4cb1aa+=String['fromCharCode'](0xff&_0x3f3310>>(-0x2*_0xad9e07&0x6)):0x0){_0x266594=_0x501dc7['indexOf'](_0x266594);}for(let _0x2bd61d=0x0,_0x125615=_0x4cb1aa['length'];_0x2bd61d<_0x125615;_0x2bd61d++){_0x1abea1+='%'+('00'+_0x4cb1aa['charCodeAt'](_0x2bd61d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1abea1);};a0_0x39bb['JTgaKy']=_0x172d70,a0_0x39bb['igXZbE']={},a0_0x39bb['CQCnbZ']=!![];}const _0x11d2b0=_0x1d11df[0x0],_0x178939=_0x43a33e+_0x11d2b0,_0x2a5559=a0_0x39bb['igXZbE'][_0x178939];return!_0x2a5559?(_0x39bb35=a0_0x39bb['JTgaKy'](_0x39bb35),a0_0x39bb['igXZbE'][_0x178939]=_0x39bb35):_0x39bb35=_0x2a5559,_0x39bb35;}const a0_0x1dde4d=a0_0x39bb;(function(_0x3a3e90,_0x320df5){const _0x20b15c=a0_0x39bb,_0x23bdef=_0x3a3e90();while(!![]){try{const _0x64ae2c=-parseInt(_0x20b15c(0x1a1))/0x1*(-parseInt(_0x20b15c(0x1b7))/0x2)+parseInt(_0x20b15c(0x203))/0x3*(parseInt(_0x20b15c(0x204))/0x4)+-parseInt(_0x20b15c(0x1a0))/0x5+-parseInt(_0x20b15c(0x200))/0x6*(parseInt(_0x20b15c(0x251))/0x7)+-parseInt(_0x20b15c(0x249))/0x8+-parseInt(_0x20b15c(0x209))/0x9*(-parseInt(_0x20b15c(0x1f7))/0xa)+parseInt(_0x20b15c(0x239))/0xb;if(_0x64ae2c===_0x320df5)break;else _0x23bdef['push'](_0x23bdef['shift']());}catch(_0x1e5cab){_0x23bdef['push'](_0x23bdef['shift']());}}}(a0_0x1d11,0x41b24));const pino=require(a0_0x1dde4d(0x219)),fs=require('fs'),path=require(a0_0x1dde4d(0x1b1));let logToFile=![],logDir='./logs',serviceName=a0_0x1dde4d(0x1f3),sqlLogEnabled=![],sqlLogLevel=a0_0x1dde4d(0x1c1),sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':a0_0x1dde4d(0x206),'singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':a0_0x1dde4d(0x1d2),'hideObject':!![]},isDevelopment=process['env']['NODE_ENV']!==a0_0x1dde4d(0x1ac),logLevel=process['env']['LOG_LEVEL']||'info';let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':a0_0x1dde4d(0x1f3),'version':process[a0_0x1dde4d(0x21f)]['APP_VERSION']||a0_0x1dde4d(0x1a6),'env':process[a0_0x1dde4d(0x21f)][a0_0x1dde4d(0x20a)]||'development'},'timestamp':pino[a0_0x1dde4d(0x235)][a0_0x1dde4d(0x1e4)],'redact':{'paths':[a0_0x1dde4d(0x205),'req.headers[\x22x-api-key\x22]','password','token',a0_0x1dde4d(0x246),a0_0x1dde4d(0x24d),a0_0x1dde4d(0x211)],'censor':a0_0x1dde4d(0x1cd)},'serializers':{'req':_0x5e51a1=>({'id':_0x5e51a1['id'],'method':_0x5e51a1[a0_0x1dde4d(0x1a7)],'url':_0x5e51a1[a0_0x1dde4d(0x222)],'path':_0x5e51a1[a0_0x1dde4d(0x1b1)],'remoteAddress':_0x5e51a1['ip']||_0x5e51a1[a0_0x1dde4d(0x1c6)]?.['remoteAddress']}),'res':_0x3e8991=>({'statusCode':_0x3e8991[a0_0x1dde4d(0x243)],'headers':_0x3e8991[a0_0x1dde4d(0x1e7)]?.()}),'err':pino['stdSerializers'][a0_0x1dde4d(0x1e3)]}});function initFileLogging(){const _0x2f2098=a0_0x1dde4d,_0xa7ff0f={'IxrHx':function(_0x18b3e8,_0x5265e7){return _0x18b3e8===_0x5265e7;},'TFqsQ':_0x2f2098(0x1ae),'XMcbS':'restforge','UdeCx':_0x2f2098(0x1c1),'MMXYH':function(_0x19afed,_0x4e03e8){return _0x19afed(_0x4e03e8);},'WHRzB':'error.log','evbaZ':'info'};if(fileLoggingInitialized)return;logToFile=_0xa7ff0f['IxrHx'](process[_0x2f2098(0x21f)]['LOG_TO_FILE'],_0x2f2098(0x201)),logDir=process['env'][_0x2f2098(0x234)]||_0xa7ff0f[_0x2f2098(0x1f1)],serviceName=process[_0x2f2098(0x21f)][_0x2f2098(0x1a4)]||_0xa7ff0f['XMcbS'],sqlLogEnabled=process[_0x2f2098(0x21f)]['SQL_LOG_ENABLED']==='true',sqlLogLevel=process['env']['SQL_LOG_LEVEL']||_0xa7ff0f[_0x2f2098(0x1fb)],sqlLogParams=process['env'][_0x2f2098(0x22e)]!=='false',sqlLogSlowThreshold=_0xa7ff0f['MMXYH'](parseInt,process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0xa36d66=path['resolve'](process[_0x2f2098(0x1ca)](),logDir);try{!fs[_0x2f2098(0x1eb)](_0xa36d66)&&fs['mkdirSync'](_0xa36d66,{'recursive':!![]});}catch(_0x26f8ec){console[_0x2f2098(0x207)]('Failed\x20to\x20create\x20log\x20directory\x20'+_0xa36d66+':',_0x26f8ec['message']),fileLoggingInitialized=!![];return;}const _0x4f1322=path[_0x2f2098(0x1cf)](_0xa36d66,'app.log'),_0xa805b0=path['join'](_0xa36d66,_0xa7ff0f[_0x2f2098(0x221)]);try{appLogStream=fs['createWriteStream'](_0x4f1322,{'flags':'a'}),errorLogStream=fs[_0x2f2098(0x233)](_0xa805b0,{'flags':'a'}),fileLoggingInitialized=!![];const _0x202887={'event':'file_logging_enabled','logDir':_0xa36d66,'files':['app.log',_0xa7ff0f['WHRzB']]},_0x43ff50='File\x20logging\x20enabled:\x20'+_0xa36d66;logger['info'](_0x202887,_0x43ff50),writeToFileLog({..._0x202887,'level':_0xa7ff0f['evbaZ'],'msg':_0x43ff50,'time':new Date()[_0x2f2098(0x1fe)]()},_0xa7ff0f[_0x2f2098(0x1f2)]);}catch(_0x19af8a){console[_0x2f2098(0x207)]('Failed\x20to\x20create\x20log\x20streams:',_0x19af8a[_0x2f2098(0x1b8)]),fileLoggingInitialized=!![];}}function a0_0x1d11(){const _0x110336=['yxv0Ag9YAxPHDgLVBG','Ag9ZDa','v0LzCLe','y3DK','sKfbt2O','ANzQuxy','w1jfrefdvevexq','ChjPDMf0zv9RzxK','AM9PBG','BLriree','y3jLzgL0y2fYza','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','BwvTB3j5vxnHz2u','zgjFCxvLCNK','vu5ltK9xtG','Aw5JBhvKzxm','rLv2Dwm','zMf0ywXFzxjYB3i','C2vYDMLJzuLUzM8','EuPtCNu','C3rHCNrZv2L0Aa','yxbPA2v5','wxLMA1u','CgfZC3DK','A01iEgS','C2vJCMv0','Dg9Rzw4','yM9KEq','zxjY','AxnVvgLTzq','zeP6EKS','CgfKrw5K','z2v0sgvHzgvYCW','revmrvrf','vhjcCNy','ifTtte9xxq','zxHPC3rZu3LUyW','AgvHBhrOq2HLy2S','u1rbuLqGvfjbtLnbq1rjt04','Cg9ZDgDYzxnXBa','rgf0ywjHC2u6ia','Dg9vChbLCKnHC2u','vezXC1e','zxzIyvO','CMvZDgzVCMDL','ExnAqxa','iokvKqRILzeGifbVCNqGicaGicaGidOG','ywvlC3K','mZbZqLfTBKC','rxjYB3i','tM9Kzs5QCW','BxmP','vwrLq3G','tg5lCNa','Bwf0y2G','Dg9ju09tDhjPBMC','ChjVAMvJDf9SB2fKzwq','mZu4mdHTtfrWu0q','Dhj1zq','C3bSAxq','m3vhr0HLwq','nJG1mZy0AfLHr01t','CMvXlMHLywrLCNmUyxv0Ag9YAxPHDgLVBG','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','zxjYB3i','wMzZsxu','mta4mdK5qvfcCLjt','tK9erv9ftLy','reiGuxvLCNK','C3rHy2S','AgvHzgvYCW','yMfZzvvYBa','sMvfEuq','Dg9mB3DLCKnHC2u','sLDux1nfq1jfva','zgf0ywjHC2u','z2v0','EhjNAe8','CMznsxy','BgvUz3rO','Aw5MBW','rermx0rst1a','CgLUBW','vfjbtLnbq1rjt05FqKvhsu4','wwHXr2q','u2vYDMvYihn0yxj0Aw5NoIa','CgLK','u0vmrunu','zw52','DxnLCI1Hz2vUDa','v0HsEKi','DxjS','AxnbCNjHEq','Dxb0Aw1L','B3rW','ChjPDMf0zwTLEq','zxHPDa','C2vYDMvYx3jLywr5','D3jPDgu','swj4EhK','rxjYB3i6ia','iokvKqRILzeGifbYB2PLy3qGicaGidOG','DhjPBq','u1fmx0Xpr19qqvjbtvm','sNPpCK8','svfmDve','uMDQu2K','qKvhsu4','y3jLyxrLv3jPDgvtDhjLyw0','te9hx0rjuG','C3rKvgLTzuz1BMn0Aw9UCW','BMfTzq','A1L0yw0','q1jjveLdquW','nZq1mti1n1bSvLfPDa','icbizwfSDgG6ia','Ahr0Cf9Yzxf1zxn0','ywnJzxnZx3rVA2vU','yxbPx2TLEq','su5trvju','Cxfvswy','uffxzgW','BwfW','CKzwCLi','C3rHDhvZq29Kzq','CgfZC3DVCMq','wxDfAxq','yxbPs2v5','y29UzMLNrMLSzq','ChjVAMvJDa','mJG0nJi0mejetvDZCq','CgfYyw1Z','vvzYwKe','C29Tzq','rejFueftu1DpuKq','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','vfjbtLnbq1rjt05Fq09ntuLu','q2zUrLe','odrSC3LNEvm','C3rYAw5NAwz5','Dw5JyxvNAhrfEgnLChrPB24','mJu3mZmZmhDyvNPlrW','mxvnv1jrAq','sgDnAKm','EwPmBei','u0vsvKLdrv9oqu1f','ChjVy2vZC193yxjUAw5N','ms4WlJu','Bwv0Ag9K','AxntBg93','CvLLCvi','D25gsMi','zw5KCg9PBNrFCMvNAxn0zxjLza','ChjVzhvJDgLVBG','rgThz2W','lI9SB2DZ','zgf0ywjHC2vFy29UzMLN','Dw5Oyw5KBgvKuMvQzwn0Aw9U','Cgf0Aa','DgvZDa','iokvKqRILzeGienVBMzPzYaGicaGidOG','Cg9YDa','Ec1Yzxf1zxn0lwLK','CgjyC0G','nJuYnZG2rvPmANns','BwvZC2fNzq','y2HPBgq','y29Kzq','u213EKi','quXurvi','zMf0ywW','sw50zxjUywWGC2vYDMvYigvYCM9Y','D2fYBG','tK9uiefdveLwrq','zgvIDwC','yNrWvfC','C3rHDhvZ','y3jLzgvUDgLHBa','zw9xz3a','y29UBMvJDgLVBG'];a0_0x1d11=function(){return _0x110336;};return a0_0x1d11();}function writeToFileLog(_0x1245f7,_0x376be7){const _0x398df1=a0_0x1dde4d,_0x319f21={'kYtam':function(_0x51247b,_0x14728b){return _0x51247b===_0x14728b;},'WIYrQ':_0x398df1(0x207)};if(!logToFile||!appLogStream)return;const _0x2fd731={'service':serviceName,..._0x1245f7},_0x32949e=JSON[_0x398df1(0x19e)](_0x2fd731)+'\x0a';appLogStream['write'](_0x32949e),(_0x319f21[_0x398df1(0x237)](_0x376be7,_0x319f21[_0x398df1(0x1c9)])||_0x319f21['kYtam'](_0x376be7,'fatal'))&&(errorLogStream&&errorLogStream[_0x398df1(0x229)](_0x32949e));}const createRequestLogger=(_0x3b4b1b={})=>{const _0x10d234=a0_0x1dde4d;return logger[_0x10d234(0x1b9)](_0x3b4b1b);},logServerStart=_0x19dcc9=>{const _0x467085=a0_0x1dde4d,_0x1380e8={'Foncg':_0x467085(0x1f9),'qYeqR':function(_0x5d72fd,_0x52f2a7){return _0x5d72fd(_0x52f2a7);},'aeKsy':'ACTIVE','JzOrO':'server_starting','zfQKm':function(_0x393bf8,_0x363e2f,_0x208984){return _0x393bf8(_0x363e2f,_0x208984);}},_0x52d86c='\x0a╔═══════════════════════════════════════════════════════╗\x0a║\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20RESTFORGE\x20RUNTIME\x20SERVER\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20║\x0a╠═══════════════════════════════════════════════════════╣\x0a║\x20\x20Environment\x20:\x20'+(_0x19dcc9['environment']||_0x1380e8['Foncg'])['padEnd'](0x26)+_0x467085(0x22c)+(_0x19dcc9['project']||'N/A')['padEnd'](0x26)+_0x467085(0x1f5)+_0x1380e8[_0x467085(0x1a9)](String,_0x19dcc9['port']||0xbb8)[_0x467085(0x1e6)](0x26)+_0x467085(0x1b3)+(_0x19dcc9[_0x467085(0x247)]||'Default')[_0x467085(0x1e6)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x19dcc9['apiKey']?_0x1380e8[_0x467085(0x1f6)]:_0x467085(0x1c0))[_0x467085(0x1e6)](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console['log'](_0x52d86c);const _0x3052f4={'event':_0x1380e8[_0x467085(0x22f)],'project':_0x19dcc9[_0x467085(0x248)],'port':_0x19dcc9['port'],'config':_0x19dcc9[_0x467085(0x247)],'apiKeyEnabled':!!_0x19dcc9['apiKey']};logger['info'](_0x3052f4),_0x1380e8['zfQKm'](writeToFileLog,{..._0x3052f4,'level':'info','msg':_0x467085(0x21c)+_0x19dcc9[_0x467085(0x248)]+'\x20on\x20port\x20'+_0x19dcc9['port'],'time':new Date()['toISOString']()},'info');},logServerReady=_0x2dd6a6=>{const _0x4fd151=a0_0x1dde4d,_0x1c6620={'SmwzB':'info'},_0x30be41={'event':_0x4fd151(0x228),'port':_0x2dd6a6['port'],'module':_0x2dd6a6['module'],'healthCheck':_0x2dd6a6['healthCheck'],'serviceInfo':_0x2dd6a6['serviceInfo'],'baseUrl':_0x2dd6a6[_0x4fd151(0x20e)]},_0x32c974='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x2dd6a6['port'];logger['info'](_0x30be41,_0x32c974),writeToFileLog({..._0x30be41,'level':_0x1c6620[_0x4fd151(0x1bb)],'msg':_0x32c974,'time':new Date()[_0x4fd151(0x1fe)]()},_0x4fd151(0x217)),_0x2dd6a6[_0x4fd151(0x1ec)]&&logger[_0x4fd151(0x217)](_0x4fd151(0x23a)+_0x2dd6a6['healthCheck']),_0x2dd6a6[_0x4fd151(0x1d9)]&&logger[_0x4fd151(0x217)]('\x20\x20Info:\x20\x20\x20'+_0x2dd6a6[_0x4fd151(0x1d9)]),_0x2dd6a6[_0x4fd151(0x20e)]&&logger[_0x4fd151(0x217)]('\x20\x20URL:\x20\x20\x20\x20'+_0x2dd6a6['baseUrl']);},logProjectLoaded=(_0x49770c,_0x2f5f52)=>{const _0x40ecef=a0_0x1dde4d,_0x30776f={'BapAC':function(_0x352830,_0xed38c5,_0x3727ed){return _0x352830(_0xed38c5,_0x3727ed);},'GKjZQ':_0x40ecef(0x217)},_0x29e62a={'event':_0x40ecef(0x1ff),'project':_0x49770c,'path':_0x2f5f52},_0x5b0cd0='[OK]\x20Project\x20loaded:\x20'+_0x49770c;logger[_0x40ecef(0x217)](_0x29e62a,_0x5b0cd0),_0x30776f['BapAC'](writeToFileLog,{..._0x29e62a,'level':'info','msg':_0x5b0cd0,'time':new Date()['toISOString']()},_0x30776f['GKjZQ']);},logEndpointRegistered=(_0x5ae9d3,_0x1bfa03)=>{const _0x4f31b6=a0_0x1dde4d,_0x32e89d={'UVrZA':function(_0x24dfd0,_0x1d949d,_0x25aeca){return _0x24dfd0(_0x1d949d,_0x25aeca);},'ixZhy':'debug'},_0x1c1d24={'event':_0x4f31b6(0x1ab),'endpoint':_0x5ae9d3,'route':_0x1bfa03},_0x4c0716='\x20\x20→\x20'+_0x5ae9d3+':\x20'+_0x1bfa03;logger[_0x4f31b6(0x1c1)](_0x1c1d24,_0x4c0716),_0x32e89d[_0x4f31b6(0x24b)](writeToFileLog,{..._0x1c1d24,'level':'debug','msg':_0x4c0716,'time':new Date()[_0x4f31b6(0x1fe)]()},_0x32e89d['ixZhy']);},logDatabaseConfig=_0x4c4b1e=>{const _0x4d40d1=a0_0x1dde4d,_0x2f9c75={'HgMjC':_0x4d40d1(0x1af),'aXzYO':function(_0x136309,_0xd68e05,_0x2a2130){return _0x136309(_0xd68e05,_0x2a2130);}},_0x17a9be={'event':_0x2f9c75[_0x4d40d1(0x1a2)],'host':_0x4c4b1e['host'],'port':_0x4c4b1e[_0x4d40d1(0x1b4)],'database':_0x4c4b1e[_0x4d40d1(0x212)],'type':_0x4c4b1e['type'],'user':_0x4c4b1e['user']},_0x245f5a=_0x4d40d1(0x1ef)+_0x4c4b1e['type']+'://'+_0x4c4b1e[_0x4d40d1(0x1c8)]+':'+_0x4c4b1e['port']+'/'+_0x4c4b1e[_0x4d40d1(0x212)];logger[_0x4d40d1(0x1c1)](_0x17a9be,_0x245f5a),_0x2f9c75['aXzYO'](writeToFileLog,{..._0x17a9be,'level':'debug','msg':_0x245f5a,'time':new Date()['toISOString']()},'debug');},logRequest=(_0x4afbef,_0x8384d1,_0x129054)=>{const _0x3d1cf2=a0_0x1dde4d,_0x3951d4={'neAgs':_0x3d1cf2(0x23b),'kMHxk':_0x3d1cf2(0x207),'PYwSv':function(_0x59f359,_0x3c8b6c){return _0x59f359>=_0x3c8b6c;},'yahQA':function(_0x3347c7,_0x34563c,_0x5788b5){return _0x3347c7(_0x34563c,_0x5788b5);}},_0x1f0eec={'event':_0x3951d4['neAgs'],'method':_0x4afbef['method'],'path':_0x4afbef[_0x3d1cf2(0x1b1)],'statusCode':_0x8384d1[_0x3d1cf2(0x243)],'durationMs':_0x129054,'ip':_0x4afbef['ip']},_0x2b9627=_0x4afbef[_0x3d1cf2(0x1a7)]+'\x20'+_0x4afbef['path']+'\x20-\x20'+_0x8384d1[_0x3d1cf2(0x243)]+'\x20('+_0x129054+_0x3d1cf2(0x1fa);let _0x30e190=_0x3d1cf2(0x217);if(_0x8384d1[_0x3d1cf2(0x243)]>=0x1f4)_0x30e190=_0x3951d4[_0x3d1cf2(0x1df)],logger['error'](_0x1f0eec,_0x2b9627);else _0x3951d4['PYwSv'](_0x8384d1[_0x3d1cf2(0x243)],0x190)?(_0x30e190=_0x3d1cf2(0x1bf),logger[_0x3d1cf2(0x1bf)](_0x1f0eec,_0x2b9627)):logger[_0x3d1cf2(0x217)](_0x1f0eec,_0x2b9627);_0x3951d4['yahQA'](writeToFileLog,{..._0x1f0eec,'level':_0x30e190,'msg':_0x2b9627,'time':new Date()['toISOString']()},_0x30e190);},SENSITIVE_PARAM_PATTERNS=['password',a0_0x1dde4d(0x1de),'pwd',a0_0x1dde4d(0x1e1),'access_token','refresh_token','secret','api_secret',a0_0x1dde4d(0x1dc),'api_key',a0_0x1dde4d(0x1c4),'credentials','pin',a0_0x1dde4d(0x225),a0_0x1dde4d(0x1ce),'privatekey'],redactSensitiveParams=(_0x249632,_0x277f90)=>{const _0x489bd3=a0_0x1dde4d,_0x140b86={'pgXvV':'[REDACTED]','YwEit':'string','FpEfC':'[REDACTED:token]','MuBvU':'[REDACTED:hash]'};if(!_0x249632||_0x249632['length']===0x0)return _0x249632;const _0x3400d1=_0x277f90[_0x489bd3(0x210)](),_0x539dea=_0x3400d1[_0x489bd3(0x1fd)](/\(([^)]+)\)\s*values/i);let _0x51666c=[];_0x539dea&&(_0x51666c=_0x539dea[0x1][_0x489bd3(0x202)](',')[_0x489bd3(0x241)](_0xe7cc5b=>_0xe7cc5b['trim']()[_0x489bd3(0x210)]()));const _0x3a6870=_0x3400d1[_0x489bd3(0x1fd)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x3a6870){const _0x39f27f=_0x3a6870[0x1],_0x1ed5af=_0x39f27f['match'](/(\w+)\s*=/g);_0x1ed5af&&(_0x51666c=_0x1ed5af['map'](_0x2e36c7=>_0x2e36c7['replace'](/\s*=/,'')['trim']()[_0x489bd3(0x210)]()));}return _0x249632[_0x489bd3(0x241)]((_0x46c940,_0x164ebd)=>{const _0x271373=_0x489bd3;if(_0x51666c[_0x164ebd]){const _0x221891=_0x51666c[_0x164ebd],_0x29f3c8=SENSITIVE_PARAM_PATTERNS[_0x271373(0x24c)](_0x2fe928=>_0x221891['includes'](_0x2fe928));if(_0x29f3c8)return _0x140b86['pgXvV'];}if(typeof _0x46c940===_0x140b86[_0x271373(0x245)]&&_0x46c940[_0x271373(0x216)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x46c940)&&_0x46c940[_0x271373(0x1d6)]('.'))return _0x140b86['FpEfC'];if(/^[a-fA-F0-9]{32,}$/[_0x271373(0x1b2)](_0x46c940))return _0x140b86['MuBvU'];}return _0x46c940;});},parseQueryMetadata=_0x4662bc=>{const _0x51c433=a0_0x1dde4d,_0x1fe0f6={'jnztw':_0x51c433(0x1d5),'SWKzH':_0x51c433(0x21e),'Ibxxy':'INSERT','TAUjh':'UPDATE','nTHDA':_0x51c433(0x1e8),'SfprC':'COMMIT','yJSru':'TRANSACTION_ROLLBACK','JeEyD':'CREATE','WZGUf':'DDL_CREATE','KgDAe':_0x51c433(0x1bc),'rAGEn':'DDL_ALTER','TlgoA':'DROP'},_0x2b00c9=_0x4662bc[_0x51c433(0x22d)](),_0x3812ba=_0x2b00c9[_0x51c433(0x1f0)]();let _0x14a5a0=_0x1fe0f6['jnztw'],_0x54c571=null;if(_0x3812ba[_0x51c433(0x1db)](_0x51c433(0x21e))){_0x14a5a0=_0x1fe0f6['SWKzH'];const _0x2dc267=_0x2b00c9[_0x51c433(0x1fd)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x54c571=_0x2dc267?_0x2dc267[0x1]:null;}else{if(_0x3812ba['startsWith'](_0x1fe0f6[_0x51c433(0x22a)])){_0x14a5a0=_0x51c433(0x23e);const _0x395e8f=_0x2b00c9[_0x51c433(0x1fd)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x54c571=_0x395e8f?_0x395e8f[0x1]:null;}else{if(_0x3812ba['startsWith'](_0x1fe0f6['TAUjh'])){_0x14a5a0=_0x1fe0f6['TAUjh'];const _0x10a09d=_0x2b00c9['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x54c571=_0x10a09d?_0x10a09d[0x1]:null;}else{if(_0x3812ba[_0x51c433(0x1db)](_0x1fe0f6[_0x51c433(0x1d0)])){_0x14a5a0=_0x1fe0f6[_0x51c433(0x1d0)];const _0x2d7708=_0x2b00c9['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x54c571=_0x2d7708?_0x2d7708[0x1]:null;}else{if(_0x3812ba['startsWith'](_0x51c433(0x232))||_0x3812ba[_0x51c433(0x1db)](_0x51c433(0x1ed)))_0x14a5a0=_0x51c433(0x21a);else{if(_0x3812ba['startsWith'](_0x1fe0f6['SfprC']))_0x14a5a0=_0x51c433(0x24f);else{if(_0x3812ba['startsWith']('ROLLBACK'))_0x14a5a0=_0x1fe0f6[_0x51c433(0x1da)];else{if(_0x3812ba['startsWith'](_0x1fe0f6[_0x51c433(0x20f)]))_0x14a5a0=_0x1fe0f6['WZGUf'];else{if(_0x3812ba['startsWith'](_0x1fe0f6['KgDAe']))_0x14a5a0=_0x1fe0f6['rAGEn'];else _0x3812ba[_0x51c433(0x1db)](_0x1fe0f6['TlgoA'])&&(_0x14a5a0=_0x51c433(0x218));}}}}}}}}return{'type':_0x14a5a0,'table':_0x54c571};},startQueryTimer=()=>{const _0x3d2243={'qqUIf':function(_0x3fa7bb,_0x360e89){return _0x3fa7bb+_0x360e89;}},_0x12f345=process['hrtime']();return()=>{const _0x8be4bd=a0_0x39bb,[_0x3bc664,_0x6170c2]=process['hrtime'](_0x12f345);return parseFloat(_0x3d2243[_0x8be4bd(0x23f)](_0x3bc664*0x3e8,_0x6170c2/0xf4240)['toFixed'](0x2));};},logQuery=(_0x1bd862,_0x42b419=[],_0x24b1c6={})=>{const _0x1a9709=a0_0x1dde4d,_0x5abe52={'UGtry':_0x1a9709(0x1d4),'zjeqv':function(_0x137687,_0x32ad75){return _0x137687!==_0x32ad75;},'yZDzj':function(_0x46f6d0,_0xb00736){return _0x46f6d0!==_0xb00736;},'PQWdl':_0x1a9709(0x1c1),'FUvuc':_0x1a9709(0x1bf),'vSODj':'info','wnFJb':function(_0x43d7f8,_0x1447dd,_0xb33dd1){return _0x43d7f8(_0x1447dd,_0xb33dd1);}};if(!sqlLogEnabled){logger['debug']({'event':_0x5abe52['UGtry'],'query':_0x1bd862['substring'](0x0,0xc8),'paramCount':_0x42b419['length']},_0x1a9709(0x20b));return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x1a9709(0x1ee)}=_0x24b1c6,{type:_0x17e4b9,table:_0xb76754}=parseQueryMetadata(_0x1bd862),_0xe3e977={'event':'sql_query','queryType':_0x17e4b9,'table':_0xb76754,'query':_0x1bd862,'paramCount':_0x42b419[_0x1a9709(0x216)],'dbType':dbType};sqlLogParams&&_0x42b419['length']>0x0&&(_0xe3e977[_0x1a9709(0x24a)]=redactSensitiveParams(_0x42b419,_0x1bd862));_0x5abe52['zjeqv'](duration,null)&&(_0xe3e977['durationMs']=duration,_0xe3e977[_0x1a9709(0x1a8)]=duration>sqlLogSlowThreshold);rowsAffected!==null&&(_0xe3e977['rowsAffected']=rowsAffected);const _0x192c22=_0xb76754||'unknown';let _0x267aed='['+_0x17e4b9+']\x20'+_0x192c22;_0x5abe52['yZDzj'](duration,null)&&(_0x267aed+='\x20('+duration+'ms)');const _0x5dbcc2=duration!==null&&duration>sqlLogSlowThreshold;let _0x5b89a4=_0x5abe52[_0x1a9709(0x240)];if(_0x5dbcc2)_0x267aed+=_0x1a9709(0x1ea),_0x5b89a4=_0x5abe52[_0x1a9709(0x1d7)],logger['warn'](_0xe3e977,_0x267aed);else sqlLogLevel===_0x5abe52['vSODj']?(_0x5b89a4='info',logger['info'](_0xe3e977,_0x267aed)):logger[_0x1a9709(0x1c1)](_0xe3e977,_0x267aed);_0x5abe52[_0x1a9709(0x1aa)](writeToFileLog,{..._0xe3e977,'level':_0x5b89a4,'msg':_0x267aed,'time':new Date()['toISOString']()},_0x5b89a4);},logTransaction=(_0x3f033a,_0x286b09)=>{const _0x4909bb=a0_0x1dde4d,_0x4c8975={'yjLlB':'db_transaction','oQsCx':function(_0x5cfc89,_0x221327,_0x59e7c6){return _0x5cfc89(_0x221327,_0x59e7c6);},'xCuHw':'debug'},_0x653ef8={'event':_0x4c8975[_0x4909bb(0x1a3)],'status':_0x3f033a,'queryCount':_0x286b09},_0x29aa1d='Transaction\x20'+_0x3f033a;logger['debug'](_0x653ef8,_0x29aa1d),_0x4c8975['oQsCx'](writeToFileLog,{..._0x653ef8,'level':_0x4c8975['xCuHw'],'msg':_0x29aa1d,'time':new Date()[_0x4909bb(0x1fe)]()},_0x4909bb(0x1c1));},redactObject=_0x29e7c7=>{const _0x3f5a37=a0_0x1dde4d,_0x2cfaea={'eoWgp':function(_0x2f9817,_0x505597){return _0x2f9817!==_0x505597;},'DkGgl':'passwd','rSFUh':_0x3f5a37(0x1e1),'rfMIv':_0x3f5a37(0x23d),'CfnFQ':_0x3f5a37(0x1d1),'YyfkU':'cvv','rrOyP':_0x3f5a37(0x226),'dJzzK':_0x3f5a37(0x23c),'WMYTu':function(_0x300b85,_0x3c72af){return _0x300b85===_0x3c72af;},'JAAOj':'object'};if(!_0x29e7c7||_0x2cfaea[_0x3f5a37(0x1c5)](typeof _0x29e7c7,'object'))return _0x29e7c7;const _0x639eab=[_0x3f5a37(0x244),_0x2cfaea[_0x3f5a37(0x1ad)],'pwd',_0x2cfaea['rSFUh'],_0x3f5a37(0x1e0),'apikey',_0x2cfaea[_0x3f5a37(0x215)],_0x3f5a37(0x1c7),_0x2cfaea[_0x3f5a37(0x250)],'credit_card',_0x2cfaea[_0x3f5a37(0x1dd)],'ssn','pin','private_key',_0x2cfaea['rrOyP'],'refresh_token',_0x2cfaea[_0x3f5a37(0x1e5)]],_0x4398bc=Array[_0x3f5a37(0x223)](_0x29e7c7)?[..._0x29e7c7]:{..._0x29e7c7};for(const _0x34acab of Object['keys'](_0x4398bc)){const _0x5d5132=_0x34acab['toLowerCase']();if(_0x639eab['some'](_0x232acb=>_0x5d5132[_0x3f5a37(0x1d6)](_0x232acb)))_0x4398bc[_0x34acab]=_0x3f5a37(0x1cd);else _0x2cfaea['WMYTu'](typeof _0x4398bc[_0x34acab],_0x2cfaea[_0x3f5a37(0x1cb)])&&_0x2cfaea['eoWgp'](_0x4398bc[_0x34acab],null)&&(_0x4398bc[_0x34acab]=redactObject(_0x4398bc[_0x34acab]));}return _0x4398bc;},logError=(_0x51f879,_0x5a4537={},_0x762d52=null)=>{const _0x424ff2=a0_0x1dde4d,_0x369a0a={'YhqGd':_0x424ff2(0x207),'btpTW':_0x424ff2(0x1f8)},_0x4b3bf0={'event':_0x369a0a[_0x424ff2(0x21b)],'errorName':_0x51f879[_0x424ff2(0x236)]||_0x369a0a[_0x424ff2(0x1c2)],'errorMessage':_0x51f879[_0x424ff2(0x1b8)],'errorCode':_0x51f879['code']||null,'stack':_0x51f879[_0x424ff2(0x20c)],..._0x5a4537},_0x188730=_0x762d52||_0x424ff2(0x22b)+_0x51f879['message'];logger['error'](_0x4b3bf0,_0x188730),writeToFileLog({..._0x4b3bf0,'level':'error','msg':_0x188730,'time':new Date()[_0x424ff2(0x1fe)]()},_0x369a0a['YhqGd']);},logFatalError=(_0x1ce0c3,_0x2a947b={},_0x3b3c9f=null)=>{const _0x567c60=a0_0x1dde4d,_0x40a29b={'WzvVI':_0x567c60(0x1f8),'gHJEs':_0x567c60(0x238),'ZfsIu':function(_0x5331b9,_0x27cb92,_0x3cd80d){return _0x5331b9(_0x27cb92,_0x3cd80d);}},_0x54f606={'event':_0x567c60(0x1d8),'errorName':_0x1ce0c3[_0x567c60(0x236)]||_0x40a29b['WzvVI'],'errorMessage':_0x1ce0c3[_0x567c60(0x1b8)],'errorCode':_0x1ce0c3[_0x567c60(0x1ba)]||null,'stack':_0x1ce0c3['stack'],'severity':_0x40a29b['gHJEs'],..._0x2a947b},_0x3db052=_0x3b3c9f||'FATAL:\x20'+_0x1ce0c3[_0x567c60(0x1b8)];logger[_0x567c60(0x1bd)](_0x54f606,_0x3db052),_0x40a29b[_0x567c60(0x208)](writeToFileLog,{..._0x54f606,'level':_0x567c60(0x1bd),'msg':_0x3db052,'time':new Date()['toISOString']()},'error');},logHttpError=(_0xd3a057,_0x26bbf9,_0x38415a={})=>{const _0x2ba1ac=a0_0x1dde4d,_0x39055c={'pbXsH':'Error','rMaZy':_0x2ba1ac(0x220),'ysZAp':_0x2ba1ac(0x207),'xrghO':'warn','vOJLh':function(_0x2a0a1d,_0x272c30){return _0x2a0a1d>=_0x272c30;}},_0x5a1c56={'event':'http_error','errorName':_0xd3a057[_0x2ba1ac(0x236)]||_0x39055c[_0x2ba1ac(0x1b6)],'errorMessage':_0xd3a057['message'],'errorCode':_0xd3a057['code']||_0xd3a057[_0x2ba1ac(0x243)]||0x1f4,'stack':_0xd3a057['stack'],'method':_0x26bbf9?.[_0x2ba1ac(0x1a7)],'url':_0x26bbf9?.['url']||_0x26bbf9?.['originalUrl'],'path':_0x26bbf9?.[_0x2ba1ac(0x1b1)],'ip':_0x26bbf9?.['ip']||_0x26bbf9?.[_0x2ba1ac(0x1c6)]?.['remoteAddress'],'userAgent':_0x26bbf9?.[_0x2ba1ac(0x213)]?.(_0x39055c['rMaZy']),'requestId':_0x26bbf9?.['id']||_0x26bbf9?.['headers']?.[_0x2ba1ac(0x1b5)],'body':_0x26bbf9?.[_0x2ba1ac(0x1e2)]?redactObject(_0x26bbf9[_0x2ba1ac(0x1e2)]):undefined,'query':_0x26bbf9?.['query'],..._0x38415a},_0xb57c8=_0xd3a057[_0x2ba1ac(0x243)]||_0xd3a057['status']||0x1f4,_0x3ddf5b='HTTP\x20'+_0xb57c8+':\x20'+_0xd3a057['message'];_0xb57c8>=0x1f4?logger[_0x2ba1ac(0x207)](_0x5a1c56,_0x3ddf5b):logger['warn'](_0x5a1c56,_0x3ddf5b),writeToFileLog({..._0x5a1c56,'level':_0xb57c8>=0x1f4?_0x39055c[_0x2ba1ac(0x1f4)]:_0x39055c[_0x2ba1ac(0x214)],'msg':_0x3ddf5b,'time':new Date()[_0x2ba1ac(0x1fe)]()},_0x39055c['vOJLh'](_0xb57c8,0x1f4)?_0x39055c['ysZAp']:_0x39055c['xrghO']);},logUncaughtError=(_0x2a779e,_0x39934c)=>{const _0x2d223a=a0_0x1dde4d,_0x4867e9={'RgjSi':'Error','RExnu':function(_0x3689f8,_0x3678a1){return _0x3689f8(_0x3678a1);},'tVXpK':'CRITICAL'},_0x338109={'event':_0x2a779e,'errorName':_0x39934c?.[_0x2d223a(0x236)]||_0x4867e9[_0x2d223a(0x231)],'errorMessage':_0x39934c?.['message']||_0x4867e9['RExnu'](String,_0x39934c),'errorCode':_0x39934c?.['code']||null,'stack':_0x39934c?.['stack'],'severity':_0x4867e9['tVXpK'],'processId':process[_0x2d223a(0x21d)],'memoryUsage':process[_0x2d223a(0x1d3)](),'uptime':process[_0x2d223a(0x224)]()},_0x256dc6='['+_0x2a779e[_0x2d223a(0x1f0)]()+']\x20'+(_0x39934c?.['message']||_0x39934c);logger['fatal'](_0x338109,_0x256dc6),writeToFileLog({..._0x338109,'level':_0x2d223a(0x1bd),'msg':_0x256dc6,'time':new Date()[_0x2d223a(0x1fe)]()},'error');},setupGlobalErrorHandlers=()=>{const _0x558b0a=a0_0x1dde4d,_0x2e661d={'jvjQv':function(_0x3cd06c,_0x135e67,_0x14d161){return _0x3cd06c(_0x135e67,_0x14d161);},'LnKrp':function(_0x1b6694,_0x4f88e6){return _0x1b6694 instanceof _0x4f88e6;},'IQLuQ':function(_0x67d85f,_0x225c09){return _0x67d85f(_0x225c09);},'TrBrv':_0x558b0a(0x1a5),'lEfMv':_0x558b0a(0x1b0),'tlqqY':'global_error_handlers_setup','NQILa':_0x558b0a(0x24e),'ixPwj':_0x558b0a(0x217)};process['on'](_0x558b0a(0x19f),_0x5c56ec=>{const _0x162b4f=_0x558b0a;_0x2e661d[_0x162b4f(0x1cc)](logUncaughtError,'uncaughtException',_0x5c56ec),setTimeout(()=>{const _0x826bef=_0x162b4f;process[_0x826bef(0x227)](0x1);},0x3e8);}),process['on'](_0x2e661d['lEfMv'],(_0x42796e,_0x2a076b)=>{const _0x146c17=_0x558b0a,_0x330d93=_0x2e661d[_0x146c17(0x1fc)](_0x42796e,Error)?_0x42796e:new Error(_0x2e661d[_0x146c17(0x230)](String,_0x42796e));logUncaughtError(_0x146c17(0x1b0),_0x330d93);}),process['on']('warning',_0x299aeb=>{const _0x4a8fed=_0x558b0a;logger[_0x4a8fed(0x1bf)]({'event':_0x2e661d[_0x4a8fed(0x1e9)],'name':_0x299aeb['name'],'message':_0x299aeb['message'],'stack':_0x299aeb[_0x4a8fed(0x20c)]},'Process\x20Warning:\x20'+_0x299aeb['message']);});const _0x100119={'event':_0x2e661d['tlqqY']},_0x4fe39e=_0x2e661d['NQILa'];logger[_0x558b0a(0x217)](_0x100119,_0x4fe39e),writeToFileLog({..._0x100119,'level':_0x2e661d['ixPwj'],'msg':_0x4fe39e,'time':new Date()['toISOString']()},'info');},createErrorHandlerMiddleware=()=>{const _0x45fd08=a0_0x1dde4d,_0x2d3ad4={'rFVrR':_0x45fd08(0x1b5)};return(_0x5a3c53,_0x39e6c1,_0x363a5a,_0x44d2ef)=>{const _0x572c69=_0x45fd08;logHttpError(_0x5a3c53,_0x39e6c1);const _0x1ae983=_0x5a3c53[_0x572c69(0x243)]||_0x5a3c53['status']||0x1f4;_0x363a5a[_0x572c69(0x1c3)](_0x1ae983)['json']({'success':![],'error':_0x1ae983>=0x1f4?_0x572c69(0x1be):_0x5a3c53['message'],'requestId':_0x39e6c1['id']||_0x39e6c1[_0x572c69(0x20d)]?.[_0x2d3ad4[_0x572c69(0x242)]]||null});};};module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
1
+ const a0_0x33da07=a0_0x5e1c;(function(_0x3c5aed,_0xb47eec){const _0x5d0136=a0_0x5e1c,_0x466b00=_0x3c5aed();while(!![]){try{const _0x30e4e1=parseInt(_0x5d0136(0x83))/0x1*(-parseInt(_0x5d0136(0xa9))/0x2)+parseInt(_0x5d0136(0x84))/0x3*(parseInt(_0x5d0136(0xbf))/0x4)+parseInt(_0x5d0136(0x12e))/0x5+-parseInt(_0x5d0136(0xa8))/0x6*(parseInt(_0x5d0136(0xdd))/0x7)+-parseInt(_0x5d0136(0xc7))/0x8*(parseInt(_0x5d0136(0x85))/0x9)+-parseInt(_0x5d0136(0x8b))/0xa*(parseInt(_0x5d0136(0x127))/0xb)+-parseInt(_0x5d0136(0xeb))/0xc*(-parseInt(_0x5d0136(0xd0))/0xd);if(_0x30e4e1===_0xb47eec)break;else _0x466b00['push'](_0x466b00['shift']());}catch(_0x67d368){_0x466b00['push'](_0x466b00['shift']());}}}(a0_0x134d,0xed11f));const pino=require(a0_0x33da07(0xf7)),fs=require('fs'),path=require('path');let logToFile=![],logDir=a0_0x33da07(0x12c),serviceName=a0_0x33da07(0xab),sqlLogEnabled=![],sqlLogLevel=a0_0x33da07(0xfe),sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':a0_0x33da07(0xf9),'ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env']['NODE_ENV']!=='production',logLevel=process['env'][a0_0x33da07(0xb9)]||a0_0x33da07(0xaf);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':a0_0x33da07(0xab),'version':process['env'][a0_0x33da07(0x111)]||'1.0.5','env':process[a0_0x33da07(0x101)][a0_0x33da07(0x10a)]||a0_0x33da07(0xe9)},'timestamp':pino[a0_0x33da07(0xad)][a0_0x33da07(0x105)],'redact':{'paths':['req.headers.authorization','req.headers[\x22x-api-key\x22]','password','token','apiKey','DB_PASSWORD','JWT_SECRET'],'censor':'[REDACTED]'},'serializers':{'req':_0xf59f7f=>({'id':_0xf59f7f['id'],'method':_0xf59f7f['method'],'url':_0xf59f7f['url'],'path':_0xf59f7f[a0_0x33da07(0x86)],'remoteAddress':_0xf59f7f['ip']||_0xf59f7f['connection']?.['remoteAddress']}),'res':_0x199221=>({'statusCode':_0x199221['statusCode'],'headers':_0x199221[a0_0x33da07(0xea)]?.()}),'err':pino[a0_0x33da07(0xe7)]['err']}});function a0_0x5e1c(_0x31349f,_0x55061d){_0x31349f=_0x31349f-0x70;const _0x134db0=a0_0x134d();let _0x5e1c49=_0x134db0[_0x31349f];if(a0_0x5e1c['xDbbTj']===undefined){var _0xfdc54d=function(_0x1221aa){const _0x179729='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x12111c='',_0x4979c5='';for(let _0x2b6dfb=0x0,_0x513c65,_0x288d16,_0x46aa44=0x0;_0x288d16=_0x1221aa['charAt'](_0x46aa44++);~_0x288d16&&(_0x513c65=_0x2b6dfb%0x4?_0x513c65*0x40+_0x288d16:_0x288d16,_0x2b6dfb++%0x4)?_0x12111c+=String['fromCharCode'](0xff&_0x513c65>>(-0x2*_0x2b6dfb&0x6)):0x0){_0x288d16=_0x179729['indexOf'](_0x288d16);}for(let _0x1d4dbf=0x0,_0x1ca821=_0x12111c['length'];_0x1d4dbf<_0x1ca821;_0x1d4dbf++){_0x4979c5+='%'+('00'+_0x12111c['charCodeAt'](_0x1d4dbf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4979c5);};a0_0x5e1c['ppsAUI']=_0xfdc54d,a0_0x5e1c['bINCrr']={},a0_0x5e1c['xDbbTj']=!![];}const _0x445dee=_0x134db0[0x0],_0x275f23=_0x31349f+_0x445dee,_0x5aad01=a0_0x5e1c['bINCrr'][_0x275f23];return!_0x5aad01?(_0x5e1c49=a0_0x5e1c['ppsAUI'](_0x5e1c49),a0_0x5e1c['bINCrr'][_0x275f23]=_0x5e1c49):_0x5e1c49=_0x5aad01,_0x5e1c49;}function initFileLogging(){const _0x58d735=a0_0x33da07,_0x22b8f1={'XVORZ':_0x58d735(0xba),'NTdHw':_0x58d735(0x12c),'RSRwK':function(_0x5363f6,_0xd3a323){return _0x5363f6===_0xd3a323;},'npLEB':_0x58d735(0xfe),'TdKCX':function(_0x11d515,_0x2414d0){return _0x11d515!==_0x2414d0;},'ENjmv':_0x58d735(0x10b),'WLjMJ':function(_0x27556c,_0x3b8580){return _0x27556c(_0x3b8580);},'rLuHv':'error.log','eYyJG':'file_logging_enabled','pYCVX':_0x58d735(0xaf)};if(fileLoggingInitialized)return;logToFile=process['env']['LOG_TO_FILE']===_0x22b8f1['XVORZ'],logDir=process[_0x58d735(0x101)]['LOG_DIR']||_0x22b8f1[_0x58d735(0xf8)],serviceName=process['env']['SERVICE_NAME']||'restforge',sqlLogEnabled=_0x22b8f1['RSRwK'](process['env']['SQL_LOG_ENABLED'],'true'),sqlLogLevel=process[_0x58d735(0x101)]['SQL_LOG_LEVEL']||_0x22b8f1[_0x58d735(0x128)],sqlLogParams=_0x22b8f1[_0x58d735(0x11f)](process[_0x58d735(0x101)]['SQL_LOG_PARAMS'],_0x22b8f1[_0x58d735(0xb0)]),sqlLogSlowThreshold=_0x22b8f1['WLjMJ'](parseInt,process[_0x58d735(0x101)][_0x58d735(0xf5)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x21a79e=path['resolve'](process['cwd'](),logDir);try{!fs['existsSync'](_0x21a79e)&&fs[_0x58d735(0x8a)](_0x21a79e,{'recursive':!![]});}catch(_0x1687c4){console['error'](_0x58d735(0x97)+_0x21a79e+':',_0x1687c4[_0x58d735(0xa1)]),fileLoggingInitialized=!![];return;}const _0x2738b9=path['join'](_0x21a79e,_0x58d735(0xe8)),_0x484e8b=path['join'](_0x21a79e,_0x22b8f1[_0x58d735(0x76)]);try{appLogStream=fs['createWriteStream'](_0x2738b9,{'flags':'a'}),errorLogStream=fs[_0x58d735(0xfd)](_0x484e8b,{'flags':'a'}),fileLoggingInitialized=!![];const _0x48e58e={'event':_0x22b8f1[_0x58d735(0xf1)],'logDir':_0x21a79e,'files':['app.log',_0x22b8f1[_0x58d735(0x76)]]},_0x470bec='File\x20logging\x20enabled:\x20'+_0x21a79e;logger[_0x58d735(0xaf)](_0x48e58e,_0x470bec),writeToFileLog({..._0x48e58e,'level':_0x22b8f1['pYCVX'],'msg':_0x470bec,'time':new Date()[_0x58d735(0x108)]()},_0x22b8f1[_0x58d735(0xdb)]);}catch(_0x4058f8){console[_0x58d735(0xe1)]('Failed\x20to\x20create\x20log\x20streams:',_0x4058f8['message']),fileLoggingInitialized=!![];}}function a0_0x134d(){const _0x80cb8c=['rxjYB3i','w1jfrefdveveoMHHC2HD','iokvKqRILzeGifbYB2PLy3qGicaGidOG','EKLSBK4','zLjfsxC','u3jzru4','CfLdvLG','rfjpua','mty4CKPbzvvg','zw9Nu0C','CxjLwgK','C3fSx3f1zxj5','zxjYB3i','DhjPBq','zgf0ywjHC2u','yMfZzvvYBa','Cg9ZDgDYzxnXBa','Ahj0Aw1L','C3rKu2vYAwfSAxPLCNm','yxbWlMXVzW','zgv2zwXVCg1LBNq','z2v0sgvHzgvYCW','mtjkufDIBLC','B3jPz2LUywXvCMW','weztyKO','A2v5CW','AMjqt04','sgrAC20','zvL5sKC','Dg9mB3DLCKnHC2u','z2HMruG','vfjbtLnbq1rjt05Fq09ntuLu','u1fmx0Xpr19tte9xx1riuKvtse9mra','rermx0fmvevs','CgLUBW','tLrKshC','u1LtoKHioK1noNnZ','DKP5BMi','tgz4CNC','tK9uiefdveLwrq','y3jLyxrLv3jPDgvtDhjLyw0','zgvIDwC','BwfW','q1bMz24','zw52','Ahr0Cf9Yzxf1zxn0','yxbPs2v5','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','AxnVvgLTzq','DMjQthK','BgvUz3rO','Dg9ju09tDhjPBMC','BePZt1m','tK9erv9ftLy','zMfSC2u','D2fYBG','ChDK','AxnbCNjHEq','rgvMyxvSDa','s3Hst3C','qvbqx1zfuLnjt04','Cuz0D0S','Ec1Yzxf1zxn0lwLK','C3rHDhvZ','ChjPDMf0zwTLEq','vvnhyLC','zMf0ywW','thD0CNu','q1jjveLdquW','z2v0','y29UzMLNrMLSzq','w09lxsbqCM9Qzwn0igXVywrLzdOG','ywnJzxnZx3rVA2vU','vhjHBNnHy3rPB24G','vgrlq1G','DeXTv3q','vfjbtLnbq1rjt05FqKvhsu4','zMf0ywXFzxjYB3i','C3rHy2S','yNvHEeG','wur4uuy','rfP5ww0','mtfOy1zZruq','BNbmrui','AfzRzu4','CgLU','sLDqveG','lI9SB2DZ','Ag9ZDa','ntKYotCWmejpvMH4BG','C2Llwui','Dxb0Aw1L','icdIHPiG','uLnqDwG','B2XlCem','icbjBMzVoIaGia','CxvLCNK','Dg9vChbLCKnHC2u','CKX1shy','C2vJCMv0','ANzMBfm','D3jPDgu','CgfKrw5K','zw5KCg9PBNrFCMvNAxn0zxjLza','CMvMCMvZAf90B2TLBG','BMfTzq','zgf0ywjHC2vFy29UzMLN','reiGuxvLCNK','yu5OqNC','vvbeqvrf','yM9KEq','nJa1mZCXugv1Chjf','mteXote3mvzisvLMvG','ndvur2LkExG','Cgf0Aa','CxHLwMe','q09ntuLu','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','BwTKAxjtEw5J','mZe0otGXmhfTs0rVuq','y3DivKe','zxHPDa','wNP1Ag8','rermx0nsrufurq','rgf0ywjHC2u6ia','CgLK','B2jQzwn0','tM9Kzs5QCW','u1rbuLqGvfjbtLnbq1rjt04','BxmP','icbizwfSDgG6ia','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','y3jLzgvUDgLHBa','Dg9Rzw4','DgvZDa','wfv5vgy','v0zQCKK','u2vYDMvYihn0yxj0Aw5NoIa','ifTtte9xxq','t1bcvNC','ChjVAMvJDf9SB2fKzwq','BwvZC2fNzq','C3nU','C2vYDMLJzuLUzM8','CurQB1y','DhLWzq','C3rYAw5NAwz5','s3rkEwK','mJuYntCWBvb1uhLt','mLjXBhngDG','C3rHCNrZv2L0Aa','CMvZDgzVCMDL','yxbPx3nLy3jLDa','C3rKvgLTzuz1BMn0Aw9UCW','ic0G','Aw5MBW','ru5QBxy','wLDur3G','weDPquS','y29Kzq','DxnLCI1Hz2vUDa','r2zWseG','ChjPDMf0zv9RzxK','zw52AxjVBM1LBNq','vu5ltK9xtG','te9hx0XfvKvm','Dhj1zq','CNL6EuW','DefQzKO','AgvHBhrOq2HLy2S','rvHNtNC','mtzTrNzqshm','Bw9KDwXL','Dwzsr3q','B3rW','Awz4BuG','su5trvju','oI8V','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWRILzeGicaGicaGicaGicaGifjfu1rgt1jhrsbsvu5usu1fifnfuLzfuIaGicaGicaGicaGicaGicaG4PwrcUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','mJqXmJy1nNnPBgXhDq','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','y2HPBgq','u0vmrunu','Cg9YDa','zxHWB3j0CW','C3rHDhvZq29Kzq','DNfivNu','wezyzLO','mJi1mdGZnJL2C09my3i','Dw5Oyw5KBgvKuMvQzwn0Aw9U','Bwf0y2G','Aw5JBhvKzxm','C2vYDMvYx3n0yxj0Aw5N'];a0_0x134d=function(){return _0x80cb8c;};return a0_0x134d();}function writeToFileLog(_0xe2e07f,_0x193f2c){const _0x207050=a0_0x33da07,_0x496ae9={'qFtwK':function(_0x7bded0,_0x289c64){return _0x7bded0+_0x289c64;},'EXgNw':function(_0x52e9b5,_0x5cc86e){return _0x52e9b5===_0x5cc86e;},'ufRGt':_0x207050(0xe1)};if(!logToFile||!appLogStream)return;const _0x458bb2={'service':serviceName,..._0xe2e07f},_0x4c747c=_0x496ae9[_0x207050(0x112)](JSON[_0x207050(0xa6)](_0x458bb2),'\x0a');appLogStream[_0x207050(0x79)](_0x4c747c),(_0x496ae9[_0x207050(0xbe)](_0x193f2c,_0x496ae9[_0x207050(0xc1)])||_0x193f2c===_0x207050(0x117))&&(errorLogStream&&errorLogStream[_0x207050(0x79)](_0x4c747c));}const createRequestLogger=(_0x4f39cf={})=>{const _0x1b7388=a0_0x33da07;return logger[_0x1b7388(0xc9)](_0x4f39cf);},logServerStart=_0x192b54=>{const _0x4ed12c=a0_0x33da07,_0x134624={'LDdzj':_0x4ed12c(0x93),'dPDfl':'N/A','rKjQi':function(_0x389bd2,_0x1b2520){return _0x389bd2(_0x1b2520);},'ASMcQ':_0x4ed12c(0x10f),'lJsOS':_0x4ed12c(0xfc),'Pptgv':_0x4ed12c(0xaf)},_0xdaecef=_0x4ed12c(0xc6)+(_0x192b54[_0x4ed12c(0xb7)]||_0x134624['LDdzj'])['padEnd'](0x26)+_0x4ed12c(0xd7)+(_0x192b54['project']||_0x134624['dPDfl'])[_0x4ed12c(0x7a)](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+_0x134624['rKjQi'](String,_0x192b54[_0x4ed12c(0xcb)]||0xbb8)['padEnd'](0x26)+'\x20║\x0a║\x20\x20Config\x20\x20\x20\x20\x20\x20:\x20'+(_0x192b54[_0x4ed12c(0x11b)]||_0x134624['ASMcQ'])[_0x4ed12c(0x7a)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x192b54[_0x4ed12c(0x103)]?'ACTIVE':_0x134624[_0x4ed12c(0x109)])['padEnd'](0x26)+_0x4ed12c(0x104);console['log'](_0xdaecef);const _0x1ba8bd={'event':_0x4ed12c(0xd4),'project':_0x192b54['project'],'port':_0x192b54[_0x4ed12c(0xcb)],'config':_0x192b54[_0x4ed12c(0x11b)],'apiKeyEnabled':!!_0x192b54['apiKey']};logger['info'](_0x1ba8bd),writeToFileLog({..._0x1ba8bd,'level':'info','msg':_0x4ed12c(0x9d)+_0x192b54['project']+'\x20on\x20port\x20'+_0x192b54[_0x4ed12c(0xcb)],'time':new Date()['toISOString']()},_0x134624['Pptgv']);},logServerReady=_0x450e53=>{const _0x241c63=a0_0x33da07,_0x4f600f={'emzMG':'server_ready','zIlnN':'info'},_0x1e9839={'event':_0x4f600f['emzMG'],'port':_0x450e53['port'],'module':_0x450e53[_0x241c63(0xc0)],'healthCheck':_0x450e53[_0x241c63(0xbd)],'serviceInfo':_0x450e53['serviceInfo'],'baseUrl':_0x450e53[_0x241c63(0xe4)]},_0x5eee17=_0x241c63(0xc8)+_0x450e53[_0x241c63(0xcb)];logger[_0x241c63(0xaf)](_0x1e9839,_0x5eee17),writeToFileLog({..._0x1e9839,'level':_0x4f600f[_0x241c63(0xd8)],'msg':_0x5eee17,'time':new Date()[_0x241c63(0x108)]()},_0x4f600f[_0x241c63(0xd8)]),_0x450e53[_0x241c63(0xbd)]&&logger['info'](_0x241c63(0x96)+_0x450e53[_0x241c63(0xbd)]),_0x450e53[_0x241c63(0xa3)]&&logger[_0x241c63(0xaf)](_0x241c63(0x73)+_0x450e53['serviceInfo']),_0x450e53[_0x241c63(0xe4)]&&logger['info']('\x20\x20URL:\x20\x20\x20\x20'+_0x450e53['baseUrl']);},logProjectLoaded=(_0x23b165,_0x207c5e)=>{const _0x5eb955=a0_0x33da07,_0x1f3b3e={'XUyTf':function(_0x426314,_0x7cd0b2,_0x4c5c5c){return _0x426314(_0x7cd0b2,_0x4c5c5c);}},_0x4fe24f={'event':_0x5eb955(0xa0),'project':_0x23b165,'path':_0x207c5e},_0x10d107=_0x5eb955(0x11c)+_0x23b165;logger[_0x5eb955(0xaf)](_0x4fe24f,_0x10d107),_0x1f3b3e[_0x5eb955(0x9b)](writeToFileLog,{..._0x4fe24f,'level':'info','msg':_0x10d107,'time':new Date()['toISOString']()},_0x5eb955(0xaf));},logEndpointRegistered=(_0x3b9b38,_0x535170)=>{const _0x308930=a0_0x33da07,_0x63aac7={'KJbtk':_0x308930(0x7b),'vbjLy':function(_0x3fc09e,_0x5f1e93,_0x1be193){return _0x3fc09e(_0x5f1e93,_0x1be193);},'OPBVw':'debug'},_0xfb8d4f={'event':_0x63aac7['KJbtk'],'endpoint':_0x3b9b38,'route':_0x535170},_0x3f5601=_0x308930(0x70)+_0x3b9b38+':\x20'+_0x535170;logger['debug'](_0xfb8d4f,_0x3f5601),_0x63aac7[_0x308930(0x106)](writeToFileLog,{..._0xfb8d4f,'level':_0x63aac7['OPBVw'],'msg':_0x3f5601,'time':new Date()[_0x308930(0x108)]()},_0x63aac7[_0x308930(0x9f)]);},logDatabaseConfig=_0x456f92=>{const _0x9c2ef5=a0_0x33da07,_0x34fe59={'hVkeN':_0x9c2ef5(0x7e),'USGbW':function(_0x42516b,_0x3fd599,_0x1412cf){return _0x42516b(_0x3fd599,_0x1412cf);},'GfpHH':'debug'},_0x31d0f5={'event':_0x34fe59[_0x9c2ef5(0x129)],'host':_0x456f92[_0x9c2ef5(0x12d)],'port':_0x456f92[_0x9c2ef5(0xcb)],'database':_0x456f92['database'],'type':_0x456f92['type'],'user':_0x456f92['user']},_0x5b4b86=_0x9c2ef5(0x90)+_0x456f92[_0x9c2ef5(0xa5)]+_0x9c2ef5(0xc5)+_0x456f92['host']+':'+_0x456f92[_0x9c2ef5(0xcb)]+'/'+_0x456f92[_0x9c2ef5(0xe3)];logger['debug'](_0x31d0f5,_0x5b4b86),_0x34fe59[_0x9c2ef5(0x116)](writeToFileLog,{..._0x31d0f5,'level':_0x34fe59[_0x9c2ef5(0xb5)],'msg':_0x5b4b86,'time':new Date()[_0x9c2ef5(0x108)]()},_0x34fe59[_0x9c2ef5(0xb5)]);},logRequest=(_0x4dff08,_0x57459f,_0x3aa644)=>{const _0x3941f7=a0_0x33da07,_0x55efe8={'JWPTH':function(_0x586971,_0x252f1f){return _0x586971>=_0x252f1f;},'iFSCX':_0x3941f7(0xe1),'WFjrI':function(_0x296615,_0x4effe3,_0x48ced8){return _0x296615(_0x4effe3,_0x48ced8);}},_0x32b121={'event':_0x3941f7(0x102),'method':_0x4dff08['method'],'path':_0x4dff08[_0x3941f7(0x86)],'statusCode':_0x57459f[_0x3941f7(0xcd)],'durationMs':_0x3aa644,'ip':_0x4dff08['ip']},_0xda015d=_0x4dff08['method']+'\x20'+_0x4dff08[_0x3941f7(0x86)]+_0x3941f7(0xae)+_0x57459f[_0x3941f7(0xcd)]+'\x20('+_0x3aa644+'ms)';let _0x4448d8=_0x3941f7(0xaf);if(_0x55efe8[_0x3941f7(0x12b)](_0x57459f['statusCode'],0x1f4))_0x4448d8=_0x55efe8['iFSCX'],logger['error'](_0x32b121,_0xda015d);else _0x57459f['statusCode']>=0x190?(_0x4448d8=_0x3941f7(0x10c),logger[_0x3941f7(0x10c)](_0x32b121,_0xda015d)):logger['info'](_0x32b121,_0xda015d);_0x55efe8[_0x3941f7(0x9c)](writeToFileLog,{..._0x32b121,'level':_0x4448d8,'msg':_0xda015d,'time':new Date()['toISOString']()},_0x4448d8);},SENSITIVE_PARAM_PATTERNS=['password','passwd','pwd','token','access_token','refresh_token',a0_0x33da07(0x77),a0_0x33da07(0xac),'apikey','api_key',a0_0x33da07(0x98),'credentials','pin',a0_0x33da07(0xc2),a0_0x33da07(0xb6),'privatekey'],redactSensitiveParams=(_0x5d29d7,_0x211a9a)=>{const _0x53d7d8=a0_0x33da07,_0x4799d4={'tLmWt':function(_0x1fb169,_0x794205){return _0x1fb169===_0x794205;},'RSPuh':'string','LbWGr':function(_0x279e2a,_0x3497d8){return _0x279e2a>_0x3497d8;},'ifxmH':'[REDACTED:token]'};if(!_0x5d29d7||_0x5d29d7['length']===0x0)return _0x5d29d7;const _0x342f3c=_0x211a9a['toLowerCase'](),_0x44af7d=_0x342f3c['match'](/\(([^)]+)\)\s*values/i);let _0x4cf730=[];_0x44af7d&&(_0x4cf730=_0x44af7d[0x1]['split'](',')[_0x53d7d8(0xff)](_0x456bdb=>_0x456bdb[_0x53d7d8(0xe2)]()['toLowerCase']()));const _0x3880b6=_0x342f3c[_0x53d7d8(0xd2)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x3880b6){const _0x589bf2=_0x3880b6[0x1],_0x31a532=_0x589bf2[_0x53d7d8(0xd2)](/(\w+)\s*=/g);_0x31a532&&(_0x4cf730=_0x31a532[_0x53d7d8(0xff)](_0x14c41f=>_0x14c41f['replace'](/\s*=/,'')['trim']()['toLowerCase']()));}return _0x5d29d7[_0x53d7d8(0xff)]((_0x384c54,_0x4dbd5b)=>{const _0x417640=_0x53d7d8;if(_0x4cf730[_0x4dbd5b]){const _0x2eb21d=_0x4cf730[_0x4dbd5b],_0x4ce0f6=SENSITIVE_PARAM_PATTERNS['some'](_0x22f6b0=>_0x2eb21d[_0x417640(0xd3)](_0x22f6b0));if(_0x4ce0f6)return'[REDACTED]';}if(_0x4799d4[_0x417640(0x120)](typeof _0x384c54,_0x4799d4[_0x417640(0x71)])&&_0x4799d4['LbWGr'](_0x384c54['length'],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x417640(0x9a)](_0x384c54)&&_0x384c54['includes']('.'))return _0x4799d4[_0x417640(0xc3)];if(/^[a-fA-F0-9]{32,}$/['test'](_0x384c54))return _0x417640(0xd6);}return _0x384c54;});},parseQueryMetadata=_0x663bcf=>{const _0x2836f0=a0_0x33da07,_0x3248ed={'Lfxrw':_0x2836f0(0xb8),'cwHVA':_0x2836f0(0xca),'ffJVv':'INSERT','DZyYm':_0x2836f0(0x81),'CPfgn':'DELETE','LjmLx':'BEGIN','qxOgT':_0x2836f0(0x88),'buaxH':_0x2836f0(0xf4),'iecKf':'TRANSACTION_ROLLBACK','iegRg':'CREATE','Zzuho':'ALTER','siKYB':_0x2836f0(0xf6),'BWNLE':_0x2836f0(0xdc)},_0x54862a=_0x663bcf[_0x2836f0(0xe2)](),_0x56814d=_0x54862a['toUpperCase']();let _0x3f5c12=_0x3248ed[_0x2836f0(0xfb)],_0x1fa827=null;if(_0x56814d['startsWith'](_0x3248ed['cwHVA'])){_0x3f5c12=_0x3248ed[_0x2836f0(0x8c)];const _0x53910e=_0x54862a[_0x2836f0(0xd2)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1fa827=_0x53910e?_0x53910e[0x1]:null;}else{if(_0x56814d[_0x2836f0(0xaa)](_0x3248ed['ffJVv'])){_0x3f5c12=_0x2836f0(0xc4);const _0x528a2e=_0x54862a[_0x2836f0(0xd2)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1fa827=_0x528a2e?_0x528a2e[0x1]:null;}else{if(_0x56814d['startsWith'](_0x3248ed[_0x2836f0(0x126)])){_0x3f5c12=_0x3248ed[_0x2836f0(0x126)];const _0x3db772=_0x54862a[_0x2836f0(0xd2)](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1fa827=_0x3db772?_0x3db772[0x1]:null;}else{if(_0x56814d['startsWith'](_0x3248ed[_0x2836f0(0x100)])){_0x3f5c12=_0x3248ed['CPfgn'];const _0x33822e=_0x54862a['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1fa827=_0x33822e?_0x33822e[0x1]:null;}else{if(_0x56814d['startsWith'](_0x3248ed['LjmLx'])||_0x56814d[_0x2836f0(0xaa)](_0x2836f0(0x94)))_0x3f5c12=_0x2836f0(0x121);else{if(_0x56814d[_0x2836f0(0xaa)](_0x3248ed['qxOgT']))_0x3f5c12=_0x3248ed[_0x2836f0(0x124)];else{if(_0x56814d[_0x2836f0(0xaa)]('ROLLBACK'))_0x3f5c12=_0x3248ed['iecKf'];else{if(_0x56814d['startsWith'](_0x3248ed['iegRg']))_0x3f5c12=_0x2836f0(0x8f);else{if(_0x56814d['startsWith'](_0x3248ed[_0x2836f0(0x8e)]))_0x3f5c12=_0x3248ed[_0x2836f0(0x12f)];else _0x56814d[_0x2836f0(0xaa)](_0x3248ed['BWNLE'])&&(_0x3f5c12='DDL_DROP');}}}}}}}}return{'type':_0x3f5c12,'table':_0x1fa827};},startQueryTimer=()=>{const _0x33987f={'QWuok':function(_0x4e0075,_0x3795ed){return _0x4e0075/_0x3795ed;}},_0x20ab11=process['hrtime']();return()=>{const _0x4f9679=a0_0x5e1c,[_0x2d992f,_0x1438db]=process[_0x4f9679(0xe6)](_0x20ab11);return parseFloat((_0x2d992f*0x3e8+_0x33987f['QWuok'](_0x1438db,0xf4240))['toFixed'](0x2));};},logQuery=(_0x2d92c6,_0x270739=[],_0x211f2a={})=>{const _0xc5c1ec=a0_0x33da07,_0x2536c9={'nQixV':'db_query','NNoCe':_0xc5c1ec(0x7f),'lNRkR':_0xc5c1ec(0xe5),'aStuO':function(_0x3ac55b,_0x539944){return _0x3ac55b(_0x539944);},'KxROw':function(_0x292b25,_0x19f023){return _0x292b25!==_0x19f023;},'LmhME':'unknown','KfNBJ':'debug','ghfEH':_0xc5c1ec(0x10c),'HdZsm':'info','qreXi':function(_0x5ebba4,_0x1e887e,_0x472641){return _0x5ebba4(_0x1e887e,_0x472641);}};if(!sqlLogEnabled){logger['debug']({'event':_0x2536c9['nQixV'],'query':_0x2d92c6['substring'](0x0,0xc8),'paramCount':_0x270739['length']},_0x2536c9['NNoCe']);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x2536c9['lNRkR']}=_0x211f2a,{type:_0x3df711,table:_0x3a35c8}=_0x2536c9['aStuO'](parseQueryMetadata,_0x2d92c6),_0x21fe34={'event':_0xc5c1ec(0xe0),'queryType':_0x3df711,'table':_0x3a35c8,'query':_0x2d92c6,'paramCount':_0x270739['length'],'dbType':dbType};sqlLogParams&&_0x270739[_0xc5c1ec(0x107)]>0x0&&(_0x21fe34['params']=redactSensitiveParams(_0x270739,_0x2d92c6));duration!==null&&(_0x21fe34['durationMs']=duration,_0x21fe34['isSlow']=duration>sqlLogSlowThreshold);_0x2536c9[_0xc5c1ec(0x110)](rowsAffected,null)&&(_0x21fe34['rowsAffected']=rowsAffected);const _0x1a00a2=_0x3a35c8||_0x2536c9['LmhME'];let _0x2bad33='['+_0x3df711+']\x20'+_0x1a00a2;_0x2536c9[_0xc5c1ec(0x110)](duration,null)&&(_0x2bad33+='\x20('+duration+_0xc5c1ec(0x95));const _0x4a095c=duration!==null&&duration>sqlLogSlowThreshold;let _0x37310e=_0x2536c9['KfNBJ'];if(_0x4a095c)_0x2bad33+=_0xc5c1ec(0x9e),_0x37310e=_0x2536c9[_0xc5c1ec(0xf3)],logger[_0xc5c1ec(0x10c)](_0x21fe34,_0x2bad33);else sqlLogLevel===_0x2536c9[_0xc5c1ec(0xf0)]?(_0x37310e=_0xc5c1ec(0xaf),logger['info'](_0x21fe34,_0x2bad33)):logger['debug'](_0x21fe34,_0x2bad33);_0x2536c9[_0xc5c1ec(0xdf)](writeToFileLog,{..._0x21fe34,'level':_0x37310e,'msg':_0x2bad33,'time':new Date()[_0xc5c1ec(0x108)]()},_0x37310e);},logTransaction=(_0x276c7b,_0x37eca6)=>{const _0x24204a=a0_0x33da07,_0x505039={'ryzyL':'db_transaction','dLMxT':_0x24204a(0xfe)},_0x1a9bf2={'event':_0x505039[_0x24204a(0xbb)],'status':_0x276c7b,'queryCount':_0x37eca6},_0x479d85=_0x24204a(0x11e)+_0x276c7b;logger[_0x24204a(0xfe)](_0x1a9bf2,_0x479d85),writeToFileLog({..._0x1a9bf2,'level':_0x505039['dLMxT'],'msg':_0x479d85,'time':new Date()[_0x24204a(0x108)]()},'debug');},redactObject=_0xcac19d=>{const _0x34b604=a0_0x33da07,_0x5a33c0={'xYfaS':function(_0x33be53,_0x2c86a8){return _0x33be53!==_0x2c86a8;},'fOGld':'password','suUYw':_0x34b604(0x10d),'LeCiX':_0x34b604(0x99),'VhKtl':_0x34b604(0x77),'aNhBw':'apikey','fREIw':'api_key','XFSbJ':'credit_card','nYmgL':_0x34b604(0xb6),'ZWTGx':_0x34b604(0x115),'uRsSV':_0x34b604(0x7c),'IolmF':'object','vqHVu':function(_0x2c431e,_0x4b4771){return _0x2c431e(_0x4b4771);}};if(!_0xcac19d||_0x5a33c0['xYfaS'](typeof _0xcac19d,_0x34b604(0x92)))return _0xcac19d;const _0x5e62c9=[_0x5a33c0['fOGld'],'passwd',_0x5a33c0['suUYw'],_0x5a33c0['LeCiX'],_0x5a33c0['VhKtl'],_0x5a33c0[_0x34b604(0x80)],_0x5a33c0[_0x34b604(0xd9)],'authorization','creditcard',_0x5a33c0[_0x34b604(0xed)],'cvv',_0x34b604(0xa2),_0x34b604(0x12a),_0x5a33c0['nYmgL'],_0x5a33c0[_0x34b604(0xb1)],_0x5a33c0['uRsSV'],_0x34b604(0x11d)],_0x560402=Array[_0x34b604(0x10e)](_0xcac19d)?[..._0xcac19d]:{..._0xcac19d};for(const _0x286090 of Object[_0x34b604(0xee)](_0x560402)){const _0x5cc9ab=_0x286090[_0x34b604(0xf2)]();if(_0x5e62c9['some'](_0x260c2a=>_0x5cc9ab['includes'](_0x260c2a)))_0x560402[_0x286090]='[REDACTED]';else typeof _0x560402[_0x286090]===_0x5a33c0['IolmF']&&_0x560402[_0x286090]!==null&&(_0x560402[_0x286090]=_0x5a33c0[_0x34b604(0xce)](redactObject,_0x560402[_0x286090]));}return _0x560402;},logError=(_0x15406e,_0xc571bc={},_0x2083b6=null)=>{const _0x58aec4=a0_0x33da07,_0x5dbaa2={'jfHPd':'error','KtJyi':function(_0xcd5ca7,_0x259a90,_0x3e8fc4){return _0xcd5ca7(_0x259a90,_0x3e8fc4);}},_0x24344a={'event':_0x5dbaa2['jfHPd'],'errorName':_0x15406e['name']||_0x58aec4(0xd5),'errorMessage':_0x15406e['message'],'errorCode':_0x15406e['code']||null,'stack':_0x15406e[_0x58aec4(0x123)],..._0xc571bc},_0x1cb9dd=_0x2083b6||'Error:\x20'+_0x15406e[_0x58aec4(0xa1)];logger['error'](_0x24344a,_0x1cb9dd),_0x5dbaa2[_0x58aec4(0xa7)](writeToFileLog,{..._0x24344a,'level':_0x58aec4(0xe1),'msg':_0x1cb9dd,'time':new Date()['toISOString']()},_0x58aec4(0xe1));},logFatalError=(_0x1b461a,_0x45e396={},_0xf993b2=null)=>{const _0x33e040=a0_0x33da07,_0x2a1cba={'CRPBX':_0x33e040(0x122),'OXCSj':'Error','qDjoV':'CRITICAL','eogSG':function(_0x4f8039,_0x2e09f9,_0xc069e1){return _0x4f8039(_0x2e09f9,_0xc069e1);},'vJynb':'fatal'},_0xf44f3f={'event':_0x2a1cba['CRPBX'],'errorName':_0x1b461a['name']||_0x2a1cba['OXCSj'],'errorMessage':_0x1b461a['message'],'errorCode':_0x1b461a['code']||null,'stack':_0x1b461a['stack'],'severity':_0x2a1cba[_0x33e040(0xa4)],..._0x45e396},_0x168eb1=_0xf993b2||'FATAL:\x20'+_0x1b461a[_0x33e040(0xa1)];logger['fatal'](_0xf44f3f,_0x168eb1),_0x2a1cba[_0x33e040(0xde)](writeToFileLog,{..._0xf44f3f,'level':_0x2a1cba[_0x33e040(0xfa)],'msg':_0x168eb1,'time':new Date()['toISOString']()},_0x33e040(0xe1));},logHttpError=(_0x136f0e,_0xcde9f8,_0x1d1a0a={})=>{const _0x5542c6=a0_0x33da07,_0x53eaab={'LUUcs':'Error','SrYEN':_0x5542c6(0x113),'qxeZa':function(_0x34922a,_0x1c4a29){return _0x34922a(_0x1c4a29);},'XFXfZ':function(_0x1aa55d,_0x474a5e){return _0x1aa55d>=_0x474a5e;},'WWJut':_0x5542c6(0xe1),'jvflS':_0x5542c6(0x10c)},_0x1df219={'event':'http_error','errorName':_0x136f0e[_0x5542c6(0x7d)]||_0x53eaab['LUUcs'],'errorMessage':_0x136f0e['message'],'errorCode':_0x136f0e['code']||_0x136f0e['statusCode']||0x1f4,'stack':_0x136f0e['stack'],'method':_0xcde9f8?.['method'],'url':_0xcde9f8?.['url']||_0xcde9f8?.[_0x5542c6(0xec)],'path':_0xcde9f8?.['path'],'ip':_0xcde9f8?.['ip']||_0xcde9f8?.['connection']?.['remoteAddress'],'userAgent':_0xcde9f8?.[_0x5542c6(0x11a)]?.(_0x5542c6(0xb4)),'requestId':_0xcde9f8?.['id']||_0xcde9f8?.['headers']?.[_0x53eaab[_0x5542c6(0xda)]],'body':_0xcde9f8?.[_0x5542c6(0x82)]?_0x53eaab[_0x5542c6(0x87)](redactObject,_0xcde9f8[_0x5542c6(0x82)]):undefined,'query':_0xcde9f8?.[_0x5542c6(0x74)],..._0x1d1a0a},_0x56e68a=_0x136f0e[_0x5542c6(0xcd)]||_0x136f0e['status']||0x1f4,_0x57ed9d='HTTP\x20'+_0x56e68a+':\x20'+_0x136f0e[_0x5542c6(0xa1)];_0x56e68a>=0x1f4?logger[_0x5542c6(0xe1)](_0x1df219,_0x57ed9d):logger[_0x5542c6(0x10c)](_0x1df219,_0x57ed9d),writeToFileLog({..._0x1df219,'level':_0x53eaab['XFXfZ'](_0x56e68a,0x1f4)?'error':_0x5542c6(0x10c),'msg':_0x57ed9d,'time':new Date()[_0x5542c6(0x108)]()},_0x53eaab[_0x5542c6(0xcf)](_0x56e68a,0x1f4)?_0x53eaab['WWJut']:_0x53eaab[_0x5542c6(0x78)]);},logUncaughtError=(_0x4435b9,_0x4bc493)=>{const _0x31ec51=a0_0x33da07,_0x14a970={'joJRg':function(_0x3fe2ef,_0x33639e,_0x3f7b98){return _0x3fe2ef(_0x33639e,_0x3f7b98);},'Bqdgl':_0x31ec51(0x117)},_0x96f28f={'event':_0x4435b9,'errorName':_0x4bc493?.[_0x31ec51(0x7d)]||_0x31ec51(0xd5),'errorMessage':_0x4bc493?.[_0x31ec51(0xa1)]||String(_0x4bc493),'errorCode':_0x4bc493?.[_0x31ec51(0xb3)]||null,'stack':_0x4bc493?.[_0x31ec51(0x123)],'severity':_0x31ec51(0x119),'processId':process[_0x31ec51(0x91)],'memoryUsage':process['memoryUsage'](),'uptime':process[_0x31ec51(0x130)]()},_0x526b48='['+_0x4435b9[_0x31ec51(0x75)]()+']\x20'+(_0x4bc493?.[_0x31ec51(0xa1)]||_0x4bc493);logger[_0x31ec51(0x117)](_0x96f28f,_0x526b48),_0x14a970['joJRg'](writeToFileLog,{..._0x96f28f,'level':_0x14a970['Bqdgl'],'msg':_0x526b48,'time':new Date()[_0x31ec51(0x108)]()},'error');},setupGlobalErrorHandlers=()=>{const _0xb35cd6=a0_0x33da07,_0x40bc44={'DKLTQ':function(_0x242b05,_0x318f14,_0x1d4b18){return _0x242b05(_0x318f14,_0x1d4b18);},'jbPON':function(_0x118752,_0x18a1c9,_0xd473db){return _0x118752(_0x18a1c9,_0xd473db);},'Lwtru':'process_warning','XGiAK':'uncaughtException','MTZAk':_0xb35cd6(0xd1),'AHvHn':'warning','olKpC':_0xb35cd6(0x89),'YDxQF':'info'};process['on'](_0x40bc44[_0xb35cd6(0xb2)],_0x261679=>{_0x40bc44['DKLTQ'](logUncaughtError,'uncaughtException',_0x261679),setTimeout(()=>{const _0x19f357=a0_0x5e1c;process[_0x19f357(0x8d)](0x1);},0x3e8);}),process['on'](_0x40bc44['MTZAk'],(_0x309ce4,_0x11b19a)=>{const _0x502bd9=_0xb35cd6,_0x5387c8=_0x309ce4 instanceof Error?_0x309ce4:new Error(String(_0x309ce4));_0x40bc44[_0x502bd9(0xef)](logUncaughtError,_0x502bd9(0xd1),_0x5387c8);}),process['on'](_0x40bc44['AHvHn'],_0x53850d=>{const _0x4d0128=_0xb35cd6;logger['warn']({'event':_0x40bc44[_0x4d0128(0x118)],'name':_0x53850d[_0x4d0128(0x7d)],'message':_0x53850d['message'],'stack':_0x53850d[_0x4d0128(0x123)]},'Process\x20Warning:\x20'+_0x53850d['message']);});const _0x119a99={'event':_0x40bc44[_0xb35cd6(0x72)]},_0x42d178='Global\x20error\x20handlers\x20initialized';logger[_0xb35cd6(0xaf)](_0x119a99,_0x42d178),writeToFileLog({..._0x119a99,'level':'info','msg':_0x42d178,'time':new Date()[_0xb35cd6(0x108)]()},_0x40bc44[_0xb35cd6(0x125)]);},createErrorHandlerMiddleware=()=>{const _0x337071={'tAjfJ':function(_0x49b948,_0x3f6194,_0x1eeefb){return _0x49b948(_0x3f6194,_0x1eeefb);}};return(_0x47d501,_0xf71dc,_0x3255e3,_0x26a9d3)=>{const _0x46a912=a0_0x5e1c;_0x337071[_0x46a912(0xbc)](logHttpError,_0x47d501,_0xf71dc);const _0x42dd19=_0x47d501[_0x46a912(0xcd)]||_0x47d501[_0x46a912(0x114)]||0x1f4;_0x3255e3['status'](_0x42dd19)['json']({'success':![],'error':_0x42dd19>=0x1f4?'Internal\x20server\x20error':_0x47d501[_0x46a912(0xa1)],'requestId':_0xf71dc['id']||_0xf71dc['headers']?.[_0x46a912(0x113)]||null});};};module[a0_0x33da07(0xcc)]={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
@@ -1 +1 @@
1
- const a0_0x371f5f=a0_0x461b;(function(_0x2cba62,_0x250a46){const _0x275b2b=a0_0x461b,_0x335f28=_0x2cba62();while(!![]){try{const _0x11f4de=-parseInt(_0x275b2b(0xab))/0x1*(-parseInt(_0x275b2b(0x9b))/0x2)+-parseInt(_0x275b2b(0xa3))/0x3+parseInt(_0x275b2b(0xb4))/0x4+parseInt(_0x275b2b(0x9f))/0x5*(-parseInt(_0x275b2b(0xac))/0x6)+-parseInt(_0x275b2b(0x91))/0x7+parseInt(_0x275b2b(0xa9))/0x8*(-parseInt(_0x275b2b(0xad))/0x9)+parseInt(_0x275b2b(0x99))/0xa;if(_0x11f4de===_0x250a46)break;else _0x335f28['push'](_0x335f28['shift']());}catch(_0x544b5d){_0x335f28['push'](_0x335f28['shift']());}}}(a0_0x36f2,0x6287c));function a0_0x461b(_0x319091,_0x2578db){_0x319091=_0x319091-0x90;const _0x36f230=a0_0x36f2();let _0x461b4c=_0x36f230[_0x319091];if(a0_0x461b['MjLVOE']===undefined){var _0x3b71ea=function(_0x42229d){const _0x53988b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5cc066='',_0x40b572='';for(let _0x3d63b4=0x0,_0x1bd98c,_0x1ff9c0,_0x5f1ca4=0x0;_0x1ff9c0=_0x42229d['charAt'](_0x5f1ca4++);~_0x1ff9c0&&(_0x1bd98c=_0x3d63b4%0x4?_0x1bd98c*0x40+_0x1ff9c0:_0x1ff9c0,_0x3d63b4++%0x4)?_0x5cc066+=String['fromCharCode'](0xff&_0x1bd98c>>(-0x2*_0x3d63b4&0x6)):0x0){_0x1ff9c0=_0x53988b['indexOf'](_0x1ff9c0);}for(let _0x472d63=0x0,_0x32719f=_0x5cc066['length'];_0x472d63<_0x32719f;_0x472d63++){_0x40b572+='%'+('00'+_0x5cc066['charCodeAt'](_0x472d63)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x40b572);};a0_0x461b['uSHtMP']=_0x3b71ea,a0_0x461b['WBdrZr']={},a0_0x461b['MjLVOE']=!![];}const _0x15e13c=_0x36f230[0x0],_0x1043fe=_0x319091+_0x15e13c,_0x1bfd8c=a0_0x461b['WBdrZr'][_0x1043fe];return!_0x1bfd8c?(_0x461b4c=a0_0x461b['uSHtMP'](_0x461b4c),a0_0x461b['WBdrZr'][_0x1043fe]=_0x461b4c):_0x461b4c=_0x1bfd8c,_0x461b4c;}const fs=require('fs')[a0_0x371f5f(0xaa)],path=require('path'),{logger}=require('./logger');class PayloadLoader{constructor(){const _0x7ffe50=a0_0x371f5f,_0x21f5d4={'RbkAx':_0x7ffe50(0x9d)};this['payloadDir']=path['join'](__dirname,_0x21f5d4['RbkAx']),this[_0x7ffe50(0xb6)]=new Map();}async[a0_0x371f5f(0x94)](_0x205219,_0x4fb23a){const _0x1f4c23=a0_0x371f5f,_0x35c501={'OYolz':_0x1f4c23(0x96),'KXpxg':_0x1f4c23(0x9c),'dHihj':_0x1f4c23(0x95)},_0x435a8a=_0x205219+':'+_0x4fb23a;if(this[_0x1f4c23(0xb6)][_0x1f4c23(0xa2)](_0x435a8a))return this['cache'][_0x1f4c23(0xae)](_0x435a8a);const _0xdf8e74=path['join'](this[_0x1f4c23(0xa0)],_0x205219+'_'+_0x4fb23a+_0x1f4c23(0x98));try{const _0x5c085d=await fs['readFile'](_0xdf8e74,_0x35c501[_0x1f4c23(0xa1)]),_0x3c44f5=JSON['parse'](_0x5c085d);return this[_0x1f4c23(0xb6)][_0x1f4c23(0xa5)](_0x435a8a,_0x3c44f5),logger['debug']({'event':'payload_loaded','project':_0x205219,'resource':_0x4fb23a},'Payload\x20loaded\x20successfully'),_0x3c44f5;}catch(_0x2b8184){logger[_0x1f4c23(0x9e)]({'event':_0x35c501[_0x1f4c23(0xb9)],'project':_0x205219,'resource':_0x4fb23a,'error':_0x2b8184['message']},_0x35c501[_0x1f4c23(0xb0)]);throw new Error(_0x1f4c23(0xba)+_0x205219+'_'+_0x4fb23a);}}async[a0_0x371f5f(0x97)](_0x37fff4){const _0x20fdea=a0_0x371f5f,_0x588125={'QDzVS':_0x20fdea(0x9c),'YLoLR':'Failed\x20to\x20load\x20payload\x20by\x20name'},_0x2437de='payload:'+_0x37fff4;if(this[_0x20fdea(0xb6)][_0x20fdea(0xa2)](_0x2437de))return this[_0x20fdea(0xb6)][_0x20fdea(0xae)](_0x2437de);const _0x69b5a2=path[_0x20fdea(0x92)](this[_0x20fdea(0xa0)],_0x37fff4+'.json');try{const _0x205819=await fs['readFile'](_0x69b5a2,'utf8'),_0x2ba17f=JSON[_0x20fdea(0xb2)](_0x205819);return this[_0x20fdea(0xb6)]['set'](_0x2437de,_0x2ba17f),logger[_0x20fdea(0xb8)]({'event':_0x20fdea(0xa7),'payloadName':_0x37fff4},'Payload\x20loaded\x20successfully\x20by\x20name'),_0x2ba17f;}catch(_0x438708){logger['error']({'event':_0x588125['QDzVS'],'payloadName':_0x37fff4,'error':_0x438708['message']},_0x588125[_0x20fdea(0xb1)]);throw new Error('Payload\x20not\x20found:\x20'+_0x37fff4);}}[a0_0x371f5f(0xa4)](_0x1aea3a,_0x20f4d2){const _0x1ec8c3=a0_0x371f5f,_0x2cd7ef={'mtDRE':function(_0x2913eb,_0x72c5f){return _0x2913eb===_0x72c5f;}};return _0x1aea3a['action']&&_0x2cd7ef[_0x1ec8c3(0x93)](_0x1aea3a[_0x1ec8c3(0xb7)][_0x20f4d2],!![]);}[a0_0x371f5f(0x9a)](_0x3e22cd){const _0x7e2433=a0_0x371f5f;return{'columns':_0x3e22cd['fieldName']||[],'filename':_0x3e22cd[_0x7e2433(0xa6)]['replace']('.','-')+'-export','datatablesQuery':_0x3e22cd[_0x7e2433(0xb5)]||null,'columnFormats':_0x3e22cd['columnFormats']||null,'fieldLabels':_0x3e22cd['fieldLabels']||null};}['clearCache'](){const _0x8821b3=a0_0x371f5f,_0x340c41={'mdyHo':_0x8821b3(0xb3)};this[_0x8821b3(0xb6)][_0x8821b3(0xaf)](),logger[_0x8821b3(0x90)]({'event':'payload_cache_cleared'},_0x340c41[_0x8821b3(0xa8)]);}}function a0_0x36f2(){const _0x1daa6f=['Bg9HzfbHEwXVywq','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','DxrMoa','Bg9HzfbHEwXVywrcEu5HBwu','lMPZB24','ntCXmJuYmgDkBNjusa','z2v0rxHWB3j0q29UzMLN','odi3ntu4u2TqvvHX','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','lI4VlI4VCgf5Bg9Hza','zxjYB3i','nJu4mda1sgPAuer5','Cgf5Bg9HzerPCG','t1LVBhO','AgfZ','nJG5mJGZEe5uB3Dt','Axnby3rPB25fBMfIBgvK','C2v0','DgfIBgvoyw1L','Cgf5Bg9Hzf9SB2fKzwq','Bwr5sg8','ogDdr2Lyqq','ChjVBwLZzxm','mxLqs3HmCa','nLHxsK5AEq','ntKWnZyWow5prejMvG','z2v0','y2XLyxi','zeHPAgO','wuXVtfi','CgfYC2u','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','mZaWnJy4mgDRuuzyvG','zgf0yxrHyMXLC1f1zxj5','y2fJAgu','ywn0Aw9U','zgvIDwC','s1HWEgC','ugf5Bg9HzcbUB3qGzM91BMq6ia','Aw5MBW','mJiWnZuWnMjxt2nOtW','AM9PBG','BxreuKu'];a0_0x36f2=function(){return _0x1daa6f;};return a0_0x36f2();}module['exports']=new PayloadLoader();
1
+ function a0_0x293d(){const _0x45e2bd=['AgfZ','CMvHzezPBgu','nJy1ntCYsxbWs1Pu','Cgf5Bg9HzerPCG','CwTkBeW','AM9PBG','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','mZKYnJv2s2DgBeu','odeWnxrtBMHeDa','ntCZmZuYANzJzMDH','BwvZC2fNzq','zgvIDwC','DgfIBgvoyw1L','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','y2fJAgu','CMvWBgfJzq','Bg9HzfbHEwXVywrcEu5HBwu','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','mJGWmdu0ndrPzuzhBwm','mZCZmLL2DfvgDG','Aw5MBW','m3nOA0jJua','mtfAuxjSqxm','lI4VlI4VCgf5Bg9Hza','zxjYB3i','z2v0rxHWB3j0q29UzMLN','lI9SB2DNzxi','z2v0','y29SDw1UrM9YBwf0CW','CgfYC2u','zMLLBgrmywjLBhm','mtHZyKHjqLm','mZe3nJKZn0rQtg5zra','otfnDenZseK','zgf0yxrHyMXLC1f1zxj5','mJCXmdeWCfjsEuzj'];a0_0x293d=function(){return _0x45e2bd;};return a0_0x293d();}const a0_0x42eece=a0_0x4eaa;(function(_0x21c210,_0x3ffd14){const _0x15fae4=a0_0x4eaa,_0x112431=_0x21c210();while(!![]){try{const _0x17c64e=-parseInt(_0x15fae4(0x17b))/0x1*(-parseInt(_0x15fae4(0x16f))/0x2)+-parseInt(_0x15fae4(0x189))/0x3*(-parseInt(_0x15fae4(0x176))/0x4)+-parseInt(_0x15fae4(0x17c))/0x5*(-parseInt(_0x15fae4(0x187))/0x6)+parseInt(_0x15fae4(0x171))/0x7*(parseInt(_0x15fae4(0x17d))/0x8)+parseInt(_0x15fae4(0x170))/0x9+parseInt(_0x15fae4(0x173))/0xa*(parseInt(_0x15fae4(0x18a))/0xb)+-parseInt(_0x15fae4(0x186))/0xc;if(_0x17c64e===_0x3ffd14)break;else _0x112431['push'](_0x112431['shift']());}catch(_0x3ea825){_0x112431['push'](_0x112431['shift']());}}}(a0_0x293d,0x7b8bc));function a0_0x4eaa(_0x1804ca,_0x516891){_0x1804ca=_0x1804ca-0x16a;const _0x293d57=a0_0x293d();let _0x4eaab1=_0x293d57[_0x1804ca];if(a0_0x4eaa['suWkhn']===undefined){var _0x5cf99a=function(_0x33da80){const _0x2b6df5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1134ee='',_0x485926='';for(let _0x1309e5=0x0,_0x9a68ec,_0x38fbec,_0x3913dc=0x0;_0x38fbec=_0x33da80['charAt'](_0x3913dc++);~_0x38fbec&&(_0x9a68ec=_0x1309e5%0x4?_0x9a68ec*0x40+_0x38fbec:_0x38fbec,_0x1309e5++%0x4)?_0x1134ee+=String['fromCharCode'](0xff&_0x9a68ec>>(-0x2*_0x1309e5&0x6)):0x0){_0x38fbec=_0x2b6df5['indexOf'](_0x38fbec);}for(let _0x2d7f46=0x0,_0x4a1b09=_0x1134ee['length'];_0x2d7f46<_0x4a1b09;_0x2d7f46++){_0x485926+='%'+('00'+_0x1134ee['charCodeAt'](_0x2d7f46)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x485926);};a0_0x4eaa['jSWoGX']=_0x5cf99a,a0_0x4eaa['XDRQCA']={},a0_0x4eaa['suWkhn']=!![];}const _0x45d19f=_0x293d57[0x0],_0x38c683=_0x1804ca+_0x45d19f,_0x1088e7=a0_0x4eaa['XDRQCA'][_0x38c683];return!_0x1088e7?(_0x4eaab1=a0_0x4eaa['jSWoGX'](_0x4eaab1),a0_0x4eaa['XDRQCA'][_0x38c683]=_0x4eaab1):_0x4eaab1=_0x1088e7,_0x4eaab1;}const fs=require('fs')['promises'],path=require('path'),{logger}=require(a0_0x42eece(0x16a));class PayloadLoader{constructor(){const _0x56ba9a=a0_0x42eece;this['payloadDir']=path['join'](__dirname,_0x56ba9a(0x18b)),this['cache']=new Map();}async['loadPayload'](_0x4e6b7e,_0xb5cd96){const _0x5523ac=a0_0x42eece,_0x478a62={'rUzvu':'Payload\x20loaded\x20successfully'},_0x1c92ad=_0x4e6b7e+':'+_0xb5cd96;if(this[_0x5523ac(0x182)][_0x5523ac(0x174)](_0x1c92ad))return this[_0x5523ac(0x182)][_0x5523ac(0x16b)](_0x1c92ad);const _0x4e8866=path[_0x5523ac(0x179)](this[_0x5523ac(0x177)],_0x4e6b7e+'_'+_0xb5cd96+'.json');try{const _0x27033e=await fs[_0x5523ac(0x175)](_0x4e8866,'utf8'),_0x52ed9e=JSON['parse'](_0x27033e);return this[_0x5523ac(0x182)]['set'](_0x1c92ad,_0x52ed9e),logger[_0x5523ac(0x17f)]({'event':'payload_loaded','project':_0x4e6b7e,'resource':_0xb5cd96},_0x478a62['rUzvu']),_0x52ed9e;}catch(_0x4d29da){logger[_0x5523ac(0x18c)]({'event':_0x5523ac(0x17a),'project':_0x4e6b7e,'resource':_0xb5cd96,'error':_0x4d29da['message']},_0x5523ac(0x181));throw new Error('Payload\x20not\x20found:\x20'+_0x4e6b7e+'_'+_0xb5cd96);}}async[a0_0x42eece(0x184)](_0x3ee697){const _0x4a8fc7=a0_0x42eece,_0x4a497c={'qkJlL':'payload_loaded','ZOIDR':_0x4a8fc7(0x17a)},_0x484844='payload:'+_0x3ee697;if(this['cache']['has'](_0x484844))return this[_0x4a8fc7(0x182)][_0x4a8fc7(0x16b)](_0x484844);const _0x314919=path['join'](this[_0x4a8fc7(0x177)],_0x3ee697+'.json');try{const _0x3cceed=await fs['readFile'](_0x314919,'utf8'),_0x5c28d0=JSON[_0x4a8fc7(0x16d)](_0x3cceed);return this['cache']['set'](_0x484844,_0x5c28d0),logger[_0x4a8fc7(0x17f)]({'event':_0x4a497c[_0x4a8fc7(0x178)],'payloadName':_0x3ee697},'Payload\x20loaded\x20successfully\x20by\x20name'),_0x5c28d0;}catch(_0x325f3a){logger[_0x4a8fc7(0x18c)]({'event':_0x4a497c['ZOIDR'],'payloadName':_0x3ee697,'error':_0x325f3a[_0x4a8fc7(0x17e)]},_0x4a8fc7(0x185));throw new Error('Payload\x20not\x20found:\x20'+_0x3ee697);}}['isActionEnabled'](_0x2bd938,_0x3e74da){return _0x2bd938['action']&&_0x2bd938['action'][_0x3e74da]===!![];}[a0_0x42eece(0x18d)](_0x3e0181){const _0x273f36=a0_0x42eece;return{'columns':_0x3e0181['fieldName']||[],'filename':_0x3e0181[_0x273f36(0x180)][_0x273f36(0x183)]('.','-')+'-export','datatablesQuery':_0x3e0181[_0x273f36(0x172)]||null,'columnFormats':_0x3e0181[_0x273f36(0x16c)]||null,'fieldLabels':_0x3e0181[_0x273f36(0x16e)]||null};}['clearCache'](){const _0x5799c4=a0_0x42eece;this['cache']['clear'](),logger[_0x5799c4(0x188)]({'event':'payload_cache_cleared'},'Payload\x20cache\x20cleared');}}module['exports']=new PayloadLoader();