@restforgejs/platform 5.0.3 → 5.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/dashboard/create.js +1 -1
  5. package/generators/cli/endpoint/create.js +1 -1
  6. package/generators/cli/processor/create.js +1 -1
  7. package/generators/lib/dbschema-kit/apply-executor.js +15 -1
  8. package/generators/lib/dbschema-kit/dialect/mysql.js +2 -0
  9. package/generators/lib/dbschema-kit/dialect/oracle.js +2 -0
  10. package/generators/lib/dbschema-kit/dialect/postgres.js +3 -0
  11. package/generators/lib/dbschema-kit/dialect/sqlite.js +2 -0
  12. package/generators/lib/dbschema-kit/emitters/alter-table.js +7 -0
  13. package/generators/lib/dbschema-kit/emitters/create-table.js +31 -3
  14. package/generators/lib/dbschema-kit/statement-modifier.js +12 -2
  15. package/generators/lib/payload/payload-runner.js +44 -2
  16. package/generators/lib/payload/schema-diff.js +31 -1
  17. package/generators/lib/templates/dashboard-catalog.js +1 -1
  18. package/generators/lib/templates/db-connection-env.js +1 -1
  19. package/generators/lib/templates/dbschema-catalog.js +1 -1
  20. package/generators/lib/templates/field-validation-catalog.js +1 -1
  21. package/generators/lib/templates/mysql-template.js +1 -1
  22. package/generators/lib/templates/oracle-template.js +1 -1
  23. package/generators/lib/templates/postgres-template.js +1 -1
  24. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  25. package/generators/lib/templates/sqlite-template.js +1 -1
  26. package/generators/lib/utils/database-introspector.js +417 -6
  27. package/generators/lib/validators/argument-validator.js +2 -2
  28. package/integrity-manifest.json +18 -18
  29. package/package.json +4 -2
  30. package/scripts/verify-integrity.js +1 -1
  31. package/server.js +1 -1
  32. package/src/components/handlers/adjust_handler.js +1 -1
  33. package/src/components/handlers/audit_handler.js +1 -1
  34. package/src/components/handlers/delete_handler.js +1 -1
  35. package/src/components/handlers/export_handler.js +1 -1
  36. package/src/components/handlers/import_handler.js +1 -1
  37. package/src/components/handlers/insert_handler.js +1 -1
  38. package/src/components/handlers/update_handler.js +1 -1
  39. package/src/components/handlers/upload_handler.js +1 -1
  40. package/src/components/handlers/workflow_handler.js +1 -1
  41. package/src/components/integrations/webhook.js +1 -1
  42. package/src/consumers/baseConsumer.js +1 -1
  43. package/src/consumers/declarativeMapper.js +1 -1
  44. package/src/consumers/handlers/apiHandler.js +1 -1
  45. package/src/consumers/handlers/consoleHandler.js +1 -1
  46. package/src/consumers/handlers/databaseHandler.js +1 -1
  47. package/src/consumers/handlers/index.js +1 -1
  48. package/src/consumers/handlers/kafkaHandler.js +1 -1
  49. package/src/consumers/index.js +1 -1
  50. package/src/consumers/messageTransformer.js +1 -1
  51. package/src/consumers/validator.js +1 -1
  52. package/src/core/db/dialect/base-dialect.js +1 -1
  53. package/src/core/db/dialect/index.js +1 -1
  54. package/src/core/db/dialect/mysql-dialect.js +1 -1
  55. package/src/core/db/dialect/oracle-dialect.js +1 -1
  56. package/src/core/db/dialect/postgres-dialect.js +1 -1
  57. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  58. package/src/core/db/flatten-helper.js +1 -1
  59. package/src/core/db/query-builder-error.js +1 -1
  60. package/src/core/db/query-builder.js +1 -1
  61. package/src/core/db/relation-helper.js +1 -1
  62. package/src/core/handlers/delete_handler.js +1 -1
  63. package/src/core/handlers/insert_handler.js +1 -1
  64. package/src/core/handlers/update_handler.js +1 -1
  65. package/src/core/models/base-model.js +1 -1
  66. package/src/core/utils/cache-manager.js +1 -1
  67. package/src/core/utils/component-engine.js +1 -1
  68. package/src/core/utils/context-builder.js +1 -1
  69. package/src/core/utils/datetime-formatter.js +1 -1
  70. package/src/core/utils/datetime-parser.js +1 -1
  71. package/src/core/utils/db.js +1 -1
  72. package/src/core/utils/logger.js +1 -1
  73. package/src/core/utils/payload-loader.js +1 -1
  74. package/src/core/utils/security-checks.js +1 -1
  75. package/src/middleware/body-options.js +1 -1
  76. package/src/middleware/cors.js +1 -1
  77. package/src/middleware/idempotency.js +1 -1
  78. package/src/middleware/rate-limiter.js +1 -1
  79. package/src/middleware/request-logger.js +1 -1
  80. package/src/middleware/security-headers.js +1 -1
  81. package/src/models/base-model-mysql.js +1 -1
  82. package/src/models/base-model-oracle.js +1 -1
  83. package/src/models/base-model-sqlite.js +1 -1
  84. package/src/models/base-model.js +1 -1
  85. package/src/pro/caching/redis-client.js +1 -1
  86. package/src/pro/caching/redis-helper.js +1 -1
  87. package/src/pro/consumers/baseConsumer.js +1 -1
  88. package/src/pro/consumers/declarativeMapper.js +1 -1
  89. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  90. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  91. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  92. package/src/pro/consumers/handlers/index.js +1 -1
  93. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  94. package/src/pro/consumers/index.js +1 -1
  95. package/src/pro/consumers/messageTransformer.js +1 -1
  96. package/src/pro/consumers/validator.js +1 -1
  97. package/src/pro/database/base-model-mysql.js +1 -1
  98. package/src/pro/database/base-model-oracle.js +1 -1
  99. package/src/pro/database/base-model-sqlite.js +1 -1
  100. package/src/pro/database/db-mysql.js +1 -1
  101. package/src/pro/database/db-oracle.js +1 -1
  102. package/src/pro/database/db-sqlite.js +1 -1
  103. package/src/pro/excel/excel-generator.js +1 -1
  104. package/src/pro/excel/excel-parser.js +1 -1
  105. package/src/pro/excel/export-service.js +1 -1
  106. package/src/pro/excel/export_handler.js +1 -1
  107. package/src/pro/excel/import-service.js +1 -1
  108. package/src/pro/excel/import-validator.js +1 -1
  109. package/src/pro/excel/import_handler.js +1 -1
  110. package/src/pro/excel/upsert-builder.js +1 -1
  111. package/src/pro/idgen/idgen-routes.js +1 -1
  112. package/src/pro/integrations/lookup-resolver.js +1 -1
  113. package/src/pro/integrations/upload-handler-v2.js +1 -1
  114. package/src/pro/integrations/upload-handler.js +1 -1
  115. package/src/pro/integrations/webhook.js +1 -1
  116. package/src/pro/locking/lock-routes.js +1 -1
  117. package/src/pro/locking/resource-lock-manager.js +1 -1
  118. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  119. package/src/pro/messaging/kafkaService.js +1 -1
  120. package/src/pro/messaging/messagehubService.js +1 -1
  121. package/src/pro/messaging/rabbitmqService.js +1 -1
  122. package/src/pro/scheduler/job-manager.js +1 -1
  123. package/src/pro/scheduler/job-routes.js +1 -1
  124. package/src/pro/scheduler/job-validator.js +1 -1
  125. package/src/pro/storage/base-storage-provider.js +1 -1
  126. package/src/pro/storage/file-metadata-helper.js +1 -1
  127. package/src/pro/storage/index.js +1 -1
  128. package/src/pro/storage/local-storage-provider.js +1 -1
  129. package/src/pro/storage/s3-storage-provider.js +1 -1
  130. package/src/pro/storage/upload-cleanup-job.js +1 -1
  131. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  132. package/src/pro/storage/upload-pending-tracker.js +1 -1
  133. package/src/pro/websocket/broadcast-helper.js +1 -1
  134. package/src/pro/websocket/index.js +1 -1
  135. package/src/pro/websocket/livesync-server.js +1 -1
  136. package/src/pro/websocket/ws-broadcaster.js +1 -1
  137. package/src/services/export-service.js +1 -1
  138. package/src/services/import-service.js +1 -1
  139. package/src/services/kafkaConsumerService.js +1 -1
  140. package/src/services/kafkaService.js +1 -1
  141. package/src/services/messagehubService.js +1 -1
  142. package/src/services/rabbitmqService.js +1 -1
  143. package/src/utils/cache-invalidation-registry.js +1 -1
  144. package/src/utils/cache-manager.js +1 -1
  145. package/src/utils/component-engine.js +1 -1
  146. package/src/utils/config-extractor.js +1 -1
  147. package/src/utils/consumerLogger.js +1 -1
  148. package/src/utils/context-builder.js +1 -1
  149. package/src/utils/dashboard-helpers.js +1 -1
  150. package/src/utils/dateHelper.js +1 -1
  151. package/src/utils/datetime-formatter.js +1 -1
  152. package/src/utils/datetime-parser.js +1 -1
  153. package/src/utils/db-bootstrap.js +1 -1
  154. package/src/utils/db-mysql.js +1 -1
  155. package/src/utils/db-oracle.js +1 -1
  156. package/src/utils/db-sqlite.js +1 -1
  157. package/src/utils/db.js +1 -1
  158. package/src/utils/demo-generator.js +1 -1
  159. package/src/utils/excel-generator.js +1 -1
  160. package/src/utils/excel-parser.js +1 -1
  161. package/src/utils/file-watcher.js +1 -1
  162. package/src/utils/id-generator.js +1 -1
  163. package/src/utils/idempotency-manager.js +1 -1
  164. package/src/utils/import-validator.js +1 -1
  165. package/src/utils/license-client.js +1 -1
  166. package/src/utils/lock-manager.js +1 -1
  167. package/src/utils/logger.js +1 -1
  168. package/src/utils/lookup-resolver.js +1 -1
  169. package/src/utils/payload-loader.js +1 -1
  170. package/src/utils/processor-response.js +1 -1
  171. package/src/utils/rabbitmq.js +1 -1
  172. package/src/utils/redis-client.js +1 -1
  173. package/src/utils/redis-helper.js +1 -1
  174. package/src/utils/request-scope.js +1 -1
  175. package/src/utils/security-checks.js +1 -1
  176. package/src/utils/service-resolver.js +1 -1
  177. package/src/utils/shutdown-coordinator.js +1 -1
  178. package/src/utils/trusted-keys.js +1 -1
  179. package/src/utils/upload-handler.js +1 -1
  180. package/src/utils/upsert-builder.js +1 -1
  181. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x52964c=a0_0xab49;function a0_0x1263(){const _0x85a415=['zM9YBwf0vgLTzxn0yw1W','mtaZnZeWDNf1sKjT','mtm2ndC2meD0s2n4Da','C3bSAxq','CgfKu3rHCNq','mtG2mtC4m1zLswDMqq','z2v0sg91CNm','vMXVCMq','rxjYB3iGzM9YBwf0DgLUzYbKyxrLDgLTztOG','ntfWz2XhD3m','otu4mtuYmg1tCwjVEa','D2fYBG','mJK2nZCWngL5uxjNyG','mJa4mZy3thzZvK1r','zxHiqNi','z2v0rgf0zq','A1jozeu','zgf0zq','ntK0ndm4nwrfBeHmzW','wxnsv2u','zM9YBwf0','BwvZC2fNzq','zM9YBwf0rgf0zq','zM9YBwf0vgLTzq','sw52ywXPzcbKyxrLihzHBhvLoIa'];a0_0x1263=function(){return _0x85a415;};return a0_0x1263();}(function(_0x57cac8,_0xed1fb1){const _0x166127=a0_0xab49,_0x2f5da9=_0x57cac8();while(!![]){try{const _0x281a54=parseInt(_0x166127(0x171))/0x1+parseInt(_0x166127(0x165))/0x2*(parseInt(_0x166127(0x16d))/0x3)+-parseInt(_0x166127(0x166))/0x4+parseInt(_0x166127(0x176))/0x5+-parseInt(_0x166127(0x16e))/0x6+parseInt(_0x166127(0x169))/0x7+parseInt(_0x166127(0x170))/0x8;if(_0x281a54===_0xed1fb1)break;else _0x2f5da9['push'](_0x2f5da9['shift']());}catch(_0x5d5a7e){_0x2f5da9['push'](_0x2f5da9['shift']());}}}(a0_0x1263,0xeeac1));class DateTimeFormatter{static[a0_0x52964c(0x178)](_0x1399aa,_0x17b644,_0x520315){const _0xc6c254=a0_0x52964c,_0x45e795={'kRNdE':_0xc6c254(0x175),'YsRWe':'timestamp','aKCPC':'time'};if(!_0x1399aa)return null;try{if(_0x520315===_0x45e795[_0xc6c254(0x174)])return this[_0xc6c254(0x17a)](_0x1399aa,_0x17b644);else{if(_0x520315===_0x45e795[_0xc6c254(0x177)])return this['formatTimestamp'](_0x1399aa,_0x17b644);else{if(_0x520315===_0x45e795['aKCPC'])return this[_0xc6c254(0x17b)](_0x1399aa,_0x17b644);}}return _0x1399aa;}catch(_0x57f9b9){return console['error'](_0xc6c254(0x16c)+_0x57f9b9[_0xc6c254(0x179)]),_0x1399aa;}}static['formatDate'](_0x7f3502,_0x3e7ddd){const _0x4df1d4=a0_0x52964c,_0xc5a136={'TAEgX':function(_0x44578a,_0x4ebe76){return _0x44578a(_0x4ebe76);}},_0x3053cb=new Date(_0x7f3502);if(isNaN(_0x3053cb['getTime']()))return console['warn'](_0x4df1d4(0x17c)+_0x7f3502),_0x7f3502;const _0x57b01a=String(_0x3053cb['getDate']())[_0x4df1d4(0x168)](0x2,'0'),_0x23433c=_0xc5a136['TAEgX'](String,_0x3053cb['getMonth']()+0x1)[_0x4df1d4(0x168)](0x2,'0'),_0x2ea22c=_0x3053cb['getFullYear'](),_0x3013ba={'dd/MM/yyyy':_0x57b01a+'/'+_0x23433c+'/'+_0x2ea22c,'dd-MM-yyyy':_0x57b01a+'-'+_0x23433c+'-'+_0x2ea22c,'MM/dd/yyyy':_0x23433c+'/'+_0x57b01a+'/'+_0x2ea22c,'yyyy/MM/dd':_0x2ea22c+'/'+_0x23433c+'/'+_0x57b01a,'yyyy-MM-dd':_0x2ea22c+'-'+_0x23433c+'-'+_0x57b01a};return _0x3013ba[_0x3e7ddd]||_0x2ea22c+'-'+_0x23433c+'-'+_0x57b01a;}static[a0_0x52964c(0x17d)](_0x2dff6b,_0x41c5b9){const _0x4e5715=a0_0x52964c,_0x23a903={'Vlord':function(_0xc0375e,_0x4c4e5c){return _0xc0375e+_0x4c4e5c;},'qnKzo':function(_0x3b92e1,_0x1a60cc){return _0x3b92e1(_0x1a60cc);}},_0x3df2a7=new Date(_0x2dff6b);if(isNaN(_0x3df2a7['getTime']()))return console[_0x4e5715(0x16f)]('Invalid\x20timestamp\x20value:\x20'+_0x2dff6b),_0x2dff6b;const _0x44fbdf=String(_0x3df2a7[_0x4e5715(0x173)]())['padStart'](0x2,'0'),_0x19af6a=String(_0x23a903[_0x4e5715(0x16b)](_0x3df2a7['getMonth'](),0x1))['padStart'](0x2,'0'),_0x361d07=_0x3df2a7['getFullYear'](),_0x3b3dc5=String(_0x3df2a7[_0x4e5715(0x16a)]())['padStart'](0x2,'0'),_0x2bbe6c=_0x23a903['qnKzo'](String,_0x3df2a7['getMinutes']())[_0x4e5715(0x168)](0x2,'0'),_0x41e27e=String(_0x3df2a7['getSeconds']())[_0x4e5715(0x168)](0x2,'0'),_0x24f5fa=_0x41c5b9[_0x4e5715(0x167)]('\x20');if(_0x24f5fa['length']!==0x2)return _0x361d07+'-'+_0x19af6a+'-'+_0x44fbdf+'\x20'+_0x3b3dc5+':'+_0x2bbe6c+':'+_0x41e27e;const _0x452a9c=_0x24f5fa[0x0],_0x42b869=_0x24f5fa[0x1],_0x40a71c={'dd/MM/yyyy':_0x44fbdf+'/'+_0x19af6a+'/'+_0x361d07,'dd-MM-yyyy':_0x44fbdf+'-'+_0x19af6a+'-'+_0x361d07,'MM/dd/yyyy':_0x19af6a+'/'+_0x44fbdf+'/'+_0x361d07,'yyyy/MM/dd':_0x361d07+'/'+_0x19af6a+'/'+_0x44fbdf,'yyyy-MM-dd':_0x361d07+'-'+_0x19af6a+'-'+_0x44fbdf},_0x31dc36={'HH:mm':_0x3b3dc5+':'+_0x2bbe6c,'HH:mm:ss':_0x3b3dc5+':'+_0x2bbe6c+':'+_0x41e27e,'hh:mm':_0x3b3dc5+':'+_0x2bbe6c},_0x13754b=_0x40a71c[_0x452a9c]||_0x361d07+'-'+_0x19af6a+'-'+_0x44fbdf,_0x1ece46=_0x31dc36[_0x42b869]||_0x3b3dc5+':'+_0x2bbe6c+':'+_0x41e27e;return _0x13754b+'\x20'+_0x1ece46;}static[a0_0x52964c(0x17b)](_0x2ebebd,_0x188b39){const _0x4b5568=a0_0x52964c,_0x23acf2={'exHBr':function(_0x34188b,_0xc96565){return _0x34188b!==_0xc96565;}};if(_0x23acf2[_0x4b5568(0x172)](typeof _0x2ebebd,'string'))return _0x2ebebd;const _0xafd948=_0x2ebebd['split'](':');if(_0xafd948['length']<0x2)return console['warn']('Invalid\x20time\x20value:\x20'+_0x2ebebd),_0x2ebebd;const _0x471590=_0xafd948[0x0]['padStart'](0x2,'0'),_0x498f23=_0xafd948[0x1]['padStart'](0x2,'0'),_0x54c3d1=_0xafd948[0x2]?_0xafd948[0x2][_0x4b5568(0x167)]('.')[0x0][_0x4b5568(0x168)](0x2,'0'):'00',_0x202860={'HH:mm':_0x471590+':'+_0x498f23,'HH:mm:ss':_0x471590+':'+_0x498f23+':'+_0x54c3d1,'hh:mm':_0x471590+':'+_0x498f23};return _0x202860[_0x188b39]||_0x471590+':'+_0x498f23+':'+_0x54c3d1;}}function a0_0xab49(_0x46dbc5,_0x4d562a){_0x46dbc5=_0x46dbc5-0x165;const _0x126379=a0_0x1263();let _0xab498d=_0x126379[_0x46dbc5];if(a0_0xab49['MrKzXO']===undefined){var _0x4a8bfa=function(_0x273c8f){const _0x2b67e3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1cf8d0='',_0x1ca44e='';for(let _0x1e82ee=0x0,_0xc1ebc2,_0x55fc3f,_0x1c1cf3=0x0;_0x55fc3f=_0x273c8f['charAt'](_0x1c1cf3++);~_0x55fc3f&&(_0xc1ebc2=_0x1e82ee%0x4?_0xc1ebc2*0x40+_0x55fc3f:_0x55fc3f,_0x1e82ee++%0x4)?_0x1cf8d0+=String['fromCharCode'](0xff&_0xc1ebc2>>(-0x2*_0x1e82ee&0x6)):0x0){_0x55fc3f=_0x2b67e3['indexOf'](_0x55fc3f);}for(let _0x186e3e=0x0,_0x22f52c=_0x1cf8d0['length'];_0x186e3e<_0x22f52c;_0x186e3e++){_0x1ca44e+='%'+('00'+_0x1cf8d0['charCodeAt'](_0x186e3e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ca44e);};a0_0xab49['RDgAaj']=_0x4a8bfa,a0_0xab49['VlsUwR']={},a0_0xab49['MrKzXO']=!![];}const _0x4cb3cf=_0x126379[0x0],_0x260f7b=_0x46dbc5+_0x4cb3cf,_0x370dd3=a0_0xab49['VlsUwR'][_0x260f7b];return!_0x370dd3?(_0xab498d=a0_0xab49['RDgAaj'](_0xab498d),a0_0xab49['VlsUwR'][_0x260f7b]=_0xab498d):_0xab498d=_0x370dd3,_0xab498d;}module['exports']=DateTimeFormatter;
1
+ const a0_0x509759=a0_0x4969;function a0_0x4969(_0x3b800f,_0x2fadb9){_0x3b800f=_0x3b800f-0xf9;const _0x18649b=a0_0x1864();let _0x496934=_0x18649b[_0x3b800f];if(a0_0x4969['EJpWtI']===undefined){var _0x282cef=function(_0x155440){const _0x1e4896='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xb56013='',_0xbd5ba8='';for(let _0x3121ca=0x0,_0x1a4ff1,_0x138da0,_0x11dadc=0x0;_0x138da0=_0x155440['charAt'](_0x11dadc++);~_0x138da0&&(_0x1a4ff1=_0x3121ca%0x4?_0x1a4ff1*0x40+_0x138da0:_0x138da0,_0x3121ca++%0x4)?_0xb56013+=String['fromCharCode'](0xff&_0x1a4ff1>>(-0x2*_0x3121ca&0x6)):0x0){_0x138da0=_0x1e4896['indexOf'](_0x138da0);}for(let _0x3dadea=0x0,_0x58f88d=_0xb56013['length'];_0x3dadea<_0x58f88d;_0x3dadea++){_0xbd5ba8+='%'+('00'+_0xb56013['charCodeAt'](_0x3dadea)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xbd5ba8);};a0_0x4969['ystOkF']=_0x282cef,a0_0x4969['Undzhw']={},a0_0x4969['EJpWtI']=!![];}const _0x341f22=_0x18649b[0x0],_0xc86707=_0x3b800f+_0x341f22,_0x3b18fc=a0_0x4969['Undzhw'][_0xc86707];return!_0x3b18fc?(_0x496934=a0_0x4969['ystOkF'](_0x496934),a0_0x4969['Undzhw'][_0xc86707]=_0x496934):_0x496934=_0x3b18fc,_0x496934;}function a0_0x1864(){const _0x51a742=['ntG2nhHuuujzzG','wwDurfK','nZCYodq0mhfUC3DMAW','nJHfDxHIrvC','z2v0tw9UDgG','mZntsMvIzvO','sNvkwgi','zM9YBwf0rgf0zq','mtCWmdKWmM5pvwPAza','rxjYB3iGzM9YBwf0DgLUzYbKyxrLDgLTztOG','zM9YBwf0vgLTzq','mti5mdz5yK9AAKW','sw52ywXPzcb0Aw1LihzHBhvLoIa','sw52ywXPzcb0Aw1LC3rHBxaGDMfSDwu6ia','BgvUz3rO','C3bSAxq','C3rYAw5N','ouHTvuvwvW','z2v0rNvSBfLLyxi','mtyZnZq5mevHr2XjBW','zM9YBwf0','D2fYBG','y29wBMi','qNncvM0','mtq1mdKWndruv25urhG','nLrvDLnYDa','mJmYofDMwwL2Ea','CgfKu3rHCNq','mJy2nJq4meztrvHzDq','vuH3qNG'];a0_0x1864=function(){return _0x51a742;};return a0_0x1864();}(function(_0x554700,_0x277982){const _0x6b74d5=a0_0x4969,_0x5d4f10=_0x554700();while(!![]){try{const _0x37c1d5=parseInt(_0x6b74d5(0x103))/0x1*(parseInt(_0x6b74d5(0x10b))/0x2)+-parseInt(_0x6b74d5(0xfc))/0x3*(-parseInt(_0x6b74d5(0x100))/0x4)+parseInt(_0x6b74d5(0x113))/0x5*(parseInt(_0x6b74d5(0xfb))/0x6)+-parseInt(_0x6b74d5(0x108))/0x7+-parseInt(_0x6b74d5(0x102))/0x8*(-parseInt(_0x6b74d5(0x111))/0x9)+-parseInt(_0x6b74d5(0xfe))/0xa*(parseInt(_0x6b74d5(0x105))/0xb)+-parseInt(_0x6b74d5(0xfa))/0xc;if(_0x37c1d5===_0x277982)break;else _0x5d4f10['push'](_0x5d4f10['shift']());}catch(_0x4233c9){_0x5d4f10['push'](_0x5d4f10['shift']());}}}(a0_0x1864,0x96de4));class DateTimeFormatter{static[a0_0x509759(0x114)](_0x4e0090,_0x21f761,_0x4e81cd){const _0x41fca4=a0_0x509759,_0x2fc085={'JuJXb':'date'};if(!_0x4e0090)return null;try{if(_0x4e81cd===_0x2fc085[_0x41fca4(0x106)])return this[_0x41fca4(0x107)](_0x4e0090,_0x21f761);else{if(_0x4e81cd==='timestamp')return this['formatTimestamp'](_0x4e0090,_0x21f761);else{if(_0x4e81cd==='time')return this[_0x41fca4(0x10a)](_0x4e0090,_0x21f761);}}return _0x4e0090;}catch(_0x23427c){return console['error'](_0x41fca4(0x109)+_0x23427c['message']),_0x4e0090;}}static['formatDate'](_0x2b9a21,_0x2315b8){const _0x186d6b=a0_0x509759,_0x3bce47={'BsBVm':function(_0x5bca6a,_0x287b5c){return _0x5bca6a(_0x287b5c);},'YTJVw':function(_0x4766bb,_0x19bde8){return _0x4766bb+_0x19bde8;}},_0x31f32e=new Date(_0x2b9a21);if(isNaN(_0x31f32e['getTime']()))return console[_0x186d6b(0x115)]('Invalid\x20date\x20value:\x20'+_0x2b9a21),_0x2b9a21;const _0x331d1a=_0x3bce47['BsBVm'](String,_0x31f32e['getDate']())['padStart'](0x2,'0'),_0x57965a=_0x3bce47[_0x186d6b(0xf9)](String,_0x3bce47['YTJVw'](_0x31f32e['getMonth'](),0x1))['padStart'](0x2,'0'),_0x3daffa=_0x31f32e[_0x186d6b(0x112)](),_0x3d8aa4={'dd/MM/yyyy':_0x331d1a+'/'+_0x57965a+'/'+_0x3daffa,'dd-MM-yyyy':_0x331d1a+'-'+_0x57965a+'-'+_0x3daffa,'MM/dd/yyyy':_0x57965a+'/'+_0x331d1a+'/'+_0x3daffa,'yyyy/MM/dd':_0x3daffa+'/'+_0x57965a+'/'+_0x331d1a,'yyyy-MM-dd':_0x3daffa+'-'+_0x57965a+'-'+_0x331d1a};return _0x3d8aa4[_0x2315b8]||_0x3daffa+'-'+_0x57965a+'-'+_0x331d1a;}static['formatTimestamp'](_0xebe09d,_0x1cfc96){const _0x17212c=a0_0x509759,_0x5f2401={'coVnb':function(_0x310699,_0x9c30a3){return _0x310699(_0x9c30a3);},'YgTDY':function(_0x4554fb,_0x48d775){return _0x4554fb(_0x48d775);},'UHwBx':function(_0x47f2b5,_0x291d5b){return _0x47f2b5+_0x291d5b;}},_0x39dbe1=new Date(_0xebe09d);if(isNaN(_0x39dbe1['getTime']()))return console[_0x17212c(0x115)](_0x17212c(0x10d)+_0xebe09d),_0xebe09d;const _0x47c162=_0x5f2401[_0x17212c(0x116)](String,_0x39dbe1['getDate']())['padStart'](0x2,'0'),_0x5e3f3e=_0x5f2401['YgTDY'](String,_0x5f2401[_0x17212c(0xff)](_0x39dbe1[_0x17212c(0x104)](),0x1))['padStart'](0x2,'0'),_0x2a1d4c=_0x39dbe1['getFullYear'](),_0x472b41=_0x5f2401[_0x17212c(0x101)](String,_0x39dbe1['getHours']())['padStart'](0x2,'0'),_0x2b9bce=String(_0x39dbe1['getMinutes']())[_0x17212c(0xfd)](0x2,'0'),_0x209da1=String(_0x39dbe1['getSeconds']())[_0x17212c(0xfd)](0x2,'0'),_0x43170c=_0x1cfc96['split']('\x20');if(_0x43170c[_0x17212c(0x10e)]!==0x2)return _0x2a1d4c+'-'+_0x5e3f3e+'-'+_0x47c162+'\x20'+_0x472b41+':'+_0x2b9bce+':'+_0x209da1;const _0x4c2d26=_0x43170c[0x0],_0x2a5be5=_0x43170c[0x1],_0x43edf3={'dd/MM/yyyy':_0x47c162+'/'+_0x5e3f3e+'/'+_0x2a1d4c,'dd-MM-yyyy':_0x47c162+'-'+_0x5e3f3e+'-'+_0x2a1d4c,'MM/dd/yyyy':_0x5e3f3e+'/'+_0x47c162+'/'+_0x2a1d4c,'yyyy/MM/dd':_0x2a1d4c+'/'+_0x5e3f3e+'/'+_0x47c162,'yyyy-MM-dd':_0x2a1d4c+'-'+_0x5e3f3e+'-'+_0x47c162},_0xe0ed6f={'HH:mm':_0x472b41+':'+_0x2b9bce,'HH:mm:ss':_0x472b41+':'+_0x2b9bce+':'+_0x209da1,'hh:mm':_0x472b41+':'+_0x2b9bce},_0x4439a1=_0x43edf3[_0x4c2d26]||_0x2a1d4c+'-'+_0x5e3f3e+'-'+_0x47c162,_0x43aa5c=_0xe0ed6f[_0x2a5be5]||_0x472b41+':'+_0x2b9bce+':'+_0x209da1;return _0x4439a1+'\x20'+_0x43aa5c;}static['formatTime'](_0x578123,_0x262258){const _0x550faf=a0_0x509759;if(typeof _0x578123!==_0x550faf(0x110))return _0x578123;const _0x1cb476=_0x578123[_0x550faf(0x10f)](':');if(_0x1cb476[_0x550faf(0x10e)]<0x2)return console[_0x550faf(0x115)](_0x550faf(0x10c)+_0x578123),_0x578123;const _0x2a300d=_0x1cb476[0x0][_0x550faf(0xfd)](0x2,'0'),_0x57ec90=_0x1cb476[0x1][_0x550faf(0xfd)](0x2,'0'),_0x19c7ac=_0x1cb476[0x2]?_0x1cb476[0x2][_0x550faf(0x10f)]('.')[0x0][_0x550faf(0xfd)](0x2,'0'):'00',_0x1cee6b={'HH:mm':_0x2a300d+':'+_0x57ec90,'HH:mm:ss':_0x2a300d+':'+_0x57ec90+':'+_0x19c7ac,'hh:mm':_0x2a300d+':'+_0x57ec90};return _0x1cee6b[_0x262258]||_0x2a300d+':'+_0x57ec90+':'+_0x19c7ac;}}module['exports']=DateTimeFormatter;
@@ -1 +1 @@
1
- const a0_0x38f031=a0_0x3af0;function a0_0x3af0(_0xacfa79,_0x2597ce){_0xacfa79=_0xacfa79-0x1d8;const _0x5d5f66=a0_0x5d5f();let _0x3af010=_0x5d5f66[_0xacfa79];if(a0_0x3af0['SQkukw']===undefined){var _0x310fd6=function(_0x251b6f){const _0x1182bc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x373ed6='',_0xc334a8='';for(let _0x55c7bd=0x0,_0x38c31a,_0x27ca58,_0x424294=0x0;_0x27ca58=_0x251b6f['charAt'](_0x424294++);~_0x27ca58&&(_0x38c31a=_0x55c7bd%0x4?_0x38c31a*0x40+_0x27ca58:_0x27ca58,_0x55c7bd++%0x4)?_0x373ed6+=String['fromCharCode'](0xff&_0x38c31a>>(-0x2*_0x55c7bd&0x6)):0x0){_0x27ca58=_0x1182bc['indexOf'](_0x27ca58);}for(let _0x19503d=0x0,_0x41f45e=_0x373ed6['length'];_0x19503d<_0x41f45e;_0x19503d++){_0xc334a8+='%'+('00'+_0x373ed6['charCodeAt'](_0x19503d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc334a8);};a0_0x3af0['rTvLqO']=_0x310fd6,a0_0x3af0['IQJxbj']={},a0_0x3af0['SQkukw']=!![];}const _0x3d81b6=_0x5d5f66[0x0],_0xb64673=_0xacfa79+_0x3d81b6,_0x242ff6=a0_0x3af0['IQJxbj'][_0xb64673];return!_0x242ff6?(_0x3af010=a0_0x3af0['rTvLqO'](_0x3af010),a0_0x3af0['IQJxbj'][_0xb64673]=_0x3af010):_0x3af010=_0x242ff6,_0x3af010;}(function(_0x2f10f9,_0x243915){const _0x5a3f50=a0_0x3af0,_0x2a9d41=_0x2f10f9();while(!![]){try{const _0x27d6c1=parseInt(_0x5a3f50(0x1d9))/0x1*(parseInt(_0x5a3f50(0x1ec))/0x2)+parseInt(_0x5a3f50(0x1dc))/0x3*(-parseInt(_0x5a3f50(0x1fb))/0x4)+parseInt(_0x5a3f50(0x1de))/0x5*(parseInt(_0x5a3f50(0x1e3))/0x6)+-parseInt(_0x5a3f50(0x1e1))/0x7+-parseInt(_0x5a3f50(0x1f2))/0x8*(parseInt(_0x5a3f50(0x1f5))/0x9)+parseInt(_0x5a3f50(0x1df))/0xa+parseInt(_0x5a3f50(0x1f0))/0xb*(parseInt(_0x5a3f50(0x1da))/0xc);if(_0x27d6c1===_0x243915)break;else _0x2a9d41['push'](_0x2a9d41['shift']());}catch(_0x135131){_0x2a9d41['push'](_0x2a9d41['shift']());}}}(a0_0x5d5f,0xa4cb4));function a0_0x5d5f(){const _0x55c593=['zxHWB3j0CW','mtmWnJCWzw5sA21Z','EwvHCG','yvrTvuS','vfzzDu8','nJe5mdi1mePOuKLdDW','ugDfueC','mJa4mtzkuNDnEuW','DgLTzxn0yw1W','D2fYBG','mZCZnxjmuujvza','CgfYC2veyxrL','rxjYB3iGCgfYC2LUzYbKyxrLDgLTztOG','zxjYB3i','s0nLwhO','CgfYC2u','mtuWntGXnKjfrgTvwq','Bw9UDgG','mvbnC1HNqW','ndH5y2jIzxq','C3bSAxq','m1rnsNn2wq','Bwf0y2G','nu1ZwKjZAW','ntK1odGXmhLXrKzmCa','seG6Bw06C3m','odqWodCWmwDdz2DbyG','seG6Bw0','mJuYmtG0mKHMB0DICq','oJaW','zM9YrwfJAa','uKT2C1C','zKfTB1m','yLbTrfO','Bu5XqNy','zgf5'];a0_0x5d5f=function(){return _0x55c593;};return a0_0x5d5f();}class DateTimeParser{static[a0_0x38f031(0x1fa)](_0x9f3b08,_0x24aa51,_0x233ffc){const _0xfcc570=a0_0x38f031,_0x4ffb30={'ridCR':function(_0x4e66c6,_0x31d4ca){return _0x4e66c6===_0x31d4ca;},'bPmDZ':_0xfcc570(0x1f3),'SDmoq':'time'};if(!_0x9f3b08||_0x9f3b08==='')return null;try{if(_0x233ffc==='date')return this[_0xfcc570(0x1f6)](_0x9f3b08,_0x24aa51);else{if(_0x4ffb30['ridCR'](_0x233ffc,_0x4ffb30[_0xfcc570(0x1e8)]))return this['parseTimestamp'](_0x9f3b08,_0x24aa51);else{if(_0x233ffc===_0x4ffb30['SDmoq'])return this['parseTime'](_0x9f3b08,_0x24aa51);}}return _0x9f3b08;}catch(_0x5dd329){return console[_0xfcc570(0x1f8)](_0xfcc570(0x1f7)+_0x5dd329['message']),null;}}static[a0_0x38f031(0x1f6)](_0x2e9118,_0x1cca88){const _0x41e318=a0_0x38f031,_0xd6fad2={'mNqBv':function(_0x2e048c,_0x5282d5){return _0x2e048c===_0x5282d5;},'SizED':'yyyy-MM-dd','TVYuO':'month','RKvsW':_0x41e318(0x1ed),'fAmoS':_0x41e318(0x1ea)};if(!_0x1cca88||_0xd6fad2[_0x41e318(0x1e9)](_0x1cca88,_0xd6fad2['SizED']))return _0x2e9118;const _0x1080ff={'dd/MM/yyyy':{'pattern':/^(\d{2})\/(\d{2})\/(\d{4})$/,'order':['day',_0xd6fad2[_0x41e318(0x1ef)],_0xd6fad2[_0x41e318(0x1e6)]]},'dd-MM-yyyy':{'pattern':/^(\d{2})-(\d{2})-(\d{4})$/,'order':['day',_0xd6fad2['TVYuO'],'year']},'MM/dd/yyyy':{'pattern':/^(\d{2})\/(\d{2})\/(\d{4})$/,'order':[_0xd6fad2['TVYuO'],_0xd6fad2[_0x41e318(0x1e7)],_0xd6fad2[_0x41e318(0x1e6)]]},'yyyy/MM/dd':{'pattern':/^(\d{4})\/(\d{2})\/(\d{2})$/,'order':[_0xd6fad2['RKvsW'],_0x41e318(0x1d8),'day']}},_0x511d76=_0x1080ff[_0x1cca88];if(!_0x511d76)return console['warn']('Unknown\x20date\x20format:\x20'+_0x1cca88+',\x20returning\x20null'),null;const _0x2d7e8b=_0x2e9118[_0x41e318(0x1dd)](_0x511d76['pattern']);if(!_0x2d7e8b)return console[_0x41e318(0x1f4)]('Date\x20value\x20\x22'+_0x2e9118+'\x22\x20doesn\x27t\x20match\x20format\x20\x22'+_0x1cca88+'\x22'),null;const _0x3fa4f7={'day':null,'month':null,'year':null};return _0x511d76['order'][_0x41e318(0x1e5)]((_0xe9d317,_0x10abe7)=>{_0x3fa4f7[_0xe9d317]=_0x2d7e8b[_0x10abe7+0x1];}),_0x3fa4f7[_0x41e318(0x1ed)]+'-'+_0x3fa4f7[_0x41e318(0x1d8)]+'-'+_0x3fa4f7['day'];}static['parseTimestamp'](_0x140857,_0x12c294){const _0x24e009=a0_0x38f031,_0x2f1be1={'PgEPG':function(_0x3f0c91,_0x4b49cf){return _0x3f0c91===_0x4b49cf;},'aTmUK':'yyyy-MM-dd\x20HH:mm:ss','Ppbto':function(_0x42e981,_0x3b04dd){return _0x42e981!==_0x3b04dd;}};if(!_0x12c294||_0x2f1be1[_0x24e009(0x1f1)](_0x12c294,_0x2f1be1[_0x24e009(0x1ee)]))return _0x140857;const _0x52d139=_0x140857['split']('\x20');if(_0x2f1be1['Ppbto'](_0x52d139['length'],0x2))return console[_0x24e009(0x1f4)]('Invalid\x20timestamp\x20format:\x20'+_0x140857),null;const [_0x3aa550,_0x46893c]=_0x52d139,_0x58df52=_0x12c294[_0x24e009(0x1db)]('\x20')[0x0],_0x460e82=this['parseDate'](_0x3aa550,_0x58df52);if(!_0x460e82)return null;const _0x1eccc8=_0x46893c['split'](':')['length']===0x2?_0x46893c+_0x24e009(0x1e4):_0x46893c;return _0x460e82+'\x20'+_0x1eccc8;}static['parseTime'](_0x5a981a,_0x15270b){const _0x27a490=a0_0x38f031,_0x1d4294={'KCeXz':function(_0x505cd5,_0x39a5d8){return _0x505cd5===_0x39a5d8;},'eYRkz':_0x27a490(0x1e2)};if(!_0x15270b||_0x15270b===_0x27a490(0x1e0))return _0x5a981a;if(_0x1d4294[_0x27a490(0x1f9)](_0x15270b,_0x1d4294['eYRkz'])){if(_0x5a981a[_0x27a490(0x1dd)](/^\d{2}:\d{2}$/))return _0x5a981a+':00';}return _0x5a981a;}}module[a0_0x38f031(0x1eb)]=DateTimeParser;
1
+ const a0_0x352963=a0_0x3786;(function(_0x13e51a,_0x397225){const _0x3e5496=a0_0x3786,_0x38d84a=_0x13e51a();while(!![]){try{const _0x40d1f2=-parseInt(_0x3e5496(0xfb))/0x1+parseInt(_0x3e5496(0xfe))/0x2+parseInt(_0x3e5496(0xf6))/0x3*(parseInt(_0x3e5496(0xfc))/0x4)+-parseInt(_0x3e5496(0x10a))/0x5*(-parseInt(_0x3e5496(0xff))/0x6)+parseInt(_0x3e5496(0x113))/0x7*(-parseInt(_0x3e5496(0x107))/0x8)+-parseInt(_0x3e5496(0x106))/0x9*(parseInt(_0x3e5496(0x103))/0xa)+parseInt(_0x3e5496(0xfd))/0xb;if(_0x40d1f2===_0x397225)break;else _0x38d84a['push'](_0x38d84a['shift']());}catch(_0x2afb27){_0x38d84a['push'](_0x38d84a['shift']());}}}(a0_0x5887,0xc06ac));class DateTimeParser{static['parse'](_0x1fcd77,_0x364982,_0x5667c1){const _0x350dff=a0_0x3786,_0x4b9c59={'AWbFx':function(_0x5b2d98,_0x1c5f58){return _0x5b2d98===_0x1c5f58;},'ApBTk':function(_0x1ca775,_0x5e7916){return _0x1ca775===_0x5e7916;}};if(!_0x1fcd77||_0x1fcd77==='')return null;try{if(_0x5667c1==='date')return this[_0x350dff(0xf8)](_0x1fcd77,_0x364982);else{if(_0x4b9c59[_0x350dff(0xf9)](_0x5667c1,_0x350dff(0x101)))return this['parseTimestamp'](_0x1fcd77,_0x364982);else{if(_0x4b9c59[_0x350dff(0x10c)](_0x5667c1,_0x350dff(0x10f)))return this['parseTime'](_0x1fcd77,_0x364982);}}return _0x1fcd77;}catch(_0x4e0586){return console['error']('Error\x20parsing\x20datetime:\x20'+_0x4e0586['message']),null;}}static[a0_0x352963(0xf8)](_0x40f5be,_0x5276fc){const _0x4ebca8=a0_0x352963,_0x5b9cc4={'rqfHT':function(_0x6ded9a,_0x28e42b){return _0x6ded9a+_0x28e42b;},'uBtfm':'yyyy-MM-dd','dQMdb':_0x4ebca8(0x108),'ChYXC':_0x4ebca8(0x109),'TvQcG':'year'};if(!_0x5276fc||_0x5276fc===_0x5b9cc4['uBtfm'])return _0x40f5be;const _0x21e3eb={'dd/MM/yyyy':{'pattern':/^(\d{2})\/(\d{2})\/(\d{4})$/,'order':[_0x5b9cc4[_0x4ebca8(0x105)],_0x5b9cc4['ChYXC'],'year']},'dd-MM-yyyy':{'pattern':/^(\d{2})-(\d{2})-(\d{4})$/,'order':[_0x4ebca8(0x108),_0x5b9cc4[_0x4ebca8(0x104)],_0x5b9cc4['TvQcG']]},'MM/dd/yyyy':{'pattern':/^(\d{2})\/(\d{2})\/(\d{4})$/,'order':['month',_0x5b9cc4[_0x4ebca8(0x105)],_0x5b9cc4[_0x4ebca8(0x10b)]]},'yyyy/MM/dd':{'pattern':/^(\d{4})\/(\d{2})\/(\d{2})$/,'order':[_0x5b9cc4['TvQcG'],_0x5b9cc4['ChYXC'],_0x5b9cc4['dQMdb']]}},_0x1a7a9c=_0x21e3eb[_0x5276fc];if(!_0x1a7a9c)return console['warn'](_0x4ebca8(0x10d)+_0x5276fc+',\x20returning\x20null'),null;const _0x1f2188=_0x40f5be['match'](_0x1a7a9c[_0x4ebca8(0x110)]);if(!_0x1f2188)return console[_0x4ebca8(0xf7)]('Date\x20value\x20\x22'+_0x40f5be+_0x4ebca8(0x102)+_0x5276fc+'\x22'),null;const _0x5cdbb4={'day':null,'month':null,'year':null};return _0x1a7a9c['order']['forEach']((_0x32447d,_0x1dddc3)=>{const _0x1878b6=_0x4ebca8;_0x5cdbb4[_0x32447d]=_0x1f2188[_0x5b9cc4[_0x1878b6(0x10e)](_0x1dddc3,0x1)];}),_0x5cdbb4[_0x4ebca8(0x114)]+'-'+_0x5cdbb4['month']+'-'+_0x5cdbb4['day'];}static[a0_0x352963(0xf2)](_0x245bfc,_0x43d569){const _0x351bbb=a0_0x352963,_0x591a18={'XOqgi':function(_0x4b162f,_0x456c92){return _0x4b162f===_0x456c92;},'mPRdP':'yyyy-MM-dd\x20HH:mm:ss','tAFfz':function(_0x20a99a,_0xcdc998){return _0x20a99a!==_0xcdc998;}};if(!_0x43d569||_0x591a18['XOqgi'](_0x43d569,_0x591a18[_0x351bbb(0x112)]))return _0x245bfc;const _0x15bc55=_0x245bfc[_0x351bbb(0xfa)]('\x20');if(_0x591a18['tAFfz'](_0x15bc55['length'],0x2))return console['warn'](_0x351bbb(0x100)+_0x245bfc),null;const [_0x526609,_0x21e554]=_0x15bc55,_0x1ccab6=_0x43d569['split']('\x20')[0x0],_0x15b3cc=this[_0x351bbb(0xf8)](_0x526609,_0x1ccab6);if(!_0x15b3cc)return null;const _0x5aa7a4=_0x21e554[_0x351bbb(0xfa)](':')[_0x351bbb(0xf4)]===0x2?_0x21e554+_0x351bbb(0xf3):_0x21e554;return _0x15b3cc+'\x20'+_0x5aa7a4;}static['parseTime'](_0x5c0ebf,_0x2285eb){const _0x10ceeb=a0_0x352963,_0x3dd2dc={'GDYCh':function(_0x1d6195,_0xec6503){return _0x1d6195===_0xec6503;},'FKhsn':'HH:mm'};if(!_0x2285eb||_0x2285eb==='HH:mm:ss')return _0x5c0ebf;if(_0x3dd2dc['GDYCh'](_0x2285eb,_0x3dd2dc[_0x10ceeb(0xf5)])){if(_0x5c0ebf['match'](/^\d{2}:\d{2}$/))return _0x5c0ebf+_0x10ceeb(0xf3);}return _0x5c0ebf;}}function a0_0x5887(){const _0x498098=['nti5ntuZB0LrBwHk','nerkCgXmta','oduWntuWoerrBxDTBG','ndG1mtrvy3j0z3i','mJu3mJu5mfrVv0LIzG','sw52ywXPzcb0Aw1LC3rHBxaGzM9YBwf0oIa','DgLTzxn0yw1W','iIbKB2vZBID0ig1HDgnOigzVCM1HDcaI','mtuWD3ryBenq','q2Hzwem','zffnzgi','mZy4nduXBgLyAvDy','mJuZodyZmND5yKXjrG','zgf5','Bw9UDgG','mtv2rxLLD3a','vhzry0C','qxbcvgS','vw5RBM93BIbKyxrLigzVCM1HDdOG','CNfMsfq','DgLTzq','Cgf0DgvYBG','zxHWB3j0CW','Bvbszfa','n1jmAeDTqW','EwvHCG','CgfYC2vuAw1LC3rHBxa','oJaW','BgvUz3rO','rKTOC24','ndK1otGXBxfwzhr0','D2fYBG','CgfYC2veyxrL','qvDIrNG','C3bSAxq'];a0_0x5887=function(){return _0x498098;};return a0_0x5887();}function a0_0x3786(_0x46e548,_0x2edf22){_0x46e548=_0x46e548-0xf2;const _0x588729=a0_0x5887();let _0x3786a5=_0x588729[_0x46e548];if(a0_0x3786['tBWCks']===undefined){var _0x291040=function(_0x5b2fcb){const _0x55b1e5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x485300='',_0x49bb05='';for(let _0x47c2d9=0x0,_0x2a2bfa,_0x22bb85,_0x56c505=0x0;_0x22bb85=_0x5b2fcb['charAt'](_0x56c505++);~_0x22bb85&&(_0x2a2bfa=_0x47c2d9%0x4?_0x2a2bfa*0x40+_0x22bb85:_0x22bb85,_0x47c2d9++%0x4)?_0x485300+=String['fromCharCode'](0xff&_0x2a2bfa>>(-0x2*_0x47c2d9&0x6)):0x0){_0x22bb85=_0x55b1e5['indexOf'](_0x22bb85);}for(let _0x2762a6=0x0,_0x20cb72=_0x485300['length'];_0x2762a6<_0x20cb72;_0x2762a6++){_0x49bb05+='%'+('00'+_0x485300['charCodeAt'](_0x2762a6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49bb05);};a0_0x3786['OKMLYY']=_0x291040,a0_0x3786['cWzdkh']={},a0_0x3786['tBWCks']=!![];}const _0x8d989a=_0x588729[0x0],_0x4dfd80=_0x46e548+_0x8d989a,_0x4bff86=a0_0x3786['cWzdkh'][_0x4dfd80];return!_0x4bff86?(_0x3786a5=a0_0x3786['OKMLYY'](_0x3786a5),a0_0x3786['cWzdkh'][_0x4dfd80]=_0x3786a5):_0x3786a5=_0x4bff86,_0x3786a5;}module[a0_0x352963(0x111)]=DateTimeParser;
@@ -1 +1 @@
1
- const a0_0xcd4c75=a0_0x1305;function a0_0x5a8b(){const _0x1f4e01=['ndjqmde','ndm4mdy2DK1bzeDx','vhHltLO','mZu2mtmYvMvwq25u','BxmSia','q3jLyxrPBMCGBMv3igrHDgfIyxnLihbVB2WGkhbYzxzPB3vZihbVB2WGD2fZignSB3nLzcK','mteWnJq3nK9AuuHQyW','zg16suO','CM9SBgjHy2TFzxjYB3i','BMnwr3O','nda1mtq0AuHlwKPz','tM8Gzgf0ysbMB3vUzc4','CMvSzwfZzq','Cg9ZDgDYzxmXmJm0','BgvUz3rO','vefctevFtK9ux0zpvu5e','Ag9ZDa','zxHWB3j0CW','rxjYB3iGCM9SBgLUzYbIywnRihrYyw5Zywn0Aw9UoIa','qKvhsu4','y29Kzq','C3rHCNq','DKHKrwK','q09otKvdveLptL9fuLjpuG','rejFse9tva','zgjFCg9VBf9HBhjLywr5x2nSB3nLza','CgfYyw1Z','ihjVDW','rgf0ywjHC2uGCg9VBcb3yxmGywXYzwfKEsbJBg9Zzwq','qvvusevoveLdqvrjt05Frvjst1i','zxjYB3i','mJa2muPsy01ZyW','zvb6rLa','ntqZmG','DhjHBNnHy3rPB25Fy29TCgXLDgu','zgf0ywjHC2u','se9Pthe','C3LUDgf4igvYCM9Y','mJiWndyWB2T3qxnQ','uxvLCNKGCMv0DxjUzwqG','mZi2mZaWzwjIA1zr','v2joq2i','CM93q291BNq','mdGWmde','tMHYD0C','v3vWBfa','uK9mtejbq0S','q09ntuLu','DLLcqNm','DwrMvfe','CxvLCNK','rejFue9sva','ANvIu1q','mtC4nZjsA09mufa','CM93CW','C3fS','zgjFy29UBMvJDgLVBL9JAgvJA19LCNjVCG','zgjFCg9VBf9YzwnYzwf0zq','wePbreO','y29UBMvJDa','z21MCxu','rejFtKfnrq','mtvcDhbKvgO','BNDRyxa','zw52','Aw5JBhvKzxm','vhjHBNnHy3rPB24Gy29TBwL0DgvKicG','BwvZC2fNzq','uM9fru0','Cg9ZDgDYzxnXBa'];a0_0x5a8b=function(){return _0x1f4e01;};return a0_0x5a8b();}(function(_0x4f8af6,_0x56bf1f){const _0x3b825c=a0_0x1305,_0x4e8391=_0x4f8af6();while(!![]){try{const _0x1bca8c=-parseInt(_0x3b825c(0x127))/0x1+-parseInt(_0x3b825c(0x14a))/0x2+-parseInt(_0x3b825c(0x151))/0x3+parseInt(_0x3b825c(0x129))/0x4+parseInt(_0x3b825c(0x13f))/0x5*(parseInt(_0x3b825c(0x148))/0x6)+-parseInt(_0x3b825c(0x14d))/0x7+-parseInt(_0x3b825c(0x136))/0x8*(-parseInt(_0x3b825c(0x120))/0x9);if(_0x1bca8c===_0x56bf1f)break;else _0x4e8391['push'](_0x4e8391['shift']());}catch(_0x99936f){_0x4e8391['push'](_0x4e8391['shift']());}}}(a0_0x5a8b,0x1d6e8));const {Pool}=require('pg'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require('./logger'),dbConfig={'host':process['env'][a0_0xcd4c75(0x119)]||'192.168.100.1','port':parseInt(process[a0_0xcd4c75(0x141)][a0_0xcd4c75(0x134)]||a0_0xcd4c75(0x122)),'user':process['env']['DB_USER']||'postgres','password':process['env']['DB_PASSWORD']||a0_0xcd4c75(0x154),'database':process['env'][a0_0xcd4c75(0x13e)]||'dbxa03'};logDatabaseConfig({'host':dbConfig[a0_0xcd4c75(0x111)],'port':dbConfig['port'],'database':dbConfig[a0_0xcd4c75(0x124)],'type':a0_0xcd4c75(0x146),'user':dbConfig['user']});let pool=new Pool(dbConfig),isPoolClosed=![];function a0_0x1305(_0x517d2a,_0x57f019){_0x517d2a=_0x517d2a-0x111;const _0x5a8b2d=a0_0x5a8b();let _0x1305e1=_0x5a8b2d[_0x517d2a];if(a0_0x1305['WuUOcq']===undefined){var _0xfeadb=function(_0x8c997a){const _0x4adaf7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5e3ed2='',_0x3b4d42='';for(let _0x5a3e62=0x0,_0x1d7b97,_0x33d946,_0x30bec0=0x0;_0x33d946=_0x8c997a['charAt'](_0x30bec0++);~_0x33d946&&(_0x1d7b97=_0x5a3e62%0x4?_0x1d7b97*0x40+_0x33d946:_0x33d946,_0x5a3e62++%0x4)?_0x5e3ed2+=String['fromCharCode'](0xff&_0x1d7b97>>(-0x2*_0x5a3e62&0x6)):0x0){_0x33d946=_0x4adaf7['indexOf'](_0x33d946);}for(let _0x30d33f=0x0,_0x32ff24=_0x5e3ed2['length'];_0x30d33f<_0x32ff24;_0x30d33f++){_0x3b4d42+='%'+('00'+_0x5e3ed2['charCodeAt'](_0x30d33f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3b4d42);};a0_0x1305['nNstDP']=_0xfeadb,a0_0x1305['vuaRCn']={},a0_0x1305['WuUOcq']=!![];}const _0x5e7f00=_0x5a8b2d[0x0],_0x41c4c3=_0x517d2a+_0x5e7f00,_0x5ca747=a0_0x1305['vuaRCn'][_0x41c4c3];return!_0x5ca747?(_0x1305e1=a0_0x1305['nNstDP'](_0x1305e1),a0_0x1305['vuaRCn'][_0x41c4c3]=_0x1305e1):_0x1305e1=_0x5ca747,_0x1305e1;}function getPool(){const _0x599b48=a0_0xcd4c75,_0x2ac214={'dmzIJ':_0x599b48(0x13a),'WuplP':_0x599b48(0x14c)};return isPoolClosed&&(logger['info']({'event':_0x2ac214[_0x599b48(0x14e)]},_0x2ac214[_0x599b48(0x12e)]),pool=new Pool(dbConfig),isPoolClosed=![]),pool;}async function executeQuery(_0x5d6593,_0x5ce1ed=[]){const _0x11552b=a0_0xcd4c75,_0x2823e3={'ePzFP':_0x11552b(0x146),'mJuSu':function(_0x3a704d){return _0x3a704d();},'XJADJ':function(_0x26e7d7,_0x51c938,_0x4d76ee,_0x183797){return _0x26e7d7(_0x51c938,_0x4d76ee,_0x183797);},'TxKNZ':'sql_error'},_0x4d4d64=startQueryTimer();try{const _0x576421=getPool(),_0x3381a0=await _0x576421[_0x11552b(0x13c)]();try{const _0x18eae7=await _0x3381a0[_0x11552b(0x133)](_0x5d6593,_0x5ce1ed),_0x3633a2=_0x4d4d64();return logQuery(_0x5d6593,_0x5ce1ed,{'duration':_0x3633a2,'rowsAffected':_0x18eae7['rowCount'],'dbType':_0x2823e3[_0x11552b(0x121)]}),_0x18eae7[_0x11552b(0x137)];}finally{_0x3381a0[_0x11552b(0x153)]();}}catch(_0x59b122){const _0xf7e3c9=_0x2823e3['mJuSu'](_0x4d4d64);_0x2823e3[_0x11552b(0x13b)](logError,_0x59b122,{'event':_0x2823e3[_0x11552b(0x149)],'query':_0x5d6593['substring'](0x0,0x1f4),'paramCount':_0x5ce1ed['length'],'durationMs':_0xf7e3c9,'code':_0x59b122[_0x11552b(0x115)],'dbType':_0x2823e3[_0x11552b(0x121)]},'SQL\x20Error:\x20'+_0x59b122['message']);throw _0x59b122;}}function formatResponse(_0x4494cb,_0x66d3c3=null){const _0xef7608=a0_0xcd4c75,_0x37d6a6={'fBmNz':'UNKNOWN_ERROR','NhrwG':_0xef7608(0x126),'rYpcG':'SYNTAX_ERROR','JYTIH':function(_0x1ba541,_0x56875d){return _0x1ba541===_0x56875d;},'gfOci':_0xef7608(0x147),'maJfe':function(_0x315588,_0x2712a1){return _0x315588===_0x2712a1;},'AewyL':'08006','DHfKP':function(_0x5c67d2,_0x51a474){return _0x5c67d2===_0x51a474;},'ahbGS':function(_0x811fc3,_0x31841e){return _0x811fc3===_0x31841e;}};if(_0x66d3c3){let _0x537a75=_0x37d6a6['fBmNz'];if(_0x66d3c3['message'][_0xef7608(0x142)](_0x37d6a6[_0xef7608(0x12d)]))_0x537a75=_0x37d6a6['rYpcG'];else{if(_0x37d6a6['JYTIH'](_0x66d3c3[_0xef7608(0x115)],_0x37d6a6['gfOci']))_0x537a75=_0xef7608(0x156);else{if(_0x66d3c3['code']==='28P01')_0x537a75=_0xef7608(0x11e);else(_0x37d6a6['maJfe'](_0x66d3c3['code'],_0x37d6a6['AewyL'])||_0x37d6a6['maJfe'](_0x66d3c3[_0xef7608(0x115)],_0xef7608(0x12c)))&&(_0x537a75=_0xef7608(0x118));}}return{'success':![],'message':'Database\x20error:\x20'+_0x66d3c3[_0xef7608(0x144)],'count':-0x1,'error_code':_0x537a75};}else{if(!_0x4494cb||_0x37d6a6['DHfKP'](_0x4494cb[_0xef7608(0x155)],0x0))return{'success':!![],'message':_0xef7608(0x152),'count':0x0,'data':[]};return{'success':!![],'message':_0xef7608(0x128)+_0x4494cb['length']+_0xef7608(0x11c)+(_0x37d6a6['ahbGS'](_0x4494cb['length'],0x1)?'':'s')+'.','count':_0x4494cb['length'],'data':_0x4494cb};}}async function closePool(){const _0x39f586=a0_0xcd4c75,_0x1d438a={'jubST':'Database\x20pool\x20closed\x20successfully','udfTQ':'db_pool_close_error','ueWKm':_0x39f586(0x11a)};if(!isPoolClosed)try{isPoolClosed=!![],await pool['end'](),logger['info']({'event':'db_pool_closed'},_0x1d438a[_0x39f586(0x135)]);}catch(_0x3ee7fc){logError(_0x3ee7fc,{'event':_0x1d438a[_0x39f586(0x132)]},'Error\x20closing\x20database\x20pool:\x20'+_0x3ee7fc[_0x39f586(0x144)]);}else logger['debug']({'event':_0x1d438a['ueWKm']},_0x39f586(0x11d));}async function checkConnection(){const _0x159a96=a0_0xcd4c75,_0x465079={'WbNCb':function(_0x4f6f0d){return _0x4f6f0d();},'pjKiH':function(_0x4a54ad,_0x8f4823,_0x151f5b,_0x47af1d){return _0x4a54ad(_0x8f4823,_0x151f5b,_0x47af1d);}};try{const _0x517332=_0x465079[_0x159a96(0x12a)](getPool),_0x5ac96f=await _0x517332['connect']();try{return await _0x5ac96f['query']('SELECT\x201'),!![];}finally{_0x5ac96f[_0x159a96(0x153)]();}}catch(_0x1c3c4c){return _0x465079['pjKiH'](logError,_0x1c3c4c,{'event':_0x159a96(0x139)},'Error\x20checking\x20database\x20connection:\x20'+_0x1c3c4c[_0x159a96(0x144)]),![];}}async function executeTransaction(_0x200726){const _0x546465=a0_0xcd4c75,_0x7d88fa={'gmfqu':function(_0x3c8784,_0x22a407,_0x450f95){return _0x3c8784(_0x22a407,_0x450f95);},'nwkap':function(_0x30cc8a){return _0x30cc8a();},'pWIjN':_0x546465(0x130),'HOiLq':'commit','vHdEi':_0x546465(0x146),'nmMtv':function(_0x4c82cf,_0x1fc9bc,_0x31a6f4,_0x869b93){return _0x4c82cf(_0x1fc9bc,_0x31a6f4,_0x869b93);},'RoEEM':_0x546465(0x12f),'PdJcK':'rollback','vYBBs':function(_0x44595b,_0x2dd695,_0x9a5785,_0x317c8c){return _0x44595b(_0x2dd695,_0x9a5785,_0x317c8c);},'ncVGz':_0x546465(0x14f),'MyhlU':'client_release_error'};let _0x15432a;const _0x52deff=startQueryTimer();try{const _0x1c4f02=getPool();_0x15432a=await _0x1c4f02['connect'](),_0x7d88fa[_0x546465(0x13d)](logTransaction,_0x546465(0x116),_0x200726['length']),await _0x15432a['query'](_0x546465(0x114));const _0x23845c=[];for(const _0x1ff882 of _0x200726){const _0x47a940=_0x7d88fa[_0x546465(0x140)](startQueryTimer),_0x2f69cd=await _0x15432a['query'](_0x1ff882[_0x546465(0x138)],_0x1ff882['params']||[]),_0x3ad13e=_0x7d88fa['nwkap'](_0x47a940);logQuery(_0x1ff882['sql'],_0x1ff882[_0x546465(0x11b)]||[],{'duration':_0x3ad13e,'rowsAffected':_0x2f69cd[_0x546465(0x12b)],'dbType':_0x546465(0x146)}),_0x23845c['push'](_0x2f69cd['rows']);}await _0x15432a['query'](_0x7d88fa['pWIjN']);const _0x394162=_0x7d88fa['nwkap'](_0x52deff);return _0x7d88fa[_0x546465(0x13d)](logTransaction,_0x7d88fa[_0x546465(0x125)],_0x200726[_0x546465(0x155)]),logger['info']({'event':_0x546465(0x123),'queryCount':_0x200726[_0x546465(0x155)],'totalDurationMs':_0x394162,'dbType':_0x7d88fa[_0x546465(0x117)]},_0x546465(0x143)+_0x394162+_0x546465(0x14b)+_0x200726[_0x546465(0x155)]+'\x20queries)'),_0x23845c;}catch(_0x33ecd9){const _0x2b0574=_0x52deff();_0x7d88fa['nmMtv'](logError,_0x33ecd9,{'event':'transaction_error','queryCount':_0x200726['length'],'totalDurationMs':_0x2b0574,'code':_0x33ecd9[_0x546465(0x115)],'dbType':'postgresql'},'Transaction\x20failed:\x20'+_0x33ecd9['message']);if(_0x15432a)try{await _0x15432a[_0x546465(0x133)](_0x7d88fa[_0x546465(0x145)]),logTransaction(_0x7d88fa['PdJcK'],_0x200726[_0x546465(0x155)]);}catch(_0x53ed62){_0x7d88fa[_0x546465(0x131)](logError,_0x53ed62,{'event':_0x7d88fa[_0x546465(0x150)],'dbType':_0x7d88fa[_0x546465(0x117)]},_0x546465(0x113)+_0x53ed62[_0x546465(0x144)]);}throw _0x33ecd9;}finally{if(_0x15432a)try{_0x15432a['release']();}catch(_0x1ccb14){logger[_0x546465(0x11f)]({'event':_0x7d88fa['MyhlU'],'error':_0x1ccb14[_0x546465(0x144)],'dbType':_0x7d88fa['vHdEi']},'Error\x20releasing\x20transaction\x20client:\x20'+_0x1ccb14[_0x546465(0x144)]);}}}module[a0_0xcd4c75(0x112)]={'executeQuery':executeQuery,'executeTransaction':executeTransaction,'formatResponse':formatResponse,'closePool':closePool,'getPool':getPool,'checkConnection':checkConnection};
1
+ const a0_0x73225d=a0_0x2f06;function a0_0x5f14(){const _0x4f7c77=['mtKYlJe2oc4XmdaUmq','CM93q291BNq','nda3DgrZqK5u','su1Qzem','mtaXmgLUv3DXra','qMz5vLe','rxjYB3iGy2HLy2TPBMCGzgf0ywjHC2uGy29UBMvJDgLVBJOG','ndjqmde','EM9Vs1i','CM9SBgjHy2TFzxjYB3i','u1fmievYCM9YoIa','z2Duwvy','C3fS','mZaZodiWtuXKv1bV','mJK1yu9nEMnb','zw52','Aw5JBhvKzxm','CM93CW','Cg9ZDgDYzxnXBa','mdGWmde','Cu5lqMW','CMfkEgy','rejFue9sva','Cg9ZDgDYzxm','CgfYyw1Z','rejFse9tva','werLvKG','y29UBMvJDa','DhjHBNnHy3rPB25Fy29TCgXLDgu','ndK0ndmWnhDNufzHsa','zgj4ytaZ','lI9SB2DNzxi','zgjFCg9VBf9JBg9Zzv9LCNjVCG','mZa5mZe4A013vwn0','Ag9ZDa','vefctevFtK9ux0zpvu5e','CMvSzwfZzq','ote2mJa5EfLKuKv4','rgf0ywjHC2uGCg9VBcbJBg9ZzwqGC3vJy2vZC2z1BgX5','BgvUz3rO','Aw5MBW','Ae1Pu3K','vhjHBNnHy3rPB24Gy29TBwL0DgvKicG','C3rHCNq','u1Lovefyx0vsuK9s','CxvLCNK','y2XPzw50x3jLBgvHC2vFzxjYB3i','zgjFCg9VBf9YzwnYzwf0zq','mJrqwxzwswO','mZiYmtG5vwTrugjg','mJHqmde','qNHvz1i','y29Kzq','ihjVDW','BxmSia','BwvZC2fNzq','zgjFCg9VBf9HBhjLywr5x2nSB3nLza','ntKWntbrq0XcAvO','zgjFCg9VBf9JBg9Zzwq','mJrnDwT4DNO','r0vYAue','uxvLCNKGCMv0DxjUzwqG','C3D0v1G','BLj6tLy'];a0_0x5f14=function(){return _0x4f7c77;};return a0_0x5f14();}(function(_0x1f0ba1,_0x39a7f8){const _0x2a96dd=a0_0x2f06,_0x5a0178=_0x1f0ba1();while(!![]){try{const _0x216298=parseInt(_0x2a96dd(0x170))/0x1*(-parseInt(_0x2a96dd(0x166))/0x2)+-parseInt(_0x2a96dd(0x183))/0x3*(parseInt(_0x2a96dd(0x15d))/0x4)+parseInt(_0x2a96dd(0x16f))/0x5+parseInt(_0x2a96dd(0x152))/0x6*(parseInt(_0x2a96dd(0x153))/0x7)+parseInt(_0x2a96dd(0x17f))/0x8+parseInt(_0x2a96dd(0x187))/0x9+-parseInt(_0x2a96dd(0x15b))/0xa*(-parseInt(_0x2a96dd(0x164))/0xb);if(_0x216298===_0x39a7f8)break;else _0x5a0178['push'](_0x5a0178['shift']());}catch(_0x270f62){_0x5a0178['push'](_0x5a0178['shift']());}}}(a0_0x5f14,0x65761));function a0_0x2f06(_0x270fb5,_0x35e1a5){_0x270fb5=_0x270fb5-0x14c;const _0x5f14be=a0_0x5f14();let _0x2f0679=_0x5f14be[_0x270fb5];if(a0_0x2f06['YftedM']===undefined){var _0x53d1b7=function(_0x16c94a){const _0x2a3c27='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x51d867='',_0x108b8f='';for(let _0x3532e2=0x0,_0x397679,_0x44db4d,_0x37906d=0x0;_0x44db4d=_0x16c94a['charAt'](_0x37906d++);~_0x44db4d&&(_0x397679=_0x3532e2%0x4?_0x397679*0x40+_0x44db4d:_0x44db4d,_0x3532e2++%0x4)?_0x51d867+=String['fromCharCode'](0xff&_0x397679>>(-0x2*_0x3532e2&0x6)):0x0){_0x44db4d=_0x2a3c27['indexOf'](_0x44db4d);}for(let _0x5e28cf=0x0,_0x122e71=_0x51d867['length'];_0x5e28cf<_0x122e71;_0x5e28cf++){_0x108b8f+='%'+('00'+_0x51d867['charCodeAt'](_0x5e28cf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x108b8f);};a0_0x2f06['YeNZTQ']=_0x53d1b7,a0_0x2f06['REhpyQ']={},a0_0x2f06['YftedM']=!![];}const _0xd2b6f1=_0x5f14be[0x0],_0x83c897=_0x270fb5+_0xd2b6f1,_0x43ccf2=a0_0x2f06['REhpyQ'][_0x83c897];return!_0x43ccf2?(_0x2f0679=a0_0x2f06['YeNZTQ'](_0x2f0679),a0_0x2f06['REhpyQ'][_0x83c897]=_0x2f0679):_0x2f0679=_0x43ccf2,_0x2f0679;}const {Pool}=require('pg'),{logQuery,logTransaction,startQueryTimer,logDatabaseConfig,logger,logError}=require(a0_0x73225d(0x181)),dbConfig={'host':process[a0_0x73225d(0x171)][a0_0x73225d(0x17b)]||a0_0x73225d(0x162),'port':parseInt(process['env'][a0_0x73225d(0x178)]||'5432'),'user':process[a0_0x73225d(0x171)]['DB_USER']||a0_0x73225d(0x179),'password':process['env']['DB_PASSWORD']||'postgres1234','database':process[a0_0x73225d(0x171)]['DB_NAME']||a0_0x73225d(0x180)};logDatabaseConfig({'host':dbConfig[a0_0x73225d(0x184)],'port':dbConfig['port'],'database':dbConfig['database'],'type':a0_0x73225d(0x174),'user':dbConfig['user']});let pool=new Pool(dbConfig),isPoolClosed=![];function getPool(){const _0x45ef9a=a0_0x73225d,_0x2bb2ac={'qNKBl':_0x45ef9a(0x151)};return isPoolClosed&&(logger['info']({'event':_0x2bb2ac[_0x45ef9a(0x176)]},'Creating\x20new\x20database\x20pool\x20(previous\x20pool\x20was\x20closed)'),pool=new Pool(dbConfig),isPoolClosed=![]),pool;}async function executeQuery(_0x3bc64b,_0x505c34=[]){const _0x4efa32=a0_0x73225d,_0x28c31e={'BxUgR':function(_0x2c257d){return _0x2c257d();},'ilGFm':function(_0x264273,_0x574bef,_0x3e11df,_0x2abda6){return _0x264273(_0x574bef,_0x3e11df,_0x2abda6);},'HnlMw':function(_0x418f91,_0x14859e,_0x447b32,_0x3bbec9){return _0x418f91(_0x14859e,_0x447b32,_0x3bbec9);},'HvEmi':'sql_error'},_0x3015b4=startQueryTimer();try{const _0x594f44=_0x28c31e['BxUgR'](getPool),_0x1eb8eb=await _0x594f44[_0x4efa32(0x17d)]();try{const _0x47bae5=await _0x1eb8eb['query'](_0x3bc64b,_0x505c34),_0x3f6077=_0x28c31e[_0x4efa32(0x155)](_0x3015b4);return _0x28c31e['ilGFm'](logQuery,_0x3bc64b,_0x505c34,{'duration':_0x3f6077,'rowsAffected':_0x47bae5[_0x4efa32(0x163)],'dbType':'postgresql'}),_0x47bae5['rows'];}finally{_0x1eb8eb[_0x4efa32(0x186)]();}}catch(_0x3c828a){const _0x1187d7=_0x28c31e['BxUgR'](_0x3015b4);_0x28c31e['HnlMw'](logError,_0x3c828a,{'event':_0x28c31e['HvEmi'],'query':_0x3bc64b['substring'](0x0,0x1f4),'paramCount':_0x505c34['length'],'durationMs':_0x1187d7,'code':_0x3c828a[_0x4efa32(0x156)],'dbType':'postgresql'},_0x4efa32(0x16c)+_0x3c828a[_0x4efa32(0x159)]);throw _0x3c828a;}}function formatResponse(_0x21255b,_0x2f4bf0=null){const _0x45626c=a0_0x73225d,_0x32a11e={'BfyVQ':'syntax\x20error','CWagO':_0x45626c(0x14e),'hMiSy':function(_0x212c1c,_0xb778a){return _0x212c1c===_0xb778a;},'vryrQ':function(_0x33d05a,_0x36e34c){return _0x33d05a===_0x36e34c;},'lFfft':function(_0x13ad5d,_0x4f656b){return _0x13ad5d===_0x4f656b;},'IMjdC':'CONNECTION_ERROR'};if(_0x2f4bf0){let _0x4ee2bb='UNKNOWN_ERROR';if(_0x2f4bf0['message'][_0x45626c(0x172)](_0x32a11e[_0x45626c(0x167)]))_0x4ee2bb=_0x32a11e['CWagO'];else{if(_0x32a11e[_0x45626c(0x18b)](_0x2f4bf0[_0x45626c(0x156)],_0x45626c(0x169)))_0x4ee2bb=_0x45626c(0x185);else{if(_0x32a11e['vryrQ'](_0x2f4bf0['code'],_0x45626c(0x154)))_0x4ee2bb='AUTHENTICATION_ERROR';else(_0x32a11e['lFfft'](_0x2f4bf0['code'],'08006')||_0x32a11e['hMiSy'](_0x2f4bf0[_0x45626c(0x156)],_0x45626c(0x175)))&&(_0x4ee2bb=_0x32a11e[_0x45626c(0x165)]);}}return{'success':![],'message':'Database\x20error:\x20'+_0x2f4bf0['message'],'count':-0x1,'error_code':_0x4ee2bb};}else{if(!_0x21255b||_0x21255b[_0x45626c(0x189)]===0x0)return{'success':!![],'message':'No\x20data\x20found.','count':0x0,'data':[]};return{'success':!![],'message':_0x45626c(0x15f)+_0x21255b[_0x45626c(0x189)]+_0x45626c(0x157)+(_0x32a11e['lFfft'](_0x21255b[_0x45626c(0x189)],0x1)?'':'s')+'.','count':_0x21255b[_0x45626c(0x189)],'data':_0x21255b};}}async function closePool(){const _0x4639a1=a0_0x73225d,_0xfd8038={'XDeVH':_0x4639a1(0x188),'bSjTm':_0x4639a1(0x182)};if(!isPoolClosed)try{isPoolClosed=!![],await pool['end'](),logger[_0x4639a1(0x18a)]({'event':_0x4639a1(0x15c)},_0xfd8038[_0x4639a1(0x17c)]);}catch(_0x3776d1){logError(_0x3776d1,{'event':_0xfd8038['bSjTm']},'Error\x20closing\x20database\x20pool:\x20'+_0x3776d1[_0x4639a1(0x159)]);}else logger['debug']({'event':_0x4639a1(0x15a)},'Database\x20pool\x20was\x20already\x20closed');}async function checkConnection(){const _0x1d3a4e=a0_0x73225d,_0x59937f={'BoEmI':function(_0x1e723c,_0x4152be,_0x37be31,_0x40a3a1){return _0x1e723c(_0x4152be,_0x37be31,_0x40a3a1);},'nRzNV':'db_connection_check_error'};try{const _0x48601a=getPool(),_0x4cce86=await _0x48601a[_0x1d3a4e(0x17d)]();try{return await _0x4cce86[_0x1d3a4e(0x14f)]('SELECT\x201'),!![];}finally{_0x4cce86[_0x1d3a4e(0x186)]();}}catch(_0x52b3b7){return _0x59937f['BoEmI'](logError,_0x52b3b7,{'event':_0x59937f[_0x1d3a4e(0x161)]},_0x1d3a4e(0x168)+_0x52b3b7[_0x1d3a4e(0x159)]),![];}}async function executeTransaction(_0x2802c4){const _0x14b100=a0_0x73225d,_0x42fd53={'LsgiV':function(_0x30f35c){return _0x30f35c();},'ggTYV':function(_0x57cace,_0xe757a3,_0x49a04f){return _0x57cace(_0xe757a3,_0x49a04f);},'GEriA':_0x14b100(0x14d),'QiBWT':function(_0x61c4a4,_0x364c7f,_0x4541fb,_0x43cc0b){return _0x61c4a4(_0x364c7f,_0x4541fb,_0x43cc0b);},'UaRDs':_0x14b100(0x174),'xCkdz':'COMMIT','VODju':function(_0x4b7553){return _0x4b7553();},'wclTL':function(_0xfd89fc,_0x400d98,_0x162ad7){return _0xfd89fc(_0x400d98,_0x162ad7);},'zooKR':_0x14b100(0x17e),'raJxf':function(_0x2e752){return _0x2e752();},'swtWX':'transaction_error','RfpHp':_0x14b100(0x16b),'GbOrf':_0x14b100(0x150)};let _0xcf11fe;const _0x1949ec=_0x42fd53['LsgiV'](startQueryTimer);try{const _0x1895a1=getPool();_0xcf11fe=await _0x1895a1[_0x14b100(0x17d)](),_0x42fd53[_0x14b100(0x16d)](logTransaction,_0x42fd53[_0x14b100(0x15e)],_0x2802c4['length']),await _0xcf11fe['query']('BEGIN');const _0xbbac0e=[];for(const _0x54066b of _0x2802c4){const _0x18eba2=startQueryTimer(),_0x5bbc7b=await _0xcf11fe['query'](_0x54066b[_0x14b100(0x16e)],_0x54066b[_0x14b100(0x17a)]||[]),_0xc2a251=_0x18eba2();_0x42fd53['QiBWT'](logQuery,_0x54066b[_0x14b100(0x16e)],_0x54066b[_0x14b100(0x17a)]||[],{'duration':_0xc2a251,'rowsAffected':_0x5bbc7b[_0x14b100(0x163)],'dbType':_0x42fd53['UaRDs']}),_0xbbac0e['push'](_0x5bbc7b[_0x14b100(0x173)]);}await _0xcf11fe[_0x14b100(0x14f)](_0x42fd53['xCkdz']);const _0x1c21f2=_0x42fd53['VODju'](_0x1949ec);return _0x42fd53['wclTL'](logTransaction,'commit',_0x2802c4['length']),logger[_0x14b100(0x18a)]({'event':_0x42fd53[_0x14b100(0x16a)],'queryCount':_0x2802c4[_0x14b100(0x189)],'totalDurationMs':_0x1c21f2,'dbType':'postgresql'},_0x14b100(0x14c)+_0x1c21f2+_0x14b100(0x158)+_0x2802c4['length']+'\x20queries)'),_0xbbac0e;}catch(_0x13b739){const _0x2a6808=_0x42fd53[_0x14b100(0x177)](_0x1949ec);logError(_0x13b739,{'event':_0x42fd53[_0x14b100(0x160)],'queryCount':_0x2802c4[_0x14b100(0x189)],'totalDurationMs':_0x2a6808,'code':_0x13b739['code'],'dbType':_0x14b100(0x174)},'Transaction\x20failed:\x20'+_0x13b739[_0x14b100(0x159)]);if(_0xcf11fe)try{await _0xcf11fe[_0x14b100(0x14f)]('ROLLBACK'),_0x42fd53['ggTYV'](logTransaction,'rollback',_0x2802c4['length']);}catch(_0x2de0a5){logError(_0x2de0a5,{'event':_0x42fd53['RfpHp'],'dbType':_0x42fd53['UaRDs']},'Error\x20rolling\x20back\x20transaction:\x20'+_0x2de0a5['message']);}throw _0x13b739;}finally{if(_0xcf11fe)try{_0xcf11fe[_0x14b100(0x186)]();}catch(_0x448fe5){logger['error']({'event':_0x42fd53['GbOrf'],'error':_0x448fe5[_0x14b100(0x159)],'dbType':_0x42fd53['UaRDs']},'Error\x20releasing\x20transaction\x20client:\x20'+_0x448fe5[_0x14b100(0x159)]);}}}module['exports']={'executeQuery':executeQuery,'executeTransaction':executeTransaction,'formatResponse':formatResponse,'closePool':closePool,'getPool':getPool,'checkConnection':checkConnection};
@@ -1 +1 @@
1
- const a0_0x369009=a0_0x1705;(function(_0x5bf246,_0x48aa9a){const _0x3129dc=a0_0x1705,_0x42576d=_0x5bf246();while(!![]){try{const _0x45928d=-parseInt(_0x3129dc(0xda))/0x1*(-parseInt(_0x3129dc(0xdd))/0x2)+parseInt(_0x3129dc(0xc5))/0x3+-parseInt(_0x3129dc(0x151))/0x4*(parseInt(_0x3129dc(0x13a))/0x5)+parseInt(_0x3129dc(0xf3))/0x6*(-parseInt(_0x3129dc(0x147))/0x7)+-parseInt(_0x3129dc(0x12f))/0x8*(parseInt(_0x3129dc(0x12d))/0x9)+parseInt(_0x3129dc(0xf2))/0xa+parseInt(_0x3129dc(0x145))/0xb*(parseInt(_0x3129dc(0x160))/0xc);if(_0x45928d===_0x48aa9a)break;else _0x42576d['push'](_0x42576d['shift']());}catch(_0x4e803e){_0x42576d['push'](_0x42576d['shift']());}}}(a0_0x495a,0x5e340));const pino=require('pino'),fs=require('fs'),path=require(a0_0x369009(0x133));let logToFile=![],logDir=a0_0x369009(0x17e),serviceName=a0_0x369009(0x13c),sqlLogEnabled=![],sqlLogLevel=a0_0x369009(0x14f),sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':a0_0x369009(0xcf),'ignore':a0_0x369009(0x17b),'singleLine':![],'levelFirst':!![],'messageFormat':a0_0x369009(0x106),'customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process[a0_0x369009(0x171)][a0_0x369009(0x14a)]!=='production',logLevel=process[a0_0x369009(0x171)]['LOG_LEVEL']||a0_0x369009(0x186);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process[a0_0x369009(0x171)][a0_0x369009(0x138)]||a0_0x369009(0x120),'env':process[a0_0x369009(0x171)][a0_0x369009(0x14a)]||a0_0x369009(0xc7)},'timestamp':pino[a0_0x369009(0x10c)]['isoTime'],'redact':{'paths':['req.headers.authorization','req.headers[\x22x-api-key\x22]','password',a0_0x369009(0x153),a0_0x369009(0xc4),'DB_PASSWORD','JWT_SECRET'],'censor':'[REDACTED]'},'serializers':{'req':_0x2c3de6=>({'id':_0x2c3de6['id'],'method':_0x2c3de6[a0_0x369009(0x17f)],'url':_0x2c3de6['url'],'path':_0x2c3de6['path'],'remoteAddress':_0x2c3de6['ip']||_0x2c3de6[a0_0x369009(0xd8)]?.[a0_0x369009(0xfe)]}),'res':_0x3d988b=>({'statusCode':_0x3d988b['statusCode'],'headers':_0x3d988b['getHeaders']?.()}),'err':pino[a0_0x369009(0x183)]['err']}});function initFileLogging(){const _0x568ac5=a0_0x369009,_0x40a749={'DByje':function(_0x583c4b,_0x943d35){return _0x583c4b===_0x943d35;},'gWSTa':_0x568ac5(0x17e),'eeURZ':'restforge','fHCKW':'debug','zSdvi':_0x568ac5(0xeb),'cTMeM':'error.log','IpqRK':_0x568ac5(0x186)};if(fileLoggingInitialized)return;logToFile=_0x40a749[_0x568ac5(0x173)](process[_0x568ac5(0x171)][_0x568ac5(0xdf)],'true'),logDir=process[_0x568ac5(0x171)]['LOG_DIR']||_0x40a749[_0x568ac5(0x14e)],serviceName=process[_0x568ac5(0x171)][_0x568ac5(0x137)]||_0x40a749['eeURZ'],sqlLogEnabled=process[_0x568ac5(0x171)]['SQL_LOG_ENABLED']===_0x568ac5(0xcc),sqlLogLevel=process[_0x568ac5(0x171)][_0x568ac5(0x159)]||_0x40a749['fHCKW'],sqlLogParams=process[_0x568ac5(0x171)][_0x568ac5(0x14d)]!==_0x40a749['zSdvi'],sqlLogSlowThreshold=parseInt(process['env'][_0x568ac5(0x152)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0xebb573=path[_0x568ac5(0x172)](process[_0x568ac5(0x144)](),logDir);try{!fs[_0x568ac5(0x11d)](_0xebb573)&&fs[_0x568ac5(0x16c)](_0xebb573,{'recursive':!![]});}catch(_0x2bf8c9){console[_0x568ac5(0x18a)](_0x568ac5(0x181)+_0xebb573+':',_0x2bf8c9[_0x568ac5(0xe9)]),fileLoggingInitialized=!![];return;}const _0x2d85cf=path['join'](_0xebb573,_0x568ac5(0x164)),_0x217779=path[_0x568ac5(0x178)](_0xebb573,_0x568ac5(0x161));try{appLogStream=fs[_0x568ac5(0xdc)](_0x2d85cf,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x217779,{'flags':'a'}),fileLoggingInitialized=!![];const _0x4e75d9={'event':_0x568ac5(0xec),'logDir':_0xebb573,'files':['app.log',_0x40a749[_0x568ac5(0xe4)]]},_0x274558='File\x20logging\x20enabled:\x20'+_0xebb573;logger['info'](_0x4e75d9,_0x274558),writeToFileLog({..._0x4e75d9,'level':_0x40a749[_0x568ac5(0x100)],'msg':_0x274558,'time':new Date()['toISOString']()},_0x40a749[_0x568ac5(0x100)]);}catch(_0x5f4b19){console['error']('Failed\x20to\x20create\x20log\x20streams:',_0x5f4b19['message']),fileLoggingInitialized=!![];}}function writeToFileLog(_0x4d0d68,_0x506187){const _0x80d9c8=a0_0x369009,_0x4f927c={'UUkqz':function(_0x35f594,_0x8b8b1){return _0x35f594+_0x8b8b1;},'Luznv':function(_0x30d3a4,_0x472ec3){return _0x30d3a4===_0x472ec3;},'qiOkJ':'error','qOIft':_0x80d9c8(0x187)};if(!logToFile||!appLogStream)return;const _0x4f377d={'service':serviceName,..._0x4d0d68},_0x1ed5df=_0x4f927c[_0x80d9c8(0x101)](JSON[_0x80d9c8(0x12c)](_0x4f377d),'\x0a');appLogStream[_0x80d9c8(0x148)](_0x1ed5df),(_0x4f927c['Luznv'](_0x506187,_0x4f927c[_0x80d9c8(0xcd)])||_0x4f927c[_0x80d9c8(0x140)](_0x506187,_0x4f927c[_0x80d9c8(0x141)]))&&(errorLogStream&&errorLogStream['write'](_0x1ed5df));}function a0_0x495a(){const _0x40727d=['ntG3ndKWy1PizunT','qM1ZzNO','zgv2zwXVCg1LBNq','rermx0fmvevs','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','rermx0rst1a','Dg9mB3DLCKnHC2u','Dhj1zq','CwLpA0O','Cg9ZDgDYzxnXBa','u1LtoKHioK1noNnZ','D2fYBG','CgLU','BwfW','BxmP','AxnbCNjHEq','DxjS','CMvWBgfJzq','C3vIC3rYAw5N','y29UBMvJDgLVBG','tMLSr3m','mJmYnZa5C0rpz3zJ','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','y3jLyxrLv3jPDgvtDhjLyw0','mMTWAwvtta','icdIHPiG','te9hx1rpx0zjteu','y2HPBgq','Ec1Yzxf1zxn0lwLK','BgvUz3rO','C2vYDMvYx3n0yxj0Aw5N','y1rnzu0','zgf0ywjHC2vFy29UzMLN','Dw5RBM93BG','wejrvvu','C3rHDhvZq29Kzq','BwvZC2fNzq','yxbPx2TLEq','zMfSC2u','zMLSzv9SB2DNAw5Nx2vUywjSzwq','C3nU','vwzSq1m','wvHpA0G','vfPrDNq','y3jLzgL0x2nHCMq','mJq3mdi5mezlqMnXwq','mJCWy1Hyuvfo','CMvMCMvZAf90B2TLBG','y3jLzgL0y2fYza','vvPYsfe','Ehj5ruS','ChjVAMvJDa','qKvhsu4','icbizwfSDgG6ia','rermx0nsrufurq','ChDK','CerYshi','CMvTB3rLqwrKCMvZCW','Dw5Oyw5KBgvKuMvQzwn0Aw9U','sxbXuKS','vvvRCxO','BLLPr3m','Cg9YDa','C3bSAxq','vu5ltK9xtG','E21Zz30','C3rYAw5N','DgvZDa','w1jfrefdvevexq','CgfZC3DVCMq','DxnLCI1Hz2vUDa','C3rKvgLTzuz1BMn0Aw9UCW','DKHLsLa','ChjPDMf0zv9RzxK','z1nADge','w1jfrefdveveoMHHC2HD','zvriuvy','DenYAKq','s3fzrfu','qMnztei','AgvHzgvYCW','tI9b','sfruuca','tM9Kzs5QCW','AxntBg93','rKfuquW6ia','yxbPA2v5','tev6q0C','zxHPC3rZu3LUyW','vfjbtLnbq1rjt05Fq09ntuLu','Ahr0Cf9Yzxf1zxn0','ms4WlJu','yxbPx3nLy3jLDa','vhjHBNnHy3rPB24G','Dxb0Aw1L','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','iokvKqRILzeGifbVCNqGicaGicaGidOG','uK9mtejbq0S','t0nez1C','C2vJCMv0','DLzvuw4','zgjFCxvLCNK','reiGuxvLCNK','C3rYAw5NAwz5','ovnJwe9hCG','vvbeqvrf','nJaXnZuYmfDHyNH6uq','y3z2','A1PLque','qxnHD3O','Cgf0Aa','zhvYyxrPB25nCW','zgf0ywjHC2u','ic0G','u0vsvKLdrv9oqu1f','qvbqx1zfuLnjt04','B3rW','nJu0nJm1BgLMr3PS','uhjVy2vZCYbxyxjUAw5NoIa','CMvZDgzVCMDL','EM9pDwG','AgvHBhrOq2HLy2S','Ag9ZDa','thv6BNy','Cu9jzNq','Ahj0Aw1L','B2jQzwn0','y3DK','nde4otC5tLPLt1fL','Bw9KDwXL','mtG0mtDYAKD3rwS','D3jPDgu','w1jfrefdveveoNrVA2vUxq','tK9erv9ftLy','y0zgugm','C2vYDMvYx3jLywr5','u1fmx0Xpr19qqvjbtvm','z1Dtvge','zgvIDwC','sKHmrxO','mtzoANfIAe8','u1fmx0Xpr19tte9xx1riuKvtse9mra','Dg9Rzw4','tMHgDfG','ChjPDMf0zwTLEq','tLjyuKS','zxHPDa','u0vmrunu','u1fmx0Xpr19mrvzfta','C3rHy2S','C3rHCNrZv2L0Aa','y29Kzq','Aw56tMC','u2vYDMvYihn0yxj0Aw5NoIa','zw52AxjVBM1LBNq','mZq4vKj5B3LY','zxjYB3iUBg9N','wevgyKy','t1jOqwe','yxbWlMXVzW','Dw5JyxvNAhrfEgnLChrPB24','A2Litg8','C2vYDMLJzuLUzM8','rxjYB3i','Aw5JBhvKzxm','t2jzreS','vfjbtLnbq1rjt05FuK9mtejbq0S','BwTKAxjtEw5J','DhjPBq','CxvLCNK','quXurvi','C29Tzq','zw52','CMvZB2X2zq','rej5AMu','qunusvzf','Dg9ju09tDhjPBMC','v3r3t0C','Ahr0Cf9LCNjVCG','AM9PBG','Dg9vChbLCKnHC2u','rxjYB3i6ia','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','Bwf0y2G','y29UzMLNrMLSzq','lI9SB2DZ','Bwv0Ag9K','DwLMsM0','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','A2v5CW','C3rKu2vYAwfSAxPLCNm','CgfYyw1Z','ifTtte9xxq','Aw5MBW','zMf0ywW','rgvMyxvSDa','CgfKrw5K','zxjYB3i','iokvKqRILzeGiefqssblzxKGicaGidOG','r0n4q20','ChjVAMvJDf9SB2fKzwq','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','su5trvju','yxbPs2v5'];a0_0x495a=function(){return _0x40727d;};return a0_0x495a();}function a0_0x1705(_0x374028,_0x43aa5d){_0x374028=_0x374028-0xbf;const _0x495ac6=a0_0x495a();let _0x1705b6=_0x495ac6[_0x374028];if(a0_0x1705['EBhJUY']===undefined){var _0x5f2450=function(_0xa269ad){const _0x4f5a0a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5ddcc3='',_0x45cff2='';for(let _0xce953b=0x0,_0x51dc30,_0x4e8520,_0x43c11f=0x0;_0x4e8520=_0xa269ad['charAt'](_0x43c11f++);~_0x4e8520&&(_0x51dc30=_0xce953b%0x4?_0x51dc30*0x40+_0x4e8520:_0x4e8520,_0xce953b++%0x4)?_0x5ddcc3+=String['fromCharCode'](0xff&_0x51dc30>>(-0x2*_0xce953b&0x6)):0x0){_0x4e8520=_0x4f5a0a['indexOf'](_0x4e8520);}for(let _0x10dab3=0x0,_0x588ab6=_0x5ddcc3['length'];_0x10dab3<_0x588ab6;_0x10dab3++){_0x45cff2+='%'+('00'+_0x5ddcc3['charCodeAt'](_0x10dab3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x45cff2);};a0_0x1705['lplGHf']=_0x5f2450,a0_0x1705['OZYQoS']={},a0_0x1705['EBhJUY']=!![];}const _0x3006e7=_0x495ac6[0x0],_0x36804b=_0x374028+_0x3006e7,_0x1433e4=a0_0x1705['OZYQoS'][_0x36804b];return!_0x1433e4?(_0x1705b6=a0_0x1705['lplGHf'](_0x1705b6),a0_0x1705['OZYQoS'][_0x36804b]=_0x1705b6):_0x1705b6=_0x1433e4,_0x1705b6;}const createRequestLogger=(_0x256c4a={})=>{const _0x4d28e2=a0_0x369009;return logger[_0x4d28e2(0xe0)](_0x256c4a);},logServerStart=_0x53c3db=>{const _0x2de416=a0_0x369009,_0x404a94={'KArIo':_0x2de416(0x118),'ClXjh':_0x2de416(0x116),'kzqLf':_0x2de416(0x188),'inzNg':function(_0x4e57a8,_0x23f12d,_0x49708f){return _0x4e57a8(_0x23f12d,_0x49708f);},'Svgkh':'info'},_0x4de203='\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'+(_0x53c3db[_0x2de416(0x15f)]||_0x404a94['KArIo'])['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x53c3db[_0x2de416(0xf8)]||_0x404a94['ClXjh'])['padEnd'](0x26)+_0x2de416(0x125)+String(_0x53c3db[_0x2de416(0x103)]||0xbb8)['padEnd'](0x26)+'\x20║\x0a║\x20\x20Config\x20\x20\x20\x20\x20\x20:\x20'+(_0x53c3db[_0x2de416(0x17d)]||_0x404a94['kzqLf'])['padEnd'](0x26)+_0x2de416(0xbf)+(_0x53c3db[_0x2de416(0xc4)]?_0x2de416(0x174):'NOT\x20ACTIVE')[_0x2de416(0x189)](0x26)+_0x2de416(0x124);console['log'](_0x4de203);const _0x27129d={'event':_0x2de416(0xe3),'project':_0x53c3db[_0x2de416(0xf8)],'port':_0x53c3db['port'],'config':_0x53c3db['configFile'],'apiKeyEnabled':!!_0x53c3db[_0x2de416(0xc4)]};logger[_0x2de416(0x186)](_0x27129d),_0x404a94[_0x2de416(0x15d)](writeToFileLog,{..._0x27129d,'level':_0x2de416(0x186),'msg':_0x2de416(0x15e)+_0x53c3db['project']+'\x20on\x20port\x20'+_0x53c3db[_0x2de416(0x103)],'time':new Date()[_0x2de416(0x175)]()},_0x404a94['Svgkh']);},logServerReady=_0x5cead5=>{const _0x5c2737=a0_0x369009,_0x432a45={'event':_0x5c2737(0x14c),'port':_0x5cead5['port'],'module':_0x5cead5[_0x5c2737(0x146)],'healthCheck':_0x5cead5[_0x5c2737(0x13e)],'serviceInfo':_0x5cead5['serviceInfo'],'baseUrl':_0x5cead5['baseUrl']},_0x5f1ce1=_0x5c2737(0xc2)+_0x5cead5[_0x5c2737(0x103)];logger['info'](_0x432a45,_0x5f1ce1),writeToFileLog({..._0x432a45,'level':_0x5c2737(0x186),'msg':_0x5f1ce1,'time':new Date()[_0x5c2737(0x175)]()},'info'),_0x5cead5[_0x5c2737(0x13e)]&&logger[_0x5c2737(0x186)](_0x5c2737(0xfa)+_0x5cead5[_0x5c2737(0x13e)]),_0x5cead5['serviceInfo']&&logger['info']('\x20\x20Info:\x20\x20\x20'+_0x5cead5[_0x5c2737(0x167)]),_0x5cead5['baseUrl']&&logger['info']('\x20\x20URL:\x20\x20\x20\x20'+_0x5cead5['baseUrl']);},logProjectLoaded=(_0xf1126b,_0x31f54f)=>{const _0x18f967=a0_0x369009,_0x2ff274={'LGhtG':'info'},_0xc6cacf={'event':_0x18f967(0xc1),'project':_0xf1126b,'path':_0x31f54f},_0x11d398='[OK]\x20Project\x20loaded:\x20'+_0xf1126b;logger['info'](_0xc6cacf,_0x11d398),writeToFileLog({..._0xc6cacf,'level':_0x2ff274['LGhtG'],'msg':_0x11d398,'time':new Date()['toISOString']()},'info');},logEndpointRegistered=(_0x38ee0e,_0x49bc7f)=>{const _0x2144b9=a0_0x369009,_0x358eab={'WtwOG':_0x2144b9(0x14f)},_0x40c892={'event':'endpoint_registered','endpoint':_0x38ee0e,'route':_0x49bc7f},_0x2b6195=_0x2144b9(0xde)+_0x38ee0e+':\x20'+_0x49bc7f;logger[_0x2144b9(0x14f)](_0x40c892,_0x2b6195),writeToFileLog({..._0x40c892,'level':_0x358eab[_0x2144b9(0x176)],'msg':_0x2b6195,'time':new Date()[_0x2144b9(0x175)]()},_0x2144b9(0x14f));},logDatabaseConfig=_0x3a1cc6=>{const _0xab6fd8=a0_0x369009,_0x55afa4={'XbVeE':_0xab6fd8(0xe5),'qJSjc':function(_0x2232be,_0x5dc45b,_0x129c35){return _0x2232be(_0x5dc45b,_0x129c35);},'lDiUe':'debug'},_0x67063f={'event':_0x55afa4['XbVeE'],'host':_0x3a1cc6[_0xab6fd8(0x13f)],'port':_0x3a1cc6['port'],'database':_0x3a1cc6[_0xab6fd8(0x135)],'type':_0x3a1cc6['type'],'user':_0x3a1cc6['user']},_0x300b3b='Database:\x20'+_0x3a1cc6['type']+'://'+_0x3a1cc6[_0xab6fd8(0x13f)]+':'+_0x3a1cc6[_0xab6fd8(0x103)]+'/'+_0x3a1cc6['database'];logger['debug'](_0x67063f,_0x300b3b),_0x55afa4['qJSjc'](writeToFileLog,{..._0x67063f,'level':_0x55afa4['lDiUe'],'msg':_0x300b3b,'time':new Date()['toISOString']()},_0x55afa4['lDiUe']);},logRequest=(_0x33c3c9,_0x59119a,_0x4000bd)=>{const _0x495bad=a0_0x369009,_0x304de9={'XEFbF':_0x495bad(0x11f),'pDmtk':_0x495bad(0x186),'fUIwj':function(_0x5b31ff,_0x56df40){return _0x5b31ff>=_0x56df40;},'YXOkH':_0x495bad(0x18a),'AgqNr':_0x495bad(0xd0)},_0x2ef842={'event':_0x304de9[_0x495bad(0x162)],'method':_0x33c3c9[_0x495bad(0x17f)],'path':_0x33c3c9[_0x495bad(0x133)],'statusCode':_0x59119a[_0x495bad(0xe8)],'durationMs':_0x4000bd,'ip':_0x33c3c9['ip']},_0x2cd122=_0x33c3c9[_0x495bad(0x17f)]+'\x20'+_0x33c3c9[_0x495bad(0x133)]+_0x495bad(0x136)+_0x59119a[_0x495bad(0xe8)]+'\x20('+_0x4000bd+'ms)';let _0x3cee74=_0x304de9['pDmtk'];if(_0x304de9['fUIwj'](_0x59119a['statusCode'],0x1f4))_0x3cee74=_0x304de9[_0x495bad(0xef)],logger['error'](_0x2ef842,_0x2cd122);else _0x304de9['fUIwj'](_0x59119a[_0x495bad(0xe8)],0x190)?(_0x3cee74=_0x304de9['AgqNr'],logger['warn'](_0x2ef842,_0x2cd122)):logger['info'](_0x2ef842,_0x2cd122);writeToFileLog({..._0x2ef842,'level':_0x3cee74,'msg':_0x2cd122,'time':new Date()['toISOString']()},_0x3cee74);},SENSITIVE_PARAM_PATTERNS=[a0_0x369009(0x10a),'passwd',a0_0x369009(0xfc),'token','access_token',a0_0x369009(0xf4),a0_0x369009(0x128),a0_0x369009(0x121),a0_0x369009(0x11b),a0_0x369009(0xea),'credential','credentials',a0_0x369009(0xd1),a0_0x369009(0x139),'private_key',a0_0x369009(0x155)],redactSensitiveParams=(_0x987c3f,_0x421137)=>{const _0xf420bb=a0_0x369009,_0x16c641={'oLWhh':_0xf420bb(0x149),'NRXRK':function(_0x116816,_0x2812de){return _0x116816===_0x2812de;}};if(!_0x987c3f||_0x16c641[_0xf420bb(0x156)](_0x987c3f[_0xf420bb(0xe2)],0x0))return _0x987c3f;const _0x2eb4dd=_0x421137[_0xf420bb(0xcb)](),_0x462a07=_0x2eb4dd[_0xf420bb(0x17c)](/\(([^)]+)\)\s*values/i);let _0x5770a5=[];_0x462a07&&(_0x5770a5=_0x462a07[0x1][_0xf420bb(0x104)](',')['map'](_0xebac68=>_0xebac68['trim']()['toLowerCase']()));const _0x4ca6bb=_0x2eb4dd['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x4ca6bb){const _0x2f28e2=_0x4ca6bb[0x1],_0x48ff79=_0x2f28e2[_0xf420bb(0x17c)](/(\w+)\s*=/g);_0x48ff79&&(_0x5770a5=_0x48ff79[_0xf420bb(0xd2)](_0x240cb6=>_0x240cb6[_0xf420bb(0xd6)](/\s*=/,'')[_0xf420bb(0x16d)]()['toLowerCase']()));}return _0x987c3f['map']((_0x47f61b,_0x220794)=>{const _0x6aff06=_0xf420bb;if(_0x5770a5[_0x220794]){const _0x2d2452=_0x5770a5[_0x220794],_0x55b97d=SENSITIVE_PARAM_PATTERNS['some'](_0x25c0cf=>_0x2d2452[_0x6aff06(0x169)](_0x25c0cf));if(_0x55b97d)return'[REDACTED]';}if(typeof _0x47f61b===_0x6aff06(0x107)&&_0x47f61b[_0x6aff06(0xe2)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x47f61b)&&_0x47f61b[_0x6aff06(0x169)]('.'))return _0x16c641['oLWhh'];if(/^[a-fA-F0-9]{32,}$/[_0x6aff06(0x108)](_0x47f61b))return _0x6aff06(0x110);}return _0x47f61b;});},parseQueryMetadata=_0x56d368=>{const _0x100b47=a0_0x369009,_0x42736a={'XBkcj':_0x100b47(0x105),'YRIaU':'SELECT','pDrHr':'INSERT','nYiGs':_0x100b47(0x12e),'QWcRM':'DELETE','TBwAj':'START\x20TRANSACTION','vVUQn':_0x100b47(0x126),'KqYDU':_0x100b47(0x16b),'FFVxJ':'CREATE','Asawz':_0x100b47(0xfb),'XUpfN':_0x100b47(0x16f),'OaNRz':_0x100b47(0xc8),'cnqyk':'DROP'},_0x11519e=_0x56d368['trim'](),_0xa47063=_0x11519e[_0x100b47(0x179)]();let _0x4f1140=_0x42736a['XBkcj'],_0x489153=null;if(_0xa47063[_0x100b47(0x15b)](_0x100b47(0x158))){_0x4f1140=_0x42736a['YRIaU'];const _0x50e162=_0x11519e['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x489153=_0x50e162?_0x50e162[0x1]:null;}else{if(_0xa47063['startsWith'](_0x42736a[_0x100b47(0xfd)])){_0x4f1140=_0x100b47(0xc3);const _0x331c3d=_0x11519e['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x489153=_0x331c3d?_0x331c3d[0x1]:null;}else{if(_0xa47063['startsWith'](_0x42736a['nYiGs'])){_0x4f1140=_0x42736a[_0x100b47(0x102)];const _0x523ca7=_0x11519e[_0x100b47(0x17c)](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x489153=_0x523ca7?_0x523ca7[0x1]:null;}else{if(_0xa47063[_0x100b47(0x15b)](_0x42736a['QWcRM'])){_0x4f1140='DELETE';const _0x5dce35=_0x11519e[_0x100b47(0x17c)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x489153=_0x5dce35?_0x5dce35[0x1]:null;}else{if(_0xa47063['startsWith'](_0x100b47(0xf9))||_0xa47063[_0x100b47(0x15b)](_0x42736a['TBwAj']))_0x4f1140='TRANSACTION_BEGIN';else{if(_0xa47063['startsWith']('COMMIT'))_0x4f1140=_0x100b47(0x11e);else{if(_0xa47063[_0x100b47(0x15b)](_0x42736a[_0x100b47(0x129)]))_0x4f1140=_0x42736a[_0x100b47(0x113)];else{if(_0xa47063[_0x100b47(0x15b)](_0x42736a['FFVxJ']))_0x4f1140=_0x42736a[_0x100b47(0x132)];else{if(_0xa47063[_0x100b47(0x15b)](_0x42736a['XUpfN']))_0x4f1140=_0x42736a['OaNRz'];else _0xa47063[_0x100b47(0x15b)](_0x42736a['cnqyk'])&&(_0x4f1140=_0x100b47(0xca));}}}}}}}}return{'type':_0x4f1140,'table':_0x489153};},startQueryTimer=()=>{const _0x2d54ba=a0_0x369009,_0x53e1a5={'CcZqF':function(_0x278a27,_0x459b2a){return _0x278a27+_0x459b2a;},'mxYXp':function(_0x458095,_0x59ecd6){return _0x458095*_0x59ecd6;}},_0xa36a0a=process[_0x2d54ba(0x142)]();return()=>{const _0x291bcd=_0x2d54ba,[_0x2a34d2,_0x1e0a3f]=process[_0x291bcd(0x142)](_0xa36a0a);return parseFloat(_0x53e1a5['CcZqF'](_0x53e1a5['mxYXp'](_0x2a34d2,0x3e8),_0x1e0a3f/0xf4240)['toFixed'](0x2));};},logQuery=(_0x4c6317,_0x5754d0=[],_0x502b55={})=>{const _0xbe6938=a0_0x369009,_0x5dd37d={'GQzIT':_0xbe6938(0x12a),'UJHQN':_0xbe6938(0x12b),'UAHoX':function(_0x3a8dd1,_0x30e710,_0x947eef){return _0x3a8dd1(_0x30e710,_0x947eef);},'NhFtX':function(_0x250469,_0x4c3348){return _0x250469!==_0x4c3348;},'sVstJ':function(_0xcd8450,_0x2392fa){return _0xcd8450>_0x2392fa;},'TZQvt':function(_0x1c7953,_0x2166eb){return _0x1c7953!==_0x2166eb;},'SDfpe':function(_0x5b42ef,_0x36c7e9){return _0x5b42ef||_0x36c7e9;},'tCrjD':_0xbe6938(0xe6),'kZeAA':function(_0x3dc790,_0x2bc5c5){return _0x3dc790>_0x2bc5c5;},'vHeJP':'debug','HLYKC':'warn','ezVUo':_0xbe6938(0x186)};if(!sqlLogEnabled){logger[_0xbe6938(0x14f)]({'event':_0x5dd37d['GQzIT'],'query':_0x4c6317[_0xbe6938(0xd7)](0x0,0xc8),'paramCount':_0x5754d0[_0xbe6938(0xe2)]},_0x5dd37d['UJHQN']);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0xbe6938(0xce)}=_0x502b55,{type:_0x3fea8e,table:_0xfe7ca0}=parseQueryMetadata(_0x4c6317),_0x24e7f9={'event':'sql_query','queryType':_0x3fea8e,'table':_0xfe7ca0,'query':_0x4c6317,'paramCount':_0x5754d0[_0xbe6938(0xe2)],'dbType':dbType};sqlLogParams&&_0x5754d0[_0xbe6938(0xe2)]>0x0&&(_0x24e7f9[_0xbe6938(0x184)]=_0x5dd37d['UAHoX'](redactSensitiveParams,_0x5754d0,_0x4c6317));_0x5dd37d[_0xbe6938(0x154)](duration,null)&&(_0x24e7f9[_0xbe6938(0x134)]=duration,_0x24e7f9[_0xbe6938(0x119)]=_0x5dd37d['sVstJ'](duration,sqlLogSlowThreshold));_0x5dd37d['TZQvt'](rowsAffected,null)&&(_0x24e7f9['rowsAffected']=rowsAffected);const _0x53518e=_0x5dd37d['SDfpe'](_0xfe7ca0,_0x5dd37d[_0xbe6938(0x112)]);let _0x346c63='['+_0x3fea8e+']\x20'+_0x53518e;duration!==null&&(_0x346c63+='\x20('+duration+_0xbe6938(0xd3));const _0x37a193=_0x5dd37d[_0xbe6938(0xf0)](duration,null)&&_0x5dd37d[_0xbe6938(0x131)](duration,sqlLogSlowThreshold);let _0x1864c9=_0x5dd37d[_0xbe6938(0x10d)];if(_0x37a193)_0x346c63+=_0xbe6938(0x185),_0x1864c9=_0x5dd37d['HLYKC'],logger[_0xbe6938(0xd0)](_0x24e7f9,_0x346c63);else sqlLogLevel===_0x5dd37d['ezVUo']?(_0x1864c9=_0x5dd37d['ezVUo'],logger[_0xbe6938(0x186)](_0x24e7f9,_0x346c63)):logger['debug'](_0x24e7f9,_0x346c63);writeToFileLog({..._0x24e7f9,'level':_0x1864c9,'msg':_0x346c63,'time':new Date()['toISOString']()},_0x1864c9);},logTransaction=(_0x5928f1,_0xa7e0cf)=>{const _0x5c8fd8=a0_0x369009,_0x1ef732={'rwJzF':_0x5c8fd8(0x14f)},_0x5b259c={'event':'db_transaction','status':_0x5928f1,'queryCount':_0xa7e0cf},_0x2118a7=_0x5c8fd8(0x122)+_0x5928f1;logger['debug'](_0x5b259c,_0x2118a7),writeToFileLog({..._0x5b259c,'level':_0x1ef732['rwJzF'],'msg':_0x2118a7,'time':new Date()['toISOString']()},_0x1ef732['rwJzF']);},redactObject=_0x2024fc=>{const _0x13b526=a0_0x369009,_0x3b517c={'zoOuh':function(_0x406a3b,_0x106b7c){return _0x406a3b!==_0x106b7c;},'cFFPc':_0x13b526(0x143),'UflCS':_0x13b526(0x10a),'Bmsfz':'passwd','kiHLo':'pwd','HcUaB':'secret','ORhAa':'api_key','rJJWU':_0x13b526(0xf5),'UZrHQ':_0x13b526(0xed),'zFxOC':_0x13b526(0x10e),'ObYDK':_0x13b526(0x155),'OCDgW':function(_0xac403d,_0x1a1be0){return _0xac403d!==_0x1a1be0;},'uifJm':function(_0x349d1d,_0x250cb5){return _0x349d1d(_0x250cb5);}};if(!_0x2024fc||_0x3b517c[_0x13b526(0x13d)](typeof _0x2024fc,_0x3b517c[_0x13b526(0x14b)]))return _0x2024fc;const _0xc732f=[_0x3b517c[_0x13b526(0xee)],_0x3b517c[_0x13b526(0xc6)],_0x3b517c[_0x13b526(0x166)],_0x13b526(0x153),_0x3b517c['HcUaB'],'apikey',_0x3b517c[_0x13b526(0x163)],'authorization',_0x3b517c['rJJWU'],_0x13b526(0xf1),_0x13b526(0x130),_0x3b517c[_0x13b526(0xf6)],_0x13b526(0xd1),_0x3b517c['zFxOC'],_0x3b517c[_0x13b526(0x16a)],'refresh_token','access_token'],_0x1ad266=Array[_0x13b526(0xd4)](_0x2024fc)?[..._0x2024fc]:{..._0x2024fc};for(const _0x427e10 of Object[_0x13b526(0x182)](_0x1ad266)){const _0x99cf77=_0x427e10[_0x13b526(0xcb)]();if(_0xc732f[_0x13b526(0x170)](_0x4bbcd8=>_0x99cf77['includes'](_0x4bbcd8)))_0x1ad266[_0x427e10]=_0x13b526(0x109);else typeof _0x1ad266[_0x427e10]===_0x3b517c['cFFPc']&&_0x3b517c[_0x13b526(0x127)](_0x1ad266[_0x427e10],null)&&(_0x1ad266[_0x427e10]=_0x3b517c[_0x13b526(0x180)](redactObject,_0x1ad266[_0x427e10]));}return _0x1ad266;},logError=(_0x2ad153,_0x2fbcca={},_0x32222c=null)=>{const _0x10dc38=a0_0x369009,_0x4f5c8f={'TTpVP':'error','BcYLB':_0x10dc38(0x168)},_0x391310={'event':_0x4f5c8f['TTpVP'],'errorName':_0x2ad153['name']||_0x4f5c8f[_0x10dc38(0x114)],'errorMessage':_0x2ad153['message'],'errorCode':_0x2ad153[_0x10dc38(0x15c)]||null,'stack':_0x2ad153[_0x10dc38(0x15a)],..._0x2fbcca},_0x1677c9=_0x32222c||_0x10dc38(0x17a)+_0x2ad153['message'];logger[_0x10dc38(0x18a)](_0x391310,_0x1677c9),writeToFileLog({..._0x391310,'level':_0x4f5c8f['TTpVP'],'msg':_0x1677c9,'time':new Date()[_0x10dc38(0x175)]()},_0x4f5c8f['TTpVP']);},logFatalError=(_0x3897a6,_0x3d4a9b={},_0x29c358=null)=>{const _0x43300a=a0_0x369009,_0x3e6fb4={'JHLEz':'fatal_error','vjZmc':'fatal'},_0x1b0d4f={'event':_0x3e6fb4[_0x43300a(0x150)],'errorName':_0x3897a6['name']||_0x43300a(0x168),'errorMessage':_0x3897a6[_0x43300a(0xe9)],'errorCode':_0x3897a6[_0x43300a(0x15c)]||null,'stack':_0x3897a6[_0x43300a(0x15a)],'severity':'CRITICAL',..._0x3d4a9b},_0x23fa90=_0x29c358||_0x43300a(0x11a)+_0x3897a6[_0x43300a(0xe9)];logger[_0x43300a(0x187)](_0x1b0d4f,_0x23fa90),writeToFileLog({..._0x1b0d4f,'level':_0x3e6fb4['vjZmc'],'msg':_0x23fa90,'time':new Date()['toISOString']()},'error');},logHttpError=(_0xb8bf85,_0x1cb9ec,_0x12e07d={})=>{const _0x19e4e4=a0_0x369009,_0x197a77={'nPBQI':_0x19e4e4(0x10b),'NilGs':function(_0x5d4306,_0x2daddd,_0x34f3e7){return _0x5d4306(_0x2daddd,_0x34f3e7);},'BeyHK':'warn','VGqRX':function(_0x4366e1,_0x1d67e9){return _0x4366e1>=_0x1d67e9;}},_0x2302da={'event':_0x19e4e4(0x177),'errorName':_0xb8bf85['name']||'Error','errorMessage':_0xb8bf85[_0x19e4e4(0xe9)],'errorCode':_0xb8bf85[_0x19e4e4(0x15c)]||_0xb8bf85[_0x19e4e4(0xe8)]||0x1f4,'stack':_0xb8bf85['stack'],'method':_0x1cb9ec?.[_0x19e4e4(0x17f)],'url':_0x1cb9ec?.[_0x19e4e4(0xd5)]||_0x1cb9ec?.['originalUrl'],'path':_0x1cb9ec?.['path'],'ip':_0x1cb9ec?.['ip']||_0x1cb9ec?.[_0x19e4e4(0xd8)]?.[_0x19e4e4(0xfe)],'userAgent':_0x1cb9ec?.['get']?.(_0x197a77['nPBQI']),'requestId':_0x1cb9ec?.['id']||_0x1cb9ec?.[_0x19e4e4(0x115)]?.[_0x19e4e4(0xe1)],'body':_0x1cb9ec?.['body']?redactObject(_0x1cb9ec['body']):undefined,'query':_0x1cb9ec?.[_0x19e4e4(0x16e)],..._0x12e07d},_0x471b81=_0xb8bf85[_0x19e4e4(0xe8)]||_0xb8bf85['status']||0x1f4,_0x2c356c=_0x19e4e4(0x117)+_0x471b81+':\x20'+_0xb8bf85[_0x19e4e4(0xe9)];_0x471b81>=0x1f4?logger['error'](_0x2302da,_0x2c356c):logger['warn'](_0x2302da,_0x2c356c),_0x197a77[_0x19e4e4(0xd9)](writeToFileLog,{..._0x2302da,'level':_0x471b81>=0x1f4?_0x19e4e4(0x18a):_0x197a77['BeyHK'],'msg':_0x2c356c,'time':new Date()[_0x19e4e4(0x175)]()},_0x197a77['VGqRX'](_0x471b81,0x1f4)?'error':_0x19e4e4(0xd0));},logUncaughtError=(_0x270408,_0x14857e)=>{const _0x3b05a5=a0_0x369009,_0x3eeffe={'xryEK':'Error','RZKRf':_0x3b05a5(0x18a)},_0x50c866={'event':_0x270408,'errorName':_0x14857e?.['name']||_0x3eeffe[_0x3b05a5(0xf7)],'errorMessage':_0x14857e?.['message']||String(_0x14857e),'errorCode':_0x14857e?.['code']||null,'stack':_0x14857e?.[_0x3b05a5(0x15a)],'severity':'CRITICAL','processId':process['pid'],'memoryUsage':process['memoryUsage'](),'uptime':process[_0x3b05a5(0x123)]()},_0x1d4e28='['+_0x270408[_0x3b05a5(0x179)]()+']\x20'+(_0x14857e?.['message']||_0x14857e);logger['fatal'](_0x50c866,_0x1d4e28),writeToFileLog({..._0x50c866,'level':_0x3b05a5(0x187),'msg':_0x1d4e28,'time':new Date()['toISOString']()},_0x3eeffe['RZKRf']);},setupGlobalErrorHandlers=()=>{const _0x5b224b=a0_0x369009,_0xeba495={'GCxCm':_0x5b224b(0x165),'LEzCG':function(_0x434a09,_0x4cdaa0,_0x4329f8){return _0x434a09(_0x4cdaa0,_0x4329f8);},'XBQUU':function(_0x141430,_0x439b31){return _0x141430(_0x439b31);},'eTHQV':_0x5b224b(0xff),'tyQTM':'process_warning','raMSB':'warning','gSZta':_0x5b224b(0xc9),'XUcGO':function(_0x7ca8fd,_0x351cf4,_0x3de4ae){return _0x7ca8fd(_0x351cf4,_0x3de4ae);},'jbQpm':_0x5b224b(0x186)};process['on'](_0xeba495[_0x5b224b(0xc0)],_0x49fa42=>{const _0x542ba1=_0x5b224b;logUncaughtError(_0xeba495[_0x542ba1(0xc0)],_0x49fa42),_0xeba495[_0x542ba1(0x11c)](setTimeout,()=>{const _0x27af99=_0x542ba1;process[_0x27af99(0x157)](0x1);},0x3e8);}),process['on'](_0x5b224b(0xff),(_0x328050,_0x9d9b47)=>{const _0x224552=_0x5b224b,_0x8752cf=_0x328050 instanceof Error?_0x328050:new Error(_0xeba495[_0x224552(0xe7)](String,_0x328050));_0xeba495[_0x224552(0x11c)](logUncaughtError,_0xeba495[_0x224552(0x111)],_0x8752cf);}),process['on'](_0xeba495['raMSB'],_0x2e716f=>{const _0x3acd85=_0x5b224b;logger[_0x3acd85(0xd0)]({'event':_0xeba495['tyQTM'],'name':_0x2e716f['name'],'message':_0x2e716f[_0x3acd85(0xe9)],'stack':_0x2e716f[_0x3acd85(0x15a)]},_0x3acd85(0x13b)+_0x2e716f[_0x3acd85(0xe9)]);});const _0x227ce2={'event':_0xeba495[_0x5b224b(0x10f)]},_0x253ccc=_0x5b224b(0xdb);logger[_0x5b224b(0x186)](_0x227ce2,_0x253ccc),_0xeba495['XUcGO'](writeToFileLog,{..._0x227ce2,'level':'info','msg':_0x253ccc,'time':new Date()['toISOString']()},_0xeba495['jbQpm']);},createErrorHandlerMiddleware=()=>{const _0x25e949={'DhIWg':function(_0x674766,_0x1de2b5,_0x15bdb8){return _0x674766(_0x1de2b5,_0x15bdb8);},'eyPMs':'Internal\x20server\x20error','Idvgg':'x-request-id'};return(_0x43d1d0,_0x4de5d9,_0x1e29a2,_0x2fac75)=>{const _0x291db6=a0_0x1705;_0x25e949['DhIWg'](logHttpError,_0x43d1d0,_0x4de5d9);const _0x4a21dd=_0x43d1d0[_0x291db6(0xe8)]||_0x43d1d0['status']||0x1f4;_0x1e29a2['status'](_0x4a21dd)['json']({'success':![],'error':_0x4a21dd>=0x1f4?_0x25e949['eyPMs']:_0x43d1d0[_0x291db6(0xe9)],'requestId':_0x4de5d9['id']||_0x4de5d9['headers']?.[_0x25e949['Idvgg']]||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_0x57e3a4=a0_0x4bd1;function a0_0x4bd1(_0x5499a1,_0xac345f){_0x5499a1=_0x5499a1-0x18e;const _0x5ab42c=a0_0x5ab4();let _0x4bd133=_0x5ab42c[_0x5499a1];if(a0_0x4bd1['rztiRP']===undefined){var _0x3af920=function(_0x20deea){const _0x210cfd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x137ba4='',_0x496f77='';for(let _0x3856ef=0x0,_0x5af2c6,_0x479902,_0x19005f=0x0;_0x479902=_0x20deea['charAt'](_0x19005f++);~_0x479902&&(_0x5af2c6=_0x3856ef%0x4?_0x5af2c6*0x40+_0x479902:_0x479902,_0x3856ef++%0x4)?_0x137ba4+=String['fromCharCode'](0xff&_0x5af2c6>>(-0x2*_0x3856ef&0x6)):0x0){_0x479902=_0x210cfd['indexOf'](_0x479902);}for(let _0x2b8722=0x0,_0x23a3a9=_0x137ba4['length'];_0x2b8722<_0x23a3a9;_0x2b8722++){_0x496f77+='%'+('00'+_0x137ba4['charCodeAt'](_0x2b8722)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x496f77);};a0_0x4bd1['dPFEfu']=_0x3af920,a0_0x4bd1['tuskKE']={},a0_0x4bd1['rztiRP']=!![];}const _0x3325fa=_0x5ab42c[0x0],_0x254a16=_0x5499a1+_0x3325fa,_0x54a500=a0_0x4bd1['tuskKE'][_0x254a16];return!_0x54a500?(_0x4bd133=a0_0x4bd1['dPFEfu'](_0x4bd133),a0_0x4bd1['tuskKE'][_0x254a16]=_0x4bd133):_0x4bd133=_0x54a500,_0x4bd133;}(function(_0x862128,_0x59fa43){const _0x7b0bc0=a0_0x4bd1,_0x3afad1=_0x862128();while(!![]){try{const _0x470842=-parseInt(_0x7b0bc0(0x190))/0x1*(-parseInt(_0x7b0bc0(0x228))/0x2)+-parseInt(_0x7b0bc0(0x229))/0x3+parseInt(_0x7b0bc0(0x21b))/0x4+parseInt(_0x7b0bc0(0x1bc))/0x5*(parseInt(_0x7b0bc0(0x1a5))/0x6)+parseInt(_0x7b0bc0(0x20d))/0x7+-parseInt(_0x7b0bc0(0x1e5))/0x8+parseInt(_0x7b0bc0(0x1f0))/0x9;if(_0x470842===_0x59fa43)break;else _0x3afad1['push'](_0x3afad1['shift']());}catch(_0x87607a){_0x3afad1['push'](_0x3afad1['shift']());}}}(a0_0x5ab4,0x7fc7e));const pino=require(a0_0x57e3a4(0x1b1)),fs=require('fs'),path=require('path');let logToFile=![],logDir='./logs',serviceName=a0_0x57e3a4(0x1ca),sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','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':a0_0x57e3a4(0x1c0),'customColors':a0_0x57e3a4(0x208),'hideObject':!![]},isDevelopment=process[a0_0x57e3a4(0x1fb)][a0_0x57e3a4(0x213)]!=='production',logLevel=process[a0_0x57e3a4(0x1fb)]['LOG_LEVEL']||'info';let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':a0_0x57e3a4(0x1ca),'version':process['env'][a0_0x57e3a4(0x1cd)]||'1.0.5','env':process['env']['NODE_ENV']||'development'},'timestamp':pino['stdTimeFunctions'][a0_0x57e3a4(0x1ee)],'redact':{'paths':['req.headers.authorization','req.headers[\x22x-api-key\x22]','password','token',a0_0x57e3a4(0x1e8),a0_0x57e3a4(0x1ff),'JWT_SECRET'],'censor':a0_0x57e3a4(0x1d0)},'serializers':{'req':_0x1fbe16=>({'id':_0x1fbe16['id'],'method':_0x1fbe16[a0_0x57e3a4(0x1d7)],'url':_0x1fbe16['url'],'path':_0x1fbe16['path'],'remoteAddress':_0x1fbe16['ip']||_0x1fbe16[a0_0x57e3a4(0x1f6)]?.['remoteAddress']}),'res':_0x590b44=>({'statusCode':_0x590b44[a0_0x57e3a4(0x1e7)],'headers':_0x590b44['getHeaders']?.()}),'err':pino['stdSerializers']['err']}});function initFileLogging(){const _0x24cbd3=a0_0x57e3a4,_0x2442dd={'AHpUh':function(_0x6e18c3,_0x4405f8){return _0x6e18c3===_0x4405f8;},'iUEJU':'true','utOnl':'false','lAbhH':function(_0x49a3ce,_0x10f922){return _0x49a3ce(_0x10f922);},'QfQvy':_0x24cbd3(0x1d5)};if(fileLoggingInitialized)return;logToFile=_0x2442dd[_0x24cbd3(0x192)](process['env']['LOG_TO_FILE'],'true'),logDir=process['env']['LOG_DIR']||_0x24cbd3(0x1f9),serviceName=process[_0x24cbd3(0x1fb)][_0x24cbd3(0x1bf)]||_0x24cbd3(0x1ca),sqlLogEnabled=process['env'][_0x24cbd3(0x19e)]===_0x2442dd[_0x24cbd3(0x19f)],sqlLogLevel=process[_0x24cbd3(0x1fb)][_0x24cbd3(0x211)]||_0x24cbd3(0x1be),sqlLogParams=process['env']['SQL_LOG_PARAMS']!==_0x2442dd[_0x24cbd3(0x21f)],sqlLogSlowThreshold=_0x2442dd[_0x24cbd3(0x1cc)](parseInt,process[_0x24cbd3(0x1fb)][_0x24cbd3(0x202)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0xf6b166=path[_0x24cbd3(0x1ec)](process[_0x24cbd3(0x1b7)](),logDir);try{!fs[_0x24cbd3(0x1a0)](_0xf6b166)&&fs['mkdirSync'](_0xf6b166,{'recursive':!![]});}catch(_0x3c189f){console['error'](_0x24cbd3(0x1db)+_0xf6b166+':',_0x3c189f['message']),fileLoggingInitialized=!![];return;}const _0x552d46=path[_0x24cbd3(0x214)](_0xf6b166,_0x24cbd3(0x191)),_0x39a2f0=path['join'](_0xf6b166,'error.log');try{appLogStream=fs[_0x24cbd3(0x21e)](_0x552d46,{'flags':'a'}),errorLogStream=fs[_0x24cbd3(0x21e)](_0x39a2f0,{'flags':'a'}),fileLoggingInitialized=!![];const _0x5bcd4f={'event':_0x24cbd3(0x1af),'logDir':_0xf6b166,'files':[_0x24cbd3(0x191),_0x24cbd3(0x18e)]},_0x7b5d7a='File\x20logging\x20enabled:\x20'+_0xf6b166;logger['info'](_0x5bcd4f,_0x7b5d7a),writeToFileLog({..._0x5bcd4f,'level':_0x2442dd[_0x24cbd3(0x234)],'msg':_0x7b5d7a,'time':new Date()['toISOString']()},_0x24cbd3(0x1d5));}catch(_0x1c5692){console['error'](_0x24cbd3(0x223),_0x1c5692['message']),fileLoggingInitialized=!![];}}function writeToFileLog(_0x2c4f45,_0x230daa){const _0x5b048c=a0_0x57e3a4,_0x238f9a={'pIkxf':function(_0x246378,_0x154458){return _0x246378||_0x154458;},'ckeEY':function(_0x4174c8,_0x2d3bf9){return _0x4174c8+_0x2d3bf9;},'vYTPw':function(_0x240dfb,_0x519500){return _0x240dfb===_0x519500;},'PkFoC':'fatal'};if(_0x238f9a[_0x5b048c(0x220)](!logToFile,!appLogStream))return;const _0x36102d={'service':serviceName,..._0x2c4f45},_0x3b299c=_0x238f9a[_0x5b048c(0x22e)](JSON[_0x5b048c(0x1d8)](_0x36102d),'\x0a');appLogStream[_0x5b048c(0x22a)](_0x3b299c),(_0x238f9a[_0x5b048c(0x20a)](_0x230daa,'error')||_0x238f9a[_0x5b048c(0x20a)](_0x230daa,_0x238f9a[_0x5b048c(0x1f2)]))&&(errorLogStream&&errorLogStream['write'](_0x3b299c));}const createRequestLogger=(_0x660f23={})=>{return logger['child'](_0x660f23);},logServerStart=_0x35a4fb=>{const _0x4fe170=a0_0x57e3a4,_0x17f9db={'Rabvg':'Node.js','qFzJf':_0x4fe170(0x1d1),'mtnyK':function(_0x2dda0a,_0x320ce2){return _0x2dda0a(_0x320ce2);},'oPzmw':'Default','qRnEf':function(_0x5885f8,_0x39d328,_0x1678c){return _0x5885f8(_0x39d328,_0x1678c);},'XjWlm':'info'},_0x49fbf8=_0x4fe170(0x1f1)+(_0x35a4fb['environment']||_0x17f9db['Rabvg'])[_0x4fe170(0x1c7)](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x35a4fb[_0x4fe170(0x224)]||_0x17f9db['qFzJf'])['padEnd'](0x26)+_0x4fe170(0x1b2)+_0x17f9db['mtnyK'](String,_0x35a4fb[_0x4fe170(0x197)]||0xbb8)['padEnd'](0x26)+'\x20║\x0a║\x20\x20Config\x20\x20\x20\x20\x20\x20:\x20'+(_0x35a4fb[_0x4fe170(0x1bb)]||_0x17f9db['oPzmw'])[_0x4fe170(0x1c7)](0x26)+_0x4fe170(0x22b)+(_0x35a4fb['apiKey']?_0x4fe170(0x1f4):'NOT\x20ACTIVE')[_0x4fe170(0x1c7)](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console['log'](_0x49fbf8);const _0x9f9d01={'event':_0x4fe170(0x230),'project':_0x35a4fb[_0x4fe170(0x224)],'port':_0x35a4fb['port'],'config':_0x35a4fb['configFile'],'apiKeyEnabled':!!_0x35a4fb['apiKey']};logger[_0x4fe170(0x1d5)](_0x9f9d01),_0x17f9db[_0x4fe170(0x22f)](writeToFileLog,{..._0x9f9d01,'level':_0x17f9db[_0x4fe170(0x1e1)],'msg':'Server\x20starting:\x20'+_0x35a4fb[_0x4fe170(0x224)]+_0x4fe170(0x1a6)+_0x35a4fb[_0x4fe170(0x197)],'time':new Date()['toISOString']()},_0x4fe170(0x1d5));},logServerReady=_0x536f78=>{const _0x5bc6f6=a0_0x57e3a4,_0x1b6846={'sXRVJ':_0x5bc6f6(0x1d5)},_0x4083aa={'event':_0x5bc6f6(0x1c5),'port':_0x536f78['port'],'module':_0x536f78[_0x5bc6f6(0x1c6)],'healthCheck':_0x536f78[_0x5bc6f6(0x1e3)],'serviceInfo':_0x536f78[_0x5bc6f6(0x1a9)],'baseUrl':_0x536f78[_0x5bc6f6(0x1fe)]},_0x18c9e6='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x536f78[_0x5bc6f6(0x197)];logger[_0x5bc6f6(0x1d5)](_0x4083aa,_0x18c9e6),writeToFileLog({..._0x4083aa,'level':'info','msg':_0x18c9e6,'time':new Date()['toISOString']()},_0x1b6846[_0x5bc6f6(0x215)]),_0x536f78[_0x5bc6f6(0x1e3)]&&logger[_0x5bc6f6(0x1d5)](_0x5bc6f6(0x1ce)+_0x536f78[_0x5bc6f6(0x1e3)]),_0x536f78[_0x5bc6f6(0x1a9)]&&logger[_0x5bc6f6(0x1d5)](_0x5bc6f6(0x19c)+_0x536f78['serviceInfo']),_0x536f78[_0x5bc6f6(0x1fe)]&&logger[_0x5bc6f6(0x1d5)]('\x20\x20URL:\x20\x20\x20\x20'+_0x536f78['baseUrl']);},logProjectLoaded=(_0x3d3bb0,_0x35d7dd)=>{const _0xfdf559=a0_0x57e3a4,_0x2aab45={'YpkAl':_0xfdf559(0x1c8),'ynFpj':_0xfdf559(0x1d5)},_0x4ed567={'event':_0x2aab45['YpkAl'],'project':_0x3d3bb0,'path':_0x35d7dd},_0x4d39b1=_0xfdf559(0x1dc)+_0x3d3bb0;logger['info'](_0x4ed567,_0x4d39b1),writeToFileLog({..._0x4ed567,'level':_0x2aab45['ynFpj'],'msg':_0x4d39b1,'time':new Date()['toISOString']()},_0x2aab45['ynFpj']);},logEndpointRegistered=(_0x31de5f,_0x717514)=>{const _0x3f4278=a0_0x57e3a4,_0x16a67c={'LPIsw':_0x3f4278(0x1b4),'JygLa':_0x3f4278(0x1be)},_0x595a1a={'event':_0x16a67c['LPIsw'],'endpoint':_0x31de5f,'route':_0x717514},_0x2ff257=_0x3f4278(0x201)+_0x31de5f+':\x20'+_0x717514;logger[_0x3f4278(0x1be)](_0x595a1a,_0x2ff257),writeToFileLog({..._0x595a1a,'level':_0x16a67c['JygLa'],'msg':_0x2ff257,'time':new Date()[_0x3f4278(0x210)]()},'debug');},logDatabaseConfig=_0x6e6460=>{const _0x2cf04b=a0_0x57e3a4,_0x2feb6d={'UrZdS':'database_config','pibJI':'debug'},_0x5cb3e5={'event':_0x2feb6d['UrZdS'],'host':_0x6e6460[_0x2cf04b(0x1eb)],'port':_0x6e6460[_0x2cf04b(0x197)],'database':_0x6e6460[_0x2cf04b(0x19b)],'type':_0x6e6460[_0x2cf04b(0x218)],'user':_0x6e6460['user']},_0x524773='Database:\x20'+_0x6e6460['type']+_0x2cf04b(0x1b3)+_0x6e6460[_0x2cf04b(0x1eb)]+':'+_0x6e6460[_0x2cf04b(0x197)]+'/'+_0x6e6460['database'];logger['debug'](_0x5cb3e5,_0x524773),writeToFileLog({..._0x5cb3e5,'level':'debug','msg':_0x524773,'time':new Date()['toISOString']()},_0x2feb6d['pibJI']);},logRequest=(_0x528ca3,_0x22c6e5,_0x52057e)=>{const _0x5565c3=a0_0x57e3a4,_0x4bd1df={'GHfMV':'http_request','DHHWN':_0x5565c3(0x1d5),'ZxsfS':function(_0x2c82f0,_0x34ea85){return _0x2c82f0>=_0x34ea85;},'uFTDb':_0x5565c3(0x1f5),'ztKMO':function(_0x765f80,_0xd922a6,_0x427e7c){return _0x765f80(_0xd922a6,_0x427e7c);}},_0x2f0084={'event':_0x4bd1df['GHfMV'],'method':_0x528ca3[_0x5565c3(0x1d7)],'path':_0x528ca3['path'],'statusCode':_0x22c6e5['statusCode'],'durationMs':_0x52057e,'ip':_0x528ca3['ip']},_0x25b898=_0x528ca3[_0x5565c3(0x1d7)]+'\x20'+_0x528ca3['path']+_0x5565c3(0x1a8)+_0x22c6e5['statusCode']+'\x20('+_0x52057e+'ms)';let _0x21244d=_0x4bd1df[_0x5565c3(0x219)];if(_0x4bd1df['ZxsfS'](_0x22c6e5['statusCode'],0x1f4))_0x21244d='error',logger[_0x5565c3(0x1c4)](_0x2f0084,_0x25b898);else _0x22c6e5['statusCode']>=0x190?(_0x21244d=_0x4bd1df['uFTDb'],logger['warn'](_0x2f0084,_0x25b898)):logger[_0x5565c3(0x1d5)](_0x2f0084,_0x25b898);_0x4bd1df[_0x5565c3(0x1f8)](writeToFileLog,{..._0x2f0084,'level':_0x21244d,'msg':_0x25b898,'time':new Date()['toISOString']()},_0x21244d);},SENSITIVE_PARAM_PATTERNS=['password','passwd','pwd',a0_0x57e3a4(0x196),'access_token',a0_0x57e3a4(0x1e9),'secret',a0_0x57e3a4(0x217),a0_0x57e3a4(0x21c),a0_0x57e3a4(0x1aa),a0_0x57e3a4(0x1d4),a0_0x57e3a4(0x195),a0_0x57e3a4(0x1c9),a0_0x57e3a4(0x1e0),'private_key',a0_0x57e3a4(0x1fc)],redactSensitiveParams=(_0x24ffd4,_0x524b81)=>{const _0x3e94c7=a0_0x57e3a4,_0x2089e5={'vgdVi':'[REDACTED]','QfPkU':function(_0x2c598b,_0x4c0bf8){return _0x2c598b===_0x4c0bf8;},'iqklM':_0x3e94c7(0x1ad)};if(!_0x24ffd4||_0x2089e5['QfPkU'](_0x24ffd4[_0x3e94c7(0x232)],0x0))return _0x24ffd4;const _0x472cb2=_0x524b81[_0x3e94c7(0x1b6)](),_0x4cb7ae=_0x472cb2['match'](/\(([^)]+)\)\s*values/i);let _0x26c0eb=[];_0x4cb7ae&&(_0x26c0eb=_0x4cb7ae[0x1]['split'](',')[_0x3e94c7(0x1ed)](_0x4858e4=>_0x4858e4['trim']()[_0x3e94c7(0x1b6)]()));const _0x6a5b58=_0x472cb2['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x6a5b58){const _0x4807bd=_0x6a5b58[0x1],_0x3cf8dc=_0x4807bd['match'](/(\w+)\s*=/g);_0x3cf8dc&&(_0x26c0eb=_0x3cf8dc[_0x3e94c7(0x1ed)](_0x23e00d=>_0x23e00d['replace'](/\s*=/,'')['trim']()[_0x3e94c7(0x1b6)]()));}return _0x24ffd4[_0x3e94c7(0x1ed)]((_0x530bcf,_0x4c16d5)=>{const _0x47353b=_0x3e94c7;if(_0x26c0eb[_0x4c16d5]){const _0x55e1d2=_0x26c0eb[_0x4c16d5],_0x74b184=SENSITIVE_PARAM_PATTERNS[_0x47353b(0x20c)](_0x3591bf=>_0x55e1d2[_0x47353b(0x203)](_0x3591bf));if(_0x74b184)return _0x2089e5['vgdVi'];}if(_0x2089e5['QfPkU'](typeof _0x530bcf,_0x2089e5['iqklM'])&&_0x530bcf[_0x47353b(0x232)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x530bcf)&&_0x530bcf['includes']('.'))return _0x47353b(0x193);if(/^[a-fA-F0-9]{32,}$/['test'](_0x530bcf))return'[REDACTED:hash]';}return _0x530bcf;});},parseQueryMetadata=_0x5da235=>{const _0x44959b=a0_0x57e3a4,_0x362ac2={'OGZgx':'INSERT','EzCwj':'DELETE','uBveS':_0x44959b(0x1a1),'JuzaX':'CREATE','DEHbD':'ALTER','JMBZb':'DROP','IycjZ':_0x44959b(0x1a7)},_0x380ef6=_0x5da235[_0x44959b(0x1c2)](),_0x4047b2=_0x380ef6['toUpperCase']();let _0x1ebc97='UNKNOWN',_0x4600ed=null;if(_0x4047b2[_0x44959b(0x1e6)]('SELECT')){_0x1ebc97='SELECT';const _0xd71fb6=_0x380ef6['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4600ed=_0xd71fb6?_0xd71fb6[0x1]:null;}else{if(_0x4047b2['startsWith'](_0x362ac2['OGZgx'])){_0x1ebc97=_0x362ac2['OGZgx'];const _0x24b3a7=_0x380ef6[_0x44959b(0x20f)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4600ed=_0x24b3a7?_0x24b3a7[0x1]:null;}else{if(_0x4047b2['startsWith']('UPDATE')){_0x1ebc97=_0x44959b(0x1da);const _0x4cb3c8=_0x380ef6[_0x44959b(0x20f)](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4600ed=_0x4cb3c8?_0x4cb3c8[0x1]:null;}else{if(_0x4047b2['startsWith'](_0x44959b(0x1ea))){_0x1ebc97=_0x362ac2['EzCwj'];const _0x599a35=_0x380ef6['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4600ed=_0x599a35?_0x599a35[0x1]:null;}else{if(_0x4047b2[_0x44959b(0x1e6)](_0x362ac2['uBveS'])||_0x4047b2['startsWith']('START\x20TRANSACTION'))_0x1ebc97='TRANSACTION_BEGIN';else{if(_0x4047b2['startsWith']('COMMIT'))_0x1ebc97=_0x44959b(0x1d9);else{if(_0x4047b2[_0x44959b(0x1e6)](_0x44959b(0x19d)))_0x1ebc97='TRANSACTION_ROLLBACK';else{if(_0x4047b2[_0x44959b(0x1e6)](_0x362ac2['JuzaX']))_0x1ebc97='DDL_CREATE';else{if(_0x4047b2['startsWith'](_0x362ac2[_0x44959b(0x21a)]))_0x1ebc97=_0x44959b(0x1b9);else _0x4047b2[_0x44959b(0x1e6)](_0x362ac2['JMBZb'])&&(_0x1ebc97=_0x362ac2['IycjZ']);}}}}}}}}return{'type':_0x1ebc97,'table':_0x4600ed};},startQueryTimer=()=>{const _0x13a168={'wFUdw':function(_0xd78eab,_0x35b4d3){return _0xd78eab*_0x35b4d3;},'XQchC':function(_0x4a4a61,_0x57c063){return _0x4a4a61/_0x57c063;}},_0x54c81a=process['hrtime']();return()=>{const _0x269463=a0_0x4bd1,[_0x1a2571,_0x4bc057]=process['hrtime'](_0x54c81a);return parseFloat((_0x13a168[_0x269463(0x1d3)](_0x1a2571,0x3e8)+_0x13a168['XQchC'](_0x4bc057,0xf4240))[_0x269463(0x235)](0x2));};},logQuery=(_0x28f6b7,_0x18c830=[],_0x1d89b7={})=>{const _0x3f0dd2=a0_0x57e3a4,_0x45e71c={'LwUyj':'DB\x20Query','dLGln':function(_0x35093d,_0x195902){return _0x35093d(_0x195902);},'YPbQX':function(_0x110c79,_0x1eacaa){return _0x110c79>_0x1eacaa;},'xfYjm':function(_0x3886bd,_0x25211c){return _0x3886bd!==_0x25211c;},'xuTOX':function(_0x47386b,_0x5c5d4b){return _0x47386b||_0x5c5d4b;},'HOWbX':'unknown','dfSiP':_0x3f0dd2(0x1b5),'zeoaO':_0x3f0dd2(0x1f5),'UxdsC':_0x3f0dd2(0x1d5),'krJhd':function(_0x4ba183,_0x47f8de,_0x4a57d2){return _0x4ba183(_0x47f8de,_0x4a57d2);}};if(!sqlLogEnabled){logger['debug']({'event':'db_query','query':_0x28f6b7[_0x3f0dd2(0x1a3)](0x0,0xc8),'paramCount':_0x18c830['length']},_0x45e71c[_0x3f0dd2(0x1a2)]);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x3f0dd2(0x231)}=_0x1d89b7,{type:_0x154ab8,table:_0x589c38}=_0x45e71c['dLGln'](parseQueryMetadata,_0x28f6b7),_0x34a63d={'event':'sql_query','queryType':_0x154ab8,'table':_0x589c38,'query':_0x28f6b7,'paramCount':_0x18c830['length'],'dbType':dbType};sqlLogParams&&_0x45e71c['YPbQX'](_0x18c830[_0x3f0dd2(0x232)],0x0)&&(_0x34a63d[_0x3f0dd2(0x1a4)]=redactSensitiveParams(_0x18c830,_0x28f6b7));_0x45e71c['xfYjm'](duration,null)&&(_0x34a63d[_0x3f0dd2(0x18f)]=duration,_0x34a63d[_0x3f0dd2(0x1c3)]=duration>sqlLogSlowThreshold);_0x45e71c[_0x3f0dd2(0x237)](rowsAffected,null)&&(_0x34a63d['rowsAffected']=rowsAffected);const _0x32d943=_0x45e71c[_0x3f0dd2(0x1cf)](_0x589c38,_0x45e71c['HOWbX']);let _0x209c4e='['+_0x154ab8+']\x20'+_0x32d943;duration!==null&&(_0x209c4e+='\x20('+duration+'ms)');const _0x1ee050=_0x45e71c[_0x3f0dd2(0x237)](duration,null)&&duration>sqlLogSlowThreshold;let _0x12b4dc=_0x3f0dd2(0x1be);if(_0x1ee050)_0x209c4e+=_0x45e71c['dfSiP'],_0x12b4dc=_0x45e71c['zeoaO'],logger[_0x3f0dd2(0x1f5)](_0x34a63d,_0x209c4e);else sqlLogLevel===_0x3f0dd2(0x1d5)?(_0x12b4dc=_0x45e71c[_0x3f0dd2(0x1e4)],logger['info'](_0x34a63d,_0x209c4e)):logger[_0x3f0dd2(0x1be)](_0x34a63d,_0x209c4e);_0x45e71c['krJhd'](writeToFileLog,{..._0x34a63d,'level':_0x12b4dc,'msg':_0x209c4e,'time':new Date()['toISOString']()},_0x12b4dc);},logTransaction=(_0x5276d0,_0xa013a5)=>{const _0x52d2e5=a0_0x57e3a4,_0x2165c7={'FWiyQ':function(_0x15ac1c,_0xfa4f8a,_0x170073){return _0x15ac1c(_0xfa4f8a,_0x170073);}},_0x1c87ee={'event':'db_transaction','status':_0x5276d0,'queryCount':_0xa013a5},_0x4d3dd7=_0x52d2e5(0x1e2)+_0x5276d0;logger['debug'](_0x1c87ee,_0x4d3dd7),_0x2165c7[_0x52d2e5(0x226)](writeToFileLog,{..._0x1c87ee,'level':'debug','msg':_0x4d3dd7,'time':new Date()[_0x52d2e5(0x210)]()},'debug');},redactObject=_0x425d4a=>{const _0x80d2a5=a0_0x57e3a4,_0x1d45ae={'Xvpsw':function(_0x8df5bd,_0xaf84ed){return _0x8df5bd!==_0xaf84ed;},'TdQhJ':_0x80d2a5(0x1df),'Kzbgl':'creditcard','kPHbf':'credit_card','lHzMF':'cvv','YAnHp':'pin','MLlZR':'refresh_token','yDvbl':'object','JzWXM':function(_0x39b8db,_0x11c2d0){return _0x39b8db(_0x11c2d0);}};if(!_0x425d4a||_0x1d45ae['Xvpsw'](typeof _0x425d4a,'object'))return _0x425d4a;const _0x15965c=['password','passwd',_0x80d2a5(0x22d),'token','secret',_0x80d2a5(0x21c),'api_key',_0x1d45ae['TdQhJ'],_0x1d45ae['Kzbgl'],_0x1d45ae['kPHbf'],_0x1d45ae[_0x80d2a5(0x1d2)],_0x80d2a5(0x1dd),_0x1d45ae['YAnHp'],'private_key',_0x80d2a5(0x1fc),_0x1d45ae['MLlZR'],'access_token'],_0x58659e=Array['isArray'](_0x425d4a)?[..._0x425d4a]:{..._0x425d4a};for(const _0x47abd8 of Object['keys'](_0x58659e)){const _0x3b398d=_0x47abd8[_0x80d2a5(0x1b6)]();if(_0x15965c[_0x80d2a5(0x20c)](_0x5223d6=>_0x3b398d['includes'](_0x5223d6)))_0x58659e[_0x47abd8]='[REDACTED]';else typeof _0x58659e[_0x47abd8]===_0x1d45ae[_0x80d2a5(0x20e)]&&_0x1d45ae[_0x80d2a5(0x221)](_0x58659e[_0x47abd8],null)&&(_0x58659e[_0x47abd8]=_0x1d45ae[_0x80d2a5(0x1bd)](redactObject,_0x58659e[_0x47abd8]));}return _0x58659e;},logError=(_0x4486b7,_0x3a7637={},_0x38d1a5=null)=>{const _0x3d1704=a0_0x57e3a4,_0x2c1cc1={'event':'error','errorName':_0x4486b7['name']||'Error','errorMessage':_0x4486b7[_0x3d1704(0x206)],'errorCode':_0x4486b7[_0x3d1704(0x227)]||null,'stack':_0x4486b7['stack'],..._0x3a7637},_0x376e03=_0x38d1a5||_0x3d1704(0x205)+_0x4486b7['message'];logger['error'](_0x2c1cc1,_0x376e03),writeToFileLog({..._0x2c1cc1,'level':'error','msg':_0x376e03,'time':new Date()[_0x3d1704(0x210)]()},_0x3d1704(0x1c4));},logFatalError=(_0x3397d8,_0x2e428e={},_0x39d7ec=null)=>{const _0x35af1b=a0_0x57e3a4,_0x1d7063={'HjMry':_0x35af1b(0x1fa),'iarTN':'Error','osWqQ':'fatal','swLaV':'error'},_0x21d817={'event':_0x1d7063['HjMry'],'errorName':_0x3397d8['name']||_0x1d7063[_0x35af1b(0x212)],'errorMessage':_0x3397d8[_0x35af1b(0x206)],'errorCode':_0x3397d8[_0x35af1b(0x227)]||null,'stack':_0x3397d8['stack'],'severity':_0x35af1b(0x236),..._0x2e428e},_0x404f6d=_0x39d7ec||'FATAL:\x20'+_0x3397d8['message'];logger[_0x35af1b(0x1fd)](_0x21d817,_0x404f6d),writeToFileLog({..._0x21d817,'level':_0x1d7063[_0x35af1b(0x1ab)],'msg':_0x404f6d,'time':new Date()['toISOString']()},_0x1d7063[_0x35af1b(0x222)]);},logHttpError=(_0xd79697,_0x3c17dc,_0x519651={})=>{const _0x131c58=a0_0x57e3a4,_0x3892af={'QAZYT':_0x131c58(0x1b0),'UtKxA':_0x131c58(0x19a),'ndJyA':function(_0x5ba843,_0x578ce2){return _0x5ba843>=_0x578ce2;},'xrkyG':function(_0xfd2cd3,_0x22d3d7,_0x1b6577){return _0xfd2cd3(_0x22d3d7,_0x1b6577);},'TGpQo':function(_0x37a129,_0x86a2f3){return _0x37a129>=_0x86a2f3;},'SXRry':function(_0x2f6db6,_0x149dce){return _0x2f6db6>=_0x149dce;},'wavjl':'warn'},_0x41f7f2={'event':_0x3892af['QAZYT'],'errorName':_0xd79697[_0x131c58(0x20b)]||_0x131c58(0x198),'errorMessage':_0xd79697[_0x131c58(0x206)],'errorCode':_0xd79697['code']||_0xd79697[_0x131c58(0x1e7)]||0x1f4,'stack':_0xd79697['stack'],'method':_0x3c17dc?.['method'],'url':_0x3c17dc?.[_0x131c58(0x1ac)]||_0x3c17dc?.['originalUrl'],'path':_0x3c17dc?.[_0x131c58(0x194)],'ip':_0x3c17dc?.['ip']||_0x3c17dc?.['connection']?.['remoteAddress'],'userAgent':_0x3c17dc?.[_0x131c58(0x1d6)]?.(_0x3892af['UtKxA']),'requestId':_0x3c17dc?.['id']||_0x3c17dc?.['headers']?.['x-request-id'],'body':_0x3c17dc?.['body']?redactObject(_0x3c17dc[_0x131c58(0x1b8)]):undefined,'query':_0x3c17dc?.[_0x131c58(0x207)],..._0x519651},_0x129a58=_0xd79697[_0x131c58(0x1e7)]||_0xd79697['status']||0x1f4,_0x1da7b1='HTTP\x20'+_0x129a58+':\x20'+_0xd79697[_0x131c58(0x206)];_0x3892af['ndJyA'](_0x129a58,0x1f4)?logger['error'](_0x41f7f2,_0x1da7b1):logger['warn'](_0x41f7f2,_0x1da7b1),_0x3892af[_0x131c58(0x199)](writeToFileLog,{..._0x41f7f2,'level':_0x3892af['TGpQo'](_0x129a58,0x1f4)?_0x131c58(0x1c4):_0x131c58(0x1f5),'msg':_0x1da7b1,'time':new Date()[_0x131c58(0x210)]()},_0x3892af['SXRry'](_0x129a58,0x1f4)?'error':_0x3892af['wavjl']);},logUncaughtError=(_0x455acd,_0x4c3c4c)=>{const _0x4a7145=a0_0x57e3a4,_0x426155={'ySqxq':function(_0xd8305,_0x18baa0){return _0xd8305(_0x18baa0);},'RjMYi':'CRITICAL'},_0x187844={'event':_0x455acd,'errorName':_0x4c3c4c?.[_0x4a7145(0x20b)]||_0x4a7145(0x198),'errorMessage':_0x4c3c4c?.['message']||_0x426155['ySqxq'](String,_0x4c3c4c),'errorCode':_0x4c3c4c?.[_0x4a7145(0x227)]||null,'stack':_0x4c3c4c?.['stack'],'severity':_0x426155[_0x4a7145(0x1f3)],'processId':process[_0x4a7145(0x1ae)],'memoryUsage':process[_0x4a7145(0x225)](),'uptime':process['uptime']()},_0x4138e3='['+_0x455acd['toUpperCase']()+']\x20'+(_0x4c3c4c?.[_0x4a7145(0x206)]||_0x4c3c4c);logger[_0x4a7145(0x1fd)](_0x187844,_0x4138e3),writeToFileLog({..._0x187844,'level':'fatal','msg':_0x4138e3,'time':new Date()['toISOString']()},'error');},setupGlobalErrorHandlers=()=>{const _0x140326=a0_0x57e3a4,_0x2cec48={'qNKAs':function(_0x550326,_0x3a70c4){return _0x550326(_0x3a70c4);},'XvnwD':function(_0x172806,_0x22daca,_0x3ae143){return _0x172806(_0x22daca,_0x3ae143);},'gLKfU':'process_warning','UQPJQ':'uncaughtException','zfSdX':_0x140326(0x1cb),'jsjTT':_0x140326(0x21d),'JateK':'info'};process['on'](_0x2cec48[_0x140326(0x1ef)],_0x458af9=>{const _0x15fc7e=_0x140326;logUncaughtError(_0x15fc7e(0x1de),_0x458af9),setTimeout(()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x2cec48[_0x140326(0x233)],(_0xc7b4d3,_0x6157ac)=>{const _0x18a349=_0x140326,_0x54b8d0=_0xc7b4d3 instanceof Error?_0xc7b4d3:new Error(_0x2cec48[_0x18a349(0x209)](String,_0xc7b4d3));_0x2cec48['XvnwD'](logUncaughtError,'unhandledRejection',_0x54b8d0);}),process['on']('warning',_0x4d0aa7=>{const _0x49480=_0x140326;logger[_0x49480(0x1f5)]({'event':_0x2cec48['gLKfU'],'name':_0x4d0aa7[_0x49480(0x20b)],'message':_0x4d0aa7['message'],'stack':_0x4d0aa7['stack']},_0x49480(0x238)+_0x4d0aa7['message']);});const _0x30fb45={'event':'global_error_handlers_setup'},_0x58e2ea=_0x2cec48['jsjTT'];logger[_0x140326(0x1d5)](_0x30fb45,_0x58e2ea),_0x2cec48[_0x140326(0x22c)](writeToFileLog,{..._0x30fb45,'level':'info','msg':_0x58e2ea,'time':new Date()[_0x140326(0x210)]()},_0x2cec48[_0x140326(0x200)]);},createErrorHandlerMiddleware=()=>{const _0x260128=a0_0x57e3a4,_0x210594={'MuZAD':function(_0x1c98ee,_0x54b6b1,_0x3b4ed9){return _0x1c98ee(_0x54b6b1,_0x3b4ed9);},'lLCQZ':_0x260128(0x1c1)};return(_0x22ac21,_0x227afe,_0x1bc577,_0x19a307)=>{const _0x43be3e=_0x260128;_0x210594['MuZAD'](logHttpError,_0x22ac21,_0x227afe);const _0x328e20=_0x22ac21[_0x43be3e(0x1e7)]||_0x22ac21['status']||0x1f4;_0x1bc577[_0x43be3e(0x1ba)](_0x328e20)['json']({'success':![],'error':_0x328e20>=0x1f4?_0x210594['lLCQZ']:_0x22ac21['message'],'requestId':_0x227afe['id']||_0x227afe[_0x43be3e(0x216)]?.[_0x43be3e(0x204)]||null});};};module[a0_0x57e3a4(0x1f7)]={'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}};function a0_0x5ab4(){const _0x225702=['AvvfsLu','zxHPC3rZu3LUyW','qKvhsu4','thDvEwO','C3vIC3rYAw5N','CgfYyw1Z','mtqZmJe0verAs3zh','ig9UihbVCNqG','rermx0rst1a','ic0G','C2vYDMLJzuLUzM8','yxbPx2TLEq','B3nxCve','DxjS','C3rYAw5N','CgLK','zMLSzv9SB2DNAw5Nx2vUywjSzwq','Ahr0Cf9LCNjVCG','CgLUBW','iokvKqRILzeGifbVCNqGicaGicaGidOG','oI8V','zw5KCg9PBNrFCMvNAxn0zxjLza','ifTtte9xxq','Dg9mB3DLCKnHC2u','y3DK','yM9KEq','rermx0fmvevs','C3rHDhvZ','y29UzMLNrMLSzq','mta1tNrqwhjk','sNPxwe0','zgvIDwC','u0vsvKLdrv9oqu1f','E21Zz30','sw50zxjUywWGC2vYDMvYigvYCM9Y','DhjPBq','AxntBg93','zxjYB3i','C2vYDMvYx3jLywr5','Bw9KDwXL','CgfKrw5K','ChjVAMvJDf9SB2fKzwq','CgLU','CMvZDgzVCMDL','Dw5Oyw5KBgvKuMvQzwn0Aw9U','BefIAeG','qvbqx1zfuLnjt04','icbizwfSDgG6ia','Ehvut1G','w1jfrefdvevexq','tI9b','BeH6tuy','D0zvzhC','y3jLzgvUDgLHBa','Aw5MBW','z2v0','Bwv0Ag9K','C3rYAw5NAwz5','vfjbtLnbq1rjt05Fq09ntuLu','vvbeqvrf','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','w09lxsbqCM9Qzwn0igXVywrLzdOG','C3nU','Dw5JyxvNAhrfEgnLChrPB24','yxv0Ag9YAxPHDgLVBG','B3rW','wgPxBg0','vhjHBNnHy3rPB24G','AgvHBhrOq2HLy2S','vxHKC0m','nZuWntG1nKXWzuj1EG','C3rHCNrZv2L0Aa','C3rHDhvZq29Kzq','yxbPs2v5','CMvMCMvZAf90B2TLBG','revmrvrf','Ag9ZDa','CMvZB2X2zq','BwfW','AxnVvgLTzq','vvfqsLe','ndm2mteZouPIzhrgEa','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWRILzeGicaGicaGicaGicaGifjfu1rgt1jhrsbsvu5usu1fifnfuLzfuIaGicaGicaGicaGicaGicaG4PwrcUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','ugTgB0m','uMPnwwK','qunusvzf','D2fYBG','y29UBMvJDgLVBG','zxHWB3j0CW','ENrltu8','lI9SB2DZ','zMf0ywXFzxjYB3i','zw52','ChjPDMf0zwTLEq','zMf0ywW','yMfZzvvYBa','rejFueftu1DpuKq','sMf0zuS','icdIHPiG','u1fmx0Xpr19tte9xx1riuKvtse9mra','Aw5JBhvKzxm','Ec1Yzxf1zxn0lwLK','rxjYB3i6ia','BwvZC2fNzq','CxvLCNK','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','Cu5lqxm','DLLuuhC','BMfTzq','C29Tzq','ndK0mJuYnvnpCKfRzW','Eur2yMW','Bwf0y2G','Dg9ju09tDhjPBMC','u1fmx0Xpr19mrvzfta','AwfYve4','tK9erv9ftLy','AM9PBG','C1HsvKO','AgvHzgvYCW','yxbPx3nLy3jLDa','DhLWzq','reHiv04','reviyKq','nZi1mJyWB2Hct2Lc','yxbPA2v5','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','y3jLyxrLv3jPDgvtDhjLyw0','DxrpBMW','CeLREgy','whzWC3C','C3Dmyvy','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','ChjVAMvJDa','BwvTB3j5vxnHz2u','rLDPEve','y29Kzq','nJq3mtH2rhz4tvC','mJeWodq1n3rHBwvRwa','D3jPDgu','iokvKqRILzeGiefqssblzxKGicaGidOG','whzUD0q','ChDK','y2TLrvK','CvjUrwy','C2vYDMvYx3n0yxj0Aw5N','Cg9ZDgDYzxnXBa','BgvUz3rO','EMztzfG','uwzrDNK','Dg9gAxHLza','q1jjveLdquW','EgzzAM0','uhjVy2vZCYbxyxjUAw5NoIa','zxjYB3iUBg9N','zhvYyxrPB25nCW','oxHYzwv4BG','yxbWlMXVzW','quHWvwG','w1jfrefdveveoNrVA2vUxq','Cgf0Aa','y3jLzgvUDgLHBhm','Dg9Rzw4','Cg9YDa','rxjYB3i','EhjREuC','DxnLCI1Hz2vUDa','zgf0ywjHC2u','icbjBMzVoIaGia','uK9mtejbq0S','u1fmx0Xpr19ftKfcteve'];a0_0x5ab4=function(){return _0x225702;};return a0_0x5ab4();}
@@ -1 +1 @@
1
- const a0_0x1c864a=a0_0x4b70;(function(_0x50ff09,_0x308988){const _0x271aca=a0_0x4b70,_0x5c1b80=_0x50ff09();while(!![]){try{const _0x4af46d=-parseInt(_0x271aca(0x15d))/0x1+-parseInt(_0x271aca(0x17c))/0x2*(-parseInt(_0x271aca(0x171))/0x3)+parseInt(_0x271aca(0x16c))/0x4+-parseInt(_0x271aca(0x17f))/0x5*(parseInt(_0x271aca(0x16e))/0x6)+parseInt(_0x271aca(0x167))/0x7*(-parseInt(_0x271aca(0x17d))/0x8)+parseInt(_0x271aca(0x16d))/0x9*(parseInt(_0x271aca(0x169))/0xa)+parseInt(_0x271aca(0x165))/0xb;if(_0x4af46d===_0x308988)break;else _0x5c1b80['push'](_0x5c1b80['shift']());}catch(_0xbea7c3){_0x5c1b80['push'](_0x5c1b80['shift']());}}}(a0_0x5c8c,0x622c2));const fs=require('fs')[a0_0x1c864a(0x16f)],path=require(a0_0x1c864a(0x160)),{logger}=require(a0_0x1c864a(0x180));function a0_0x5c8c(){const _0x14a0d9=['lMPZB24','nxzqz09vuG','lI9SB2DNzxi','CgfYC2u','Cgf5Bg9HzerPCG','z2v0','ndq4ota5Bg1uzhbw','Cgf5Bg9HzdO','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','Cgf0Aa','y2fJAgu','rgn3t2q','Aw5MBW','AM9PBG','odK3nZuYoxfiuMfhAW','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','mtrPqNbfq1G','y2XLyxi','nJa5mfvHs0fVqG','zxjYB3i','zMLLBgroyw1L','mtGZotG1mKn1B2Diuq','nJGYmKr6ugvHrq','mZKZnda1nLfZrNrPzq','ChjVBwLZzxm','zwfkwM8','mteXrvLKvfjn','AgfZ','DxrMoa','Axnby3rPB25fBMfIBgvK','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','zgvIDwC','Cgf5Bg9Hzf9SB2fKzwq','zMLLBgrmywjLBhm','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK','ywn0Aw9U','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','ntK1neXtA2zzEq','mtm2ndy5nK9jBeLpuG'];a0_0x5c8c=function(){return _0x14a0d9;};return a0_0x5c8c();}function a0_0x4b70(_0x2a0267,_0x4889ea){_0x2a0267=_0x2a0267-0x15b;const _0x5c8c5a=a0_0x5c8c();let _0x4b701d=_0x5c8c5a[_0x2a0267];if(a0_0x4b70['xjQGTG']===undefined){var _0x1fcde6=function(_0x528fb3){const _0x1fed75='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x446aba='',_0x270e31='';for(let _0x357aef=0x0,_0x101685,_0x5bd623,_0x16f9a1=0x0;_0x5bd623=_0x528fb3['charAt'](_0x16f9a1++);~_0x5bd623&&(_0x101685=_0x357aef%0x4?_0x101685*0x40+_0x5bd623:_0x5bd623,_0x357aef++%0x4)?_0x446aba+=String['fromCharCode'](0xff&_0x101685>>(-0x2*_0x357aef&0x6)):0x0){_0x5bd623=_0x1fed75['indexOf'](_0x5bd623);}for(let _0x14ebcc=0x0,_0x38bbbd=_0x446aba['length'];_0x14ebcc<_0x38bbbd;_0x14ebcc++){_0x270e31+='%'+('00'+_0x446aba['charCodeAt'](_0x14ebcc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x270e31);};a0_0x4b70['lGZrEq']=_0x1fcde6,a0_0x4b70['UUiDrw']={},a0_0x4b70['xjQGTG']=!![];}const _0x2c6844=_0x5c8c5a[0x0],_0x32e831=_0x2a0267+_0x2c6844,_0x4a7980=a0_0x4b70['UUiDrw'][_0x32e831];return!_0x4a7980?(_0x4b701d=a0_0x4b70['lGZrEq'](_0x4b701d),a0_0x4b70['UUiDrw'][_0x32e831]=_0x4b701d):_0x4b701d=_0x4a7980,_0x4b701d;}class PayloadLoader{constructor(){const _0x15e2ef=a0_0x1c864a;this['payloadDir']=path[_0x15e2ef(0x164)](__dirname,'../../payload'),this['cache']=new Map();}async['loadPayload'](_0x37ac3b,_0x67da32){const _0x3eaae9=a0_0x1c864a,_0x190c7d={'fvuXA':_0x3eaae9(0x173),'eaJZo':_0x3eaae9(0x177)},_0x41ccd3=_0x37ac3b+':'+_0x67da32;if(this[_0x3eaae9(0x161)][_0x3eaae9(0x172)](_0x41ccd3))return this['cache'][_0x3eaae9(0x15c)](_0x41ccd3);const _0xb9b866=path['join'](this['payloadDir'],_0x37ac3b+'_'+_0x67da32+_0x3eaae9(0x17e));try{const _0x4aa148=await fs['readFile'](_0xb9b866,_0x190c7d['fvuXA']),_0xabfc1f=JSON['parse'](_0x4aa148);return this[_0x3eaae9(0x161)]['set'](_0x41ccd3,_0xabfc1f),logger[_0x3eaae9(0x176)]({'event':_0x190c7d[_0x3eaae9(0x170)],'project':_0x37ac3b,'resource':_0x67da32},_0x3eaae9(0x175)),_0xabfc1f;}catch(_0x5a2a28){logger['error']({'event':'payload_load_error','project':_0x37ac3b,'resource':_0x67da32,'error':_0x5a2a28['message']},'Failed\x20to\x20load\x20payload');throw new Error('Payload\x20not\x20found:\x20'+_0x37ac3b+'_'+_0x67da32);}}async['loadPayloadByName'](_0x1d4e70){const _0x138d7b=a0_0x1c864a,_0x538fbd={'QWTNg':_0x138d7b(0x173),'FDxOh':'payload_load_error','DcwOd':_0x138d7b(0x17b)},_0x4b2a08=_0x138d7b(0x15e)+_0x1d4e70;if(this[_0x138d7b(0x161)]['has'](_0x4b2a08))return this['cache'][_0x138d7b(0x15c)](_0x4b2a08);const _0x8175b5=path['join'](this[_0x138d7b(0x15b)],_0x1d4e70+_0x138d7b(0x17e));try{const _0x399d13=await fs['readFile'](_0x8175b5,_0x538fbd['QWTNg']),_0x23f835=JSON[_0x138d7b(0x181)](_0x399d13);return this['cache']['set'](_0x4b2a08,_0x23f835),logger['debug']({'event':_0x138d7b(0x177),'payloadName':_0x1d4e70},_0x138d7b(0x15f)),_0x23f835;}catch(_0x2fb3ad){logger[_0x138d7b(0x16a)]({'event':_0x538fbd['FDxOh'],'payloadName':_0x1d4e70,'error':_0x2fb3ad['message']},_0x538fbd[_0x138d7b(0x162)]);throw new Error('Payload\x20not\x20found:\x20'+_0x1d4e70);}}[a0_0x1c864a(0x174)](_0x547cba,_0x222004){const _0x1c7d1a=a0_0x1c864a;return _0x547cba['action']&&_0x547cba[_0x1c7d1a(0x17a)][_0x222004]===!![];}['getExportConfig'](_0x2bc627){const _0x596c80=a0_0x1c864a;return{'columns':_0x2bc627[_0x596c80(0x16b)]||[],'filename':_0x2bc627['tableName']['replace']('.','-')+'-export','datatablesQuery':_0x2bc627['datatablesQuery']||null,'columnFormats':_0x2bc627['columnFormats']||null,'fieldLabels':_0x2bc627[_0x596c80(0x178)]||null};}['clearCache'](){const _0x2fbd4c=a0_0x1c864a;this[_0x2fbd4c(0x161)][_0x2fbd4c(0x168)](),logger[_0x2fbd4c(0x163)]({'event':_0x2fbd4c(0x179)},_0x2fbd4c(0x166));}}module['exports']=new PayloadLoader();
1
+ const a0_0x4f68f2=a0_0x3d8c;(function(_0x524e34,_0x27e3fc){const _0x4a1cfa=a0_0x3d8c,_0x36b330=_0x524e34();while(!![]){try{const _0x48d577=parseInt(_0x4a1cfa(0xac))/0x1+parseInt(_0x4a1cfa(0x8f))/0x2*(parseInt(_0x4a1cfa(0x8b))/0x3)+-parseInt(_0x4a1cfa(0xaa))/0x4+parseInt(_0x4a1cfa(0x94))/0x5*(parseInt(_0x4a1cfa(0x97))/0x6)+parseInt(_0x4a1cfa(0xab))/0x7+parseInt(_0x4a1cfa(0x9e))/0x8*(-parseInt(_0x4a1cfa(0x89))/0x9)+-parseInt(_0x4a1cfa(0xa1))/0xa*(parseInt(_0x4a1cfa(0xae))/0xb);if(_0x48d577===_0x27e3fc)break;else _0x36b330['push'](_0x36b330['shift']());}catch(_0x46334b){_0x36b330['push'](_0x36b330['shift']());}}}(a0_0x1f0b,0x26d77));const fs=require('fs')['promises'],path=require('path'),{logger}=require('./logger');function a0_0x1f0b(){const _0x449611=['mJK5odjcrKPVrfi','DeXeAwC','Bg9HzfbHEwXVywq','uuXlvNK','mtjQqu1Ms2G','Avfov2u','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','zgvIDwC','CMvWBgfJzq','nJKWnJK1sxjxrwzn','zgf0yxrHyMXLC1f1zxj5','Cgf5Bg9HzerPCG','mtjIrLbPyvC','y2fJAgu','BwvZC2fNzq','Aw5MBW','AM9PBG','zxjYB3i','lMPZB24','ogXyBK9iwG','z2v0rxHWB3j0q29UzMLN','Bg9HzfbHEwXVywrcEu5HBwu','mJGYmJbmwevdvwS','txrnqw8','DgfIBgvoyw1L','C2v0','y2XLyxi','AgfZ','Cgf5Bg9HzdO','z2v0','CgfYC2u','mJmXntK2uujdyLfK','mtq1nJK0nvzTvg13yq','mJKYnJa0u2zcsgTz','Cgf5Bg9Hzf9SB2fKzwq','mty5nfnKAePhCW','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','Axnby3rPB25fBMfIBgvK','ywn0Aw9U','mty2odu5mwfZC2LHsW','B2HvtuK'];a0_0x1f0b=function(){return _0x449611;};return a0_0x1f0b();}function a0_0x3d8c(_0x5d3ea0,_0x1f5624){_0x5d3ea0=_0x5d3ea0-0x86;const _0x1f0b3f=a0_0x1f0b();let _0x3d8c4c=_0x1f0b3f[_0x5d3ea0];if(a0_0x3d8c['XSiKam']===undefined){var _0x3b6f85=function(_0x4d7767){const _0x2ef4c9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4c16be='',_0x571f97='';for(let _0x58501b=0x0,_0x531ed7,_0x187503,_0x47e964=0x0;_0x187503=_0x4d7767['charAt'](_0x47e964++);~_0x187503&&(_0x531ed7=_0x58501b%0x4?_0x531ed7*0x40+_0x187503:_0x187503,_0x58501b++%0x4)?_0x4c16be+=String['fromCharCode'](0xff&_0x531ed7>>(-0x2*_0x58501b&0x6)):0x0){_0x187503=_0x2ef4c9['indexOf'](_0x187503);}for(let _0x4de104=0x0,_0x33ffb8=_0x4c16be['length'];_0x4de104<_0x33ffb8;_0x4de104++){_0x571f97+='%'+('00'+_0x4c16be['charCodeAt'](_0x4de104)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x571f97);};a0_0x3d8c['QCgezw']=_0x3b6f85,a0_0x3d8c['dlhoRq']={},a0_0x3d8c['XSiKam']=!![];}const _0x32bf25=_0x1f0b3f[0x0],_0x4dc340=_0x5d3ea0+_0x32bf25,_0x54a105=a0_0x3d8c['dlhoRq'][_0x4dc340];return!_0x54a105?(_0x3d8c4c=a0_0x3d8c['QCgezw'](_0x3d8c4c),a0_0x3d8c['dlhoRq'][_0x4dc340]=_0x3d8c4c):_0x3d8c4c=_0x54a105,_0x3d8c4c;}class PayloadLoader{constructor(){const _0x362099=a0_0x3d8c,_0x3477d8={'Gkdja':'../../payload'};this['payloadDir']=path[_0x362099(0x9b)](__dirname,_0x3477d8['Gkdja']),this[_0x362099(0x98)]=new Map();}async[a0_0x4f68f2(0x8d)](_0xf58855,_0x5bdc44){const _0x3b6ca8=a0_0x4f68f2,_0x2316ca={'iQNWe':'utf8','tLDig':'payload_loaded','MtMAo':_0x3b6ca8(0x86)},_0x440f8e=_0xf58855+':'+_0x5bdc44;if(this[_0x3b6ca8(0x98)][_0x3b6ca8(0xa6)](_0x440f8e))return this[_0x3b6ca8(0x98)][_0x3b6ca8(0xa8)](_0x440f8e);const _0x1c37ab=path[_0x3b6ca8(0x9b)](this[_0x3b6ca8(0x96)],_0xf58855+'_'+_0x5bdc44+_0x3b6ca8(0x9d));try{const _0x5b969d=await fs['readFile'](_0x1c37ab,_0x2316ca[_0x3b6ca8(0x90)]),_0x5855d3=JSON[_0x3b6ca8(0xa9)](_0x5b969d);return this['cache']['set'](_0x440f8e,_0x5855d3),logger['debug']({'event':_0x2316ca[_0x3b6ca8(0x8c)],'project':_0xf58855,'resource':_0x5bdc44},'Payload\x20loaded\x20successfully'),_0x5855d3;}catch(_0x29cd88){logger[_0x3b6ca8(0x9c)]({'event':'payload_load_error','project':_0xf58855,'resource':_0x5bdc44,'error':_0x29cd88['message']},_0x2316ca[_0x3b6ca8(0xa2)]);throw new Error('Payload\x20not\x20found:\x20'+_0xf58855+'_'+_0x5bdc44);}}async[a0_0x4f68f2(0xa0)](_0x453bbc){const _0x43e8d3=a0_0x4f68f2,_0x28f130={'KlEPN':'utf8','TkbkO':_0x43e8d3(0xad),'ZCBnB':'payload_load_error','QLKVy':'Failed\x20to\x20load\x20payload\x20by\x20name'},_0x29b288=_0x43e8d3(0xa7)+_0x453bbc;if(this[_0x43e8d3(0x98)]['has'](_0x29b288))return this['cache']['get'](_0x29b288);const _0x368eae=path[_0x43e8d3(0x9b)](this['payloadDir'],_0x453bbc+_0x43e8d3(0x9d));try{const _0x34aa0d=await fs['readFile'](_0x368eae,_0x28f130['KlEPN']),_0x27e3d3=JSON['parse'](_0x34aa0d);return this[_0x43e8d3(0x98)][_0x43e8d3(0xa4)](_0x29b288,_0x27e3d3),logger[_0x43e8d3(0x92)]({'event':_0x28f130['TkbkO'],'payloadName':_0x453bbc},_0x43e8d3(0x91)),_0x27e3d3;}catch(_0x4af5bc){logger['error']({'event':_0x28f130['ZCBnB'],'payloadName':_0x453bbc,'error':_0x4af5bc[_0x43e8d3(0x99)]},_0x28f130[_0x43e8d3(0x8e)]);throw new Error('Payload\x20not\x20found:\x20'+_0x453bbc);}}[a0_0x4f68f2(0x87)](_0x1f63c7,_0x8695a4){const _0x44843f=a0_0x4f68f2,_0x5ba67e={'UAEcD':function(_0x32a3b1,_0x2668a3){return _0x32a3b1===_0x2668a3;}};return _0x1f63c7[_0x44843f(0x88)]&&_0x5ba67e['UAEcD'](_0x1f63c7['action'][_0x8695a4],!![]);}[a0_0x4f68f2(0x9f)](_0x3c9376){const _0x524779=a0_0x4f68f2;return{'columns':_0x3c9376['fieldName']||[],'filename':_0x3c9376[_0x524779(0xa3)][_0x524779(0x93)]('.','-')+'-export','datatablesQuery':_0x3c9376[_0x524779(0x95)]||null,'columnFormats':_0x3c9376['columnFormats']||null,'fieldLabels':_0x3c9376['fieldLabels']||null};}['clearCache'](){const _0x384065=a0_0x4f68f2,_0x5df5fd={'ohUMI':'payload_cache_cleared','DgCQY':'Payload\x20cache\x20cleared'};this['cache'][_0x384065(0xa5)](),logger[_0x384065(0x9a)]({'event':_0x5df5fd[_0x384065(0x8a)]},_0x5df5fd['DgCQY']);}}module['exports']=new PayloadLoader();