@restforgejs/platform 5.1.16 → 5.1.20

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 (176) 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/catalog/dbschema.js +2 -1
  5. package/generators/cli/endpoint/list.js +264 -0
  6. package/generators/cli/fast-track.js +395 -37
  7. package/generators/cli/processor/create.js +7 -7
  8. package/generators/cli/processor/list.js +229 -0
  9. package/generators/lib/generators/dashboard-generator.js +5 -5
  10. package/generators/lib/payload/payload-runner.js +63 -0
  11. package/generators/lib/templates/dashboard-catalog.js +1 -1
  12. package/generators/lib/templates/db-connection-env.js +1 -1
  13. package/generators/lib/templates/dbschema-catalog.js +1 -1
  14. package/generators/lib/templates/field-validation-catalog.js +1 -1
  15. package/generators/lib/templates/mysql-template.js +1 -1
  16. package/generators/lib/templates/oracle-template.js +1 -1
  17. package/generators/lib/templates/postgres-template.js +1 -1
  18. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  19. package/generators/lib/templates/sqlite-template.js +1 -1
  20. package/integrity-manifest.json +18 -18
  21. package/package.json +1 -1
  22. package/scripts/check-install.js +8 -8
  23. package/scripts/verify-integrity.js +1 -1
  24. package/server.js +1 -1
  25. package/src/components/handlers/adjust_handler.js +1 -1
  26. package/src/components/handlers/audit_handler.js +1 -1
  27. package/src/components/handlers/delete_handler.js +1 -1
  28. package/src/components/handlers/export_handler.js +1 -1
  29. package/src/components/handlers/import_handler.js +1 -1
  30. package/src/components/handlers/insert_handler.js +1 -1
  31. package/src/components/handlers/update_handler.js +1 -1
  32. package/src/components/handlers/upload_handler.js +1 -1
  33. package/src/components/handlers/workflow_handler.js +1 -1
  34. package/src/components/integrations/webhook.js +1 -1
  35. package/src/consumers/baseConsumer.js +1 -1
  36. package/src/consumers/declarativeMapper.js +1 -1
  37. package/src/consumers/handlers/apiHandler.js +1 -1
  38. package/src/consumers/handlers/consoleHandler.js +1 -1
  39. package/src/consumers/handlers/databaseHandler.js +1 -1
  40. package/src/consumers/handlers/index.js +1 -1
  41. package/src/consumers/handlers/kafkaHandler.js +1 -1
  42. package/src/consumers/index.js +1 -1
  43. package/src/consumers/messageTransformer.js +1 -1
  44. package/src/consumers/validator.js +1 -1
  45. package/src/core/db/dialect/base-dialect.js +1 -1
  46. package/src/core/db/dialect/index.js +1 -1
  47. package/src/core/db/dialect/mysql-dialect.js +1 -1
  48. package/src/core/db/dialect/oracle-dialect.js +1 -1
  49. package/src/core/db/dialect/postgres-dialect.js +1 -1
  50. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  51. package/src/core/db/flatten-helper.js +1 -1
  52. package/src/core/db/query-builder-error.js +1 -1
  53. package/src/core/db/query-builder.js +1 -1
  54. package/src/core/db/relation-helper.js +1 -1
  55. package/src/core/handlers/delete_handler.js +1 -1
  56. package/src/core/handlers/insert_handler.js +1 -1
  57. package/src/core/handlers/update_handler.js +1 -1
  58. package/src/core/models/base-model.js +1 -1
  59. package/src/core/utils/cache-manager.js +1 -1
  60. package/src/core/utils/component-engine.js +1 -1
  61. package/src/core/utils/context-builder.js +1 -1
  62. package/src/core/utils/datetime-formatter.js +1 -1
  63. package/src/core/utils/datetime-parser.js +1 -1
  64. package/src/core/utils/db.js +1 -1
  65. package/src/core/utils/logger.js +1 -1
  66. package/src/core/utils/payload-loader.js +1 -1
  67. package/src/core/utils/security-checks.js +1 -1
  68. package/src/middleware/body-options.js +1 -1
  69. package/src/middleware/cors.js +1 -1
  70. package/src/middleware/idempotency.js +1 -1
  71. package/src/middleware/rate-limiter.js +1 -1
  72. package/src/middleware/request-logger.js +1 -1
  73. package/src/middleware/security-headers.js +1 -1
  74. package/src/models/base-model-mysql.js +1 -1
  75. package/src/models/base-model-oracle.js +1 -1
  76. package/src/models/base-model-sqlite.js +1 -1
  77. package/src/models/base-model.js +1 -1
  78. package/src/pro/caching/redis-client.js +1 -1
  79. package/src/pro/caching/redis-helper.js +1 -1
  80. package/src/pro/consumers/baseConsumer.js +1 -1
  81. package/src/pro/consumers/declarativeMapper.js +1 -1
  82. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  83. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  84. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  85. package/src/pro/consumers/handlers/index.js +1 -1
  86. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  87. package/src/pro/consumers/index.js +1 -1
  88. package/src/pro/consumers/messageTransformer.js +1 -1
  89. package/src/pro/consumers/validator.js +1 -1
  90. package/src/pro/database/base-model-mysql.js +1 -1
  91. package/src/pro/database/base-model-oracle.js +1 -1
  92. package/src/pro/database/base-model-sqlite.js +1 -1
  93. package/src/pro/database/db-mysql.js +1 -1
  94. package/src/pro/database/db-oracle.js +1 -1
  95. package/src/pro/database/db-sqlite.js +1 -1
  96. package/src/pro/excel/excel-generator.js +1 -1
  97. package/src/pro/excel/excel-parser.js +1 -1
  98. package/src/pro/excel/export-service.js +1 -1
  99. package/src/pro/excel/export_handler.js +1 -1
  100. package/src/pro/excel/import-service.js +1 -1
  101. package/src/pro/excel/import-validator.js +1 -1
  102. package/src/pro/excel/import_handler.js +1 -1
  103. package/src/pro/excel/upsert-builder.js +1 -1
  104. package/src/pro/idgen/idgen-routes.js +1 -1
  105. package/src/pro/integrations/lookup-resolver.js +1 -1
  106. package/src/pro/integrations/upload-handler-v2.js +1 -1
  107. package/src/pro/integrations/upload-handler.js +1 -1
  108. package/src/pro/integrations/webhook.js +1 -1
  109. package/src/pro/locking/lock-routes.js +1 -1
  110. package/src/pro/locking/resource-lock-manager.js +1 -1
  111. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  112. package/src/pro/messaging/kafkaService.js +1 -1
  113. package/src/pro/messaging/messagehubService.js +1 -1
  114. package/src/pro/messaging/rabbitmqService.js +1 -1
  115. package/src/pro/scheduler/job-manager.js +1 -1
  116. package/src/pro/scheduler/job-routes.js +1 -1
  117. package/src/pro/scheduler/job-validator.js +1 -1
  118. package/src/pro/storage/base-storage-provider.js +1 -1
  119. package/src/pro/storage/file-metadata-helper.js +1 -1
  120. package/src/pro/storage/index.js +1 -1
  121. package/src/pro/storage/local-storage-provider.js +1 -1
  122. package/src/pro/storage/s3-storage-provider.js +1 -1
  123. package/src/pro/storage/upload-cleanup-job.js +1 -1
  124. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  125. package/src/pro/storage/upload-pending-tracker.js +1 -1
  126. package/src/pro/websocket/broadcast-helper.js +1 -1
  127. package/src/pro/websocket/index.js +1 -1
  128. package/src/pro/websocket/livesync-server.js +1 -1
  129. package/src/pro/websocket/ws-broadcaster.js +1 -1
  130. package/src/services/export-service.js +1 -1
  131. package/src/services/import-service.js +1 -1
  132. package/src/services/kafkaConsumerService.js +1 -1
  133. package/src/services/kafkaService.js +1 -1
  134. package/src/services/messagehubService.js +1 -1
  135. package/src/services/rabbitmqService.js +1 -1
  136. package/src/utils/cache-invalidation-registry.js +1 -1
  137. package/src/utils/cache-manager.js +1 -1
  138. package/src/utils/component-engine.js +1 -1
  139. package/src/utils/config-extractor.js +1 -1
  140. package/src/utils/consumerLogger.js +1 -1
  141. package/src/utils/context-builder.js +1 -1
  142. package/src/utils/dashboard-helpers.js +1 -1
  143. package/src/utils/dateHelper.js +1 -1
  144. package/src/utils/datetime-formatter.js +1 -1
  145. package/src/utils/datetime-parser.js +1 -1
  146. package/src/utils/db-bootstrap.js +1 -1
  147. package/src/utils/db-mysql.js +1 -1
  148. package/src/utils/db-oracle.js +1 -1
  149. package/src/utils/db-sqlite.js +1 -1
  150. package/src/utils/db.js +1 -1
  151. package/src/utils/demo-generator.js +1 -1
  152. package/src/utils/excel-generator.js +1 -1
  153. package/src/utils/excel-parser.js +1 -1
  154. package/src/utils/file-watcher.js +1 -1
  155. package/src/utils/id-generator.js +1 -1
  156. package/src/utils/idempotency-manager.js +1 -1
  157. package/src/utils/import-validator.js +1 -1
  158. package/src/utils/license-client.js +1 -1
  159. package/src/utils/lock-manager.js +1 -1
  160. package/src/utils/logger.js +1 -1
  161. package/src/utils/lookup-resolver.js +1 -1
  162. package/src/utils/payload-loader.js +1 -1
  163. package/src/utils/processor-response.js +1 -1
  164. package/src/utils/rabbitmq.js +1 -1
  165. package/src/utils/redis-client.js +1 -1
  166. package/src/utils/redis-helper.js +1 -1
  167. package/src/utils/request-scope.js +1 -1
  168. package/src/utils/security-checks.js +1 -1
  169. package/src/utils/service-resolver.js +1 -1
  170. package/src/utils/shutdown-coordinator.js +1 -1
  171. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  172. package/src/utils/sql-table-extractor.js +1 -1
  173. package/src/utils/trusted-keys.js +1 -1
  174. package/src/utils/upload-handler.js +1 -1
  175. package/src/utils/upsert-builder.js +1 -1
  176. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0xd80b94=a0_0x28bf;(function(_0x5ee266,_0x3d39d7){const _0x181fbc=a0_0x28bf,_0x22f580=_0x5ee266();while(!![]){try{const _0x209bc3=parseInt(_0x181fbc(0x156))/0x1+-parseInt(_0x181fbc(0x11e))/0x2+-parseInt(_0x181fbc(0x122))/0x3*(parseInt(_0x181fbc(0xe7))/0x4)+parseInt(_0x181fbc(0xdd))/0x5+-parseInt(_0x181fbc(0xbc))/0x6*(parseInt(_0x181fbc(0xfa))/0x7)+parseInt(_0x181fbc(0x150))/0x8+parseInt(_0x181fbc(0xcf))/0x9;if(_0x209bc3===_0x3d39d7)break;else _0x22f580['push'](_0x22f580['shift']());}catch(_0x5afedb){_0x22f580['push'](_0x22f580['shift']());}}}(a0_0x4ee0,0x9f27f));const {v7:uuidv7}=require(a0_0xd80b94(0x13d)),path=require(a0_0xd80b94(0xe5)),fs=require('fs')[a0_0xd80b94(0x146)],redisHelper=require(a0_0xd80b94(0x105)),{logger,logError}=require(a0_0xd80b94(0xd3)),dbType=(process['env']['DB_TYPE']||'postgresql')[a0_0xd80b94(0x10e)]();let executeQuery,executeTransaction,oracleDb;if(dbType==='oracle')oracleDb=require(a0_0xd80b94(0xd6)),executeQuery=(_0xca489d,_0x32b91b)=>oracleDb['executeQuery'](_0xca489d,_0x32b91b),executeTransaction=_0x17e171=>oracleDb[a0_0xd80b94(0xff)](_0x17e171);else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x1f6e82,_0x4b2bc4)=>mysqlDb[a0_0xd80b94(0x10f)](_0x1f6e82,_0x4b2bc4),executeTransaction=_0x1c18cf=>mysqlDb['executeTransaction'](_0x1c18cf);}else{const db=require('../../core/utils/db');executeQuery=db['executeQuery'],executeTransaction=db['executeTransaction'];}}function a0_0x28bf(_0x1efa04,_0x18cc87){_0x1efa04=_0x1efa04-0xb3;const _0x4ee0e5=a0_0x4ee0();let _0x28bf00=_0x4ee0e5[_0x1efa04];if(a0_0x28bf['RnghmQ']===undefined){var _0x494e72=function(_0x2c3351){const _0x415fae='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3e9ad8='',_0x2f66c4='';for(let _0x3237ad=0x0,_0x203dc5,_0x375d3b,_0x59949a=0x0;_0x375d3b=_0x2c3351['charAt'](_0x59949a++);~_0x375d3b&&(_0x203dc5=_0x3237ad%0x4?_0x203dc5*0x40+_0x375d3b:_0x375d3b,_0x3237ad++%0x4)?_0x3e9ad8+=String['fromCharCode'](0xff&_0x203dc5>>(-0x2*_0x3237ad&0x6)):0x0){_0x375d3b=_0x415fae['indexOf'](_0x375d3b);}for(let _0x3dfbe2=0x0,_0x13eece=_0x3e9ad8['length'];_0x3dfbe2<_0x13eece;_0x3dfbe2++){_0x2f66c4+='%'+('00'+_0x3e9ad8['charCodeAt'](_0x3dfbe2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2f66c4);};a0_0x28bf['JdVZOv']=_0x494e72,a0_0x28bf['HtDzWq']={},a0_0x28bf['RnghmQ']=!![];}const _0x851805=_0x4ee0e5[0x0],_0x355301=_0x1efa04+_0x851805,_0x21bd66=a0_0x28bf['HtDzWq'][_0x355301];return!_0x21bd66?(_0x28bf00=a0_0x28bf['JdVZOv'](_0x28bf00),a0_0x28bf['HtDzWq'][_0x355301]=_0x28bf00):_0x28bf00=_0x21bd66,_0x28bf00;}const excelParser=require(a0_0xd80b94(0x135)),importValidator=require(a0_0xd80b94(0x12d)),upsertBuilder=require(a0_0xd80b94(0x125)),lookupResolver=require(a0_0xd80b94(0x148));function a0_0x4ee0(){const _0x33c16a=['rhvWBgLJyxrLihzHBhvLigzVCIa','quj3yw4','DhjPBq','q29SDw1UigzVCM1HDhmGyxbWBgLLzcb0BYbYB3DZ','z2vUzxjHDgvjza','x2fJDgLVBG','ChjVy2vZC1bYzxzPzxDkB2i','y2f0y2G','ndjxA0PXtxu','t3HqDgy','A0LACMm','x3vWBg9HzerPCG','svftAvi','zxHLy3v0zvrYyw5Zywn0Aw9U','Bg9VA3vWrMLLBgrZ','x2vYCM9YCW','CgfYyw1Z','uM93vLO','zgz4uuC','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','qxriBfy','DxbSB2fKx2LK','zgvIDwC','BeDSwwm','BwvZC2fNzq','Dw5SAw5R','BwfW','svHvALm','Dg9mB3DLCKnHC2u','zxHLy3v0zvf1zxj5','Bwf0y2G','zMfPBgvK','DMfSAwq','ChjLDMLLD19WCM9JzxnZx2vYCM9Y','y3bbBfq','whzrz1u','sw1WB3j0igzPzwXKCYbMAwX0zxjLzcaOzxHJBhvKzwqGBg9VA3vWihnVDxjJzsbJB2X1Bw5Zkq','CMvWBgfJzq','vxzJvwq','DgfYz2v0rMLLBgq','AM9PBG','Aw5Zzxj0','ChvZAa','Au9ewMW','mty2mJqYmgvvDMHTBW','Dwrxrxm','uMvJB3jKigv4Axn0CYaOAw5Zzxj0x29UBhKGBw9KzsK','DgvZDa','mtG5nJG5mvfJAe5VuG','zw50CMLLCW','zw52','lI91ChnLCNqTyNvPBgrLCG','y29TBwL0x2PVyL9JCMvHDgvK','zgv0zwn0rgf0ywjHC2veDxbSAwnHDgvZ','uhjLDMLLDYbWCM9JzxnZAw5NigzHAwXLza','cIaGicaGicaGrLjptsa','z2v0','CgfKu3rHCNq','ChjLDMLLD19VAW','lI9PBxbVCNqTDMfSAwrHDg9Y','zMLLBgroyw1L','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','su5trvju','zMLSDgvY','AgfZ','BwLZC2LUz0zPzwXKCW','vxbSB2fKigrHDgeGBM90igzVDw5Kig9Yigv4CgLYzwq','lI9LEgnLBc1WyxjZzxi','C3rHDhvZ','ChjLDMLLD19LCNjVCG','y29SDw1UrM9YBwf0CW','z2v0sM9Iu3rHDhvZ','zgf0zq','y2H1BMTsB3DZ','C2XPy2u','DxvPza','DMfSAwrHDgLUzW','rKXbrwC','AM9Ix2LK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','zMLUza','vvbeqvrf','zujKEvK','uhjLDMLLDYbQB2iGBM90igzVDw5Kig9Yigv4CgLYzwq','ChjVBwLZzxm','BgvUz3rO','lI4VAw50zwDYyxrPB25Zl2XVB2T1Cc1YzxnVBhzLCG','Aw5KzxHpzG','zM9YrwfJAa','yNvPBgrcyxrJAeLUC2vYDa','AM9IoG','yMP0Cu4','y291BNq','y29TBwL0x2PVyL9JB21WBgv0zwq','nJuXnJeYogjNwhjsva','DefJsxK','zwX1BMG','y29TBwL0x2PVyL9MywLSzwq','zgvMyxvSDa','CMfUzg9T','mtqYmJG4vurpruvo','zgTsCMO','q29TBwL0igPVyIbMywLSzwq','zM9YBwf0tNvTyMvYrM9Yrgf0ywjHC2u','AKLgBum','y29TCgXLDgvK','yxv0B0DLBMvYyxrLvxbZzxj0s2v5CW','u2vivfy','DxbSB2fKoG','zxHWB3j0CW','Aw5Zzxj0x29UBhK','ChjLDMLLD19QB2jFy29TCgXLDgvK','mteZmtm5nNfqrw11CG','yNvPBgrmywjLBfrVrMLLBgrnyxa','tgryqxi','jdfFjdi','ChjLDMLLD19QB2jFzMfPBgvK','qxv0BY1Nzw5LCMf0zwqGvvvjrcbMB3iG','igf0ihjVDYa','s3fSCKK','zfvYzNG','y29TBwL0x3bYB2nLC3nFzxjYB3i','zMXVB3i','CM93sw5KzxG','C3rYAw5N','ChjVy2vZC0nVBw1PDePVyG','zNjVBq','C2v0sM9I','z2v0sM9I','C3fS','yxbWBhLdB2X1Bw5gB3jTyxrZ','mti2nZC2mdD3rxj2rgO','DxbSB2fKrMLSzq','zNDzqK4','A2v5CW','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','yu1qvNC','C2L6zq','lI4Vzgf0ywjHC2uVzgiTB3jHy2XL','C2TPCf9LEgLZDgLUzW','x2v4Axn0Aw5Nswq','ChjLDMLLD19QB2jFy3jLyxrLza','BKfWwxe','tLvmta','D3zcrNG','ndqWnJG5nxP1Ahfksa','wMv6vvq','wxrdquu','u3bNsNC','B3jPz2LUywXUyw1L','q3nWAeC','zxjYB3jZ','y2HHCKf0','Cgf0Aa','CM93CW','ngH5zwjzqq','Dg9ju09tDhjPBMC','qMLfEwW','zM9YBwf0rgf0zuzVCKrHDgfIyxnL','C3vIC3rYAw5N','y1DPvfi','kqOGicaGica','yMf0y2HwywXPzgf0zvjVD3m','Aw5MBW','AgvHzgvYC19TyxbWzwq','ieLoicG'];a0_0x4ee0=function(){return _0x33c16a;};return a0_0x4ee0();}class ImportService{constructor(){this['_uploadDir']=null;}get['uploadDir'](){const _0x47187a=a0_0xd80b94;if(!this[_0x47187a(0xfd)]){const _0x32bd89=process[_0x47187a(0x124)][_0x47187a(0x141)]||_0x47187a(0x154);this[_0x47187a(0xfd)]=process[_0x47187a(0x124)]['UPLOAD_DIR']||path[_0x47187a(0x11a)](__dirname,'../../temp/uploads/'+_0x32bd89);}return this[_0x47187a(0xfd)];}[a0_0xd80b94(0xf6)](){const _0x5451d5=a0_0xd80b94,_0x346a6d={'KRUlm':function(_0x234b90,_0x3ffbe5){return _0x234b90<_0x3ffbe5;}},_0x4b28b6='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789',_0x261617=Date['now']()['toString'](0x24),_0x364fda=uuidv7()[_0x5451d5(0x117)](/-/g,'')['substring'](0x0,0xc-_0x261617['length']),_0x281b50=(_0x261617+_0x364fda)[_0x5451d5(0xeb)](0x0,0xc);let _0x39d024='';for(let _0x50fdea=0x0;_0x346a6d['KRUlm'](_0x50fdea,0xc);_0x50fdea++){_0x281b50[_0x50fdea]?_0x39d024+=_0x281b50[_0x50fdea]:_0x39d024+=_0x4b28b6[_0x5451d5(0xe4)](Math[_0x5451d5(0xc6)](Math[_0x5451d5(0x155)]()*_0x4b28b6['length']));}return _0x39d024;}['buildLabelToFieldMap'](_0x23a2c2){const _0x519980=a0_0xd80b94,_0x5bf272={'YtCAE':'Label\x20to\x20field\x20mapping\x20built'},_0x29cf90=new Map();if(!_0x23a2c2)return _0x29cf90;return Object[_0x519980(0x123)](_0x23a2c2)[_0x519980(0x14a)](([_0x26f81f,_0x39d2c8])=>{const _0x14acfc=_0x519980,_0x51acdc=String(_0x39d2c8)[_0x14acfc(0xf4)]()[_0x14acfc(0x117)](/\s+/g,'_')[_0x14acfc(0x117)](/([a-z])([A-Z])/g,_0x14acfc(0xbf))['replace'](/([A-Z]+)([A-Z][a-z])/g,_0x14acfc(0xbf))[_0x14acfc(0x10e)]();_0x29cf90['set'](_0x51acdc,_0x26f81f);}),logger[_0x519980(0x108)]({'event':'label_to_field_map_built','mappingCount':_0x29cf90['size']},_0x5bf272[_0x519980(0xdf)]),_0x29cf90;}[a0_0xd80b94(0xce)](_0x3d0eb4,_0x146782){const _0x48708c={'rDQbS':function(_0x3824d0,_0x766422){return _0x3824d0===_0x766422;},'znKic':'number','BiEyl':'text','RowVZ':function(_0x4b5011,_0x1f5e4d){return _0x4b5011(_0x1f5e4d);}};if(!_0x146782||Object['keys'](_0x146782)['length']===0x0)return _0x3d0eb4;return _0x3d0eb4['map'](_0x377042=>{const _0x4c08f7=a0_0x28bf,_0x6622={..._0x377042};for(const [_0x5345bd,_0x390133]of Object[_0x4c08f7(0x123)](_0x146782)){const _0x6cd80=_0x6622[_0x5345bd];if(_0x6cd80===null||_0x48708c['rDQbS'](_0x6cd80,undefined)||_0x6cd80===''){_0x6622[_0x5345bd]=null;continue;}switch(_0x390133['type']){case _0x4c08f7(0x13a):_0x6622[_0x5345bd]=this[_0x4c08f7(0xea)](_0x6cd80);break;case _0x48708c['znKic']:_0x6622[_0x5345bd]=this['formatNumberForDatabase'](_0x6cd80);break;case _0x48708c[_0x4c08f7(0xe9)]:_0x6622[_0x5345bd]=_0x48708c[_0x4c08f7(0x103)](String,_0x6cd80);break;default:break;}}return _0x6622;});}[a0_0xd80b94(0xea)](_0x2ab8ee){const _0x43bcb8=a0_0xd80b94,_0x5c0430={'udWEs':function(_0x331528,_0x1b2116){return _0x331528===_0x1b2116;},'uVoCQ':_0x43bcb8(0xc8),'mumYm':function(_0x2450cc,_0x110994){return _0x2450cc instanceof _0x110994;},'SpgJw':function(_0x53e370,_0x386fc6){return _0x53e370(_0x386fc6);},'GefMz':function(_0x499e32,_0x41ef85){return _0x499e32+_0x41ef85;}};if(_0x2ab8ee===null||_0x2ab8ee===undefined||_0x5c0430[_0x43bcb8(0x11f)](_0x2ab8ee,''))return null;if(typeof _0x2ab8ee===_0x5c0430['uVoCQ']&&/^\d{4}-\d{2}-\d{2}$/[_0x43bcb8(0x121)](_0x2ab8ee))return _0x2ab8ee;if(_0x5c0430['mumYm'](_0x2ab8ee,Date)){if(_0x5c0430['SpgJw'](isNaN,_0x2ab8ee['getTime']()))return null;const _0x3a922a=_0x2ab8ee['getFullYear'](),_0x464370=String(_0x5c0430['GefMz'](_0x2ab8ee['getMonth'](),0x1))[_0x43bcb8(0x12b)](0x2,'0'),_0x1c2b82=String(_0x2ab8ee['getDate']())['padStart'](0x2,'0');return _0x3a922a+'-'+_0x464370+'-'+_0x1c2b82;}if(typeof _0x2ab8ee==='string'){const _0x239b44=_0x2ab8ee[_0x43bcb8(0x110)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x239b44){const _0x3d90f4=_0x5c0430[_0x43bcb8(0xe0)](String,_0x239b44[0x1])['padStart'](0x2,'0'),_0x3cae0f=String(_0x239b44[0x2])['padStart'](0x2,'0'),_0x23b0a6=_0x239b44[0x3];return _0x23b0a6+'-'+_0x3cae0f+'-'+_0x3d90f4;}const _0x4d059b=_0x2ab8ee[_0x43bcb8(0x110)](/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})$/);if(_0x4d059b){const _0x56bb3c=_0x4d059b[0x1],_0x7d784b=String(_0x4d059b[0x2])['padStart'](0x2,'0'),_0x3f5b78=String(_0x4d059b[0x3])['padStart'](0x2,'0');return _0x56bb3c+'-'+_0x7d784b+'-'+_0x3f5b78;}}return _0x2ab8ee;}[a0_0xd80b94(0xb3)](_0x443c93){const _0x48e04f=a0_0xd80b94,_0x3d03f0={'eBdyY':function(_0x376a60,_0x5545cb){return _0x376a60===_0x5545cb;},'aMPVw':'number','cpAlT':function(_0x2dca71,_0x42d843){return _0x2dca71(_0x42d843);},'IXUjS':function(_0x3b9169,_0x4a4b39){return _0x3b9169===_0x4a4b39;},'XvQgU':_0x48e04f(0xc8)};if(_0x443c93===null||_0x3d03f0['eBdyY'](_0x443c93,undefined)||_0x3d03f0[_0x48e04f(0x144)](_0x443c93,''))return null;if(typeof _0x443c93===_0x3d03f0[_0x48e04f(0xd4)])return _0x3d03f0[_0x48e04f(0x114)](isNaN,_0x443c93)?null:_0x443c93;if(_0x3d03f0[_0x48e04f(0x10d)](typeof _0x443c93,_0x3d03f0[_0x48e04f(0x115)])){let _0x3dd7d7=_0x443c93[_0x48e04f(0xf4)]();const _0x484712=/,\d{1,2}$/[_0x48e04f(0x121)](_0x3dd7d7)&&!/,\d{3}/['test'](_0x3dd7d7);_0x484712?_0x3dd7d7=_0x3dd7d7['replace'](/\./g,'')[_0x48e04f(0x117)](',','.'):_0x3dd7d7=_0x3dd7d7[_0x48e04f(0x117)](/,/g,'');const _0x2fb04b=_0x3d03f0['cpAlT'](parseFloat,_0x3dd7d7);return _0x3d03f0['cpAlT'](isNaN,_0x2fb04b)?null:_0x2fb04b;}return null;}async[a0_0xd80b94(0xd0)](_0xcfd9f1,_0x47cfb5){const _0x4a9df9=a0_0xd80b94,_0x54ff38={'ByFkf':function(_0x41e88b,_0x244455){return _0x41e88b||_0x244455;},'yeLXl':function(_0x4961fa,_0x33513e){return _0x4961fa>_0x33513e;},'Xskwj':'column_formats_applied','dfxQG':_0x4a9df9(0xf5),'ClpLp':'Import\x20file\x20uploaded\x20and\x20parsed','SeHTV':'file_cleanup_error','iODZl':'Failed\x20to\x20cleanup\x20file'},_0x3d1c66=this['generateId']();try{let {headers:_0x3c56d9,rows:_0x417f6b,totalRows:_0x2ffb2b}=await excelParser['parseExcelFile'](_0xcfd9f1['path']);const _0x46ff02=this[_0x4a9df9(0xbd)](_0x47cfb5['fieldLabels']),_0x194b7e=_0x3c56d9['map'](_0x20779e=>{const _0x171ecc=_0x4a9df9,_0x3c13e7=_0x46ff02[_0x171ecc(0x12a)](_0x20779e);return _0x54ff38['ByFkf'](_0x3c13e7,_0x20779e);});_0x417f6b=_0x417f6b[_0x4a9df9(0x10c)](_0x5f1162=>{const _0x26f508={};return _0x3c56d9['forEach']((_0x3792a9,_0x5df134)=>{const _0x3a3f0f=_0x194b7e[_0x5df134];_0x26f508[_0x3a3f0f]=_0x5f1162[_0x3792a9];}),_0x26f508;}),_0x3c56d9=_0x194b7e,logger[_0x4a9df9(0x108)]({'event':_0x4a9df9(0xf0),'original':_0x3c56d9['length'],'mapped':_0x194b7e['filter']((_0x150faa,_0x2ecd91)=>_0x150faa!==_0x3c56d9[_0x2ecd91])[_0x4a9df9(0x147)]},'Excel\x20headers\x20mapped\x20to\x20field\x20names');_0x47cfb5[_0x4a9df9(0x138)]&&_0x54ff38['yeLXl'](Object['keys'](_0x47cfb5[_0x4a9df9(0x138)])[_0x4a9df9(0x147)],0x0)&&(_0x417f6b=this[_0x4a9df9(0xce)](_0x417f6b,_0x47cfb5[_0x4a9df9(0x138)]),logger['debug']({'event':_0x54ff38['Xskwj'],'formatCount':Object[_0x4a9df9(0xd2)](_0x47cfb5['columnFormats'])[_0x4a9df9(0x147)],'formats':Object[_0x4a9df9(0xd2)](_0x47cfb5[_0x4a9df9(0x138)])},_0x54ff38[_0x4a9df9(0x104)]));const _0x39e6af=_0x47cfb5[_0x4a9df9(0x100)]?Object['values'](_0x47cfb5['lookupFields'])[_0x4a9df9(0x10c)](_0x3c67ee=>_0x3c67ee[_0x4a9df9(0x119)]):[],_0x348785=_0x47cfb5[_0x4a9df9(0x12e)]['filter'](_0x2c29f8=>!_0x39e6af['includes'](_0x2c29f8)),_0x49c5ac=excelParser['validateExcelStructure'](_0x3c56d9,_0x348785);if(!_0x49c5ac[_0x4a9df9(0x112)]){await fs[_0x4a9df9(0x10b)](_0xcfd9f1['path']);throw new Error('Excel\x20structure\x20mismatch.\x20Missing\x20fields:\x20'+_0x49c5ac[_0x4a9df9(0x133)][_0x4a9df9(0x11a)](',\x20'));}const _0x6314bc={'upload_id':_0x3d1c66,'filename':_0xcfd9f1[_0x4a9df9(0xe1)],'total_rows':_0x2ffb2b,'headers':_0x3c56d9,'rows':_0x417f6b,'params':_0x47cfb5,'created_at':new Date()[_0x4a9df9(0xe8)]()};return await redisHelper[_0x4a9df9(0xcb)]('upload:'+_0x3d1c66,_0x6314bc,0xe10),await fs[_0x4a9df9(0x10b)](_0xcfd9f1['path']),logger[_0x4a9df9(0xef)]({'event':'import_file_uploaded','uploadId':_0x3d1c66,'filename':_0xcfd9f1['originalname'],'totalRows':_0x2ffb2b},_0x54ff38['ClpLp']),{'upload_id':_0x3d1c66,'total_rows':_0x2ffb2b,'preview':_0x417f6b['slice'](0x0,0xa)};}catch(_0x1951c6){try{await fs[_0x4a9df9(0x10b)](_0xcfd9f1[_0x4a9df9(0xe5)]);}catch(_0x5282e2){logError(_0x5282e2,{'event':_0x54ff38[_0x4a9df9(0xb7)]},_0x54ff38[_0x4a9df9(0x11d)]);}throw _0x1951c6;}}async['createPreviewJob'](_0x4bc476){const _0x5000ec=a0_0xd80b94,_0x179fb2={'nApYq':function(_0x435d57,_0x1e2ba6,_0x367705,_0x13009f){return _0x435d57(_0x1e2ba6,_0x367705,_0x13009f);},'wvBFx':_0x5000ec(0x134),'GCKoO':_0x5000ec(0xd9),'dkRrj':'Preview\x20job\x20created','GcsaY':_0x5000ec(0x13e)},_0x3ab26b=this[_0x5000ec(0xf6)](),_0x34d512=await redisHelper['getJob'](_0x5000ec(0xb8)+_0x4bc476);if(!_0x34d512)throw new Error(_0x179fb2[_0x5000ec(0xdc)]);const _0x937831={'job_id':_0x3ab26b,'upload_id':_0x4bc476,'status':'validating','progress':0x0,'created_at':new Date()[_0x5000ec(0xe8)](),'params':_0x34d512['params']};return await redisHelper['setJob'](_0x5000ec(0x14c)+_0x3ab26b,_0x937831,0xe10),logger['info']({'event':_0x179fb2['GCKoO'],'jobId':_0x3ab26b,'uploadId':_0x4bc476},_0x179fb2[_0x5000ec(0x157)]),this[_0x5000ec(0xf8)](_0x3ab26b,_0x4bc476,_0x34d512)[_0x5000ec(0xf9)](_0x52bc52=>{const _0x40113c=_0x5000ec;_0x179fb2[_0x40113c(0xda)](logError,_0x52bc52,{'event':_0x40113c(0x113),'jobId':_0x3ab26b},_0x40113c(0x128));}),{'job_id':_0x3ab26b,'status':_0x179fb2['GcsaY']};}[a0_0xd80b94(0xb6)](_0x139c5f,_0x535942){const _0x3819da={'dUrfx':function(_0x8deb19,_0x4f6ff3){return _0x8deb19(_0x4f6ff3);},'KqlrI':function(_0xc72fd4){return _0xc72fd4();}};_0x139c5f['forEach']((_0x1d159b,_0x1fd9c8)=>{const _0xab827a=a0_0x28bf;_0x535942[_0xab827a(0x14a)](_0x1e3913=>{const _0x4f280d=_0xab827a,_0x40caf7=_0x1d159b[_0x1e3913];if(_0x40caf7===null||_0x40caf7===undefined||_0x40caf7===''||_0x3819da[_0x4f280d(0xc4)](String,_0x40caf7)['trim']()==='-'){const _0x51db84=_0x3819da[_0x4f280d(0xc3)](uuidv7);_0x1d159b[_0x1e3913]=_0x51db84,_0x1d159b['_generated_uuid']=_0x1d159b['_generated_uuid']||{},_0x1d159b['_generated_uuid'][_0x1e3913]=_0x51db84,logger['debug']({'event':'uuid_auto_generated','rowIndex':_0x1fd9c8,'field':_0x1e3913,'uuid':_0x51db84},_0x4f280d(0xc1)+_0x1e3913+_0x4f280d(0xc2)+(_0x1fd9c8+0x2));}});});}async[a0_0xd80b94(0xf8)](_0x284f84,_0x514b98,_0x2c2f2a){const _0x2d185e=a0_0xd80b94,_0x1579b0={'IQSiR':function(_0x574352,_0x56c5c4){return _0x574352===_0x56c5c4;},'nOIDb':function(_0x61e818,_0x17e558){return _0x61e818>_0x17e558;},'qlOhN':'processing_lookup_fields','jIFmC':function(_0x3d170f,_0x40dd28){return _0x3d170f||_0x40dd28;},'TKTHI':function(_0x53f6fc,_0x181484){return _0x53f6fc>_0x181484;},'wzRov':_0x2d185e(0x12c),'vVTgH':'Preview\x20job\x20completed','zDyLO':_0x2d185e(0x111)};try{let {rows:_0x44059f,params:_0x2d9b46}=_0x2c2f2a;const {requiredFields:_0x2f342d,validations:_0x12e3b3,upsertKeys:_0x575670,tableName:_0x2c6770,primaryKey:_0x516aeb,fieldName:_0x2940e2,upsertStrategy:_0x392fe3,lookupFields:_0x5e421e}=_0x2d9b46;this[_0x2d185e(0xb6)](_0x44059f,_0x575670);let _0x48e724=[];if(_0x5e421e&&_0x1579b0['nOIDb'](Object['keys'](_0x5e421e)['length'],0x0)){logger[_0x2d185e(0xef)]({'event':_0x1579b0['qlOhN'],'jobId':_0x284f84,'lookupFieldCount':Object['keys'](_0x5e421e)['length']},'Processing\x20lookup\x20fields');const _0x294baf=await lookupResolver['processLookupFields'](_0x44059f,_0x5e421e);_0x44059f=_0x294baf['processedRows'],_0x48e724=_0x294baf['errors'],_0x2c2f2a[_0x2d185e(0xe6)]=_0x44059f;}const _0x2c6b6a=importValidator[_0x2d185e(0xee)](_0x44059f,_0x2f342d||[],_0x1579b0[_0x2d185e(0xb4)](_0x12e3b3,{}));_0x48e724[_0x2d185e(0x14a)](_0x3acadb=>{const _0x58d510=_0x2d185e,_0x2ee856=_0x2c6b6a[_0x58d510(0x142)](_0x455d90=>_0x455d90[_0x58d510(0xc7)]===_0x3acadb[_0x58d510(0xc7)]);_0x2ee856?_0x2ee856[_0x58d510(0xe3)]['push'](_0x3acadb['message']):_0x2c6b6a[_0x58d510(0x11c)]({'rowIndex':_0x3acadb[_0x58d510(0xc7)],'rowData':_0x44059f[_0x3acadb[_0x58d510(0xc7)]],'errors':[_0x3acadb[_0x58d510(0x10a)]]});});const _0x59b6a5=importValidator[_0x2d185e(0x12f)](_0x44059f,_0x575670);_0x59b6a5[_0x2d185e(0x14a)](_0xd44305=>{const _0x3625be=_0x2d185e,_0xc6f090=_0x2c6b6a['find'](_0x253c4e=>_0x253c4e[_0x3625be(0xc7)]===_0xd44305[_0x3625be(0xc7)]),_0xf75529=_0x575670['map'](_0x486ac1=>_0x486ac1['toUpperCase']())[_0x3625be(0x11a)](',\x20'),_0x50dd27=_0x3625be(0xf2)+_0xf75529;_0xc6f090?_0xc6f090['errors']['push'](_0x50dd27):_0x2c6b6a[_0x3625be(0x11c)]({'rowIndex':_0xd44305['rowIndex'],'rowData':_0x44059f[_0xd44305['rowIndex']],'errors':[_0x50dd27]});}),await this['detectDatabaseDuplicates'](_0x44059f,_0x575670,_0x2c6770,_0x516aeb,_0x392fe3,_0x2c6b6a),_0x2c6b6a[_0x2d185e(0x14a)](_0x477806=>{const _0x3757dd=_0x2d185e,_0x151b8e=_0x44059f[_0x477806[_0x3757dd(0xc7)]];_0x151b8e&&(_0x151b8e[_0x3757dd(0x101)]=_0x477806[_0x3757dd(0xe3)]);});let _0x260d7b=0x0,_0x378d3c=0x0,_0x4da387=0x0;_0x44059f[_0x2d185e(0x14a)](_0x2b038c=>{const _0x424a5c=_0x2d185e;if(_0x2b038c[_0x424a5c(0xf7)]==='INSERT')_0x260d7b++;else{if(_0x1579b0[_0x424a5c(0xfe)](_0x2b038c['_action'],_0x424a5c(0x143)))_0x378d3c++;else _0x1579b0[_0x424a5c(0xfe)](_0x2b038c[_0x424a5c(0xf7)],'SKIP')&&_0x4da387++;}});const _0x1f90a9={'job_id':_0x284f84,'upload_id':_0x514b98,'status':_0x1579b0['TKTHI'](_0x2c6b6a[_0x2d185e(0x147)],0x0)?_0x2d185e(0x137):_0x1579b0['wzRov'],'progress':0x64,'created_at':_0x2c2f2a['created_at'],'completed_at':new Date()['toISOString'](),'preview':{'total_rows':_0x44059f['length'],'insert_count':_0x260d7b,'update_count':_0x378d3c,'skip_count':_0x4da387,'error_count':_0x2c6b6a['length'],'errors':_0x2c6b6a,'data':_0x44059f,'sample_insert':_0x44059f['filter'](_0xc62eca=>_0xc62eca[_0x2d185e(0xf7)]===_0x2d185e(0x130))[_0x2d185e(0x13c)](0x0,0x5),'sample_update':_0x44059f[_0x2d185e(0x131)](_0x56e3fb=>_0x56e3fb['_action']==='UPDATE')['slice'](0x0,0x5),'sample_skip':_0x44059f[_0x2d185e(0x131)](_0x5a3327=>_0x5a3327[_0x2d185e(0xf7)]==='SKIP')['slice'](0x0,0x5)},'params':_0x2d9b46};await redisHelper['setJob']('job:'+_0x284f84,_0x1f90a9,0xe10),_0x2c2f2a['rows']=_0x44059f,await redisHelper[_0x2d185e(0xcb)](_0x2d185e(0xb8)+_0x514b98,_0x2c2f2a,0xe10),logger['info']({'event':_0x2d185e(0xbb),'jobId':_0x284f84,'status':_0x1f90a9['status'],'insertCount':_0x260d7b,'updateCount':_0x378d3c,'skipCount':_0x4da387,'errorCount':_0x2c6b6a['length']},_0x1579b0['vVTgH']);}catch(_0x532bf1){logError(_0x532bf1,{'event':_0x2d185e(0xc0),'jobId':_0x284f84},'Preview\x20job\x20failed'),await redisHelper['setJob'](_0x2d185e(0x14c)+_0x284f84,{'job_id':_0x284f84,'upload_id':_0x514b98,'status':_0x1579b0['zDyLO'],'progress':0x0,'error':_0x532bf1['message'],'created_at':new Date()['toISOString'](),'completed_at':new Date()[_0x2d185e(0xe8)]()},0xe10);}}async[a0_0xd80b94(0x127)](_0x22f0da,_0x182227,_0x49e533,_0x3f9d3b,_0x5f203c='update_existing',_0x5afc6a=[]){const _0x3f4f64=a0_0xd80b94,_0x447552={'bjtqN':function(_0x33d2d9,_0x34d54a){return _0x33d2d9===_0x34d54a;},'VNEGj':function(_0x184546,_0x203f9a){return _0x184546===_0x203f9a;},'bzfay':_0x3f4f64(0xdb),'cWiTR':'update_existing','fwYBN':_0x3f4f64(0x143),'UvcUd':function(_0x5e3c45,_0x12a663){return _0x5e3c45===_0x12a663;},'tAcIy':_0x3f4f64(0xba),'AbzaD':'SKIP','jQPnb':function(_0x27ceda,_0x395b9d){return _0x27ceda===_0x395b9d;},'lGlYc':_0x3f4f64(0x130),'kFpOv':function(_0x41ffd6,_0x481aa3){return _0x41ffd6===_0x481aa3;}},_0x55f440=upsertBuilder['chunkRows'](_0x22f0da,0x64);for(const _0x39a497 of _0x55f440){const _0x30daee=_0x39a497[_0x3f4f64(0x10c)](_0x41dff8=>_0x41dff8[_0x182227[0x0]]),_0x7cf385=_0x30daee['map'](_0x56f806=>{const _0x50f730=_0x3f4f64;if(_0x447552[_0x50f730(0x14d)](_0x56f806,null)||_0x447552['VNEGj'](_0x56f806,undefined))return _0x447552['bzfay'];return'\x27'+String(_0x56f806)[_0x50f730(0x117)](/'/g,'\x27\x27')+'\x27';}),_0x2401af='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20'+_0x3f9d3b+',\x20'+_0x182227[_0x3f4f64(0x11a)](',\x20')+_0x3f4f64(0x129)+_0x49e533+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20WHERE\x20'+_0x182227[0x0]+_0x3f4f64(0xf1)+_0x7cf385[_0x3f4f64(0x11a)](',\x20')+_0x3f4f64(0xed);let _0x3ccf31=await executeQuery(_0x2401af);dbType==='oracle'&&_0x3ccf31&&_0x3ccf31['length']>0x0&&(_0x3ccf31=_0x3ccf31['map'](_0x3b06df=>{const _0x2c97e2={};for(const [_0x2bfb67,_0x44a7fd]of Object['entries'](_0x3b06df)){_0x2c97e2[_0x2bfb67['toLowerCase']()]=_0x44a7fd;}return _0x2c97e2;}));const _0x175a5a=new Map();_0x3ccf31['forEach'](_0x1ae049=>{const _0x6e680e=_0x1ae049[_0x182227[0x0]];_0x175a5a['set'](_0x6e680e,_0x1ae049);}),_0x39a497[_0x3f4f64(0x14a)]((_0x4a3e97,_0x3850d6)=>{const _0x570660=_0x3f4f64,_0x42877f=_0x4a3e97[_0x182227[0x0]],_0x51b47c=_0x175a5a[_0x570660(0x12a)](_0x42877f);if(_0x51b47c){if(_0x5f203c===_0x447552[_0x570660(0xec)])_0x4a3e97['_action']=_0x447552[_0x570660(0xd1)],_0x4a3e97[_0x570660(0xd8)]=_0x51b47c[_0x3f9d3b];else{if(_0x447552[_0x570660(0x118)](_0x5f203c,_0x447552[_0x570660(0x151)])){_0x4a3e97[_0x570660(0xf7)]=_0x447552['AbzaD'],_0x4a3e97[_0x570660(0x101)]=_0x4a3e97['_errors']||[],_0x4a3e97['_errors'][_0x570660(0x11c)]('Record\x20exists\x20(insert_only\x20mode)');const _0x169fa1=_0x22f0da[_0x570660(0x149)](_0x4a3e97);_0x169fa1!==-0x1&&_0x5afc6a[_0x570660(0x11c)]({'rowIndex':_0x169fa1,'rowData':_0x4a3e97,'errors':[_0x570660(0x120)]});}else _0x5f203c===_0x570660(0xd7)&&(_0x4a3e97[_0x570660(0xf7)]=_0x447552['AbzaD']);}}else{if(_0x447552['jQPnb'](_0x5f203c,'update_existing'))_0x4a3e97[_0x570660(0xf7)]=_0x447552[_0x570660(0x109)];else(_0x5f203c==='insert_only'||_0x447552['kFpOv'](_0x5f203c,_0x570660(0xd7)))&&(_0x4a3e97[_0x570660(0xf7)]=_0x447552['lGlYc']);}});}}async['createCommitJob'](_0x5391e1){const _0x533c2e=a0_0xd80b94,_0x4d05b0={'zmJiP':_0x533c2e(0xc5),'kIZrc':'Commit\x20processing\x20failed','ibWRX':_0x533c2e(0x145),'FLAEg':function(_0x240a59,_0x29271f){return _0x240a59!==_0x29271f;},'bqPLf':_0x533c2e(0x126)},_0xb4fdf4=this[_0x533c2e(0xf6)](),_0x2e2e0e=await redisHelper[_0x533c2e(0xcc)](_0x533c2e(0x14c)+_0x5391e1);if(!_0x2e2e0e)throw new Error(_0x4d05b0['ibWRX']);if(_0x4d05b0[_0x533c2e(0x13f)](_0x2e2e0e[_0x533c2e(0x136)],'preview_ok'))throw new Error('Cannot\x20commit:\x20preview\x20status\x20is\x20'+_0x2e2e0e['status']);const _0x433d7f={'job_id':_0xb4fdf4,'upload_id':_0x2e2e0e[_0x533c2e(0x107)],'preview_job_id':_0x5391e1,'status':'processing','progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x2e2e0e[_0x533c2e(0x102)]};return await redisHelper[_0x533c2e(0xcb)](_0x533c2e(0x14c)+_0xb4fdf4,_0x433d7f,0xe10),logger[_0x533c2e(0xef)]({'event':_0x4d05b0['bqPLf'],'jobId':_0xb4fdf4,'previewJobId':_0x5391e1},'Commit\x20job\x20created'),this[_0x533c2e(0xc9)](_0xb4fdf4,_0x2e2e0e)['catch'](_0x23d415=>{const _0x348f7c=_0x533c2e;logError(_0x23d415,{'event':_0x4d05b0['zmJiP'],'jobId':_0xb4fdf4},_0x4d05b0[_0x348f7c(0xfc)]);}),{'job_id':_0xb4fdf4,'status':'processing'};}async['processCommitJob'](_0x540435,_0x373a32){const _0x5beb01=a0_0xd80b94,_0x3e3d17={'OxPtf':function(_0x4761a8,_0x48e18e){return _0x4761a8===_0x48e18e;},'AtHlV':function(_0xee5306,_0x1b98d2){return _0xee5306>_0x1b98d2;},'LdXAr':_0x5beb01(0x116),'AvShp':function(_0x7fa8c6,_0x5a6aaa){return _0x7fa8c6||_0x5a6aaa;},'LtYtb':_0x5beb01(0x11b),'ABwan':function(_0x4b8abf,_0x346c2a){return _0x4b8abf||_0x346c2a;},'QQCNA':'update','KCPUJ':function(_0x455280,_0x5957ea){return _0x455280(_0x5957ea);},'ZezUT':function(_0x5d8403,_0x1aac4b,_0x40b338,_0x37970e){return _0x5d8403(_0x1aac4b,_0x40b338,_0x37970e);},'CsphG':_0x5beb01(0x111)};try{const _0x137d3e=await redisHelper['getJob'](_0x5beb01(0xb8)+_0x373a32['upload_id']);if(!_0x137d3e)throw new Error('Upload\x20data\x20not\x20found\x20or\x20expired');const {rows:_0x5db01d,params:_0x463731}=_0x137d3e,{tableName:_0x52f88b,fieldName:_0x969cf9,primaryKey:_0x3b9bf9,upsertKeys:_0x5c5b95,excludeFromImport:_0x28581,lookupFields:_0x243420,columnFormats:_0x1c6068}=_0x463731,_0x1e5bb0=_0x243420?Object['keys'](_0x243420):[],_0x5ad639=new Set([..._0x28581||[],..._0x1e5bb0]);let _0x58f134=_0x969cf9;_0x3e3d17[_0x5beb01(0x106)](_0x5ad639[_0x5beb01(0xd5)],0x0)&&(_0x58f134=_0x969cf9[_0x5beb01(0x131)](_0x509321=>!_0x5ad639[_0x5beb01(0x132)](_0x509321)),logger['debug']({'event':'import_fields_filtered','originalCount':_0x969cf9[_0x5beb01(0x147)],'filteredCount':_0x58f134[_0x5beb01(0x147)],'excludedFields':Array[_0x5beb01(0xca)](_0x5ad639),'lookupSourceFields':_0x1e5bb0},_0x3e3d17[_0x5beb01(0xbe)]));const _0x149f0f=_0x5db01d[_0x5beb01(0x131)](_0x5c3e4a=>_0x5c3e4a['_action']==='INSERT'),_0x5d13d6=_0x5db01d[_0x5beb01(0x131)](_0x46104f=>_0x46104f['_action']==='UPDATE');let _0x52351b=0x0,_0xd91581=0x0;const _0x17e7d0=[];if(_0x149f0f[_0x5beb01(0x147)]>0x0){const _0x51ff67=upsertBuilder['chunkRows'](_0x149f0f,0x64);for(const _0x1fd212 of _0x51ff67){const {query:_0x3e0f62}=upsertBuilder[_0x5beb01(0x14b)](_0x1fd212,_0x52f88b,_0x58f134,_0x3e3d17['AvShp'](_0x1c6068,{}));_0x3e0f62&&_0x17e7d0['push']({'sql':_0x3e0f62,'count':_0x1fd212[_0x5beb01(0x147)],'type':_0x3e3d17['LtYtb']});}}if(_0x3e3d17['AtHlV'](_0x5d13d6['length'],0x0)){const _0x19ee86=upsertBuilder[_0x5beb01(0x13b)](_0x5d13d6,0x64);for(const _0x41c476 of _0x19ee86){const {query:_0x3ef912}=upsertBuilder['buildBatchUpdate'](_0x41c476,_0x52f88b,_0x58f134,_0x3b9bf9,_0x5c5b95,_0x3e3d17[_0x5beb01(0xf3)](_0x1c6068,{}));_0x3ef912&&_0x17e7d0['push']({'sql':_0x3ef912,'count':_0x41c476['length'],'type':_0x3e3d17['QQCNA']});}}_0x17e7d0[_0x5beb01(0x147)]>0x0&&await _0x3e3d17['KCPUJ'](executeTransaction,_0x17e7d0[_0x5beb01(0x10c)](_0x3a4429=>({'sql':_0x3a4429[_0x5beb01(0xcd)],'params':[]})));_0x17e7d0[_0x5beb01(0x14a)](_0x51c824=>{const _0x2fb342=_0x5beb01;if(_0x3e3d17[_0x2fb342(0xfb)](_0x51c824['type'],'insert'))_0x52351b+=_0x51c824['count'];else _0xd91581+=_0x51c824[_0x2fb342(0x14e)];});const _0x10ad61={'job_id':_0x540435,'upload_id':_0x373a32['upload_id'],'preview_job_id':_0x373a32[_0x5beb01(0x140)],'status':_0x5beb01(0xb5),'progress':0x64,'created_at':_0x373a32['created_at'],'started_at':new Date()[_0x5beb01(0xe8)](),'completed_at':new Date()['toISOString'](),'result':{'total_rows':_0x5db01d[_0x5beb01(0x147)],'inserted_rows':_0x52351b,'updated_rows':_0xd91581,'skipped_rows':0x0,'failed_rows':0x0,'errors':[]},'params':_0x463731};await redisHelper['setJob']('job:'+_0x540435,_0x10ad61,0xe10),logger['info']({'event':_0x5beb01(0x14f),'jobId':_0x540435,'insertedCount':_0x52351b,'updatedCount':_0xd91581},'Commit\x20job\x20completed');}catch(_0x320f65){_0x3e3d17[_0x5beb01(0xde)](logError,_0x320f65,{'event':_0x5beb01(0x153),'jobId':_0x540435},_0x5beb01(0x158)),await redisHelper['setJob']('job:'+_0x540435,{'job_id':_0x540435,'upload_id':_0x373a32['upload_id'],'preview_job_id':_0x373a32[_0x5beb01(0x140)],'status':_0x3e3d17[_0x5beb01(0xe2)],'progress':0x0,'error':_0x320f65[_0x5beb01(0x10a)],'created_at':_0x373a32['created_at'],'started_at':new Date()['toISOString'](),'completed_at':new Date()[_0x5beb01(0xe8)]()},0xe10);}}async[a0_0xd80b94(0x139)](_0x1dca82){const _0x4af166=a0_0xd80b94,_0x1f2635={'elunh':'Job\x20not\x20found\x20or\x20expired'},_0x36a342=await redisHelper[_0x4af166(0xcc)](_0x4af166(0x14c)+_0x1dca82);if(!_0x36a342)return{'success':![],'error':_0x1f2635[_0x4af166(0x152)]};return{'success':!![],'data':_0x36a342};}}module[a0_0xd80b94(0xb9)]=new ImportService();
1
+ function a0_0x142d(){const _0x4fdba3=['vvrwy0u','C3vIC3rYAw5N','Buz3swy','ChjVy2vZC0XVB2T1CezPzwXKCW','rxHJzwWGC3rYDwn0DxjLig1PC21HDgnOlIbnAxnZAw5NigzPzwXKCZOG','mZq0ntC0Ew9Nqurw','B2vYqu0','Dhbqu3m','odu0ngvnAKXIyG','lI4VlI4Vy29Yzs91DgLSCY9KyG','DMfSAwrHDgLUzW','Aw1WB3j0x2zPzwXKC19MAwX0zxjLza','AM9Ix2LK','su55EK8','mJC0ota0Dgrytu90','Cgf0Aa','Aw5MBW','qwzjveG','tMn0A1u','v0nqAum','zMLLBgrmywjLBhm','BxLZCwW','ntK2mZiYrLbpAfzU','z2v0tw9UDgG','ChjVy2vZC2LUzW','mtuWy0LHrMPd','DxbKyxrLx2v4Axn0Aw5N','zM9YrwfJAa','BwvZC2fNzq','EufluvK','q0PZvge','Cg9ZDgDYzxnXBa','Bu5MA3a','C3rYAw5N','Egftu3i','Aw5Zzxj0x29UBhK','y291BNq','rMfPBgvKihrVignSzwfUDxaGzMLSzq','y29SDw1Ux2zVCM1HDhnFyxbWBgLLza','sw1WB3j0igzPBguGDxbSB2fKzwqGyw5KihbHCNnLza','DgfYz2v0rMLLBgq','mJy1ntz6vhLetve','BM93','z2vUzxjHDgvjza','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvPHyMnKzwzNAgLQA2XTBM9WCxjZDhv2D3H5EJaXmJm0nty3odK','ChjVy2vZC1bYzxzPzxDkB2i','sw1WB3j0igzPzwXKCYbMAwX0zxjLzcaOzxHJBhvKzwqGBg9VA3vWihnVDxjJzsbJB2X1Bw5Zkq','ChjLDMLLD19QB2jFzMfPBgvK','Aw1WB3j0x2zPBgvFDxbSB2fKzwq','CKXnDhq','yNvPBgrcyxrJAfvWzgf0zq','yMf0y2HwywXPzgf0zvjVD3m','B3jPz2LUywXUyw1L','mJfZBhfIwxm','DMfSDwvZ','su5trvju','mZyXotu1n1LPwxzWwG','AgvHzgvYC19TyxbWzwq','Aw5JBhvKzxm','yNvPBgrmywjLBfrVrMLLBgrnyxa','CMvWBgfJzq','otm4nJvgDMz0AeW','yvrwq1O','wxzxv2C','y29TCgXLDgvK','lI91ChnLCNqTyNvPBgrLCG','uMvJB3jKigv4Axn0CYaOAw5Zzxj0x29UBhKGBw9KzsK','qxv0BY1Nzw5LCMf0zwqGvvvjrcbMB3iG','CuLQtwm','ChjLDMLLD19QB2jFy29TCgXLDgvK','zgvIDwC','Dw5SAw5R','x2DLBMvYyxrLzf91DwLK','zMLUza','C2XPy2u','cIaGicaGicaGv0HfuKuG','C2v0','DMfSAwq','lI4Vy2fJAgLUzY9YzwrPCY1OzwXWzxi','q0XWv3G','m1v6uMndqG','zNjVBq','y2f0y2G','q2fUBM90ignVBw1PDdOGChjLDMLLDYbZDgf0DxmGAxmG','C2v0sM9I','yxv0B0DLBMvYyxrLvxbZzxj0s2v5CW','ChvZAa','DhjPBq','ieLoicG','Dxbly0e','u0Tjua','BgvUz3rO','DxbSB2fKoG','Dg9mB3DLCKnHC2u','q29TBwL0igPVyIbJCMvHDgvK','wuryzMO','tvHgENC','wgDqAhO','mtbOzxvUy1q','odq3tvL2quXl','tLvmta','DMfSAwrHDgvfEgnLBfn0CNvJDhvYzq','vefbD0u','CgfYyw1Z','DxbSB2fKx2LK','y2HHCKf0','CM93sw5KzxG','AMrZvxa','zMfPBgvK','Bg9VA3vWrMLLBgrZ','zNHHA3q','x2fJDgLVBG','A2v5CW','z2v0sM9I','CgfKu3rHCNq','y29TBwL0x2PVyL9JCMvHDgvK','y29TBwL0x2PVyL9JB21WBgv0zwq','DgvZDa','CvL1vw0','zgv0zwn0rgf0ywjHC2veDxbSAwnHDgvZ','tgfIzwWGDg8GzMLLBgqGBwfWCgLUzYbIDwLSDa','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','z2v0','jdfFjdi','zMLSzv9JBgvHBNvWx2vYCM9Y','Dg9ju09tDhjPBMC','Aw5Zzxj0','AM9PBG','BwLZC2LUz0zPzwXKCW','C2L6zq','y3jLyxrLzf9HDa','vfDMy3O','lI4VlI4VDgvTCc91CgXVywrZlW','zxHLy3v0zvf1zxj5','vvbmt0fex0rjuG','vvbeqvrf','DxbSB2fKrgLY','AfjdCha','DhLWzq','zxHLy3v0zvrYyw5Zywn0Aw9U','C2TPCf9LEgLZDgLUzW','uNDdA20','vxbSB2fKigrHDgeGBM90igzVDw5Kig9Yigv4CgLYzwq','zw52','x2vYCM9YCW','uhjLDMLLDYbWCM9JzxnZAw5NigzHAwXLza','C3fS','zMLSDgvY','rejFvfLqrq','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','rhrODwG','zM9YBwf0rgf0zuzVCKrHDgfIyxnL','ChjVy2vZC2vKuM93CW','DK5vAeO','vKjLt08','lI4Vzgf0ywjHC2uVzgiTB3jHy2XL','ExrqCMq','zgf0zq','AM9IoG','y2H1BMTsB3DZ','uhjLDMLLDYbQB2iGzMfPBgvK','yNvPBgrcyxrJAeLUC2vYDa','DKfVquK','EMDnqxC','BwfW','B3jHy2XL','cIaGicaGicaGrLjptsa','zw50CMLLCW','rMLWvLC','zxjYB3jZ','x3vWBg9HzerPCG','lI4Vzgf0ywjHC2uVzgiTBxLZCwW','zxrqCu4','ChjLDMLLD19VAW','DLjTrM8'];a0_0x142d=function(){return _0x4fdba3;};return a0_0x142d();}const a0_0x229268=a0_0x584a;(function(_0x756fad,_0x3555d9){const _0x5ddbfc=a0_0x584a,_0x769410=_0x756fad();while(!![]){try{const _0x489a11=parseInt(_0x5ddbfc(0x15e))/0x1+-parseInt(_0x5ddbfc(0x16f))/0x2+-parseInt(_0x5ddbfc(0x1a9))/0x3*(-parseInt(_0x5ddbfc(0x167))/0x4)+-parseInt(_0x5ddbfc(0x196))/0x5*(-parseInt(_0x5ddbfc(0x172))/0x6)+-parseInt(_0x5ddbfc(0x18e))/0x7*(parseInt(_0x5ddbfc(0x161))/0x8)+parseInt(_0x5ddbfc(0x191))/0x9*(-parseInt(_0x5ddbfc(0x1bb))/0xa)+parseInt(_0x5ddbfc(0x1bc))/0xb*(parseInt(_0x5ddbfc(0x182))/0xc);if(_0x489a11===_0x3555d9)break;else _0x769410['push'](_0x769410['shift']());}catch(_0x13c7cb){_0x769410['push'](_0x769410['shift']());}}}(a0_0x142d,0x55530));const {v7:uuidv7}=require('uuid'),path=require('path'),fs=require('fs')['promises'],redisHelper=require(a0_0x229268(0x1a7)),{logger,logError}=require(a0_0x229268(0x13f)),dbType=(process[a0_0x229268(0x1e8)][a0_0x229268(0x13e)]||a0_0x229268(0x178))['toLowerCase']();let executeQuery,executeTransaction,oracleDb;if(dbType==='oracle')oracleDb=require(a0_0x229268(0x145)),executeQuery=(_0x2e1e2e,_0x47a719)=>oracleDb[a0_0x229268(0x1de)](_0x2e1e2e,_0x47a719),executeTransaction=_0x2360db=>oracleDb[a0_0x229268(0x1e4)](_0x2360db);else{if(dbType===a0_0x229268(0x16e)){const mysqlDb=require(a0_0x229268(0x155));executeQuery=(_0x8b4b12,_0x1bef43)=>mysqlDb['executeQuery'](_0x8b4b12,_0x1bef43),executeTransaction=_0x3c0e6d=>mysqlDb['executeTransaction'](_0x3c0e6d);}else{const db=require(a0_0x229268(0x162));executeQuery=db['executeQuery'],executeTransaction=db[a0_0x229268(0x1e4)];}}const excelParser=require('./excel-parser'),importValidator=require('./import-validator'),upsertBuilder=require(a0_0x229268(0x19a)),lookupResolver=require('../integrations/lookup-resolver');class ImportService{constructor(){const _0x1a571c=a0_0x229268;this[_0x1a571c(0x154)]=null;}get[a0_0x229268(0x1e1)](){const _0x8b82af=a0_0x229268,_0x56ad34={'SwLge':'default'};if(!this['_uploadDir']){const _0x42df25=process['env'][_0x8b82af(0x1d2)]||_0x56ad34['SwLge'];this[_0x8b82af(0x154)]=process[_0x8b82af(0x1e8)][_0x8b82af(0x1df)]||path['join'](__dirname,_0x8b82af(0x1dd)+_0x42df25);}return this['_uploadDir'];}[a0_0x229268(0x184)](){const _0x56f93c=a0_0x229268,_0x5153f6={'vNUhJ':_0x56f93c(0x185),'YvWWg':function(_0x4ab623){return _0x4ab623();},'VBeOO':function(_0x4bb87a,_0xf8ecf9){return _0x4bb87a+_0xf8ecf9;},'AvuNA':function(_0x46cfcb,_0x34c5ed){return _0x46cfcb*_0x34c5ed;}},_0x245646=_0x5153f6[_0x56f93c(0x143)],_0x41e832=Date[_0x56f93c(0x183)]()['toString'](0x24),_0x1b1c8e=_0x5153f6[_0x56f93c(0x198)](uuidv7)[_0x56f93c(0x195)](/-/g,'')['substring'](0x0,0xc-_0x41e832[_0x56f93c(0x1b4)]),_0xc5f668=_0x5153f6[_0x56f93c(0x144)](_0x41e832,_0x1b1c8e)[_0x56f93c(0x15a)](0x0,0xc);let _0x4e0d90='';for(let _0x3b5e7b=0x0;_0x3b5e7b<0xc;_0x3b5e7b++){_0xc5f668[_0x3b5e7b]?_0x4e0d90+=_0xc5f668[_0x3b5e7b]:_0x4e0d90+=_0x245646[_0x56f93c(0x1c2)](Math['floor'](_0x5153f6['AvuNA'](Math['random'](),_0x245646['length'])));}return _0x4e0d90;}[a0_0x229268(0x194)](_0x106032){const _0x21e2ad=a0_0x229268,_0x139c88={'pxPRe':function(_0x1ce9ff,_0x4412cb){return _0x1ce9ff(_0x4412cb);},'INyzO':_0x21e2ad(0x1d4),'tpPSs':_0x21e2ad(0x1d1)},_0x3114ef=new Map();if(!_0x106032)return _0x3114ef;return Object[_0x21e2ad(0x151)](_0x106032)[_0x21e2ad(0x174)](([_0x408f78,_0x25b305])=>{const _0x8f935b=_0x21e2ad,_0x2b4c39=_0x139c88['pxPRe'](String,_0x25b305)[_0x8f935b(0x1b0)]()['replace'](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,_0x8f935b(0x1d4))[_0x8f935b(0x195)](/([A-Z]+)([A-Z][a-z])/g,_0x139c88[_0x8f935b(0x166)])['toLowerCase']();_0x3114ef[_0x8f935b(0x1a5)](_0x2b4c39,_0x408f78);}),logger[_0x21e2ad(0x19f)]({'event':'label_to_field_map_built','mappingCount':_0x3114ef[_0x21e2ad(0x1da)]},_0x139c88[_0x21e2ad(0x160)]),_0x3114ef;}['applyColumnFormats'](_0x27b862,_0x47476d){const _0x7f950b=a0_0x229268,_0x356115={'qYuUm':function(_0x16ecca,_0x1fea29){return _0x16ecca===_0x1fea29;},'DXedK':function(_0x1377f0,_0x9cfbb0){return _0x1377f0===_0x9cfbb0;},'PUodi':_0x7f950b(0x147),'rirYl':'number','rgmrY':'text'};if(!_0x47476d||Object['keys'](_0x47476d)['length']===0x0)return _0x27b862;return _0x27b862['map'](_0x19a2bd=>{const _0x56ac44=_0x7f950b,_0x3ce39c={..._0x19a2bd};for(const [_0x206ae6,_0x379f7b]of Object[_0x56ac44(0x151)](_0x47476d)){const _0x18ca49=_0x3ce39c[_0x206ae6];if(_0x356115[_0x56ac44(0x1cf)](_0x18ca49,null)||_0x18ca49===undefined||_0x356115['DXedK'](_0x18ca49,'')){_0x3ce39c[_0x206ae6]=null;continue;}switch(_0x379f7b[_0x56ac44(0x1e3)]){case _0x356115['PUodi']:_0x3ce39c[_0x206ae6]=this['formatDateForDatabase'](_0x18ca49);break;case _0x356115['rirYl']:_0x3ce39c[_0x206ae6]=this['formatNumberForDatabase'](_0x18ca49);break;case _0x356115['rgmrY']:_0x3ce39c[_0x206ae6]=String(_0x18ca49);break;default:break;}}return _0x3ce39c;});}[a0_0x229268(0x141)](_0x3fd74a){const _0x3aa763=a0_0x229268,_0x28fd3b={'WCPiC':function(_0x4f70cd,_0x2b9121){return _0x4f70cd===_0x2b9121;},'pCduh':function(_0x7258b8,_0x1e32f9){return _0x7258b8===_0x1e32f9;},'AfITH':function(_0x40a9f3,_0x4408fb){return _0x40a9f3 instanceof _0x4408fb;},'qZSzB':function(_0x36b1fc,_0x50d0a2){return _0x36b1fc+_0x50d0a2;},'ZmvrI':function(_0x12a583,_0x11af0a){return _0x12a583(_0x11af0a);}};if(_0x3fd74a===null||_0x28fd3b[_0x3aa763(0x16c)](_0x3fd74a,undefined)||_0x3fd74a==='')return null;if(_0x28fd3b['pCduh'](typeof _0x3fd74a,_0x3aa763(0x17a))&&/^\d{4}-\d{2}-\d{2}$/['test'](_0x3fd74a))return _0x3fd74a;if(_0x28fd3b[_0x3aa763(0x16a)](_0x3fd74a,Date)){if(isNaN(_0x3fd74a['getTime']()))return null;const _0x1f3150=_0x3fd74a['getFullYear'](),_0x52871b=String(_0x28fd3b['qZSzB'](_0x3fd74a[_0x3aa763(0x170)](),0x1))[_0x3aa763(0x1cb)](0x2,'0'),_0xbc6047=String(_0x3fd74a['getDate']())[_0x3aa763(0x1cb)](0x2,'0');return _0x1f3150+'-'+_0x52871b+'-'+_0xbc6047;}if(_0x28fd3b['WCPiC'](typeof _0x3fd74a,'string')){const _0x36503e=_0x3fd74a['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x36503e){const _0x25e93c=String(_0x36503e[0x1])['padStart'](0x2,'0'),_0x154f9e=String(_0x36503e[0x2])[_0x3aa763(0x1cb)](0x2,'0'),_0x46cb02=_0x36503e[0x3];return _0x46cb02+'-'+_0x154f9e+'-'+_0x25e93c;}const _0x35bdb0=_0x3fd74a['match'](/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})$/);if(_0x35bdb0){const _0x14eaaf=_0x35bdb0[0x1],_0x5265d3=String(_0x35bdb0[0x2])[_0x3aa763(0x1cb)](0x2,'0'),_0x41c65c=_0x28fd3b['ZmvrI'](String,_0x35bdb0[0x3])[_0x3aa763(0x1cb)](0x2,'0');return _0x14eaaf+'-'+_0x5265d3+'-'+_0x41c65c;}}return _0x3fd74a;}['formatNumberForDatabase'](_0x3f706c){const _0x28b037=a0_0x229268,_0x50940c={'dqLul':function(_0x3e98cc,_0x32a682){return _0x3e98cc===_0x32a682;},'ytPrd':function(_0xce2fa1,_0x523a90){return _0xce2fa1===_0x523a90;},'FipVW':function(_0x18a5eb,_0x197a58){return _0x18a5eb(_0x197a58);},'aTVCZ':'string','CLpWx':function(_0x523cff,_0x5f0c15){return _0x523cff(_0x5f0c15);}};if(_0x50940c['dqLul'](_0x3f706c,null)||_0x50940c['ytPrd'](_0x3f706c,undefined)||_0x3f706c==='')return null;if(typeof _0x3f706c==='number')return _0x50940c[_0x28b037(0x152)](isNaN,_0x3f706c)?null:_0x3f706c;if(_0x50940c[_0x28b037(0x146)](typeof _0x3f706c,_0x50940c[_0x28b037(0x197)])){let _0x3920ef=_0x3f706c[_0x28b037(0x1b0)]();const _0x2bd796=/,\d{1,2}$/['test'](_0x3920ef)&&!/,\d{3}/[_0x28b037(0x1ce)](_0x3920ef);_0x2bd796?_0x3920ef=_0x3920ef['replace'](/\./g,'')['replace'](',','.'):_0x3920ef=_0x3920ef['replace'](/,/g,'');const _0x394562=_0x50940c[_0x28b037(0x1a8)](parseFloat,_0x3920ef);return isNaN(_0x394562)?null:_0x394562;}return null;}async['uploadFile'](_0x37a0b7,_0x4de492){const _0x112c9a=a0_0x229268,_0x3b616e={'UTVcE':'Excel\x20headers\x20mapped\x20to\x20field\x20names','cvUlR':function(_0x10eda9,_0x3589d1){return _0x10eda9>_0x3589d1;},'vAoAI':_0x112c9a(0x180),'FWRLr':function(_0x38f163,_0x1ff2ea,_0x132240,_0x1e4ad2){return _0x38f163(_0x1ff2ea,_0x132240,_0x1e4ad2);},'Dthuh':_0x112c9a(0x17e)},_0x5ed5a8=this[_0x112c9a(0x184)]();try{let {headers:_0xdfabb5,rows:_0x4e18f9,totalRows:_0x11ea82}=await excelParser['parseExcelFile'](_0x37a0b7['path']);const _0x16b926=this['buildLabelToFieldMap'](_0x4de492[_0x112c9a(0x16d)]),_0x2e749=_0xdfabb5['map'](_0x30b826=>{const _0x4fdc53=_0x112c9a,_0x471153=_0x16b926[_0x4fdc53(0x1d3)](_0x30b826);return _0x471153||_0x30b826;});_0x4e18f9=_0x4e18f9['map'](_0x453e0c=>{const _0x4fd167=_0x112c9a,_0x379301={};return _0xdfabb5[_0x4fd167(0x174)]((_0x56e970,_0x1eb42b)=>{const _0x5b3d39=_0x2e749[_0x1eb42b];_0x379301[_0x5b3d39]=_0x453e0c[_0x56e970];}),_0x379301;}),_0xdfabb5=_0x2e749,logger[_0x112c9a(0x19f)]({'event':_0x112c9a(0x192),'original':_0xdfabb5[_0x112c9a(0x1b4)],'mapped':_0x2e749[_0x112c9a(0x13d)]((_0x2827ee,_0x1f2e93)=>_0x2827ee!==_0xdfabb5[_0x1f2e93])['length']},_0x3b616e[_0x112c9a(0x159)]);_0x4de492['columnFormats']&&_0x3b616e['cvUlR'](Object[_0x112c9a(0x1c9)](_0x4de492['columnFormats'])[_0x112c9a(0x1b4)],0x0)&&(_0x4e18f9=this['applyColumnFormats'](_0x4e18f9,_0x4de492['columnFormats']),logger['debug']({'event':_0x112c9a(0x17f),'formatCount':Object[_0x112c9a(0x1c9)](_0x4de492['columnFormats'])[_0x112c9a(0x1b4)],'formats':Object['keys'](_0x4de492['columnFormats'])},'Column\x20formats\x20applied\x20to\x20rows'));const _0x3f2cc4=_0x4de492[_0x112c9a(0x1c6)]?Object[_0x112c9a(0x18f)](_0x4de492['lookupFields'])['map'](_0x6c488b=>_0x6c488b[_0x112c9a(0x181)]):[],_0x156f2c=_0x4de492['fieldName']['filter'](_0x3ca7e8=>!_0x3f2cc4[_0x112c9a(0x193)](_0x3ca7e8)),_0x15e626=excelParser[_0x112c9a(0x1be)](_0xdfabb5,_0x156f2c);if(!_0x15e626[_0x112c9a(0x1a6)]){await fs[_0x112c9a(0x1a0)](_0x37a0b7['path']);throw new Error(_0x112c9a(0x15d)+_0x15e626[_0x112c9a(0x1d9)]['join'](',\x20'));}const _0x50908c={'upload_id':_0x5ed5a8,'filename':_0x37a0b7[_0x112c9a(0x18d)],'total_rows':_0x11ea82,'headers':_0xdfabb5,'rows':_0x4e18f9,'params':_0x4de492,'created_at':new Date()['toISOString']()};return await redisHelper['setJob']('upload:'+_0x5ed5a8,_0x50908c,0xe10),await fs[_0x112c9a(0x1a0)](_0x37a0b7['path']),logger[_0x112c9a(0x169)]({'event':_0x112c9a(0x189),'uploadId':_0x5ed5a8,'filename':_0x37a0b7['originalname'],'totalRows':_0x11ea82},_0x3b616e[_0x112c9a(0x14c)]),{'upload_id':_0x5ed5a8,'total_rows':_0x11ea82,'preview':_0x4e18f9['slice'](0x0,0xa)};}catch(_0x2b41d0){try{await fs['unlink'](_0x37a0b7[_0x112c9a(0x168)]);}catch(_0x3a950e){_0x3b616e['FWRLr'](logError,_0x3a950e,{'event':_0x112c9a(0x1d5)},_0x3b616e[_0x112c9a(0x140)]);}throw _0x2b41d0;}}async['createPreviewJob'](_0x19de46){const _0x3060fd=a0_0x229268,_0x42e521={'JCjIG':function(_0x38c44b,_0x35bc36,_0x129413,_0x5bcf0b){return _0x38c44b(_0x35bc36,_0x129413,_0x5bcf0b);},'CJsTa':_0x3060fd(0x163),'RwCkm':'preview_job_created'},_0x5ce0e8=this['generateId'](),_0x401837=await redisHelper[_0x3060fd(0x1ca)]('upload:'+_0x19de46);if(!_0x401837)throw new Error(_0x3060fd(0x1e7));const _0x585e79={'job_id':_0x5ce0e8,'upload_id':_0x19de46,'status':_0x42e521['CJsTa'],'progress':0x0,'created_at':new Date()['toISOString'](),'params':_0x401837['params']};return await redisHelper[_0x3060fd(0x1ad)](_0x3060fd(0x148)+_0x5ce0e8,_0x585e79,0xe10),logger[_0x3060fd(0x169)]({'event':_0x42e521[_0x3060fd(0x1e6)],'jobId':_0x5ce0e8,'uploadId':_0x19de46},'Preview\x20job\x20created'),this['processPreviewJob'](_0x5ce0e8,_0x19de46,_0x401837)['catch'](_0x35d84c=>{const _0x58de7f=_0x3060fd;_0x42e521['JCjIG'](logError,_0x35d84c,{'event':'preview_process_error','jobId':_0x5ce0e8},_0x58de7f(0x13b));}),{'job_id':_0x5ce0e8,'status':_0x42e521[_0x3060fd(0x177)]};}[a0_0x229268(0x1ae)](_0x4d2118,_0xc2cfee){const _0x18af64=a0_0x229268,_0x5407d1={'mFwIf':function(_0x33cae7,_0x610a26){return _0x33cae7===_0x610a26;},'jdsUp':function(_0x502e80,_0x1c5e26){return _0x502e80===_0x1c5e26;},'MXFzw':function(_0x397abd,_0x5a16cc){return _0x397abd(_0x5a16cc);},'XgPhz':function(_0xb0c630,_0x189a0b){return _0xb0c630+_0x189a0b;}};_0x4d2118[_0x18af64(0x174)]((_0x349e53,_0x383af6)=>{const _0x532270=_0x18af64;_0xc2cfee[_0x532270(0x174)](_0xccddaa=>{const _0x13ed05=_0x532270,_0xb55fb3=_0x349e53[_0xccddaa];if(_0xb55fb3===null||_0x5407d1[_0x13ed05(0x15b)](_0xb55fb3,undefined)||_0x5407d1[_0x13ed05(0x1c4)](_0xb55fb3,'')||_0x5407d1[_0x13ed05(0x1b9)](String,_0xb55fb3)['trim']()==='-'){const _0x12685b=uuidv7();_0x349e53[_0xccddaa]=_0x12685b,_0x349e53[_0x13ed05(0x1a1)]=_0x349e53['_generated_uuid']||{},_0x349e53[_0x13ed05(0x1a1)][_0xccddaa]=_0x12685b,logger['debug']({'event':'uuid_auto_generated','rowIndex':_0x383af6,'field':_0xccddaa,'uuid':_0x12685b},_0x13ed05(0x19c)+_0xccddaa+'\x20at\x20row\x20'+_0x5407d1[_0x13ed05(0x1ba)](_0x383af6,0x2));}});});}async[a0_0x229268(0x186)](_0x65a6b3,_0x405d01,_0x40691c){const _0x18eb2f=a0_0x229268,_0x5826dd={'qIjMc':function(_0x819a1b,_0x4b15a9){return _0x819a1b===_0x4b15a9;},'WypBC':'INSERT','VErpk':function(_0x28d952,_0x17df99){return _0x28d952===_0x17df99;},'xaSSr':function(_0x4c2450,_0x591625){return _0x4c2450>_0x591625;},'hRCpp':'processing_lookup_fields','JxrVN':'Processing\x20lookup\x20fields','efUhK':function(_0x36365c,_0x4f1975){return _0x36365c||_0x4f1975;},'pjqIZ':_0x18eb2f(0x157),'oerAM':'Preview\x20job\x20completed','yAKQY':_0x18eb2f(0x188),'ftkUF':_0x18eb2f(0x1c5)};try{let {rows:_0x7f021b,params:_0x3359be}=_0x40691c;const {requiredFields:_0x1107e4,validations:_0x3074ac,upsertKeys:_0x12c461,tableName:_0xed11b,primaryKey:_0x7460e7,fieldName:_0x55fda0,upsertStrategy:_0x3b482a,lookupFields:_0x4ee8c4}=_0x3359be;this[_0x18eb2f(0x1ae)](_0x7f021b,_0x12c461);let _0x261cd6=[];if(_0x4ee8c4&&_0x5826dd[_0x18eb2f(0x17b)](Object['keys'](_0x4ee8c4)[_0x18eb2f(0x1b4)],0x0)){logger[_0x18eb2f(0x169)]({'event':_0x5826dd[_0x18eb2f(0x1e2)],'jobId':_0x65a6b3,'lookupFieldCount':Object['keys'](_0x4ee8c4)[_0x18eb2f(0x1b4)]},_0x5826dd['JxrVN']);const _0x3b5b31=await lookupResolver[_0x18eb2f(0x15c)](_0x7f021b,_0x4ee8c4);_0x7f021b=_0x3b5b31[_0x18eb2f(0x142)],_0x261cd6=_0x3b5b31['errors'],_0x40691c['rows']=_0x7f021b;}const _0x34645f=importValidator[_0x18eb2f(0x18c)](_0x7f021b,_0x1107e4||[],_0x5826dd['efUhK'](_0x3074ac,{}));_0x261cd6['forEach'](_0xc0323e=>{const _0x3f61b0=_0x18eb2f,_0x46c0d6=_0x34645f['find'](_0x56d6a8=>_0x56d6a8['rowIndex']===_0xc0323e['rowIndex']);_0x46c0d6?_0x46c0d6[_0x3f61b0(0x153)][_0x3f61b0(0x1af)](_0xc0323e['message']):_0x34645f[_0x3f61b0(0x1af)]({'rowIndex':_0xc0323e['rowIndex'],'rowData':_0x7f021b[_0xc0323e['rowIndex']],'errors':[_0xc0323e[_0x3f61b0(0x175)]]});});const _0x2383c4=importValidator['detectDuplicatesInFile'](_0x7f021b,_0x12c461);_0x2383c4[_0x18eb2f(0x174)](_0x45da31=>{const _0x5f0d99=_0x18eb2f,_0x2ede3b=_0x34645f[_0x5f0d99(0x1a2)](_0x161c19=>_0x161c19['rowIndex']===_0x45da31[_0x5f0d99(0x1c3)]),_0x583d45=_0x12c461[_0x5f0d99(0x14e)](_0x2b0640=>_0x2b0640['toUpperCase']())[_0x5f0d99(0x1d8)](',\x20'),_0x1e1bac='Duplicate\x20value\x20for\x20'+_0x583d45;_0x2ede3b?_0x2ede3b[_0x5f0d99(0x153)][_0x5f0d99(0x1af)](_0x1e1bac):_0x34645f['push']({'rowIndex':_0x45da31[_0x5f0d99(0x1c3)],'rowData':_0x7f021b[_0x45da31['rowIndex']],'errors':[_0x1e1bac]});}),await this['detectDatabaseDuplicates'](_0x7f021b,_0x12c461,_0xed11b,_0x7460e7,_0x3b482a,_0x34645f),_0x34645f[_0x18eb2f(0x174)](_0xbd5eac=>{const _0x59e121=_0x7f021b[_0xbd5eac['rowIndex']];_0x59e121&&(_0x59e121['_errors']=_0xbd5eac['errors']);});let _0x22ebd4=0x0,_0x3d0f7c=0x0,_0x367947=0x0;_0x7f021b['forEach'](_0x2c8d21=>{const _0x3cee97=_0x18eb2f;if(_0x5826dd[_0x3cee97(0x19d)](_0x2c8d21['_action'],_0x5826dd['WypBC']))_0x22ebd4++;else{if(_0x2c8d21['_action']===_0x3cee97(0x1e0))_0x3d0f7c++;else _0x5826dd['VErpk'](_0x2c8d21[_0x3cee97(0x1c8)],_0x3cee97(0x1b3))&&_0x367947++;}});const _0x118422={'job_id':_0x65a6b3,'upload_id':_0x405d01,'status':_0x34645f[_0x18eb2f(0x1b4)]>0x0?'preview_error':_0x5826dd['pjqIZ'],'progress':0x64,'created_at':_0x40691c['created_at'],'completed_at':new Date()[_0x18eb2f(0x1d6)](),'preview':{'total_rows':_0x7f021b[_0x18eb2f(0x1b4)],'insert_count':_0x22ebd4,'update_count':_0x3d0f7c,'skip_count':_0x367947,'error_count':_0x34645f[_0x18eb2f(0x1b4)],'errors':_0x34645f,'data':_0x7f021b,'sample_insert':_0x7f021b[_0x18eb2f(0x13d)](_0x49ae6d=>_0x49ae6d['_action']==='INSERT')[_0x18eb2f(0x1a3)](0x0,0x5),'sample_update':_0x7f021b['filter'](_0x439854=>_0x439854['_action']==='UPDATE')['slice'](0x0,0x5),'sample_skip':_0x7f021b[_0x18eb2f(0x13d)](_0x7a358f=>_0x7a358f[_0x18eb2f(0x1c8)]===_0x18eb2f(0x1b3))[_0x18eb2f(0x1a3)](0x0,0x5)},'params':_0x3359be};await redisHelper['setJob'](_0x18eb2f(0x148)+_0x65a6b3,_0x118422,0xe10),_0x40691c['rows']=_0x7f021b,await redisHelper['setJob'](_0x18eb2f(0x1b5)+_0x405d01,_0x40691c,0xe10),logger[_0x18eb2f(0x169)]({'event':_0x18eb2f(0x19e),'jobId':_0x65a6b3,'status':_0x118422['status'],'insertCount':_0x22ebd4,'updateCount':_0x3d0f7c,'skipCount':_0x367947,'errorCount':_0x34645f['length']},_0x5826dd[_0x18eb2f(0x15f)]);}catch(_0x5a0f20){logError(_0x5a0f20,{'event':_0x5826dd[_0x18eb2f(0x176)],'jobId':_0x65a6b3},_0x18eb2f(0x14a)),await redisHelper['setJob'](_0x18eb2f(0x148)+_0x65a6b3,{'job_id':_0x65a6b3,'upload_id':_0x405d01,'status':_0x5826dd['ftkUF'],'progress':0x0,'error':_0x5a0f20['message'],'created_at':new Date()[_0x18eb2f(0x1d6)](),'completed_at':new Date()[_0x18eb2f(0x1d6)]()},0xe10);}}async[a0_0x229268(0x1d0)](_0x3e2bb2,_0x58eeb5,_0x4a4e31,_0x3d8708,_0x4dd379=a0_0x229268(0x173),_0x124285=[]){const _0x2c9e6b=a0_0x229268,_0x8bff66={'mNfkp':function(_0x4546e3,_0x2180b1){return _0x4546e3(_0x2180b1);},'hRcag':function(_0x7a2b20,_0x343ef1){return _0x7a2b20===_0x343ef1;},'TWfcz':_0x2c9e6b(0x173),'fxakt':'skip_existing','NctkU':_0x2c9e6b(0x190),'TAAwE':_0x2c9e6b(0x17c),'eTFaE':function(_0x4cd039,_0x1f5283){return _0x4cd039===_0x1f5283;},'TNRHX':_0x2c9e6b(0x14f),'ZJQaS':function(_0x116128,_0x985c33){return _0x116128>_0x985c33;}},_0x59868e=upsertBuilder[_0x2c9e6b(0x149)](_0x3e2bb2,0x64);for(const _0x50c28c of _0x59868e){const _0x1375f0=_0x50c28c[_0x2c9e6b(0x14e)](_0x4eceb9=>_0x4eceb9[_0x58eeb5[0x0]]),_0x5c51e8=_0x1375f0['map'](_0x149cb8=>{const _0x468353=_0x2c9e6b;if(_0x149cb8===null||_0x149cb8===undefined)return _0x468353(0x1bd);return'\x27'+_0x8bff66['mNfkp'](String,_0x149cb8)[_0x468353(0x195)](/'/g,'\x27\x27')+'\x27';}),_0x5b0bd7='\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x20'+_0x3d8708+',\x20'+_0x58eeb5[_0x2c9e6b(0x1d8)](',\x20')+_0x2c9e6b(0x150)+_0x4a4e31+_0x2c9e6b(0x1a4)+_0x58eeb5[0x0]+_0x2c9e6b(0x1b1)+_0x5c51e8[_0x2c9e6b(0x1d8)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20';let _0x3942db=await _0x8bff66[_0x2c9e6b(0x179)](executeQuery,_0x5b0bd7);_0x8bff66['eTFaE'](dbType,_0x8bff66['TNRHX'])&&_0x3942db&&_0x8bff66['ZJQaS'](_0x3942db['length'],0x0)&&(_0x3942db=_0x3942db['map'](_0x4f151b=>{const _0x50797f=_0x2c9e6b,_0x14d6fc={};for(const [_0x50aff9,_0xc06a23]of Object['entries'](_0x4f151b)){_0x14d6fc[_0x50aff9[_0x50797f(0x1b6)]()]=_0xc06a23;}return _0x14d6fc;}));const _0xb4e70=new Map();_0x3942db[_0x2c9e6b(0x174)](_0xce1c86=>{const _0x49ac31=_0xce1c86[_0x58eeb5[0x0]];_0xb4e70['set'](_0x49ac31,_0xce1c86);}),_0x50c28c['forEach']((_0x53f5f0,_0x575d93)=>{const _0x362dbc=_0x2c9e6b,_0xa35619=_0x53f5f0[_0x58eeb5[0x0]],_0x2f7581=_0xb4e70['get'](_0xa35619);if(_0x2f7581){if(_0x8bff66['hRcag'](_0x4dd379,_0x8bff66[_0x362dbc(0x1dc)]))_0x53f5f0['_action']='UPDATE',_0x53f5f0['_existingId']=_0x2f7581[_0x3d8708];else{if(_0x4dd379===_0x362dbc(0x17c)){_0x53f5f0[_0x362dbc(0x1c8)]='SKIP',_0x53f5f0['_errors']=_0x53f5f0[_0x362dbc(0x1e9)]||[],_0x53f5f0['_errors']['push'](_0x362dbc(0x19b));const _0x3622e3=_0x3e2bb2['indexOf'](_0x53f5f0);_0x3622e3!==-0x1&&_0x124285[_0x362dbc(0x1af)]({'rowIndex':_0x3622e3,'rowData':_0x53f5f0,'errors':['Record\x20exists\x20(insert_only\x20mode)']});}else _0x4dd379===_0x8bff66[_0x362dbc(0x1c7)]&&(_0x53f5f0['_action']=_0x362dbc(0x1b3));}}else{if(_0x4dd379==='update_existing')_0x53f5f0['_action']=_0x8bff66['NctkU'];else(_0x4dd379===_0x8bff66[_0x362dbc(0x1bf)]||_0x8bff66['hRcag'](_0x4dd379,_0x362dbc(0x1e5)))&&(_0x53f5f0['_action']=_0x8bff66[_0x362dbc(0x16b)]);}});}}async['createCommitJob'](_0x130882){const _0x39fe72=a0_0x229268,_0x50828e={'WjBgh':'commit_process_error','rLMtt':'Commit\x20processing\x20failed','QESJn':_0x39fe72(0x157)},_0x3e1e40=this['generateId'](),_0x340665=await redisHelper['getJob'](_0x39fe72(0x148)+_0x130882);if(!_0x340665)throw new Error('Preview\x20job\x20not\x20found\x20or\x20expired');if(_0x340665['status']!==_0x50828e['QESJn'])throw new Error(_0x39fe72(0x1ac)+_0x340665['status']);const _0x69703d={'job_id':_0x3e1e40,'upload_id':_0x340665[_0x39fe72(0x1c1)],'preview_job_id':_0x130882,'status':'processing','progress':0x0,'created_at':new Date()[_0x39fe72(0x1d6)](),'params':_0x340665[_0x39fe72(0x1c0)]};return await redisHelper[_0x39fe72(0x1ad)](_0x39fe72(0x148)+_0x3e1e40,_0x69703d,0xe10),logger[_0x39fe72(0x169)]({'event':_0x39fe72(0x1cc),'jobId':_0x3e1e40,'previewJobId':_0x130882},_0x39fe72(0x1b7)),this['processCommitJob'](_0x3e1e40,_0x340665)[_0x39fe72(0x1ab)](_0x1f5108=>{const _0x268970=_0x39fe72;logError(_0x1f5108,{'event':_0x50828e['WjBgh'],'jobId':_0x3e1e40},_0x50828e[_0x268970(0x18a)]);}),{'job_id':_0x3e1e40,'status':_0x39fe72(0x171)};}async['processCommitJob'](_0x64dd5e,_0x5d5cf2){const _0x551ccf=a0_0x229268,_0x20a203={'zgMAw':function(_0x4294cb,_0x531ae6){return _0x4294cb===_0x531ae6;},'JWPuT':_0x551ccf(0x164),'AqdOa':_0x551ccf(0x187),'vRmFo':function(_0x3dcb0c,_0x1f2f7e){return _0x3dcb0c>_0x1f2f7e;},'DRFIk':_0x551ccf(0x1d7),'JgmJL':function(_0x32c240,_0x478213){return _0x32c240>_0x478213;},'YDXfj':_0x551ccf(0x199),'QRFFa':_0x551ccf(0x1cd),'BPTku':'Commit\x20job\x20completed','etPqN':'Commit\x20job\x20failed','upKcA':'failed'};try{const _0x5b6a43=await redisHelper[_0x551ccf(0x1ca)]('upload:'+_0x5d5cf2[_0x551ccf(0x1c1)]);if(!_0x5b6a43)throw new Error(_0x551ccf(0x1e7));const {rows:_0x492a3c,params:_0x785563}=_0x5b6a43,{tableName:_0x52d9b4,fieldName:_0x54942b,primaryKey:_0x3344c9,upsertKeys:_0x5af734,excludeFromImport:_0x2a10a6,lookupFields:_0x54483a,columnFormats:_0x252e33}=_0x785563,_0x468e52=_0x54483a?Object[_0x551ccf(0x1c9)](_0x54483a):[],_0x5b678b=new Set([..._0x2a10a6||[],..._0x468e52]);let _0x1696e6=_0x54942b;_0x5b678b['size']>0x0&&(_0x1696e6=_0x54942b[_0x551ccf(0x13d)](_0x5179cb=>!_0x5b678b['has'](_0x5179cb)),logger[_0x551ccf(0x19f)]({'event':_0x20a203['JWPuT'],'originalCount':_0x54942b[_0x551ccf(0x1b4)],'filteredCount':_0x1696e6[_0x551ccf(0x1b4)],'excludedFields':Array[_0x551ccf(0x1aa)](_0x5b678b),'lookupSourceFields':_0x468e52},_0x20a203['AqdOa']));const _0x3f8964=_0x492a3c['filter'](_0x23ad5f=>_0x23ad5f[_0x551ccf(0x1c8)]==='INSERT'),_0x441c1c=_0x492a3c['filter'](_0x58b2ef=>_0x58b2ef['_action']===_0x551ccf(0x1e0));let _0xe532c3=0x0,_0x5d85a4=0x0;const _0x5eddb5=[];if(_0x20a203[_0x551ccf(0x158)](_0x3f8964[_0x551ccf(0x1b4)],0x0)){const _0x495d9c=upsertBuilder['chunkRows'](_0x3f8964,0x64);for(const _0x1198b2 of _0x495d9c){const {query:_0x2de497}=upsertBuilder[_0x551ccf(0x14b)](_0x1198b2,_0x52d9b4,_0x1696e6,_0x252e33||{});_0x2de497&&_0x5eddb5['push']({'sql':_0x2de497,'count':_0x1198b2[_0x551ccf(0x1b4)],'type':_0x20a203['DRFIk']});}}if(_0x441c1c[_0x551ccf(0x1b4)]>0x0){const _0x52073f=upsertBuilder[_0x551ccf(0x149)](_0x441c1c,0x64);for(const _0x10d32a of _0x52073f){const {query:_0x490122}=upsertBuilder[_0x551ccf(0x18b)](_0x10d32a,_0x52d9b4,_0x1696e6,_0x3344c9,_0x5af734,_0x252e33||{});_0x490122&&_0x5eddb5['push']({'sql':_0x490122,'count':_0x10d32a['length'],'type':'update'});}}_0x20a203['JgmJL'](_0x5eddb5['length'],0x0)&&await executeTransaction(_0x5eddb5['map'](_0x1a55d7=>({'sql':_0x1a55d7[_0x551ccf(0x13c)],'params':[]})));_0x5eddb5['forEach'](_0x2838a7=>{const _0x52c6c1=_0x551ccf;if(_0x20a203[_0x52c6c1(0x14d)](_0x2838a7['type'],'insert'))_0xe532c3+=_0x2838a7[_0x52c6c1(0x17d)];else _0x5d85a4+=_0x2838a7[_0x52c6c1(0x17d)];});const _0x39e876={'job_id':_0x64dd5e,'upload_id':_0x5d5cf2['upload_id'],'preview_job_id':_0x5d5cf2['job_id'],'status':_0x20a203[_0x551ccf(0x1b8)],'progress':0x64,'created_at':_0x5d5cf2[_0x551ccf(0x1db)],'started_at':new Date()[_0x551ccf(0x1d6)](),'completed_at':new Date()[_0x551ccf(0x1d6)](),'result':{'total_rows':_0x492a3c[_0x551ccf(0x1b4)],'inserted_rows':_0xe532c3,'updated_rows':_0x5d85a4,'skipped_rows':0x0,'failed_rows':0x0,'errors':[]},'params':_0x785563};await redisHelper['setJob']('job:'+_0x64dd5e,_0x39e876,0xe10),logger['info']({'event':_0x20a203['QRFFa'],'jobId':_0x64dd5e,'insertedCount':_0xe532c3,'updatedCount':_0x5d85a4},_0x20a203['BPTku']);}catch(_0x3e2dfd){logError(_0x3e2dfd,{'event':'commit_job_failed','jobId':_0x64dd5e},_0x20a203[_0x551ccf(0x156)]),await redisHelper['setJob'](_0x551ccf(0x148)+_0x64dd5e,{'job_id':_0x64dd5e,'upload_id':_0x5d5cf2['upload_id'],'preview_job_id':_0x5d5cf2[_0x551ccf(0x165)],'status':_0x20a203[_0x551ccf(0x1b2)],'progress':0x0,'error':_0x3e2dfd['message'],'created_at':_0x5d5cf2['created_at'],'started_at':new Date()[_0x551ccf(0x1d6)](),'completed_at':new Date()['toISOString']()},0xe10);}}async['getJobStatus'](_0x1dbb8d){const _0x14bb89={'XvuWQ':'Job\x20not\x20found\x20or\x20expired'},_0x2810c5=await redisHelper['getJob']('job:'+_0x1dbb8d);if(!_0x2810c5)return{'success':![],'error':_0x14bb89['XvuWQ']};return{'success':!![],'data':_0x2810c5};}}function a0_0x584a(_0x27f7a9,_0x486578){_0x27f7a9=_0x27f7a9-0x13b;const _0x142da7=a0_0x142d();let _0x584a3c=_0x142da7[_0x27f7a9];if(a0_0x584a['psUCQM']===undefined){var _0x3b7eeb=function(_0x4e5d85){const _0x303406='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c979c='',_0xc54571='';for(let _0x432424=0x0,_0x1a8d4f,_0x2b71ba,_0x2bdde8=0x0;_0x2b71ba=_0x4e5d85['charAt'](_0x2bdde8++);~_0x2b71ba&&(_0x1a8d4f=_0x432424%0x4?_0x1a8d4f*0x40+_0x2b71ba:_0x2b71ba,_0x432424++%0x4)?_0x5c979c+=String['fromCharCode'](0xff&_0x1a8d4f>>(-0x2*_0x432424&0x6)):0x0){_0x2b71ba=_0x303406['indexOf'](_0x2b71ba);}for(let _0x2ed37e=0x0,_0x1b7a3d=_0x5c979c['length'];_0x2ed37e<_0x1b7a3d;_0x2ed37e++){_0xc54571+='%'+('00'+_0x5c979c['charCodeAt'](_0x2ed37e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc54571);};a0_0x584a['UDRXlZ']=_0x3b7eeb,a0_0x584a['iNrCrs']={},a0_0x584a['psUCQM']=!![];}const _0x5dedb9=_0x142da7[0x0],_0x5f16ca=_0x27f7a9+_0x5dedb9,_0x483c10=a0_0x584a['iNrCrs'][_0x5f16ca];return!_0x483c10?(_0x584a3c=a0_0x584a['UDRXlZ'](_0x584a3c),a0_0x584a['iNrCrs'][_0x5f16ca]=_0x584a3c):_0x584a3c=_0x483c10,_0x584a3c;}module['exports']=new ImportService();
@@ -1 +1 @@
1
- const a0_0x99a0bb=a0_0x4b8d;(function(_0x50c35a,_0x371de3){const _0x3c2684=a0_0x4b8d,_0x8d626a=_0x50c35a();while(!![]){try{const _0x5b60c3=parseInt(_0x3c2684(0x1fb))/0x1+-parseInt(_0x3c2684(0x1fc))/0x2*(-parseInt(_0x3c2684(0x1f1))/0x3)+-parseInt(_0x3c2684(0x203))/0x4+-parseInt(_0x3c2684(0x20b))/0x5+-parseInt(_0x3c2684(0x1f8))/0x6*(-parseInt(_0x3c2684(0x1ec))/0x7)+-parseInt(_0x3c2684(0x1ef))/0x8*(parseInt(_0x3c2684(0x1f2))/0x9)+parseInt(_0x3c2684(0x1f0))/0xa;if(_0x5b60c3===_0x371de3)break;else _0x8d626a['push'](_0x8d626a['shift']());}catch(_0x5a77ab){_0x8d626a['push'](_0x8d626a['shift']());}}}(a0_0x3cde,0x855ff));function a0_0x4b8d(_0x174cd6,_0x4d4c75){_0x174cd6=_0x174cd6-0x1ec;const _0x3cdef7=a0_0x3cde();let _0x4b8d20=_0x3cdef7[_0x174cd6];if(a0_0x4b8d['aAiUUR']===undefined){var _0x3dc254=function(_0x1c9678){const _0x5dca90='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3e3fff='',_0x237564='';for(let _0x3806ac=0x0,_0x35dd19,_0x45c4bb,_0x4204db=0x0;_0x45c4bb=_0x1c9678['charAt'](_0x4204db++);~_0x45c4bb&&(_0x35dd19=_0x3806ac%0x4?_0x35dd19*0x40+_0x45c4bb:_0x45c4bb,_0x3806ac++%0x4)?_0x3e3fff+=String['fromCharCode'](0xff&_0x35dd19>>(-0x2*_0x3806ac&0x6)):0x0){_0x45c4bb=_0x5dca90['indexOf'](_0x45c4bb);}for(let _0xcfb283=0x0,_0x174e6a=_0x3e3fff['length'];_0xcfb283<_0x174e6a;_0xcfb283++){_0x237564+='%'+('00'+_0x3e3fff['charCodeAt'](_0xcfb283)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x237564);};a0_0x4b8d['RGnGps']=_0x3dc254,a0_0x4b8d['kWBQXv']={},a0_0x4b8d['aAiUUR']=!![];}const _0x561869=_0x3cdef7[0x0],_0x4a2afe=_0x174cd6+_0x561869,_0x44974b=a0_0x4b8d['kWBQXv'][_0x4a2afe];return!_0x44974b?(_0x4b8d20=a0_0x4b8d['RGnGps'](_0x4b8d20),a0_0x4b8d['kWBQXv'][_0x4a2afe]=_0x4b8d20):_0x4b8d20=_0x44974b,_0x4b8d20;}const {logger}=require('./logger');function a0_0x3cde(){const _0x3f5ab0=['nKL5uK12BG','vKrwqvi','DMfSAwrHDgvsB3C','mZmZntG4z1rVrNLV','mZHeCvLIAxu','CMvXDwLYzwq','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','zM9YrwfJAa','DMfSAwrHDgvqAg9Uzq','DMfSAwrHDgvvCMW','DMfSAwrHDgvfBwfPBa','mZy2ntq1mLbgtuL4Bq','Aw5MBW','zM9YBwf0','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','DgvZDa','yMf0y2HwywXPzgf0zvjVD3m','AMzhr2y','AM9PBG','ndC4mJu0nw9JA2LXCW','mJC1ndm5nw1KAMDXCG','Aw9LEM0','BgvUz3rO','oty0mJrArxjXDxG','mtu3otKYndbzDMXbuhK','mtu2nJm5svrvyuno','nJu3Cez3Cu9J','BvLyvgu','zw1HAwW','BwfW','DMfSAwrHDgvgAwvSzezVCM1HDa','ChvZAa'];a0_0x3cde=function(){return _0x3f5ab0;};return a0_0x3cde();}class ImportValidator{['validateRow'](_0x3e1441,_0x1ac99e=[],_0x17b762={}){const _0x1e9bd6=a0_0x4b8d,_0x261d76={'XSqQt':function(_0x81cc0,_0x438ad5){return _0x81cc0===_0x438ad5;},'VDVAR':_0x1e9bd6(0x1fd),'XRHbB':function(_0x30102a,_0x54283a){return _0x30102a===_0x54283a;}},_0x1ec94f=[];return _0x1ac99e[_0x1e9bd6(0x1ff)](_0x4c60d7=>{const _0x5d53ad=_0x1e9bd6,_0x4d177c=_0x3e1441[_0x4c60d7];(_0x4d177c===null||_0x261d76['XSqQt'](_0x4d177c,undefined)||_0x261d76['XSqQt'](_0x4d177c,''))&&_0x1ec94f['push']({'field':_0x4c60d7,'type':_0x261d76[_0x5d53ad(0x1f9)],'message':'Required\x20field\x20is\x20empty'});}),Object['keys'](_0x17b762)[_0x1e9bd6(0x1ff)](_0x378074=>{const _0x91022b=_0x1e9bd6,_0x373ec1=_0x3e1441[_0x378074],_0x292e35=_0x17b762[_0x378074];if(_0x261d76['XSqQt'](_0x373ec1,null)||_0x373ec1===undefined||_0x261d76['XRHbB'](_0x373ec1,''))return;const _0x3e5b31=this[_0x91022b(0x1f6)](_0x378074,_0x373ec1,_0x292e35);_0x3e5b31&&_0x1ec94f[_0x91022b(0x1f7)](_0x3e5b31);}),_0x1ec94f;}[a0_0x99a0bb(0x1f6)](_0x427557,_0x310869,_0xd1540b){const _0x12989f=a0_0x99a0bb,_0x21d537={'tNQyX':'phone','qCpNK':'url'};switch(_0xd1540b){case _0x12989f(0x1f4):return this['validateEmail'](_0x427557,_0x310869);case _0x21d537['tNQyX']:return this[_0x12989f(0x200)](_0x427557,_0x310869);case _0x21d537['qCpNK']:return this['validateUrl'](_0x427557,_0x310869);case'number':return this['validateNumber'](_0x427557,_0x310869);default:return null;}}[a0_0x99a0bb(0x202)](_0x5e0c92,_0xa09585){const _0x10e650=a0_0x99a0bb,_0x3c75b5={'kuRyt':function(_0x1dbde7,_0x5d15a7){return _0x1dbde7(_0x5d15a7);},'ioezm':_0x10e650(0x205)},_0x45f8f4=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x45f8f4[_0x10e650(0x207)](_0x3c75b5['kuRyt'](String,_0xa09585)))return{'field':_0x5e0c92,'type':_0x3c75b5[_0x10e650(0x1ed)],'message':'Invalid\x20email\x20format'};return null;}[a0_0x99a0bb(0x200)](_0x2f5a59,_0xf2e235){const _0x2c9dd5=a0_0x99a0bb,_0x2e7847={'mYXTe':function(_0x55a9a2,_0x5028f9){return _0x55a9a2<_0x5028f9;},'jfGGf':_0x2c9dd5(0x205)},_0x21d628=String(_0xf2e235)['replace'](/\s+/g,''),_0x1e82ff=/^[\d\+\-\(\)]+$/;if(!_0x1e82ff['test'](_0x21d628)||_0x2e7847[_0x2c9dd5(0x1f3)](_0x21d628[_0x2c9dd5(0x1ee)],0x8))return{'field':_0x2f5a59,'type':_0x2e7847[_0x2c9dd5(0x209)],'message':'Invalid\x20phone\x20format'};return null;}[a0_0x99a0bb(0x201)](_0x18770f,_0x575ee0){const _0x4b3c4b=a0_0x99a0bb,_0x35d891={'NLRrz':'Invalid\x20URL\x20format'};try{return new URL(String(_0x575ee0)),null;}catch(_0x369eef){return{'field':_0x18770f,'type':_0x4b3c4b(0x205),'message':_0x35d891['NLRrz']};}}['validateNumber'](_0x375db4,_0xff9c3f){const _0x10bba8={'TUMEh':'Invalid\x20number\x20format'};if(isNaN(_0xff9c3f))return{'field':_0x375db4,'type':'format','message':_0x10bba8['TUMEh']};return null;}[a0_0x99a0bb(0x206)](_0x39c74d,_0x3331c2){const _0x5f1f09=a0_0x99a0bb,_0x1b58e4=new Map(),_0x20935d=[];return _0x39c74d[_0x5f1f09(0x1ff)]((_0xf5df9e,_0x52da3d)=>{const _0x5986e7=_0x5f1f09,_0x2b2d00=_0x3331c2[_0x5986e7(0x1f5)](_0x337462=>_0xf5df9e[_0x337462])[_0x5986e7(0x20a)]('|');_0x1b58e4['has'](_0x2b2d00)?_0x20935d[_0x5986e7(0x1f7)]({'rowIndex':_0x52da3d,'duplicateOf':_0x1b58e4['get'](_0x2b2d00),'key':_0x2b2d00}):_0x1b58e4['set'](_0x2b2d00,_0x52da3d);}),_0x20935d;}[a0_0x99a0bb(0x208)](_0x3684d1,_0x3cabb6,_0x469ae7){const _0x45567c=a0_0x99a0bb,_0x2f8684={'gEjcz':function(_0x3cbcd7,_0x5f270b){return _0x3cbcd7>_0x5f270b;},'UgzwD':'batch_validation_complete'},_0x888e07=[];return _0x3684d1[_0x45567c(0x1ff)]((_0xff3dae,_0x41c9b4)=>{const _0x2fbe9a=_0x45567c,_0x1bd504=this[_0x2fbe9a(0x1fa)](_0xff3dae,_0x3cabb6,_0x469ae7);_0x2f8684['gEjcz'](_0x1bd504['length'],0x0)&&_0x888e07['push']({'rowIndex':_0x41c9b4,'rowData':_0xff3dae,'errors':_0x1bd504});}),logger[_0x45567c(0x204)]({'event':_0x2f8684['UgzwD'],'totalRows':_0x3684d1[_0x45567c(0x1ee)],'errorCount':_0x888e07[_0x45567c(0x1ee)]},_0x45567c(0x1fe)),_0x888e07;}}module['exports']=new ImportValidator();
1
+ const a0_0x15661b=a0_0x4a59;(function(_0x5d1a76,_0xaaebe4){const _0x58bbe1=a0_0x4a59,_0x5517ef=_0x5d1a76();while(!![]){try{const _0xd6be10=-parseInt(_0x58bbe1(0x13d))/0x1+-parseInt(_0x58bbe1(0x144))/0x2*(parseInt(_0x58bbe1(0x151))/0x3)+-parseInt(_0x58bbe1(0x152))/0x4*(parseInt(_0x58bbe1(0x136))/0x5)+-parseInt(_0x58bbe1(0x14b))/0x6+-parseInt(_0x58bbe1(0x14f))/0x7+-parseInt(_0x58bbe1(0x154))/0x8+parseInt(_0x58bbe1(0x14d))/0x9;if(_0xd6be10===_0xaaebe4)break;else _0x5517ef['push'](_0x5517ef['shift']());}catch(_0x494e82){_0x5517ef['push'](_0x5517ef['shift']());}}}(a0_0x2eb4,0x5143a));const {logger}=require(a0_0x15661b(0x146));class ImportValidator{[a0_0x15661b(0x13f)](_0x375f49,_0x1f601c=[],_0x3e491f={}){const _0x57fa23=a0_0x15661b,_0x48c1d9={'hlUvx':'required','WnroC':function(_0x255257,_0x10a8ab){return _0x255257===_0x10a8ab;}},_0x4beeb2=[];return _0x1f601c[_0x57fa23(0x139)](_0x240240=>{const _0x2c78c1=_0x57fa23,_0x2478aa=_0x375f49[_0x240240];(_0x2478aa===null||_0x2478aa===undefined||_0x2478aa==='')&&_0x4beeb2[_0x2c78c1(0x14e)]({'field':_0x240240,'type':_0x48c1d9['hlUvx'],'message':_0x2c78c1(0x145)});}),Object[_0x57fa23(0x14a)](_0x3e491f)['forEach'](_0x27b369=>{const _0x3b0fe3=_0x57fa23,_0x468b4e=_0x375f49[_0x27b369],_0x2708b3=_0x3e491f[_0x27b369];if(_0x48c1d9['WnroC'](_0x468b4e,null)||_0x468b4e===undefined||_0x468b4e==='')return;const _0x550f19=this[_0x3b0fe3(0x142)](_0x27b369,_0x468b4e,_0x2708b3);_0x550f19&&_0x4beeb2['push'](_0x550f19);}),_0x4beeb2;}[a0_0x15661b(0x142)](_0x325136,_0x30624e,_0x4c6696){const _0x1d8dd7=a0_0x15661b,_0x951915={'eLRQP':'url','coaPo':_0x1d8dd7(0x138)};switch(_0x4c6696){case'email':return this[_0x1d8dd7(0x13b)](_0x325136,_0x30624e);case _0x1d8dd7(0x15a):return this[_0x1d8dd7(0x137)](_0x325136,_0x30624e);case _0x951915['eLRQP']:return this['validateUrl'](_0x325136,_0x30624e);case _0x951915['coaPo']:return this[_0x1d8dd7(0x150)](_0x325136,_0x30624e);default:return null;}}[a0_0x15661b(0x13b)](_0x19d997,_0x8ff763){const _0x4e44c1=a0_0x15661b,_0x34f43b={'dtIRE':'format'},_0x351da2=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x351da2['test'](String(_0x8ff763)))return{'field':_0x19d997,'type':_0x34f43b[_0x4e44c1(0x155)],'message':'Invalid\x20email\x20format'};return null;}[a0_0x15661b(0x137)](_0x32bd58,_0x3bb724){const _0x3c5c66=a0_0x15661b,_0x4f5d68={'FOlQT':_0x3c5c66(0x157),'dloXT':'Invalid\x20phone\x20format'},_0x435bb3=String(_0x3bb724)[_0x3c5c66(0x153)](/\s+/g,''),_0x5def1e=/^[\d\+\-\(\)]+$/;if(!_0x5def1e['test'](_0x435bb3)||_0x435bb3[_0x3c5c66(0x14c)]<0x8)return{'field':_0x32bd58,'type':_0x4f5d68[_0x3c5c66(0x158)],'message':_0x4f5d68[_0x3c5c66(0x159)]};return null;}[a0_0x15661b(0x147)](_0x161a98,_0x1328ba){const _0x537f79=a0_0x15661b,_0x10ce3b={'fTPxm':function(_0x5759d7,_0x3681c3){return _0x5759d7(_0x3681c3);},'RjTjo':_0x537f79(0x157)};try{return new URL(_0x10ce3b['fTPxm'](String,_0x1328ba)),null;}catch(_0x115f66){return{'field':_0x161a98,'type':_0x10ce3b['RjTjo'],'message':_0x537f79(0x13c)};}}[a0_0x15661b(0x150)](_0x370750,_0x55cf9d){const _0x1d60f7=a0_0x15661b,_0x9ab365={'ZZxew':'format','orsyE':'Invalid\x20number\x20format'};if(isNaN(_0x55cf9d))return{'field':_0x370750,'type':_0x9ab365[_0x1d60f7(0x15c)],'message':_0x9ab365['orsyE']};return null;}['detectDuplicatesInFile'](_0x40d475,_0x5e43eb){const _0x159c4f=new Map(),_0x3f4c0c=[];return _0x40d475['forEach']((_0x116c13,_0x476467)=>{const _0x57be11=a0_0x4a59,_0x277117=_0x5e43eb[_0x57be11(0x149)](_0x20af7f=>_0x116c13[_0x20af7f])[_0x57be11(0x15b)]('|');_0x159c4f[_0x57be11(0x140)](_0x277117)?_0x3f4c0c['push']({'rowIndex':_0x476467,'duplicateOf':_0x159c4f[_0x57be11(0x13e)](_0x277117),'key':_0x277117}):_0x159c4f['set'](_0x277117,_0x476467);}),_0x3f4c0c;}[a0_0x15661b(0x13a)](_0x3a0e21,_0xbe0c53,_0xbb02a4){const _0x20afd2=a0_0x15661b,_0x4baebd={'esMAY':function(_0x254974,_0x1a631f){return _0x254974>_0x1a631f;},'idpxy':_0x20afd2(0x156)},_0x33a3b1=[];return _0x3a0e21[_0x20afd2(0x139)]((_0x5d4692,_0x41a616)=>{const _0xf1b810=_0x20afd2,_0x10253d=this[_0xf1b810(0x13f)](_0x5d4692,_0xbe0c53,_0xbb02a4);_0x4baebd['esMAY'](_0x10253d[_0xf1b810(0x14c)],0x0)&&_0x33a3b1[_0xf1b810(0x14e)]({'rowIndex':_0x41a616,'rowData':_0x5d4692,'errors':_0x10253d});}),logger[_0x20afd2(0x143)]({'event':_0x20afd2(0x141),'totalRows':_0x3a0e21[_0x20afd2(0x14c)],'errorCount':_0x33a3b1['length']},_0x4baebd[_0x20afd2(0x148)]),_0x33a3b1;}}module['exports']=new ImportValidator();function a0_0x4a59(_0x254198,_0x20931b){_0x254198=_0x254198-0x136;const _0x2eb4ab=a0_0x2eb4();let _0x4a5980=_0x2eb4ab[_0x254198];if(a0_0x4a59['hlWyoM']===undefined){var _0x25e085=function(_0x4f572d){const _0x62117d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x41a4dd='',_0x5dfb6d='';for(let _0x581e71=0x0,_0x3284bb,_0x51ed5b,_0x5b5540=0x0;_0x51ed5b=_0x4f572d['charAt'](_0x5b5540++);~_0x51ed5b&&(_0x3284bb=_0x581e71%0x4?_0x3284bb*0x40+_0x51ed5b:_0x51ed5b,_0x581e71++%0x4)?_0x41a4dd+=String['fromCharCode'](0xff&_0x3284bb>>(-0x2*_0x581e71&0x6)):0x0){_0x51ed5b=_0x62117d['indexOf'](_0x51ed5b);}for(let _0x2d5ef2=0x0,_0x37e4b6=_0x41a4dd['length'];_0x2d5ef2<_0x37e4b6;_0x2d5ef2++){_0x5dfb6d+='%'+('00'+_0x41a4dd['charCodeAt'](_0x2d5ef2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5dfb6d);};a0_0x4a59['DzVHVi']=_0x25e085,a0_0x4a59['FJMjbN']={},a0_0x4a59['hlWyoM']=!![];}const _0x454e41=_0x2eb4ab[0x0],_0x33b46d=_0x254198+_0x454e41,_0x5984c1=a0_0x4a59['FJMjbN'][_0x33b46d];return!_0x5984c1?(_0x4a5980=a0_0x4a59['DzVHVi'](_0x4a5980),a0_0x4a59['FJMjbN'][_0x33b46d]=_0x4a5980):_0x4a5980=_0x5984c1,_0x4a5980;}function a0_0x2eb4(){const _0x302419=['AgfZ','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','DMfSAwrHDgvgAwvSzezVCM1HDa','Aw5MBW','mtuWr2vtruPj','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','lI9SB2DNzxi','DMfSAwrHDgvvCMW','AwrWEhK','BwfW','A2v5CW','mtG1mZiYmhn4DvLpBG','BgvUz3rO','mty5ntGWnZbtuKTTAw0','ChvZAa','mtq3ndu0m3L3wfv0za','DMfSAwrHDgvoDw1Izxi','ndKZoeHHBgHmrq','nta4Dermt2TT','CMvWBgfJzq','mJmXndmWne5Ot0TpBW','zhrjuKu','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','zM9YBwf0','rK9Suvq','zgXVwfq','CgHVBMu','AM9PBG','wLP4zxC','mtiWmJbTt3zOzhO','DMfSAwrHDgvqAg9Uzq','BNvTyMvY','zM9YrwfJAa','yMf0y2HwywXPzgf0zvjVD3m','DMfSAwrHDgvfBwfPBa','sw52ywXPzcbvuKWGzM9YBwf0','mZeZoda3DwD6ELnA','z2v0','DMfSAwrHDgvsB3C'];a0_0x2eb4=function(){return _0x302419;};return a0_0x2eb4();}
@@ -1 +1 @@
1
- const a0_0x4b8bee=a0_0xf516;(function(_0x4c82dd,_0x1cc52b){const _0x18fc95=a0_0xf516,_0x21444d=_0x4c82dd();while(!![]){try{const _0x4a3532=parseInt(_0x18fc95(0x18d))/0x1*(-parseInt(_0x18fc95(0x1bc))/0x2)+parseInt(_0x18fc95(0x18b))/0x3*(parseInt(_0x18fc95(0x1be))/0x4)+-parseInt(_0x18fc95(0x1b0))/0x5*(parseInt(_0x18fc95(0x195))/0x6)+parseInt(_0x18fc95(0x198))/0x7*(parseInt(_0x18fc95(0x1a3))/0x8)+-parseInt(_0x18fc95(0x1ba))/0x9+-parseInt(_0x18fc95(0x1bd))/0xa+parseInt(_0x18fc95(0x1b7))/0xb*(parseInt(_0x18fc95(0x18c))/0xc);if(_0x4a3532===_0x1cc52b)break;else _0x21444d['push'](_0x21444d['shift']());}catch(_0xf6f565){_0x21444d['push'](_0x21444d['shift']());}}}(a0_0x2f96,0x7e965));const importService=require(a0_0x4b8bee(0x190)),uploadHandler=require(a0_0x4b8bee(0x1b4)),{logger,logError}=require('../../utils/logger');class ImportHandler{static['registerRoutes'](_0x4aeb25,_0x177315,_0x42f276,_0x9deb05){const _0x3434be=a0_0x4b8bee,_0x3da8c5={'KecYy':_0x3434be(0x193),'ualHA':'Failed\x20to\x20upload\x20import\x20file','yeMNP':function(_0x24c2a5,_0xf7e6fd,_0x28e4f1,_0x1039ee){return _0x24c2a5(_0xf7e6fd,_0x28e4f1,_0x1039ee);},'MGNSq':_0x3434be(0x1b5),'fGzxt':_0x3434be(0x18f),'pDfBy':'import_commit_error'},_0x4e7701='/api/'+_0x177315+'/'+_0x42f276;_0x4aeb25['post'](_0x4e7701+_0x3434be(0x18e),async(_0x27cadb,_0x334116)=>{const _0x522883=_0x3434be;try{await this[_0x522883(0x1ae)](_0x27cadb,_0x334116,_0x9deb05,_0x177315,_0x42f276);}catch(_0x36dc5f){logError(_0x36dc5f,{'event':_0x3da8c5['KecYy']},_0x3da8c5['ualHA']),_0x334116['status'](0x1f4)['json']({'success':![],'error':_0x36dc5f['message']});}}),_0x4aeb25['post'](_0x4e7701+_0x3434be(0x1b3),async(_0x32a1ee,_0x43ca03)=>{const _0x108a5f=_0x3434be;try{await this['handleImportPreview'](_0x32a1ee,_0x43ca03);}catch(_0x5cf002){_0x3da8c5[_0x108a5f(0x1a9)](logError,_0x5cf002,{'event':_0x3da8c5[_0x108a5f(0x1af)]},_0x3da8c5['fGzxt']),_0x43ca03[_0x108a5f(0x1bb)](0x1f4)[_0x108a5f(0x191)]({'success':![],'error':_0x5cf002[_0x108a5f(0x189)]});}}),_0x4aeb25[_0x3434be(0x1ad)](_0x4e7701+'/import-commit',async(_0x1c035c,_0x2acd06)=>{const _0x4afe80=_0x3434be;try{await this['handleImportCommit'](_0x1c035c,_0x2acd06);}catch(_0x5bae0c){logError(_0x5bae0c,{'event':_0x3da8c5['pDfBy']},'Failed\x20to\x20create\x20commit\x20job'),_0x2acd06[_0x4afe80(0x1bb)](0x1f4)[_0x4afe80(0x191)]({'success':![],'error':_0x5bae0c[_0x4afe80(0x189)]});}}),_0x4aeb25['get'](_0x4e7701+'/import-status',async(_0x4b13f3,_0xaa2eba)=>{const _0x4ec493=_0x3434be;try{await this[_0x4ec493(0x1c0)](_0x4b13f3,_0xaa2eba);}catch(_0xa767af){logError(_0xa767af,{'event':_0x4ec493(0x1aa)},_0x4ec493(0x18a)),_0xaa2eba['status'](0x1f4)['json']({'success':![],'error':_0xa767af['message']});}}),logger['info']({'event':'import_routes_registered','module':_0x177315,'endpoint':_0x42f276,'table':_0x9deb05['tableName']},_0x3434be(0x1bf)+_0x177315+'/'+_0x42f276);}static async['handleImportUpload'](_0x468cbc,_0x50dc27,_0x414ea7,_0x1ac96c,_0xbbd14b){const _0x2b2d67=a0_0x4b8bee,_0x4da071={'GtCeZ':'No\x20file\x20uploaded','OyOOm':_0x2b2d67(0x1a7),'qxUaF':function(_0x87e692,_0x464c3b){return _0x87e692>_0x464c3b;},'ZdMbN':function(_0x3fcead,_0x370dc4,_0x85cd71,_0x4b8556){return _0x3fcead(_0x370dc4,_0x85cd71,_0x4b8556);}},_0x4230d9=uploadHandler[_0x2b2d67(0x188)]();_0x4230d9(_0x468cbc,_0x50dc27,async _0x5d56f6=>{const _0x4edf5b=_0x2b2d67;if(_0x5d56f6)return _0x50dc27[_0x4edf5b(0x1bb)](0x190)['json']({'success':![],'error':_0x5d56f6[_0x4edf5b(0x189)]});if(!_0x468cbc[_0x4edf5b(0x19c)])return _0x50dc27['status'](0x190)[_0x4edf5b(0x191)]({'success':![],'error':_0x4da071[_0x4edf5b(0x1a6)]});try{const _0x142d35=_0x468cbc['body'][_0x4edf5b(0x192)]||'update_existing';let _0x26ed5c=_0x414ea7[_0x4edf5b(0x1b6)];if(_0x468cbc[_0x4edf5b(0x196)]['upsertKeys'])try{_0x26ed5c=JSON['parse'](_0x468cbc[_0x4edf5b(0x196)][_0x4edf5b(0x1b6)]);}catch(_0x2a1ac7){logger[_0x4edf5b(0x197)]({'event':_0x4da071[_0x4edf5b(0x199)],'error':_0x2a1ac7['message']},_0x4edf5b(0x1b8));}const _0x5b56f5=_0x414ea7['fieldName']||[];if(Array[_0x4edf5b(0x1a0)](_0x26ed5c)){const _0x104527=_0x26ed5c[_0x4edf5b(0x19a)](_0x5940ef=>!_0x5b56f5[_0x4edf5b(0x1a2)](_0x5940ef));if(_0x4da071[_0x4edf5b(0x19d)](_0x104527[_0x4edf5b(0x1b1)],0x0))return _0x50dc27['status'](0x190)['json']({'success':![],'error':_0x4edf5b(0x1ab),'message':'Keys\x20not\x20allowed:\x20'+_0x104527[_0x4edf5b(0x1a5)](',\x20'),'validFields':_0x5b56f5});}const _0x5c3e5e={'moduleName':_0x1ac96c,'endpointName':_0xbbd14b,'tableName':_0x414ea7['tableName'],'primaryKey':_0x414ea7['primaryKey'],'fieldName':_0x414ea7[_0x4edf5b(0x1a1)],'fieldLabels':_0x414ea7['fieldLabels']||{},'columnFormats':_0x414ea7['columnFormats']||{},'upsertKeys':_0x26ed5c,'upsertStrategy':_0x142d35,'requiredFields':_0x414ea7['requiredFields']||[],'validations':_0x414ea7['validations']||{},'lookupFields':_0x414ea7[_0x4edf5b(0x1b2)]||{},'excludeFromImport':_0x414ea7[_0x4edf5b(0x1ac)]||[],'chunkSize':_0x414ea7['chunkSize']||0x64},_0xb71fcc=await importService['uploadFile'](_0x468cbc['file'],_0x5c3e5e);_0x50dc27['json']({'success':!![],'data':_0xb71fcc});}catch(_0x13def4){_0x4da071[_0x4edf5b(0x19e)](logError,_0x13def4,{'event':'import_upload_process_error'},_0x4edf5b(0x1a4)),_0x50dc27['status'](0x1f4)['json']({'success':![],'error':_0x13def4['message']});}});}static async[a0_0x4b8bee(0x1b9)](_0x1f0f90,_0x2bffb9){const _0x1edb7f=a0_0x4b8bee,_0x575331={'FSrrw':'upload_id\x20is\x20required'},{upload_id:_0x313045}=_0x1f0f90[_0x1edb7f(0x196)];if(!_0x313045)return _0x2bffb9[_0x1edb7f(0x1bb)](0x190)[_0x1edb7f(0x191)]({'success':![],'error':_0x575331['FSrrw']});try{const _0x22dc06=await importService['createPreviewJob'](_0x313045);_0x2bffb9['json']({'success':!![],'data':_0x22dc06});}catch(_0x32fb4c){_0x2bffb9['status'](0x1f4)[_0x1edb7f(0x191)]({'success':![],'error':_0x32fb4c['message']});}}static async[a0_0x4b8bee(0x19f)](_0x3b8d0b,_0x36b4ff){const _0x57519a=a0_0x4b8bee,{preview_job_id:_0x52046c}=_0x3b8d0b['body'];if(!_0x52046c)return _0x36b4ff[_0x57519a(0x1bb)](0x190)[_0x57519a(0x191)]({'success':![],'error':_0x57519a(0x19b)});try{const _0xda0ae4=await importService['createCommitJob'](_0x52046c);_0x36b4ff['json']({'success':!![],'data':_0xda0ae4});}catch(_0x30af8d){_0x36b4ff['status'](0x1f4)[_0x57519a(0x191)]({'success':![],'error':_0x30af8d['message']});}}static async['handleImportStatus'](_0x2a179f,_0x265c4f){const _0x1656d0=a0_0x4b8bee,{job_id:_0x2c4a5c}=_0x2a179f[_0x1656d0(0x1a8)];if(!_0x2c4a5c)return _0x265c4f['status'](0x190)[_0x1656d0(0x191)]({'success':![],'error':_0x1656d0(0x194)});try{const _0x88e857=await importService['getJobStatus'](_0x2c4a5c);if(!_0x88e857['success'])return _0x265c4f['status'](0x194)[_0x1656d0(0x191)](_0x88e857);_0x265c4f[_0x1656d0(0x191)](_0x88e857);}catch(_0x51ee56){_0x265c4f[_0x1656d0(0x1bb)](0x1f4)['json']({'success':![],'error':_0x51ee56['message']});}}}function a0_0x2f96(){const _0x800631=['mtG5mdi2CeLHzK1i','mJG0mhvis09sDG','ng9HvMHdrG','sw1WB3j0ihjVDxrLCYbYzwDPC3rLCMvKigzVCIa','AgfUzgXLsw1WB3j0u3rHDhvZ','zxHWB3j0CW','z2v0vxbSB2fKtwLKzgXLD2fYzq','BwvZC2fNzq','rMfPBgvKihrVigDLDcbPBxbVCNqGC3rHDhvZ','mJiYnta4mNDRseTerG','nJm2EKP4s3Dv','oev5EuXquq','l2LTCg9YDc11CgXVywq','rMfPBgvKihrVignYzwf0zsbWCMv2Awv3igPVyG','lI4VlI4VC2vYDMLJzxmVAw1WB3j0lxnLCNzPy2u','ANnVBG','DxbZzxj0tw9Kzq','Aw1WB3j0x3vWBg9Hzf9LCNjVCG','AM9Ix2LKigLZihjLCxvPCMvK','odK1odzMvg1cDgW','yM9KEq','D2fYBG','nda2tvn3rgzP','t3Lpt20','zMLSDgvY','ChjLDMLLD19QB2jFAwqGAxmGCMvXDwLYzwq','zMLSzq','CxHvyuy','wMrnyK4','AgfUzgXLsw1WB3j0q29TBwL0','AxnbCNjHEq','zMLLBgroyw1L','Aw5JBhvKzxm','otm2ntzODfrJExO','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fK','AM9PBG','r3rdzvO','DxbZzxj0x2TLExnFCgfYC2vFzxjYB3i','CxvLCNK','EwvntLa','Aw1WB3j0x3n0yxr1C19LCNjVCG','sw52ywXPzcb1ChnLCNqGA2v5CW','zxHJBhvKzuzYB21jBxbVCNq','Cg9ZDa','AgfUzgXLsw1WB3j0vxbSB2fK','tuDou3e','mJeWr0nqqxHr','BgvUz3rO','Bg9VA3vWrMLLBgrZ','l2LTCg9YDc1WCMv2Awv3','lI4VlI4VDxrPBhmVDxbSB2fKlwHHBMrSzxi','Aw1WB3j0x3bYzxzPzxDFzxjYB3i','DxbZzxj0s2v5CW','mZa1ndm3rvPqEunQ','rMfPBgvKihrVihbHCNnLihvWC2vYDeTLExmSihvZAw5NigrLzMf1Bhq','AgfUzgXLsw1WB3j0uhjLDMLLDW','odKXmZi0meLeBff0wa','C3rHDhvZ'];a0_0x2f96=function(){return _0x800631;};return a0_0x2f96();}function a0_0xf516(_0x5071c0,_0x5db06b){_0x5071c0=_0x5071c0-0x188;const _0x2f9670=a0_0x2f96();let _0xf51626=_0x2f9670[_0x5071c0];if(a0_0xf516['FCFbjC']===undefined){var _0x4aa842=function(_0x1c024a){const _0x3404a7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x326463='',_0x13a7d3='';for(let _0x1874b1=0x0,_0x2043f6,_0x147456,_0x44f0fb=0x0;_0x147456=_0x1c024a['charAt'](_0x44f0fb++);~_0x147456&&(_0x2043f6=_0x1874b1%0x4?_0x2043f6*0x40+_0x147456:_0x147456,_0x1874b1++%0x4)?_0x326463+=String['fromCharCode'](0xff&_0x2043f6>>(-0x2*_0x1874b1&0x6)):0x0){_0x147456=_0x3404a7['indexOf'](_0x147456);}for(let _0x56eaa6=0x0,_0xfe2c2c=_0x326463['length'];_0x56eaa6<_0xfe2c2c;_0x56eaa6++){_0x13a7d3+='%'+('00'+_0x326463['charCodeAt'](_0x56eaa6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x13a7d3);};a0_0xf516['HkOuJB']=_0x4aa842,a0_0xf516['huVwjq']={},a0_0xf516['FCFbjC']=!![];}const _0x1d570c=_0x2f9670[0x0],_0x4955ca=_0x5071c0+_0x1d570c,_0x2e2846=a0_0xf516['huVwjq'][_0x4955ca];return!_0x2e2846?(_0xf51626=a0_0xf516['HkOuJB'](_0xf51626),a0_0xf516['huVwjq'][_0x4955ca]=_0xf51626):_0xf51626=_0x2e2846,_0xf51626;}module[a0_0x4b8bee(0x1c1)]=ImportHandler;
1
+ function a0_0x4c89(_0x2955c0,_0xc2db3d){_0x2955c0=_0x2955c0-0x14b;const _0x3edffe=a0_0x3edf();let _0x4c89ad=_0x3edffe[_0x2955c0];if(a0_0x4c89['jPtaBh']===undefined){var _0x234e31=function(_0x4e9d3a){const _0x1b8801='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x13bc8a='',_0x9cec5a='';for(let _0x2f8da1=0x0,_0x3f5e75,_0x3c7407,_0x2e7423=0x0;_0x3c7407=_0x4e9d3a['charAt'](_0x2e7423++);~_0x3c7407&&(_0x3f5e75=_0x2f8da1%0x4?_0x3f5e75*0x40+_0x3c7407:_0x3c7407,_0x2f8da1++%0x4)?_0x13bc8a+=String['fromCharCode'](0xff&_0x3f5e75>>(-0x2*_0x2f8da1&0x6)):0x0){_0x3c7407=_0x1b8801['indexOf'](_0x3c7407);}for(let _0x241e7f=0x0,_0x3f7b16=_0x13bc8a['length'];_0x241e7f<_0x3f7b16;_0x241e7f++){_0x9cec5a+='%'+('00'+_0x13bc8a['charCodeAt'](_0x241e7f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x9cec5a);};a0_0x4c89['GZLoJU']=_0x234e31,a0_0x4c89['wdyJxp']={},a0_0x4c89['jPtaBh']=!![];}const _0x2daf0e=_0x3edffe[0x0],_0x567c74=_0x2955c0+_0x2daf0e,_0x4a8e07=a0_0x4c89['wdyJxp'][_0x567c74];return!_0x4a8e07?(_0x4c89ad=a0_0x4c89['GZLoJU'](_0x4c89ad),a0_0x4c89['wdyJxp'][_0x567c74]=_0x4c89ad):_0x4c89ad=_0x4a8e07,_0x4c89ad;}const a0_0x35b751=a0_0x4c89;(function(_0xb30854,_0x1f9890){const _0x397eea=a0_0x4c89,_0x26c0a1=_0xb30854();while(!![]){try{const _0x12b50f=-parseInt(_0x397eea(0x16f))/0x1*(parseInt(_0x397eea(0x17d))/0x2)+-parseInt(_0x397eea(0x158))/0x3*(parseInt(_0x397eea(0x174))/0x4)+-parseInt(_0x397eea(0x14d))/0x5+parseInt(_0x397eea(0x14b))/0x6*(parseInt(_0x397eea(0x163))/0x7)+parseInt(_0x397eea(0x165))/0x8*(-parseInt(_0x397eea(0x177))/0x9)+parseInt(_0x397eea(0x175))/0xa+parseInt(_0x397eea(0x14e))/0xb;if(_0x12b50f===_0x1f9890)break;else _0x26c0a1['push'](_0x26c0a1['shift']());}catch(_0xbe40f1){_0x26c0a1['push'](_0x26c0a1['shift']());}}}(a0_0x3edf,0x647ea));function a0_0x3edf(){const _0x120e05=['ChjPBwfYEuTLEq','y29mqNO','rMfPBgvKihrVihbHCNnLihvWC2vYDeTLExmSihvZAw5NigrLzMf1Bhq','m1zZB0XnvW','CgfYC2u','D2fYBG','y3jLyxrLuhjLDMLLD0PVyG','AgfUzgXLsw1WB3j0uhjLDMLLDW','zxHJBhvKzuzYB21jBxbVCNq','Aw1WB3j0x3bYzxzPzxDFzxjYB3i','C3rHDhvZ','Aw5MBW','AgfUzgXLsw1WB3j0q29TBwL0','AKLosgy','nJy0mdK3DM1LChbx','ANnVBG','mti4ntzJBuLUtei','yM9KEq','zMLSzq','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fK','CMvXDwLYzwrgAwvSzhm','l2LTCg9YDc1WCMv2Awv3','BwvZC2fNzq','zMLLBgroyw1L','zxnzBfO','Cg9ZDa','ndzYzeXHz3G','z3beC1G','DxbZzxj0s2v5CW','y3jLyxrLq29TBwL0sM9I','AgfUzgXLsw1WB3j0vxbSB2fK','mti1mdy4ngn3v2nnzG','nJC5mtC5meLyAMfHDW','DgfIBgvoyw1L','mZGYnunXu3bpDq','rMfPBgvKihrVihvWBg9HzcbPBxbVCNqGzMLSzq','l2LTCg9YDc11CgXVywq','y2H1BMTtAxPL','AxnbCNjHEq','BgvUz3rO','mtC0mtr1vuTJChO','mtjYu3PdB1C','CMvNAxn0zxjsB3v0zxm','nda3ndG4mfH3ELvNCq','mtKYotiZmZLeDKDlC2W','DxbKyxrLx2v4Axn0Aw5N','Aw1WB3j0x2nVBw1PDf9LCNjVCG','lI4VlI4VC2vYDMLJzxmVAw1WB3j0lxnLCNzPy2u','Dvrhswq','z2v0sM9Iu3rHDhvZ','q1jVAMi'];a0_0x3edf=function(){return _0x120e05;};return a0_0x3edf();}const importService=require(a0_0x35b751(0x151)),uploadHandler=require('../../utils/upload-handler'),{logger,logError}=require('../../utils/logger');class ImportHandler{static[a0_0x35b751(0x14c)](_0x2d0de2,_0x12448a,_0xb74f8b,_0x1bf625){const _0x738cdf=a0_0x35b751,_0x4efb54={'gpDsX':function(_0xc540c,_0x42019d,_0x324376,_0x4e09bb){return _0xc540c(_0x42019d,_0x324376,_0x4e09bb);},'aobtn':_0x738cdf(0x178),'coLBz':function(_0x312311,_0xa43642,_0x2d0ead,_0x85f76a){return _0x312311(_0xa43642,_0x2d0ead,_0x85f76a);},'uTGId':_0x738cdf(0x150),'zJdLR':'import_status_error','esYlZ':'import_routes_registered'},_0x17d78c='/api/'+_0x12448a+'/'+_0xb74f8b;_0x2d0de2[_0x738cdf(0x16e)](_0x17d78c+_0x738cdf(0x179),async(_0x2263f3,_0x3a336f)=>{const _0x27d5e0=_0x738cdf;try{await this[_0x27d5e0(0x173)](_0x2263f3,_0x3a336f,_0x1bf625,_0x12448a,_0xb74f8b);}catch(_0x44e1f0){_0x4efb54[_0x27d5e0(0x170)](logError,_0x44e1f0,{'event':'import_upload_error'},_0x4efb54['aobtn']),_0x3a336f['status'](0x1f4)[_0x27d5e0(0x164)]({'success':![],'error':_0x44e1f0[_0x27d5e0(0x16b)]});}}),_0x2d0de2[_0x738cdf(0x16e)](_0x17d78c+_0x738cdf(0x16a),async(_0xdde531,_0x1118b7)=>{const _0x410cbb=_0x738cdf;try{await this['handleImportPreview'](_0xdde531,_0x1118b7);}catch(_0x22f0c8){logError(_0x22f0c8,{'event':_0x410cbb(0x15e)},'Failed\x20to\x20create\x20preview\x20job'),_0x1118b7[_0x410cbb(0x15f)](0x1f4)['json']({'success':![],'error':_0x22f0c8[_0x410cbb(0x16b)]});}}),_0x2d0de2[_0x738cdf(0x16e)](_0x17d78c+'/import-commit',async(_0x13ffaf,_0x4c02b0)=>{const _0x242ce4=_0x738cdf;try{await this[_0x242ce4(0x161)](_0x13ffaf,_0x4c02b0);}catch(_0x5a94ed){_0x4efb54[_0x242ce4(0x156)](logError,_0x5a94ed,{'event':_0x4efb54[_0x242ce4(0x152)]},'Failed\x20to\x20create\x20commit\x20job'),_0x4c02b0['status'](0x1f4)[_0x242ce4(0x164)]({'success':![],'error':_0x5a94ed['message']});}}),_0x2d0de2['get'](_0x17d78c+'/import-status',async(_0x5c76be,_0x150898)=>{const _0x1474f1=_0x738cdf;try{await this['handleImportStatus'](_0x5c76be,_0x150898);}catch(_0x4754ce){logError(_0x4754ce,{'event':_0x4efb54['zJdLR']},'Failed\x20to\x20get\x20import\x20status'),_0x150898['status'](0x1f4)['json']({'success':![],'error':_0x4754ce[_0x1474f1(0x16b)]});}}),logger[_0x738cdf(0x160)]({'event':_0x4efb54[_0x738cdf(0x16d)],'module':_0x12448a,'endpoint':_0xb74f8b,'table':_0x1bf625['tableName']},'Import\x20routes\x20registered\x20for\x20'+_0x12448a+'/'+_0xb74f8b);}static async[a0_0x35b751(0x173)](_0x2544a6,_0x4c5678,_0x2b530f,_0x4dafa5,_0x9e7f90){const _0x36302b=a0_0x35b751,_0x589549={'IYTnl':function(_0x515aa3,_0x489f48){return _0x515aa3>_0x489f48;},'jINHf':function(_0x213157,_0x31b97b,_0x54c3af,_0x13d7c6){return _0x213157(_0x31b97b,_0x54c3af,_0x13d7c6);},'CRojb':'import_upload_process_error','fUHoO':_0x36302b(0x168)},_0x1e06a2=uploadHandler['getUploadMiddleware']();_0x589549[_0x36302b(0x162)](_0x1e06a2,_0x2544a6,_0x4c5678,async _0x3ceffa=>{const _0x34d13e=_0x36302b;if(_0x3ceffa)return _0x4c5678[_0x34d13e(0x15f)](0x190)[_0x34d13e(0x164)]({'success':![],'error':_0x3ceffa[_0x34d13e(0x16b)]});if(!_0x2544a6[_0x34d13e(0x167)])return _0x4c5678['status'](0x190)[_0x34d13e(0x164)]({'success':![],'error':'No\x20file\x20uploaded'});try{const _0x1283ee=_0x2544a6['body']['upsertMode']||_0x34d13e(0x14f);let _0x46a639=_0x2b530f['upsertKeys'];if(_0x2544a6[_0x34d13e(0x166)][_0x34d13e(0x171)])try{_0x46a639=JSON[_0x34d13e(0x159)](_0x2544a6[_0x34d13e(0x166)][_0x34d13e(0x171)]);}catch(_0x391d75){logger[_0x34d13e(0x15a)]({'event':'upsert_keys_parse_error','error':_0x391d75[_0x34d13e(0x16b)]},_0x34d13e(0x157));}const _0xf081e9=_0x2b530f['fieldName']||[];if(Array[_0x34d13e(0x17b)](_0x46a639)){const _0x20f725=_0x46a639['filter'](_0x3a5849=>!_0xf081e9['includes'](_0x3a5849));if(_0x589549['IYTnl'](_0x20f725[_0x34d13e(0x17c)],0x0))return _0x4c5678['status'](0x190)['json']({'success':![],'error':'Invalid\x20upsert\x20keys','message':'Keys\x20not\x20allowed:\x20'+_0x20f725['join'](',\x20'),'validFields':_0xf081e9});}const _0xfd67af={'moduleName':_0x4dafa5,'endpointName':_0x9e7f90,'tableName':_0x2b530f[_0x34d13e(0x176)],'primaryKey':_0x2b530f[_0x34d13e(0x155)],'fieldName':_0x2b530f[_0x34d13e(0x16c)],'fieldLabels':_0x2b530f['fieldLabels']||{},'columnFormats':_0x2b530f['columnFormats']||{},'upsertKeys':_0x46a639,'upsertStrategy':_0x1283ee,'requiredFields':_0x2b530f[_0x34d13e(0x169)]||[],'validations':_0x2b530f['validations']||{},'lookupFields':_0x2b530f['lookupFields']||{},'excludeFromImport':_0x2b530f[_0x34d13e(0x15d)]||[],'chunkSize':_0x2b530f[_0x34d13e(0x17a)]||0x64},_0x4bdef5=await importService['uploadFile'](_0x2544a6[_0x34d13e(0x167)],_0xfd67af);_0x4c5678['json']({'success':!![],'data':_0x4bdef5});}catch(_0x5c3544){_0x589549[_0x34d13e(0x162)](logError,_0x5c3544,{'event':_0x589549[_0x34d13e(0x154)]},_0x589549['fUHoO']),_0x4c5678[_0x34d13e(0x15f)](0x1f4)[_0x34d13e(0x164)]({'success':![],'error':_0x5c3544['message']});}});}static async[a0_0x35b751(0x15c)](_0x57414e,_0x4c0b7a){const _0x4c6d53=a0_0x35b751,{upload_id:_0x446b5f}=_0x57414e[_0x4c6d53(0x166)];if(!_0x446b5f)return _0x4c0b7a[_0x4c6d53(0x15f)](0x190)[_0x4c6d53(0x164)]({'success':![],'error':'upload_id\x20is\x20required'});try{const _0x2435af=await importService[_0x4c6d53(0x15b)](_0x446b5f);_0x4c0b7a['json']({'success':!![],'data':_0x2435af});}catch(_0x4913c7){_0x4c0b7a['status'](0x1f4)[_0x4c6d53(0x164)]({'success':![],'error':_0x4913c7['message']});}}static async[a0_0x35b751(0x161)](_0xd4bc56,_0x347b66){const _0x34f769=a0_0x35b751,{preview_job_id:_0x7d832c}=_0xd4bc56['body'];if(!_0x7d832c)return _0x347b66['status'](0x190)[_0x34f769(0x164)]({'success':![],'error':'preview_job_id\x20is\x20required'});try{const _0x2fc3a7=await importService[_0x34f769(0x172)](_0x7d832c);_0x347b66['json']({'success':!![],'data':_0x2fc3a7});}catch(_0xe3d0b0){_0x347b66[_0x34f769(0x15f)](0x1f4)['json']({'success':![],'error':_0xe3d0b0[_0x34f769(0x16b)]});}}static async['handleImportStatus'](_0x1d4c06,_0x22c5d3){const _0x5a40bb=a0_0x35b751,_0x57cdc7={'YyOMC':'job_id\x20is\x20required'},{job_id:_0x2e7aa5}=_0x1d4c06['query'];if(!_0x2e7aa5)return _0x22c5d3['status'](0x190)['json']({'success':![],'error':_0x57cdc7['YyOMC']});try{const _0x5d066d=await importService[_0x5a40bb(0x153)](_0x2e7aa5);if(!_0x5d066d['success'])return _0x22c5d3['status'](0x194)[_0x5a40bb(0x164)](_0x5d066d);_0x22c5d3[_0x5a40bb(0x164)](_0x5d066d);}catch(_0x63a05a){_0x22c5d3['status'](0x1f4)['json']({'success':![],'error':_0x63a05a['message']});}}}module['exports']=ImportHandler;
@@ -1 +1 @@
1
- const a0_0x2d1505=a0_0x28e4;(function(_0x3ec440,_0x4e703b){const _0x3dc86b=a0_0x28e4,_0x41d599=_0x3ec440();while(!![]){try{const _0x1db537=parseInt(_0x3dc86b(0x1a4))/0x1+parseInt(_0x3dc86b(0x1ba))/0x2*(parseInt(_0x3dc86b(0x1dc))/0x3)+parseInt(_0x3dc86b(0x1c7))/0x4+parseInt(_0x3dc86b(0x1cd))/0x5+parseInt(_0x3dc86b(0x1c9))/0x6*(parseInt(_0x3dc86b(0x1a6))/0x7)+-parseInt(_0x3dc86b(0x1de))/0x8+parseInt(_0x3dc86b(0x1f0))/0x9*(-parseInt(_0x3dc86b(0x1af))/0xa);if(_0x1db537===_0x4e703b)break;else _0x41d599['push'](_0x41d599['shift']());}catch(_0x1da072){_0x41d599['push'](_0x41d599['shift']());}}}(a0_0x25cf,0x96620));const {logger}=require('./logger'),DB_TYPES={'POSTGRESQL':a0_0x2d1505(0x1b1),'MYSQL':a0_0x2d1505(0x1d9),'SQLSERVER':'sqlserver','ORACLE':a0_0x2d1505(0x1c8),'SQLITE':'sqlite'};class UpsertBuilder{['getDatabaseType'](){const _0x34e77b=a0_0x2d1505,_0x25e3f3={'YjZHv':_0x34e77b(0x1b1)},_0x5d1975=(process['env'][_0x34e77b(0x1d4)]||_0x25e3f3[_0x34e77b(0x1ec)])['toLowerCase'](),_0x54a992=Object[_0x34e77b(0x1b0)](DB_TYPES);if(!_0x54a992['includes'](_0x5d1975))return logger['warn']({'event':_0x34e77b(0x1d6),'provided':_0x5d1975,'fallback':_0x34e77b(0x1b1)},'Invalid\x20DB_TYPE:\x20'+_0x5d1975+_0x34e77b(0x1dd)),DB_TYPES[_0x34e77b(0x1a2)];return _0x5d1975;}[a0_0x2d1505(0x1e7)](_0x216136,_0x11248a,_0x3a2f94=![]){const _0x434846=a0_0x2d1505,_0x916971={'jisfQ':'NULL::DATE','DjObh':'NULL'};if(_0x3a2f94)switch(_0x11248a){case DB_TYPES[_0x434846(0x1a2)]:return _0x916971[_0x434846(0x1f1)];case DB_TYPES[_0x434846(0x1b2)]:return _0x434846(0x1bf);case DB_TYPES[_0x434846(0x1b4)]:return _0x916971['DjObh'];case DB_TYPES['SQLSERVER']:return _0x434846(0x1bf);case DB_TYPES['ORACLE']:return _0x916971[_0x434846(0x1ef)];default:return'NULL::DATE';}switch(_0x11248a){case DB_TYPES['POSTGRESQL']:return _0x216136+'::DATE';case DB_TYPES[_0x434846(0x1b2)]:return _0x216136;case DB_TYPES['SQLITE']:return _0x216136;case DB_TYPES[_0x434846(0x1a3)]:return _0x434846(0x1e3)+_0x216136+_0x434846(0x1d3);case DB_TYPES[_0x434846(0x1e5)]:return'TO_DATE('+_0x216136+',\x20\x27YYYY-MM-DD\x27)';default:return _0x216136+_0x434846(0x1b5);}}['buildEscapeFunction'](_0x4531a8={}){const _0x7ae371=a0_0x2d1505,_0xfc9b9d={'cDNAN':function(_0x39ada3,_0x28cf24){return _0x39ada3===_0x28cf24;},'ZrKUr':_0x7ae371(0x1d0),'ohjdM':'NULL'},_0x2c9ef4=this['getDatabaseType']();return(_0x3a62ce,_0x2789db)=>{const _0x1ccf4c=_0x7ae371,_0x3fe865=_0x4531a8[_0x2789db];if(_0xfc9b9d['cDNAN'](_0x3a62ce,null)||_0x3a62ce===undefined){if(_0x3fe865&&_0xfc9b9d['cDNAN'](_0x3fe865[_0x1ccf4c(0x1c5)],_0xfc9b9d[_0x1ccf4c(0x1d5)]))return this['formatDateValue'](null,_0x2c9ef4,!![]);return _0xfc9b9d[_0x1ccf4c(0x1ac)];}if(typeof _0x3a62ce==='string'){const _0x14d28b='\x27'+_0x3a62ce[_0x1ccf4c(0x1a9)](/'/g,'\x27\x27')+'\x27';if(_0x3fe865&&_0x3fe865[_0x1ccf4c(0x1c5)]===_0x1ccf4c(0x1d0))return this[_0x1ccf4c(0x1e7)](_0x14d28b,_0x2c9ef4,![]);return _0x14d28b;}if(typeof _0x3a62ce===_0x1ccf4c(0x1b6))return _0x3a62ce;if(typeof _0x3a62ce===_0x1ccf4c(0x1c1))return _0x3a62ce;const _0x1dc8d7='\x27'+String(_0x3a62ce)[_0x1ccf4c(0x1a9)](/'/g,'\x27\x27')+'\x27';if(_0x3fe865&&_0x3fe865[_0x1ccf4c(0x1c5)]===_0xfc9b9d['ZrKUr'])return this['formatDateValue'](_0x1dc8d7,_0x2c9ef4,![]);return _0x1dc8d7;};}['buildBatchInsert'](_0x5d2e08,_0x139d68,_0x41248c,_0x2daef6={}){const _0x1d056a=a0_0x2d1505,_0x21ddec={'tyBbI':function(_0x2d101c,_0x61e86f){return _0x2d101c===_0x61e86f;}},_0x46403d=this['getDatabaseType']();if(_0x21ddec[_0x1d056a(0x1d7)](_0x46403d,DB_TYPES[_0x1d056a(0x1e5)]))return this['_buildBatchInsertOracle'](_0x5d2e08,_0x139d68,_0x41248c,_0x2daef6);return this['_buildBatchInsertPostgres'](_0x5d2e08,_0x139d68,_0x41248c,_0x2daef6);}['_buildBatchInsertPostgres'](_0x5f40f2,_0x51d64f,_0x12a439,_0x161201={}){const _0x2d2147=a0_0x2d1505,_0x4135fb={'Dweqx':',\x0a\x20\x20\x20\x20\x20\x20\x20','HRPjN':_0x2d2147(0x1b1)};if(_0x5f40f2[_0x2d2147(0x1eb)]===0x0)return{'query':null,'values':[]};const _0x5df8eb=this['buildEscapeFunction'](_0x161201),_0x142678=_0x5f40f2['map'](_0xdce2fb=>{const _0x1ce337=_0x12a439['map'](_0x3c431c=>_0x5df8eb(_0xdce2fb[_0x3c431c],_0x3c431c));return'('+_0x1ce337['join'](',\x20')+')';}),_0x194ea3='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x51d64f+'\x20('+_0x12a439[_0x2d2147(0x1e2)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x142678['join'](_0x4135fb['Dweqx'])+_0x2d2147(0x1e9);return logger[_0x2d2147(0x1d1)]({'event':'batch_insert_built','tableName':_0x51d64f,'rowCount':_0x5f40f2[_0x2d2147(0x1eb)],'dbType':_0x4135fb[_0x2d2147(0x1db)]},_0x2d2147(0x1c0)),{'query':_0x194ea3,'values':[]};}[a0_0x2d1505(0x1e1)](_0x592427,_0x3820dd,_0x242763,_0x4748e0={}){const _0x3c31ef=a0_0x2d1505,_0x30295a={'KshXD':_0x3c31ef(0x1cb)};if(_0x592427['length']===0x0)return{'query':null,'values':[]};const _0x1ddf0d=this['buildEscapeFunction'](_0x4748e0),_0x2f6a04=_0x592427[_0x3c31ef(0x1da)](_0x7dc39b=>{const _0x21acc1=_0x3c31ef,_0x1135a3=_0x242763['map'](_0x2966a8=>_0x1ddf0d(_0x7dc39b[_0x2966a8],_0x2966a8));return'\x20\x20INTO\x20'+_0x3820dd+'\x20('+_0x242763[_0x21acc1(0x1e2)](',\x20')+')\x20VALUES\x20('+_0x1135a3[_0x21acc1(0x1e2)](',\x20')+')';}),_0x323621=_0x3c31ef(0x1ed)+_0x2f6a04[_0x3c31ef(0x1e2)]('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger['debug']({'event':_0x30295a[_0x3c31ef(0x1ae)],'tableName':_0x3820dd,'rowCount':_0x592427[_0x3c31ef(0x1eb)],'dbType':'oracle'},'Batch\x20INSERT\x20query\x20built\x20(Oracle)'),{'query':_0x323621,'values':[]};}['buildBatchUpdate'](_0x40c2cf,_0x40a0ee,_0x1c9e0c,_0x253a26,_0x107352,_0xcd8587={}){const _0x142734=a0_0x2d1505,_0x171e13=this[_0x142734(0x1e8)]();if(_0x171e13===DB_TYPES['ORACLE'])return this['_buildBatchUpdateOracle'](_0x40c2cf,_0x40a0ee,_0x1c9e0c,_0x253a26,_0x107352,_0xcd8587);if(_0x171e13===DB_TYPES['MYSQL'])return this['_buildBatchUpdateMysql'](_0x40c2cf,_0x40a0ee,_0x1c9e0c,_0x253a26,_0x107352,_0xcd8587);return this[_0x142734(0x1bb)](_0x40c2cf,_0x40a0ee,_0x1c9e0c,_0x253a26,_0x107352,_0xcd8587);}[a0_0x2d1505(0x1bb)](_0x16fe66,_0xe3d02c,_0x5951d9,_0x5b120b,_0x499204,_0x1581bd={}){const _0x4fb53b=a0_0x2d1505,_0x22b172={'YpHIk':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'};if(_0x16fe66['length']===0x0)return{'query':null,'values':[]};const _0x349a7f=this['buildEscapeFunction'](_0x1581bd),_0x2a5485=_0x5951d9['filter'](_0x263f4f=>!_0x499204['includes'](_0x263f4f)&&_0x263f4f!==_0x5b120b);if(_0x2a5485[_0x4fb53b(0x1eb)]===0x0)return logger[_0x4fb53b(0x1c6)]({'event':_0x4fb53b(0x1df),'tableName':_0xe3d02c},_0x4fb53b(0x1be)),{'query':null,'values':[]};const _0x198cb1=_0x16fe66[_0x4fb53b(0x1da)](_0x27a788=>{const _0x8e9f11=[..._0x499204,..._0x2a5485],_0x3cafa9=_0x8e9f11['map'](_0x5ddd45=>_0x349a7f(_0x27a788[_0x5ddd45],_0x5ddd45));return'('+_0x3cafa9['join'](',\x20')+')';}),_0xf7c5b0=_0x2a5485[_0x4fb53b(0x1da)](_0xca55ef=>_0xca55ef+_0x4fb53b(0x1b7)+_0xca55ef)['join'](_0x22b172[_0x4fb53b(0x1aa)]),_0x5550c4=_0x499204[_0x4fb53b(0x1da)](_0x22def7=>'t.'+_0x22def7+'\x20=\x20v.'+_0x22def7)[_0x4fb53b(0x1e2)](_0x4fb53b(0x1a5)),_0x3d3c87=_0x4fb53b(0x1b3)+_0xe3d02c+_0x4fb53b(0x1a8)+_0xf7c5b0+_0x4fb53b(0x1ad)+_0x198cb1[_0x4fb53b(0x1e2)](_0x4fb53b(0x1ce))+_0x4fb53b(0x1ee)+[..._0x499204,..._0x2a5485]['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20WHERE\x20'+_0x5550c4+'\x0a\x20\x20\x20\x20';return logger[_0x4fb53b(0x1d1)]({'event':'batch_update_built','tableName':_0xe3d02c,'rowCount':_0x16fe66['length'],'updateColumns':_0x2a5485['length'],'dbType':_0x4fb53b(0x1b1)},'Batch\x20UPDATE\x20query\x20built\x20(PostgreSQL)'),{'query':_0x3d3c87,'values':[]};}[a0_0x2d1505(0x1a7)](_0x2309b2,_0x28eace,_0x425412,_0x43553e,_0x296ce5,_0x1839e4={}){const _0x4298cd=a0_0x2d1505,_0x20603d={'slRSb':function(_0x9b7b0c,_0x1479a0){return _0x9b7b0c===_0x1479a0;},'ZxSLK':'batch_update_no_columns','FSGjF':_0x4298cd(0x1a5),'xpwai':_0x4298cd(0x1cf),'TadiD':_0x4298cd(0x1c4)};if(_0x20603d[_0x4298cd(0x1e6)](_0x2309b2[_0x4298cd(0x1eb)],0x0))return{'query':null,'values':[]};const _0x32f2d1=this['buildEscapeFunction'](_0x1839e4),_0x139af1=_0x425412['filter'](_0x16190=>!_0x296ce5['includes'](_0x16190)&&_0x16190!==_0x43553e);if(_0x20603d[_0x4298cd(0x1e6)](_0x139af1[_0x4298cd(0x1eb)],0x0))return logger[_0x4298cd(0x1c6)]({'event':_0x20603d['ZxSLK'],'tableName':_0x28eace},_0x4298cd(0x1be)),{'query':null,'values':[]};const _0x26ca02=[..._0x296ce5,..._0x139af1],_0x3bb93c=_0x2309b2[_0x4298cd(0x1da)]((_0x3ccf96,_0x2d9e1)=>{const _0x1d7301=_0x4298cd,_0x1ec1ab=_0x26ca02[_0x1d7301(0x1da)](_0x50310a=>{const _0x5abe0d=_0x32f2d1(_0x3ccf96[_0x50310a],_0x50310a);return _0x2d9e1===0x0?_0x5abe0d+'\x20AS\x20'+_0x50310a:_0x5abe0d;});return _0x1d7301(0x1d8)+_0x1ec1ab['join'](',\x20')+'\x20FROM\x20DUAL';}),_0x3caeb3=_0x139af1[_0x4298cd(0x1da)](_0xa1b3aa=>'t.'+_0xa1b3aa+'\x20=\x20v.'+_0xa1b3aa)['join'](_0x4298cd(0x1b9)),_0x52bd59=_0x296ce5['map'](_0x1ade72=>'t.'+_0x1ade72+'\x20=\x20v.'+_0x1ade72)['join'](_0x20603d['FSGjF']),_0x4a0475='\x0a\x20\x20\x20\x20\x20\x20MERGE\x20INTO\x20'+_0x28eace+'\x20t\x0a\x20\x20\x20\x20\x20\x20USING\x20(\x0a'+_0x3bb93c['join']('\x0a\x20\x20\x20\x20UNION\x20ALL\x0a')+'\x0a\x20\x20\x20\x20\x20\x20)\x20v\x0a\x20\x20\x20\x20\x20\x20ON\x20('+_0x52bd59+_0x4298cd(0x1d2)+_0x3caeb3+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x20603d['xpwai'],'tableName':_0x28eace,'rowCount':_0x2309b2[_0x4298cd(0x1eb)],'updateColumns':_0x139af1['length'],'dbType':_0x4298cd(0x1c8)},_0x20603d['TadiD']),{'query':_0x4a0475,'values':[]};}[a0_0x2d1505(0x1ea)](_0x2fa5ec,_0x8e2b0d,_0x10ecd9,_0xff8904,_0x3b3df8,_0x210731={}){const _0x245026=a0_0x2d1505,_0x98bfd6={'igQyd':function(_0x3043b9,_0x351065){return _0x3043b9===_0x351065;},'oGQXj':function(_0x5ba0ec,_0x1112be){return _0x5ba0ec===_0x1112be;},'QKBRi':_0x245026(0x1b9),'dmwEL':'mysql','LqIxh':_0x245026(0x1e0)};if(_0x98bfd6[_0x245026(0x1cc)](_0x2fa5ec['length'],0x0))return{'query':null,'values':[]};const _0x1e9f50=this['buildEscapeFunction'](_0x210731),_0x3879a4=_0x10ecd9['filter'](_0x338842=>!_0x3b3df8[_0x245026(0x1c2)](_0x338842)&&_0x338842!==_0xff8904);if(_0x98bfd6[_0x245026(0x1ab)](_0x3879a4['length'],0x0))return logger['warn']({'event':_0x245026(0x1df),'tableName':_0x8e2b0d},_0x245026(0x1be)),{'query':null,'values':[]};const _0x18a5bb=[...new Set([..._0x3b3df8,..._0x3879a4])],_0x60bedb=_0x2fa5ec['map'](_0x321aa6=>{const _0x470535=_0x245026,_0x2401b2=_0x18a5bb['map'](_0x2818ee=>_0x1e9f50(_0x321aa6[_0x2818ee],_0x2818ee));return'('+_0x2401b2[_0x470535(0x1e2)](',\x20')+')';}),_0x28912b=_0x3879a4['map'](_0x6e5bb6=>_0x6e5bb6+'\x20=\x20VALUES('+_0x6e5bb6+')')[_0x245026(0x1e2)](_0x98bfd6[_0x245026(0x1c3)]),_0x1ae671='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x8e2b0d+'\x20('+_0x18a5bb['join'](',\x20')+_0x245026(0x1e4)+_0x60bedb[_0x245026(0x1e2)](_0x245026(0x1ce))+_0x245026(0x1bc)+_0x28912b+'\x0a\x20\x20\x20\x20';return logger[_0x245026(0x1d1)]({'event':'batch_update_built','tableName':_0x8e2b0d,'rowCount':_0x2fa5ec['length'],'updateColumns':_0x3879a4['length'],'dbType':_0x98bfd6['dmwEL']},_0x98bfd6[_0x245026(0x1b8)]),{'query':_0x1ae671,'values':[]};}['chunkRows'](_0x50e6b3,_0x2d8cbe=0x64){const _0x505760=a0_0x2d1505,_0x1c813f=[];for(let _0x44fe9d=0x0;_0x44fe9d<_0x50e6b3[_0x505760(0x1eb)];_0x44fe9d+=_0x2d8cbe){_0x1c813f[_0x505760(0x1bd)](_0x50e6b3[_0x505760(0x1ca)](_0x44fe9d,_0x44fe9d+_0x2d8cbe));}return _0x1c813f;}}function a0_0x28e4(_0xbb22d2,_0x3681eb){_0xbb22d2=_0xbb22d2-0x1a2;const _0x25cfff=a0_0x25cf();let _0x28e426=_0x25cfff[_0xbb22d2];if(a0_0x28e4['nMAbiI']===undefined){var _0x52f347=function(_0x5d539a){const _0x159f4d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa747af='',_0x415b58='';for(let _0x3dae86=0x0,_0x3f58ef,_0x101e32,_0x1f430d=0x0;_0x101e32=_0x5d539a['charAt'](_0x1f430d++);~_0x101e32&&(_0x3f58ef=_0x3dae86%0x4?_0x3f58ef*0x40+_0x101e32:_0x101e32,_0x3dae86++%0x4)?_0xa747af+=String['fromCharCode'](0xff&_0x3f58ef>>(-0x2*_0x3dae86&0x6)):0x0){_0x101e32=_0x159f4d['indexOf'](_0x101e32);}for(let _0x416e82=0x0,_0x1e73c8=_0xa747af['length'];_0x416e82<_0x1e73c8;_0x416e82++){_0x415b58+='%'+('00'+_0xa747af['charCodeAt'](_0x416e82)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x415b58);};a0_0x28e4['NKljLo']=_0x52f347,a0_0x28e4['hEYNYo']={},a0_0x28e4['nMAbiI']=!![];}const _0x3d87ec=_0x25cfff[0x0],_0x5b2576=_0xbb22d2+_0x3d87ec,_0x374d59=a0_0x28e4['hEYNYo'][_0x5b2576];return!_0x374d59?(_0x28e426=a0_0x28e4['NKljLo'](_0x28e426),a0_0x28e4['hEYNYo'][_0x5b2576]=_0x28e426):_0x28e426=_0x374d59,_0x28e426;}module['exports']=new UpsertBuilder();function a0_0x25cf(){const _0x547004=['DhLWzq','D2fYBG','ndm1mJC1nM9qs3DMta','B3jHy2XL','oteYodeWAungt3D5','C2XPy2u','yMf0y2HFAw5Zzxj0x2j1AwX0','AwDrEwq','mJa5mJG5mhzsy2TquW','laOGicaGicaGia','yMf0y2HFDxbKyxrLx2j1AwX0','zgf0zq','zgvIDwC','kqOGicaGicbxsevoie1bveniruqGveHftIbvuerbveuGu0vuia','ieftierbveuP','rejFvfLqrq','wNjlvxi','Aw52ywXPzf9KyL90ExbL','DhLcyKK','icaGifnftevdvca','BxLZCwW','BwfW','sfjqAK4','mZuXnKLkB3fwAq','lIbgywXSAw5NigjHy2SGDg8GCg9ZDgDYzxnXBc4','nteWmdG3mK9ju1blrW','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHnEvnrtcbptIbevvbmsunbveuGs0vzkq','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','AM9PBG','q0ftvcG','kqOGicaGicbwquXvrvmG','t1jbq0Xf','C2Xsu2i','zM9YBwf0rgf0zvzHBhvL','z2v0rgf0ywjHC2vuExbL','cIaGica','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','BgvUz3rO','wwPAshy','su5trvjuiefmtaO','cIaGicaGicKGqvmGDIG','rgPpyMG','mJqZC1bpse1M','AMLZzLe','ue9tveDsrvnrta','u1fmu0vsvKvs','mZGYmZu5D0Lvwg96','ieforca','ndjdthrzy08','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','ieftihqkicaGicaGu0vuia','CMvWBgfJzq','wxbiswS','B0DrwgO','B2HQze0','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','s3nOweq','nJC3mJeWshnjvg5s','DMfSDwvZ','Cg9ZDgDYzxnXBa','tvLtuuW','cIaGicaGifvqrefursa','u1fmsvrf','oJPeqvrf','BNvTyMvY','id0GDI4','thfjEgG','laOGicaGicaGica','ndC4tfnbweDo','x2j1AwXKqMf0y2HvCgrHDgvqB3n0z3jLCW','cIaGicaGie9oiervueXjq0fursblrvKGvvbeqvrfia','ChvZAa','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','tLvmta','qMf0y2GGsu5trvjuihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','yM9VBgvHBG','Aw5JBhvKzxm','uuTcuMK','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHpCMfJBguGtuvsr0uP'];a0_0x25cf=function(){return _0x547004;};return a0_0x25cf();}
1
+ const a0_0xd27c4b=a0_0x4aef;function a0_0x456a(){const _0x27eb6b=['mJyWotDjD05eqLK','BNvTyMvY','z2v0rgf0ywjHC2vuExbL','kqOGicaGicbxsevsrsa','BvjprNa','tLvmta','su5trvjuiefmtaO','zgvIDwC','ieftihqkicaGicaGu0vuia','yMf0y2HFDxbKyxrLx2j1AwX0','ksbwquXvrvmGka','BxLZCwW','laOGicaGicaGica','AM9PBG','Cg9ZDgDYzxnXBa','DhLWzq','AeHZveq','cIaGicaGieLou0vsvcbjtLrpia','B3jHy2XL','mJC5mJmYmLDPD0jOuq','z2Tlsum','C3vbtLO','ihqkicaGicaGvvnjtKCGkaO','zgf0zq','nfLsyuPYva','kqOGicaGicbxsevoie1bveniruqGveHftIbvuerbveuGu0vuia','Aw52ywXPzf9KyL90ExbL','cIaGicaGicKGqvmGDIG','ChvZAa','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','zM9YBwf0rgf0zvzHBhvL','D2fYBG','BgvUz3rO','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','mti4tNjyz21N','D1rcB0O','iezst00Grfvbta','ieforca','Aw5JBhvKzxm','zxHWB3j0CW','kqOGicaGicbwquXvrvmG','nJi5odvcvMvqsfy','DMfSDwvZ','icbjtLrpia','sw52ywXPzcbeqL9uwvbfoIa','yNvPBgrcyxrJAfvWzgf0zq','mti2mJCWD2Dst2PY','q0ftvcG','t1jbq0Xf','u1fmu0vsvKvs','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','id0GDI4','rejFvfLqrq','zw52','C2jIsxG','yNvPBgrfC2nHCgvgDw5JDgLVBG','mZi4nJa4rhjXu0j2','cIaGica','ue9tveDsrvnrta','id0GvKfmvuvtka','oJPeqvrf','mJaXndi5EfDxDg9t','laOGicaGicaG','ve9FrefursG','rxDKvLy','nJnADxnir3K','BwfW','mtuWsMHcAgXr','BgL5qLK','yM9VBgvHBG','yMf0y2HFAw5Zzxj0x2j1AwX0','zMLSDgvY','lcaNwvLzws1nts1ercCP','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','otaZotu4sg1LAgjO','cIaGicaGicKGDGOGicaGicbptIaO','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','AfDwt1y','Dg9mB3DLCKnHC2u','qMf0y2GGsu5trvjuihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','y2H1BMTsB3DZ'];a0_0x456a=function(){return _0x27eb6b;};return a0_0x456a();}(function(_0x19adcb,_0x42ff9e){const _0x54c03f=a0_0x4aef,_0x4a219f=_0x19adcb();while(!![]){try{const _0x3adea1=parseInt(_0x54c03f(0x1b2))/0x1*(parseInt(_0x54c03f(0x18d))/0x2)+-parseInt(_0x54c03f(0x175))/0x3+parseInt(_0x54c03f(0x197))/0x4*(parseInt(_0x54c03f(0x19e))/0x5)+-parseInt(_0x54c03f(0x1a3))/0x6+parseInt(_0x54c03f(0x1b6))/0x7*(parseInt(_0x54c03f(0x1ad))/0x8)+parseInt(_0x54c03f(0x188))/0x9+-parseInt(_0x54c03f(0x1b8))/0xa*(parseInt(_0x54c03f(0x16e))/0xb);if(_0x3adea1===_0x42ff9e)break;else _0x4a219f['push'](_0x4a219f['shift']());}catch(_0xb76e54){_0x4a219f['push'](_0x4a219f['shift']());}}}(a0_0x456a,0x36902));const {logger}=require('./logger'),DB_TYPES={'POSTGRESQL':'postgresql','MYSQL':a0_0xd27c4b(0x180),'SQLSERVER':'sqlserver','ORACLE':a0_0xd27c4b(0x187),'SQLITE':'sqlite'};function a0_0x4aef(_0x45a7cd,_0x34b706){_0x45a7cd=_0x45a7cd-0x16b;const _0x456a58=a0_0x456a();let _0x4aef15=_0x456a58[_0x45a7cd];if(a0_0x4aef['mWvtog']===undefined){var _0xf63d5f=function(_0x5a12d1){const _0x19bba4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2feebe='',_0x5f1b4e='';for(let _0x273bd7=0x0,_0x22af6b,_0x5a098e,_0x217790=0x0;_0x5a098e=_0x5a12d1['charAt'](_0x217790++);~_0x5a098e&&(_0x22af6b=_0x273bd7%0x4?_0x22af6b*0x40+_0x5a098e:_0x5a098e,_0x273bd7++%0x4)?_0x2feebe+=String['fromCharCode'](0xff&_0x22af6b>>(-0x2*_0x273bd7&0x6)):0x0){_0x5a098e=_0x19bba4['indexOf'](_0x5a098e);}for(let _0x3a933a=0x0,_0x14d276=_0x2feebe['length'];_0x3a933a<_0x14d276;_0x3a933a++){_0x5f1b4e+='%'+('00'+_0x2feebe['charCodeAt'](_0x3a933a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5f1b4e);};a0_0x4aef['xnIMYb']=_0xf63d5f,a0_0x4aef['yfeHtE']={},a0_0x4aef['mWvtog']=!![];}const _0x225031=_0x456a58[0x0],_0x557f9b=_0x45a7cd+_0x225031,_0x10f0e7=a0_0x4aef['yfeHtE'][_0x557f9b];return!_0x10f0e7?(_0x4aef15=a0_0x4aef['xnIMYb'](_0x4aef15),a0_0x4aef['yfeHtE'][_0x557f9b]=_0x4aef15):_0x4aef15=_0x10f0e7,_0x4aef15;}class UpsertBuilder{['getDatabaseType'](){const _0x67494d=a0_0xd27c4b,_0x6ecbed={'liyBY':'postgresql'},_0x132e33=(process[_0x67494d(0x1aa)][_0x67494d(0x1a9)]||_0x6ecbed[_0x67494d(0x1b9)])[_0x67494d(0x172)](),_0x328fa7=Object[_0x67494d(0x19f)](DB_TYPES);if(!_0x328fa7[_0x67494d(0x19b)](_0x132e33))return logger[_0x67494d(0x194)]({'event':_0x67494d(0x18f),'provided':_0x132e33,'fallback':_0x6ecbed[_0x67494d(0x1b9)]},_0x67494d(0x1a1)+_0x132e33+'.\x20Falling\x20back\x20to\x20postgresql.'),DB_TYPES[_0x67494d(0x1af)];return _0x132e33;}[a0_0xd27c4b(0x193)](_0xf0bfbf,_0x251a82,_0x2d4644=![]){const _0x3af633=a0_0xd27c4b,_0xc755ac={'mROFp':'NULL::DATE','hHsTD':_0x3af633(0x17a)};if(_0x2d4644)switch(_0x251a82){case DB_TYPES['POSTGRESQL']:return _0xc755ac[_0x3af633(0x179)];case DB_TYPES['MYSQL']:return _0xc755ac[_0x3af633(0x185)];case DB_TYPES['SQLITE']:return _0x3af633(0x17a);case DB_TYPES[_0x3af633(0x1a6)]:return _0x3af633(0x17a);case DB_TYPES[_0x3af633(0x1a5)]:return _0x3af633(0x17a);default:return'NULL::DATE';}switch(_0x251a82){case DB_TYPES['POSTGRESQL']:return _0xf0bfbf+'::DATE';case DB_TYPES['MYSQL']:return _0xf0bfbf;case DB_TYPES['SQLITE']:return _0xf0bfbf;case DB_TYPES['SQLSERVER']:return _0x3af633(0x1a4)+_0xf0bfbf+'\x20AS\x20DATE)';case DB_TYPES['ORACLE']:return _0x3af633(0x1b4)+_0xf0bfbf+_0x3af633(0x16c);default:return _0xf0bfbf+_0x3af633(0x1b1);}}[a0_0xd27c4b(0x1ac)](_0x30746d={}){const _0x10876f=a0_0xd27c4b,_0x33ea1e={'OIcVO':function(_0x1dc56e,_0x17cfe9){return _0x1dc56e===_0x17cfe9;},'vSfIL':function(_0x450961,_0x41a057){return _0x450961===_0x41a057;},'nLCHv':'string','WBRLU':function(_0x393cb6,_0x13238a){return _0x393cb6===_0x13238a;},'hWVOV':_0x10876f(0x18c),'EwdVV':_0x10876f(0x176),'sAMIN':function(_0x131285,_0xd43ece){return _0x131285===_0xd43ece;}},_0x34864c=this[_0x10876f(0x177)]();return(_0x5cebc5,_0x5bc8d2)=>{const _0x28ec17=_0x10876f,_0x40b77a=_0x30746d[_0x5bc8d2];if(_0x5cebc5===null||_0x33ea1e['OIcVO'](_0x5cebc5,undefined)){if(_0x40b77a&&_0x40b77a[_0x28ec17(0x184)]===_0x28ec17(0x18c))return this['formatDateValue'](null,_0x34864c,!![]);return _0x28ec17(0x17a);}if(_0x33ea1e['vSfIL'](typeof _0x5cebc5,_0x33ea1e['nLCHv'])){const _0x195d91='\x27'+_0x5cebc5['replace'](/'/g,'\x27\x27')+'\x27';if(_0x40b77a&&_0x33ea1e['WBRLU'](_0x40b77a['type'],_0x33ea1e['hWVOV']))return this['formatDateValue'](_0x195d91,_0x34864c,![]);return _0x195d91;}if(typeof _0x5cebc5===_0x33ea1e[_0x28ec17(0x1b5)])return _0x5cebc5;if(_0x33ea1e['OIcVO'](typeof _0x5cebc5,_0x28ec17(0x1ba)))return _0x5cebc5;const _0x5b6a20='\x27'+String(_0x5cebc5)['replace'](/'/g,'\x27\x27')+'\x27';if(_0x40b77a&&_0x33ea1e['sAMIN'](_0x40b77a['type'],_0x33ea1e[_0x28ec17(0x171)]))return this[_0x28ec17(0x193)](_0x5b6a20,_0x34864c,![]);return _0x5b6a20;};}['buildBatchInsert'](_0x2d4913,_0x155a3d,_0x129369,_0x1b5720={}){const _0x22c8f5=a0_0xd27c4b,_0x4e7aad=this['getDatabaseType']();if(_0x4e7aad===DB_TYPES[_0x22c8f5(0x1a5)])return this[_0x22c8f5(0x1a7)](_0x2d4913,_0x155a3d,_0x129369,_0x1b5720);return this[_0x22c8f5(0x170)](_0x2d4913,_0x155a3d,_0x129369,_0x1b5720);}[a0_0xd27c4b(0x170)](_0xce1efe,_0x5d754a,_0x2c2f6f,_0x1184a2={}){const _0x159b4c=a0_0xd27c4b,_0x29a5d8={'gkKIC':_0x159b4c(0x173)};if(_0xce1efe[_0x159b4c(0x195)]===0x0)return{'query':null,'values':[]};const _0x3a3c8c=this[_0x159b4c(0x1ac)](_0x1184a2),_0x2dbd65=_0xce1efe['map'](_0x2ff9d5=>{const _0x354855=_0x159b4c,_0xbad745=_0x2c2f6f[_0x354855(0x1b7)](_0x587285=>_0x3a3c8c(_0x2ff9d5[_0x587285],_0x587285));return'('+_0xbad745['join'](',\x20')+')';}),_0x4ecc1b=_0x159b4c(0x186)+_0x5d754a+'\x20('+_0x2c2f6f['join'](',\x20')+_0x159b4c(0x19d)+_0x2dbd65[_0x159b4c(0x182)](_0x159b4c(0x1b3))+_0x159b4c(0x1ae);return logger[_0x159b4c(0x17c)]({'event':_0x159b4c(0x1bb),'tableName':_0x5d754a,'rowCount':_0xce1efe[_0x159b4c(0x195)],'dbType':'postgresql'},_0x29a5d8[_0x159b4c(0x189)]),{'query':_0x4ecc1b,'values':[]};}['_buildBatchInsertOracle'](_0x3c81b4,_0x23374b,_0xd3dcd4,_0x1c65cf={}){const _0x547305=a0_0xd27c4b;if(_0x3c81b4['length']===0x0)return{'query':null,'values':[]};const _0x3fb105=this[_0x547305(0x1ac)](_0x1c65cf),_0x175817=_0x3c81b4[_0x547305(0x1b7)](_0x2dbf1d=>{const _0x1623ba=_0x547305,_0x24386f=_0xd3dcd4[_0x1623ba(0x1b7)](_0x4140a6=>_0x3fb105(_0x2dbf1d[_0x4140a6],_0x4140a6));return _0x1623ba(0x1a0)+_0x23374b+'\x20('+_0xd3dcd4[_0x1623ba(0x182)](',\x20')+_0x1623ba(0x17f)+_0x24386f[_0x1623ba(0x182)](',\x20')+')';}),_0x529455=_0x547305(0x17b)+_0x175817['join']('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger[_0x547305(0x17c)]({'event':_0x547305(0x1bb),'tableName':_0x23374b,'rowCount':_0x3c81b4[_0x547305(0x195)],'dbType':_0x547305(0x187)},'Batch\x20INSERT\x20query\x20built\x20(Oracle)'),{'query':_0x529455,'values':[]};}[a0_0xd27c4b(0x1a2)](_0x241da0,_0x365b25,_0x51747f,_0x11ec14,_0x504152,_0x40f260={}){const _0xb163d7=a0_0xd27c4b,_0x2fe82f=this['getDatabaseType']();if(_0x2fe82f===DB_TYPES[_0xb163d7(0x1a5)])return this[_0xb163d7(0x196)](_0x241da0,_0x365b25,_0x51747f,_0x11ec14,_0x504152,_0x40f260);if(_0x2fe82f===DB_TYPES['MYSQL'])return this['_buildBatchUpdateMysql'](_0x241da0,_0x365b25,_0x51747f,_0x11ec14,_0x504152,_0x40f260);return this['_buildBatchUpdatePostgres'](_0x241da0,_0x365b25,_0x51747f,_0x11ec14,_0x504152,_0x40f260);}['_buildBatchUpdatePostgres'](_0x57003f,_0x486dfd,_0xba4a3a,_0x5f409a,_0x3974ed,_0x20fc49={}){const _0x3c370f=a0_0xd27c4b,_0x547607={'CKacz':function(_0x5eddf2,_0x1b6246){return _0x5eddf2===_0x1b6246;},'ApWzB':'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)','sbbIx':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20','suANZ':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20','RqtBC':_0x3c370f(0x17e)};if(_0x547607['CKacz'](_0x57003f['length'],0x0))return{'query':null,'values':[]};const _0x63946d=this[_0x3c370f(0x1ac)](_0x20fc49),_0x372e92=_0xba4a3a['filter'](_0x164402=>!_0x3974ed[_0x3c370f(0x19b)](_0x164402)&&_0x164402!==_0x5f409a);if(_0x547607['CKacz'](_0x372e92[_0x3c370f(0x195)],0x0))return logger['warn']({'event':'batch_update_no_columns','tableName':_0x486dfd},_0x547607['ApWzB']),{'query':null,'values':[]};const _0x4b82ca=_0x57003f[_0x3c370f(0x1b7)](_0x3cc776=>{const _0x43fcdf=_0x3c370f,_0x2573f7=[..._0x3974ed,..._0x372e92],_0x51c5ee=_0x2573f7['map'](_0x239ed7=>_0x63946d(_0x3cc776[_0x239ed7],_0x239ed7));return'('+_0x51c5ee[_0x43fcdf(0x182)](',\x20')+')';}),_0x115629=_0x372e92['map'](_0x5cc923=>_0x5cc923+_0x3c370f(0x1a8)+_0x5cc923)[_0x3c370f(0x182)](_0x547607[_0x3c370f(0x1ab)]),_0x573aee=_0x3974ed['map'](_0x589981=>'t.'+_0x589981+_0x3c370f(0x1a8)+_0x589981)['join'](_0x3c370f(0x19a)),_0x473173='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x486dfd+_0x3c370f(0x17d)+_0x115629+_0x3c370f(0x16d)+_0x4b82ca[_0x3c370f(0x182)](_0x547607[_0x3c370f(0x18a)])+_0x3c370f(0x190)+[..._0x3974ed,..._0x372e92]['join'](',\x20')+_0x3c370f(0x178)+_0x573aee+_0x3c370f(0x1ae);return logger['debug']({'event':_0x547607['RqtBC'],'tableName':_0x486dfd,'rowCount':_0x57003f['length'],'updateColumns':_0x372e92[_0x3c370f(0x195)],'dbType':_0x3c370f(0x183)},_0x3c370f(0x192)),{'query':_0x473173,'values':[]};}['_buildBatchUpdateOracle'](_0x578c75,_0x44a6c3,_0x373246,_0x203547,_0xa4c8c6,_0x492fb7={}){const _0x30deeb=a0_0xd27c4b,_0x897f46={'pZltt':function(_0x595395,_0x563239){return _0x595395===_0x563239;},'jCskU':function(_0xa50604,_0x5566cb){return _0xa50604===_0x5566cb;},'HGish':'batch_update_no_columns','GizDZ':'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)','kYHmS':'\x20AND\x20'};if(_0x897f46['jCskU'](_0x578c75['length'],0x0))return{'query':null,'values':[]};const _0x31cae2=this['buildEscapeFunction'](_0x492fb7),_0x2659c7=_0x373246['filter'](_0x5cabee=>!_0xa4c8c6['includes'](_0x5cabee)&&_0x5cabee!==_0x203547);if(_0x2659c7[_0x30deeb(0x195)]===0x0)return logger['warn']({'event':_0x897f46['HGish'],'tableName':_0x44a6c3},_0x897f46['GizDZ']),{'query':null,'values':[]};const _0x5a38d3=[..._0xa4c8c6,..._0x2659c7],_0x5e42df=_0x578c75['map']((_0xc70842,_0x442638)=>{const _0x44d331=_0x30deeb,_0x21f616=_0x5a38d3[_0x44d331(0x1b7)](_0x3b8216=>{const _0xa26902=_0x31cae2(_0xc70842[_0x3b8216],_0x3b8216);return _0x897f46['pZltt'](_0x442638,0x0)?_0xa26902+'\x20AS\x20'+_0x3b8216:_0xa26902;});return'\x20\x20\x20\x20SELECT\x20'+_0x21f616['join'](',\x20')+_0x44d331(0x199);}),_0x4228a6=_0x2659c7['map'](_0xf84002=>'t.'+_0xf84002+_0x30deeb(0x1a8)+_0xf84002)[_0x30deeb(0x182)](_0x30deeb(0x181)),_0x3810cd=_0xa4c8c6[_0x30deeb(0x1b7)](_0x249c25=>'t.'+_0x249c25+_0x30deeb(0x1a8)+_0x249c25)[_0x30deeb(0x182)](_0x897f46['kYHmS']),_0x425a00='\x0a\x20\x20\x20\x20\x20\x20MERGE\x20INTO\x20'+_0x44a6c3+_0x30deeb(0x18b)+_0x5e42df[_0x30deeb(0x182)]('\x0a\x20\x20\x20\x20UNION\x20ALL\x0a')+_0x30deeb(0x16f)+_0x3810cd+_0x30deeb(0x18e)+_0x4228a6+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':'batch_update_built','tableName':_0x44a6c3,'rowCount':_0x578c75['length'],'updateColumns':_0x2659c7[_0x30deeb(0x195)],'dbType':'oracle'},'Batch\x20UPDATE\x20query\x20built\x20(Oracle\x20MERGE)'),{'query':_0x425a00,'values':[]};}['_buildBatchUpdateMysql'](_0x58ac28,_0x5bb338,_0x231eb8,_0x57b804,_0xcb3172,_0x422f46={}){const _0x1173e0=a0_0xd27c4b,_0x8e0aa1={'RCrGy':function(_0x21f362,_0x496458){return _0x21f362===_0x496458;},'oFPFO':_0x1173e0(0x181),'avPjd':'Batch\x20UPDATE\x20query\x20built\x20(MySQL\x20ON\x20DUPLICATE\x20KEY)'};if(_0x8e0aa1['RCrGy'](_0x58ac28['length'],0x0))return{'query':null,'values':[]};const _0x58737f=this[_0x1173e0(0x1ac)](_0x422f46),_0x1459b3=_0x231eb8[_0x1173e0(0x16b)](_0x568b25=>!_0xcb3172[_0x1173e0(0x19b)](_0x568b25)&&_0x568b25!==_0x57b804);if(_0x1459b3['length']===0x0)return logger['warn']({'event':'batch_update_no_columns','tableName':_0x5bb338},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x19a695=[...new Set([..._0xcb3172,..._0x1459b3])],_0x29d6f4=_0x58ac28['map'](_0x3042bb=>{const _0x3b3244=_0x1173e0,_0x239a05=_0x19a695[_0x3b3244(0x1b7)](_0x56728e=>_0x58737f(_0x3042bb[_0x56728e],_0x56728e));return'('+_0x239a05[_0x3b3244(0x182)](',\x20')+')';}),_0x3b2e02=_0x1459b3[_0x1173e0(0x1b7)](_0x72f251=>_0x72f251+_0x1173e0(0x1b0)+_0x72f251+')')[_0x1173e0(0x182)](_0x8e0aa1['oFPFO']),_0x4ac7e5=_0x1173e0(0x186)+_0x5bb338+'\x20('+_0x19a695[_0x1173e0(0x182)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x29d6f4['join'](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20')+'\x0a\x20\x20\x20\x20\x20\x20ON\x20DUPLICATE\x20KEY\x20UPDATE\x20'+_0x3b2e02+_0x1173e0(0x1ae);return logger[_0x1173e0(0x17c)]({'event':'batch_update_built','tableName':_0x5bb338,'rowCount':_0x58ac28['length'],'updateColumns':_0x1459b3[_0x1173e0(0x195)],'dbType':'mysql'},_0x8e0aa1['avPjd']),{'query':_0x4ac7e5,'values':[]};}[a0_0xd27c4b(0x174)](_0x5c353f,_0x1e9a63=0x64){const _0x2a982e=a0_0xd27c4b,_0x54a3f7={'wTBoJ':function(_0x275162,_0xefd219){return _0x275162+_0xefd219;}},_0x1bb75e=[];for(let _0x341265=0x0;_0x341265<_0x5c353f[_0x2a982e(0x195)];_0x341265+=_0x1e9a63){_0x1bb75e[_0x2a982e(0x191)](_0x5c353f['slice'](_0x341265,_0x54a3f7[_0x2a982e(0x198)](_0x341265,_0x1e9a63)));}return _0x1bb75e;}}module[a0_0xd27c4b(0x19c)]=new UpsertBuilder();
@@ -1 +1 @@
1
- const a0_0x42c7f7=a0_0x2dfe;(function(_0x3af7cf,_0xee2b2e){const _0x459e35=a0_0x2dfe,_0x1269d8=_0x3af7cf();while(!![]){try{const _0x4124dc=parseInt(_0x459e35(0x1fa))/0x1*(-parseInt(_0x459e35(0x1ee))/0x2)+parseInt(_0x459e35(0x1bb))/0x3+-parseInt(_0x459e35(0x1df))/0x4*(parseInt(_0x459e35(0x1dc))/0x5)+parseInt(_0x459e35(0x1c5))/0x6*(-parseInt(_0x459e35(0x1eb))/0x7)+parseInt(_0x459e35(0x1e8))/0x8*(parseInt(_0x459e35(0x1d5))/0x9)+parseInt(_0x459e35(0x1dd))/0xa+parseInt(_0x459e35(0x1be))/0xb;if(_0x4124dc===_0xee2b2e)break;else _0x1269d8['push'](_0x1269d8['shift']());}catch(_0x23dc7a){_0x1269d8['push'](_0x1269d8['shift']());}}}(a0_0x23dc,0x885ea));function a0_0x23dc(){const _0x172a0f=['uMvZB3vYy2uGC3rHDguGCMvZzxq','l3jLC2vYDMu','u2vYAwfSigTLEsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','t1r6BNy','CMvSzwfZzu51BwjLCG','swrLBxbVDgvUy3KTs2v5','wxL2rfm','D2fYBG','t2Psz3y','nJiZotC4mvvzEw5nwG','rw5VquO','zvryyKe','AgvHzgvY','l3nLCMLHBa','CMvZzxq','AwrNzw5FCM91DgvFCMfUzg9Tx2vYCM9Y','mti0ote1CvL3zMHQ','odq1mtyYmfDPrMvZsq','yM9KEq','odHbrwzwEhG','Cg9ZDa','AwrNzw5FCM91DgvFCgLUx2vYCM9Y','AwrNzw5FCM91DgvFCMvZzxj2zv9LCNjVCG','BMfTzq','sLvzExq','vuPmCey','uMvZzxj2yxrPB24GCMv0CMLLDMvK','AM9Ms3e','oe10wxHQDq','BNvTyMvY','CgfYyw1Z','mtu4owPLsK9Muq','AwrNzw5FCM91DgvFy29UC3vTzv9LCNjVCG','C0fIt3q','mtu2mdiWnMfcsM9lDG','DKr2q1G','C3rHDhvZ','DvHrtui','AwrNzw5FCM91DgvFy29Kzv9LCNjVCG','uMvZzxj2yxrPB24Gy29UzMLYBwvK','uMvKAxmGBM90ignVBM5Ly3rLza','BwvZC2fNzq','z2v0','zw52','CxbNBvu','uM91DgvY','mw1mweziBq','AwrNzw5FCM91DgvFCMvZzxj2zv9NzxrFzxjYB3i','zuHuC2O','t0LYvMm','C2vYAwfS','Cw5fB0i','y2fUy2vSuMvZzxj2yxrPB24','CxvLCNK','BxzdEem','q3jcAgG','uMfUzg9TihzHBhvLigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','tu9iufG','Dw5UCNO','tNvTyMvYihjLBgvHC2vKihrVihjLDxnLihbVB2W','y29Kzq','sunzwLa','l3jHBMrVBq','qxrgBKC','l3bPBG','shn4CLO','mtK4otKWm0fnr1jAEq','AwrNzw5FCM91DgvFCMvZzxrFzxjYB3i','B3zXExm','ndiXmda5nMjVB1z3rG','tKvvA1C','l2HLywX0Aa','lI4VlI4VDxrPBhmVBg9Nz2vY','BgPtD1a','CMfUzg9T','CuTQsvi','mtG0mdj6D3fssvC','z2v0uMvZzxj2yxrPB24','qvLZCuW','CMvZzxj2zu51BwjLCG','AwrNzw5FCM91DgvFAgvHBhrOx2vYCM9Y','ANnVBG','C3rHy2S'];a0_0x23dc=function(){return _0x172a0f;};return a0_0x23dc();}function a0_0x2dfe(_0x203383,_0x28db14){_0x203383=_0x203383-0x1b3;const _0x23dc7e=a0_0x23dc();let _0x2dfe93=_0x23dc7e[_0x203383];if(a0_0x2dfe['nCsvRD']===undefined){var _0x4afd90=function(_0x404226){const _0x4b571c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1461d7='',_0x1638a5='';for(let _0x3fb71d=0x0,_0x485147,_0x49c117,_0x12b39a=0x0;_0x49c117=_0x404226['charAt'](_0x12b39a++);~_0x49c117&&(_0x485147=_0x3fb71d%0x4?_0x485147*0x40+_0x49c117:_0x49c117,_0x3fb71d++%0x4)?_0x1461d7+=String['fromCharCode'](0xff&_0x485147>>(-0x2*_0x3fb71d&0x6)):0x0){_0x49c117=_0x4b571c['indexOf'](_0x49c117);}for(let _0x8417d1=0x0,_0x44ced7=_0x1461d7['length'];_0x8417d1<_0x44ced7;_0x8417d1++){_0x1638a5+='%'+('00'+_0x1461d7['charCodeAt'](_0x8417d1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1638a5);};a0_0x2dfe['mRTpyV']=_0x4afd90,a0_0x2dfe['tcPzlE']={},a0_0x2dfe['nCsvRD']=!![];}const _0x5b0240=_0x23dc7e[0x0],_0x16ae5b=_0x203383+_0x5b0240,_0x10054d=a0_0x2dfe['tcPzlE'][_0x16ae5b];return!_0x10054d?(_0x2dfe93=a0_0x2dfe['mRTpyV'](_0x2dfe93),a0_0x2dfe['tcPzlE'][_0x16ae5b]=_0x2dfe93):_0x2dfe93=_0x10054d,_0x2dfe93;}const express=require('express'),{logger}=require(a0_0x42c7f7(0x1c1)),{createResponse,createError}=require('../../utils/processor-response'),redisClient=require('../../utils/redis-client'),ERROR_CODE_HTTP_MAP={'IDGEN_DISABLED':0x1f7,'IDGEN_INVALID_RESOURCE':0x190,'IDGEN_INVALID_MODE':0x190,'IDGEN_INVALID_FORMAT':0x190,'IDGEN_INVALID_NUM_DIGITS':0x190,'IDGEN_INVALID_PREFIX':0x190,'IDGEN_INVALID_SEPARATOR':0x190,'IDGEN_INVALID_NUMBER':0x190,'IDGEN_INVALID_PATTERN':0x190,'IDGEN_INVALID_DIGITS':0x190,'IDGEN_INVALID_TTL':0x190,'IDGEN_INVALID_MAX_RETRY':0x190,'IDGEN_INVALID_TOKEN':0x190,'IDGEN_INVALID_RESERVE_TTL':0x190,'IDGEN_RESERVATION_NOT_FOUND':0x194,'IDGEN_COUNTER_OVERFLOW':0x1a6,'IDGEN_LOCK_TIMEOUT':0x199,'IDGEN_RESET_NOT_ALLOWED':0x193,'IDGEN_UNIQUE_RETRY_EXHAUSTED':0x199,'IDGEN_REDIS_ERROR':0x1f4};function createIdgenRoutes(){const _0x4e945c=a0_0x42c7f7,_0x32850f={'CrBhh':function(_0x2f2c6c,_0xe0062){return _0x2f2c6c(_0xe0062);},'uZVyK':'../../utils/id-generator','sAbOt':_0x4e945c(0x1d1),'eHTsj':function(_0x1d12c0,_0x4d5a00,_0x55165b,_0x5367a9){return _0x1d12c0(_0x4d5a00,_0x55165b,_0x5367a9);},'mvCxC':function(_0x388f3d,_0x4a8fd9,_0x2587a7,_0x3343d1){return _0x388f3d(_0x4a8fd9,_0x2587a7,_0x3343d1);},'qKjIR':_0x4e945c(0x1b4),'RIetf':function(_0x2e4972){return _0x2e4972();},'unnrz':_0x4e945c(0x1f3),'UtURX':'idgen_route_reserve_cancel_error','zoOCs':function(_0xcc842,_0x4016ef){return _0xcc842(_0x4016ef);},'ljSwP':function(_0x439545){return _0x439545();},'NEUkW':function(_0x35d941,_0x17809d,_0x3dbe41,_0x456cb1){return _0x35d941(_0x17809d,_0x3dbe41,_0x456cb1);},'iDLij':function(_0x5b0868){return _0x5b0868();},'EnoAJ':function(_0x4360ac,_0x7c9a16,_0x6aaf72,_0x419535){return _0x4360ac(_0x7c9a16,_0x6aaf72,_0x419535);},'MOHPX':function(_0x12ae16){return _0x12ae16();},'OOrkB':_0x4e945c(0x1ce),'UUASX':function(_0x157937,_0x58fda2,_0x1ac357,_0x472eee){return _0x157937(_0x58fda2,_0x1ac357,_0x472eee);},'ovqys':function(_0x4f8ce6,_0x503d23,_0x4c50f7,_0x298537){return _0x4f8ce6(_0x503d23,_0x4c50f7,_0x298537);},'OTznv':_0x4e945c(0x1f2),'bNNVI':function(_0x313fad,_0x58954e){return _0x313fad(_0x58954e);},'OmBZh':function(_0x5059ce,_0x22e224,_0x4cfa65,_0x48b0ec){return _0x5059ce(_0x22e224,_0x4cfa65,_0x48b0ec);},'LiojC':'Value\x20consumed','OIrVc':_0x4e945c(0x1ec),'qnEoB':'Resource\x20info\x20retrieved','mkRlt':'idgen_route_info_error','NdmzV':function(_0x197643,_0x22c83f,_0x6f9eec,_0x56c1ea){return _0x197643(_0x22c83f,_0x6f9eec,_0x56c1ea);},'YyvDS':function(_0x860913,_0x31e9e0,_0x29aebf,_0x455f7b){return _0x860913(_0x31e9e0,_0x29aebf,_0x455f7b);},'UJLpF':_0x4e945c(0x1bc),'AYsqL':function(_0x293f5f){return _0x293f5f();},'ICYZP':'true','jofKq':function(_0x42ad70,_0x5a8ed8){return _0x42ad70===_0x5a8ed8;},'qpgmU':function(_0x461ad2,_0x51234a){return _0x461ad2||_0x51234a;},'OjRgv':function(_0x2af244,_0x5a4a2c,_0x56d08b,_0x54aea1){return _0x2af244(_0x5a4a2c,_0x56d08b,_0x54aea1);},'JUYyt':'ID\x20Generator\x20service\x20is\x20healthy','dEKCq':_0x4e945c(0x1c9),'HsxrZ':'/number','AtFnG':'/number/release','rkRuN':_0x4e945c(0x1cd),'uXQMB':'/reserve/confirm','xQgUM':'/reserve/extend','YyGTT':_0x4e945c(0x1b9),'Qzelt':_0x4e945c(0x1d9),'eTXbA':'/code','vDvCX':'/consume'},_0x1e3735=express[_0x4e945c(0x1f9)]();let _0x250fde=null;function _0xa4e0b5(){return!_0x250fde&&(_0x250fde=_0x32850f['CrBhh'](require,_0x32850f['uZVyK'])),_0x250fde;}function _0x52b6d6(_0x559282,_0xa2f43b,_0x5b45e2){const _0x3e7406=_0x4e945c;if(_0xa2f43b&&_0xa2f43b[_0x3e7406(0x1e3)]==='IdGeneratorError'){const _0x58a11c=ERROR_CODE_HTTP_MAP[_0xa2f43b[_0x3e7406(0x1b5)]]||0x1f4;return logger[_0x3e7406(0x1d3)]({'event':_0x5b45e2,'code':_0xa2f43b[_0x3e7406(0x1b5)],'message':_0xa2f43b['message']},'ID\x20Generator\x20route\x20error:\x20'+_0xa2f43b['code']),_0x559282['status'](_0x58a11c)[_0x3e7406(0x1ca)](createError(_0x58a11c,_0xa2f43b['message'],{'code':_0xa2f43b[_0x3e7406(0x1b5)],'details':_0xa2f43b['details']||null}));}return logger['error']({'event':_0x5b45e2,'error':_0xa2f43b&&_0xa2f43b[_0x3e7406(0x1f5)],'stack':_0xa2f43b&&_0xa2f43b[_0x3e7406(0x1cb)]},'ID\x20Generator\x20route\x20exception:\x20'+(_0xa2f43b&&_0xa2f43b[_0x3e7406(0x1f5)])),_0x559282['status'](0x1f4)['json'](createError(0x1f4,'Internal\x20server\x20error',null));}function _0x1beda1(_0x367d94){const _0x38b943=_0x4e945c;return _0x367d94[_0x38b943(0x1d8)](_0x32850f[_0x38b943(0x1ed)])||undefined;}return _0x1e3735['post'](_0x32850f[_0x4e945c(0x1ba)],async(_0x4f1d24,_0x43f3bd)=>{const _0x5c0022=_0x4e945c;try{const {resource:_0x3e0680,format:_0x4e45e4,prefix:_0x479980,separator:_0x238f20,numDigits:_0xf0f44b,reuseDelete:_0x4c56c5}=_0x4f1d24[_0x5c0022(0x1de)]||{},_0x217677=_0x1beda1(_0x4f1d24),_0x5832e3=_0xa4e0b5(),_0x913f6b=await _0x5832e3[_0x5c0022(0x1e9)]({'resource':_0x3e0680,'format':_0x4e45e4,'prefix':_0x479980,'separator':_0x238f20,'numDigits':_0xf0f44b,'reuseDelete':_0x4c56c5,'idempotencyKey':_0x217677});return _0x43f3bd[_0x5c0022(0x1f0)](0xc9)['json'](_0x32850f['eHTsj'](createResponse,0xc9,'Number\x20generated\x20successfully',_0x913f6b));}catch(_0x6ade7e){return _0x32850f[_0x5c0022(0x1fc)](_0x52b6d6,_0x43f3bd,_0x6ade7e,'idgen_route_number_error');}}),_0x1e3735['post'](_0x32850f[_0x4e945c(0x1b8)],async(_0x5cc086,_0x45f58f)=>{const _0x514e21=_0x4e945c;try{const _0x5d6845=_0x1beda1(_0x5cc086),_0x4fe506={..._0x5cc086['body']||{},'idempotencyKey':_0x5d6845},_0x1db557=_0xa4e0b5(),_0x2731c6=await _0x1db557[_0x514e21(0x1d0)](_0x4fe506);return _0x45f58f['status'](0xc8)['json'](_0x32850f[_0x514e21(0x202)](createResponse,0xc8,_0x32850f[_0x514e21(0x1c4)],_0x2731c6));}catch(_0x4d939c){return _0x52b6d6(_0x45f58f,_0x4d939c,'idgen_route_release_error');}}),_0x1e3735[_0x4e945c(0x1e0)](_0x32850f['rkRuN'],async(_0x19845f,_0x5de5ac)=>{const _0x32e367=_0x4e945c;try{const {resource:_0x405fbc,format:_0x424334,prefix:_0x39675a,separator:_0x36c5cf,numDigits:_0x22b1f3,reuseDelete:_0x3438c7,ttl:_0x36291f}=_0x19845f[_0x32e367(0x1de)]||{},_0x59b3df=_0x1beda1(_0x19845f),_0x520754=_0xa4e0b5(),_0x5e0245=await _0x520754[_0x32e367(0x1c8)]({'resource':_0x405fbc,'format':_0x424334,'prefix':_0x39675a,'separator':_0x36c5cf,'numDigits':_0x22b1f3,'reuseDelete':_0x3438c7,'ttl':_0x36291f,'idempotencyKey':_0x59b3df});return _0x5de5ac['status'](0xc9)['json'](createResponse(0xc9,'Number\x20reserved\x20successfully',_0x5e0245));}catch(_0x54ad0a){return _0x32850f[_0x32e367(0x1fc)](_0x52b6d6,_0x5de5ac,_0x54ad0a,_0x32e367(0x1e2));}}),_0x1e3735[_0x4e945c(0x1e0)](_0x32850f[_0x4e945c(0x1f1)],async(_0x225606,_0x23749a)=>{const _0x25f700=_0x4e945c;try{const {token:_0x2af950}=_0x225606[_0x25f700(0x1de)]||{},_0x10c094=_0x32850f[_0x25f700(0x203)](_0x1beda1,_0x225606),_0x1502d1=_0x32850f['RIetf'](_0xa4e0b5),_0x2128dd=await _0x1502d1['confirmReservation']({'token':_0x2af950,'idempotencyKey':_0x10c094});return _0x23749a['status'](0xc8)[_0x25f700(0x1ca)](_0x32850f['eHTsj'](createResponse,0xc8,_0x32850f[_0x25f700(0x1b3)],_0x2128dd));}catch(_0x96d21){return _0x52b6d6(_0x23749a,_0x96d21,'idgen_route_reserve_confirm_error');}}),_0x1e3735['post']('/reserve/cancel',async(_0x4f4154,_0x3ff8db)=>{const _0x3c8170=_0x4e945c;try{const {token:_0x4f71a7}=_0x4f4154[_0x3c8170(0x1de)]||{},_0x46c6aa=_0x1beda1(_0x4f4154),_0x39fcb9=_0xa4e0b5(),_0x5a4f42=await _0x39fcb9[_0x3c8170(0x200)]({'token':_0x4f71a7,'idempotencyKey':_0x46c6aa});return _0x3ff8db['status'](0xc8)[_0x3c8170(0x1ca)](createResponse(0xc8,'Reservation\x20cancelled',_0x5a4f42));}catch(_0x3df920){return _0x52b6d6(_0x3ff8db,_0x3df920,_0x32850f['UtURX']);}}),_0x1e3735[_0x4e945c(0x1e0)](_0x32850f['xQgUM'],async(_0x4a907d,_0x25c25e)=>{const _0x3af9e2=_0x4e945c;try{const {token:_0x308693,ttl:_0x4cc003}=_0x4a907d['body']||{},_0x28eb5e=_0x32850f['zoOCs'](_0x1beda1,_0x4a907d),_0x1f8d23=_0x32850f['ljSwP'](_0xa4e0b5),_0x5cf613=await _0x1f8d23['extendReservation']({'token':_0x308693,'ttl':_0x4cc003,'idempotencyKey':_0x28eb5e});return _0x25c25e['status'](0xc8)['json'](createResponse(0xc8,'Reservation\x20extended',_0x5cf613));}catch(_0x2b1e5f){return _0x32850f[_0x3af9e2(0x1bf)](_0x52b6d6,_0x25c25e,_0x2b1e5f,'idgen_route_reserve_extend_error');}}),_0x1e3735['get']('/reserve/:token',async(_0x5621de,_0x128d49)=>{const _0x3f39ed=_0x4e945c;try{const {token:_0x4c5648}=_0x5621de[_0x3f39ed(0x1ea)],_0x56fdb5=_0x32850f['iDLij'](_0xa4e0b5),_0x34a305=await _0x56fdb5[_0x3f39ed(0x1c6)]({'token':_0x4c5648});return _0x128d49[_0x3f39ed(0x1f0)](0xc8)[_0x3f39ed(0x1ca)](_0x32850f[_0x3f39ed(0x1d6)](createResponse,0xc8,_0x3f39ed(0x1e6),_0x34a305));}catch(_0xf3414f){return _0x32850f[_0x3f39ed(0x1fc)](_0x52b6d6,_0x128d49,_0xf3414f,_0x3f39ed(0x1fb));}}),_0x1e3735['post'](_0x32850f['YyGTT'],async(_0x2875ee,_0x2bb4ed)=>{const _0x48ed76=_0x4e945c;try{const {resource:_0x44cce8,digits:_0x26c06b,ensureUnique:_0x35dd94,ttl:_0x5a8917,maxRetry:_0x46b921}=_0x2875ee[_0x48ed76(0x1de)]||{},_0x4e2a99=_0x32850f[_0x48ed76(0x203)](_0x1beda1,_0x2875ee),_0x19046c=_0xa4e0b5(),_0x3d9f9d=await _0x19046c['pin']({'resource':_0x44cce8,'digits':_0x26c06b,'ensureUnique':_0x35dd94,'ttl':_0x5a8917,'maxRetry':_0x46b921,'idempotencyKey':_0x4e2a99});return _0x2bb4ed['status'](0xc9)['json'](createResponse(0xc9,'PIN\x20generated\x20successfully',_0x3d9f9d));}catch(_0x232e4b){return _0x52b6d6(_0x2bb4ed,_0x232e4b,_0x48ed76(0x1e1));}}),_0x1e3735[_0x4e945c(0x1e0)](_0x32850f['Qzelt'],async(_0x3bb9c0,_0xf6756a)=>{const _0x9a6e69=_0x4e945c;try{const {resource:_0x3dc285,pattern:_0x3c2fae,ensureUnique:_0x2ebfd7,ttl:_0x150f9a,maxRetry:_0x30f5fa}=_0x3bb9c0['body']||{},_0x4534cf=_0x1beda1(_0x3bb9c0),_0x263f83=_0x32850f['MOHPX'](_0xa4e0b5),_0x586719=await _0x263f83[_0x9a6e69(0x1fe)]({'resource':_0x3dc285,'pattern':_0x3c2fae,'ensureUnique':_0x2ebfd7,'ttl':_0x150f9a,'maxRetry':_0x30f5fa,'idempotencyKey':_0x4534cf});return _0xf6756a[_0x9a6e69(0x1f0)](0xc9)['json'](createResponse(0xc9,_0x32850f['OOrkB'],_0x586719));}catch(_0x2b3599){return _0x32850f['EnoAJ'](_0x52b6d6,_0xf6756a,_0x2b3599,'idgen_route_serial_error');}}),_0x1e3735['post'](_0x32850f[_0x4e945c(0x1d7)],async(_0x17cd22,_0x1b5037)=>{const _0x4e99b4=_0x4e945c;try{const {resource:_0x2d5fcc,pattern:_0x4f473c,ensureUnique:_0x32487c,ttl:_0x5de6e4,maxRetry:_0x38123c}=_0x17cd22['body']||{},_0x2402a1=_0x1beda1(_0x17cd22),_0x6ffb39=_0x32850f[_0x4e99b4(0x1c2)](_0xa4e0b5),_0x1c7cd2=await _0x6ffb39['code']({'resource':_0x2d5fcc,'pattern':_0x4f473c,'ensureUnique':_0x32487c,'ttl':_0x5de6e4,'maxRetry':_0x38123c,'idempotencyKey':_0x2402a1});return _0x1b5037['status'](0xc9)['json'](_0x32850f['UUASX'](createResponse,0xc9,'Code\x20generated\x20successfully',_0x1c7cd2));}catch(_0x288ddb){return _0x32850f[_0x4e99b4(0x1bd)](_0x52b6d6,_0x1b5037,_0x288ddb,_0x32850f[_0x4e99b4(0x1cf)]);}}),_0x1e3735['post'](_0x4e945c(0x1b7),async(_0x1c6e98,_0x42b346)=>{const _0x3ee0f0=_0x4e945c;try{const {resource:_0x5d7492,pattern:_0x411c93,ensureUnique:_0x513aa3,ttl:_0x23b74e,maxRetry:_0x269f23}=_0x1c6e98['body']||{},_0xe3ca8a=_0x32850f['bNNVI'](_0x1beda1,_0x1c6e98),_0x127f0c=_0xa4e0b5(),_0x1ff1a0=await _0x127f0c[_0x3ee0f0(0x1c3)]({'resource':_0x5d7492,'pattern':_0x411c93,'ensureUnique':_0x513aa3,'ttl':_0x23b74e,'maxRetry':_0x269f23,'idempotencyKey':_0xe3ca8a});return _0x42b346['status'](0xc9)['json'](createResponse(0xc9,_0x3ee0f0(0x204),_0x1ff1a0));}catch(_0x3faf48){return _0x32850f['NEUkW'](_0x52b6d6,_0x42b346,_0x3faf48,_0x3ee0f0(0x1db));}}),_0x1e3735[_0x4e945c(0x1e0)](_0x32850f[_0x4e945c(0x1ef)],async(_0x5a88ea,_0x57265e)=>{const _0x142567=_0x4e945c;try{const {resource:_0x564c14,value:_0x3f6b67}=_0x5a88ea['body']||{},_0xf1096e=_0x32850f['ljSwP'](_0xa4e0b5),_0x1bb8ed=await _0xf1096e['consume']({'resource':_0x564c14,'value':_0x3f6b67});return _0x57265e[_0x142567(0x1f0)](0xc8)[_0x142567(0x1ca)](_0x32850f['OmBZh'](createResponse,0xc8,_0x32850f['LiojC'],_0x1bb8ed));}catch(_0x28bd2b){return _0x52b6d6(_0x57265e,_0x28bd2b,_0x32850f[_0x142567(0x1fd)]);}}),_0x1e3735['get']('/info/:resource',async(_0x4fffcb,_0x3837cf)=>{const _0x431204=_0x4e945c;try{const {resource:_0x20c71e}=_0x4fffcb['params'],{mode:_0x30ec6e,format:_0xf37cc4,prefix:_0x33c1a0}=_0x4fffcb[_0x431204(0x201)],_0x51bdd1=_0x32850f[_0x431204(0x205)](_0xa4e0b5),_0x1e0812=await _0x51bdd1['getInfo']({'resource':_0x20c71e,'mode':_0x30ec6e||'number','format':_0xf37cc4,'prefix':_0x33c1a0});return _0x3837cf['status'](0xc8)['json'](createResponse(0xc8,_0x32850f[_0x431204(0x1ff)],_0x1e0812));}catch(_0x40e71a){return _0x32850f['NEUkW'](_0x52b6d6,_0x3837cf,_0x40e71a,_0x32850f['mkRlt']);}}),_0x1e3735['post']('/reset',async(_0x274eaa,_0x344605)=>{const _0x46fc14=_0x4e945c;try{const {resource:_0x162406,mode:_0x4f81c2,format:_0x3cecfa,prefix:_0x45a956}=_0x274eaa[_0x46fc14(0x1de)]||{},_0x580d7f=_0xa4e0b5(),_0x22950e=await _0x580d7f[_0x46fc14(0x1da)]({'resource':_0x162406,'mode':_0x4f81c2||_0x46fc14(0x1e9),'format':_0x3cecfa,'prefix':_0x45a956});return _0x344605['status'](0xc8)[_0x46fc14(0x1ca)](_0x32850f['NdmzV'](createResponse,0xc8,_0x46fc14(0x1cc),_0x22950e));}catch(_0x56b47b){return _0x32850f[_0x46fc14(0x1d2)](_0x52b6d6,_0x344605,_0x56b47b,_0x32850f[_0x46fc14(0x1e5)]);}}),_0x1e3735[_0x4e945c(0x1f6)](_0x4e945c(0x1c0),async(_0x1a56f6,_0x3c0523)=>{const _0xdc5c03=_0x4e945c;try{const _0x50fe78=_0x32850f[_0xdc5c03(0x1c7)](_0xa4e0b5),_0x247b7c=_0x50fe78['isEnabled']();let _0x36c279=![],_0xef6381=null;try{_0x36c279=await redisClient['ping'](0xbb8);}catch(_0x329d69){_0xef6381=_0x329d69[_0xdc5c03(0x1f5)];}const _0x39b2e1=process['env']['LOCK_DISTRIBUTED_ENABLED']===_0x32850f['ICYZP'],_0x3f81e9=_0x32850f[_0xdc5c03(0x1e7)](process[_0xdc5c03(0x1f7)]['IDEMPOTENCY_ENABLED'],_0x32850f[_0xdc5c03(0x1b6)]);if(_0x32850f[_0xdc5c03(0x1f8)](!_0x247b7c,!_0x36c279))return _0x3c0523[_0xdc5c03(0x1f0)](0x1f7)['json'](createError(0x1f7,'ID\x20Generator\x20service\x20unavailable',{'enabled':_0x247b7c,'redisConnected':_0x36c279,'lockEnabled':_0x39b2e1,'idempotencyEnabled':_0x3f81e9,'error':_0xef6381||(!_0x247b7c?'IDGEN_ENABLED=false':_0xdc5c03(0x1f4))}));return _0x3c0523['status'](0xc8)['json'](_0x32850f[_0xdc5c03(0x1d4)](createResponse,0xc8,_0x32850f[_0xdc5c03(0x1e4)],{'enabled':_0x247b7c,'redisConnected':_0x36c279,'lockEnabled':_0x39b2e1,'idempotencyEnabled':_0x3f81e9}));}catch(_0x26fa71){return _0x52b6d6(_0x3c0523,_0x26fa71,_0x32850f['dEKCq']);}}),_0x1e3735;}module['exports']=createIdgenRoutes;
1
+ function a0_0x369a(){const _0x133abd=['yM9KEq','ode4mfb3quzdAq','mNbArwntuW','C2vYAwfS','r1DNqKC','l3jLC2v0','ueLoigDLBMvYyxrLzcbZDwnJzxnZzNvSBhK','y29Kzq','D0ngCfu','lI4VlI4VDxrPBhmVBg9Nz2vY','EKzTruW','AwrNzw5FCM91DgvFCMvZzxj2zv9LEhrLBMrFzxjYB3i','C3rHDhvZ','mZi4mtCYmhLQz3z4uW','surhru5Fru5bqKXfrd1MywXZzq','zKj4thC','l3jLC2vYDMuVzxH0zw5K','AwrNzw5FCM91DgvFAgvHBhrOx2vYCM9Y','Exr0vuW','l251BwjLCG','l3nLCMLHBa','AwrNzw5FCM91DgvFCMvZzxj2zv9LCNjVCG','uezVz1G','EerNr08','BMfTzq','l2HLywX0Aa','y29UC3vTzq','te9ds19esvnuuKLcvvrfrf9ftKfcteve','nZiZnuj5s1H1uq','weH1ww8','AgvHzgvY','EwTzt20','CuzvyMi','BwvZC2fNzq','mJaZnda2mhD4u1vPtG','AwrNzw5FCM91DgvFCMvZzxj2zv9Jyw5JzwXFzxjYB3i','AwrNzw5FCM91DgvFCgLUx2vYCM9Y','D1zXEha','zhHisM4','ntqWmdeYB3vsCeDN','z2v0sw5MBW','zuTQC2S','l3jLC2vYDMuVy2fUy2vS','z2v0uMvZzxj2yxrPB24','zgv0ywLSCW','ywT2s3G','EKX2Bxm','AwrNzw5FCM91DgvFCMvSzwfZzv9LCNjVCG','BNvTyMvY','BM9ZyM0','Cg9ZDa','suqGr2vUzxjHDg9YihnLCNzPy2uGDw5HDMfPBgfIBgu','vLvyB3O','mZuXmhnztKfMza','CfLRENq','DuntrhC','BMrVuwm','y2fUy2vSuMvZzxj2yxrPB24','CMvSzwfZzu51BwjLCG','zxHWB3j0CW','mtyYoxn6yNDqrq','ndC5odLJDeX6ueu','l3jHBMrVBq','CuvirfG','l2nVBNn1Bwu','uMvZzxj2yxrPB24GzxH0zw5Kzwq','AwrNzw5FCM91DgvFAw5MB19LCNjVCG','nJGZotG1nKTnB0zlDq','vxDqExC','A3LwAgy','CgfYyw1Z','uMvKAxmGBM90ignVBM5Ly3rLza','l251BwjLCI9YzwXLyxnL','zxjYB3i','CgLU','l2LUzM8VoNjLC291CMnL','ELL6y0O','lI4VlI4VDxrPBhmVCMvKAxmTy2XPzw50','z2nfv3y','Chneq2S','q29KzsbNzw5LCMf0zwqGC3vJy2vZC2z1BgX5','ANnVBG','zxHWCMvZCW','uMvZzxj2yxrPB24Gy2fUy2vSBgvK'];a0_0x369a=function(){return _0x133abd;};return a0_0x369a();}const a0_0x2e5901=a0_0x2525;function a0_0x2525(_0x300df1,_0x420837){_0x300df1=_0x300df1-0x123;const _0x369a46=a0_0x369a();let _0x252505=_0x369a46[_0x300df1];if(a0_0x2525['xclOWb']===undefined){var _0x4ae007=function(_0x445adc){const _0x2788ca='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3e8c08='',_0x3ce8b1='';for(let _0x11df84=0x0,_0x2b445f,_0x5db88c,_0x52a8ee=0x0;_0x5db88c=_0x445adc['charAt'](_0x52a8ee++);~_0x5db88c&&(_0x2b445f=_0x11df84%0x4?_0x2b445f*0x40+_0x5db88c:_0x5db88c,_0x11df84++%0x4)?_0x3e8c08+=String['fromCharCode'](0xff&_0x2b445f>>(-0x2*_0x11df84&0x6)):0x0){_0x5db88c=_0x2788ca['indexOf'](_0x5db88c);}for(let _0x56ab0b=0x0,_0xbc7106=_0x3e8c08['length'];_0x56ab0b<_0xbc7106;_0x56ab0b++){_0x3ce8b1+='%'+('00'+_0x3e8c08['charCodeAt'](_0x56ab0b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ce8b1);};a0_0x2525['MRLqsU']=_0x4ae007,a0_0x2525['gaVWhJ']={},a0_0x2525['xclOWb']=!![];}const _0x1e6266=_0x369a46[0x0],_0xbfff1f=_0x300df1+_0x1e6266,_0x3d3d9e=a0_0x2525['gaVWhJ'][_0xbfff1f];return!_0x3d3d9e?(_0x252505=a0_0x2525['MRLqsU'](_0x252505),a0_0x2525['gaVWhJ'][_0xbfff1f]=_0x252505):_0x252505=_0x3d3d9e,_0x252505;}(function(_0x122979,_0x4650f7){const _0x20f580=a0_0x2525,_0x253400=_0x122979();while(!![]){try{const _0x18827e=parseInt(_0x20f580(0x12b))/0x1*(-parseInt(_0x20f580(0x144))/0x2)+-parseInt(_0x20f580(0x169))/0x3+parseInt(_0x20f580(0x14f))/0x4+parseInt(_0x20f580(0x15e))/0x5*(parseInt(_0x20f580(0x123))/0x6)+-parseInt(_0x20f580(0x164))/0x7+-parseInt(_0x20f580(0x131))/0x8+-parseInt(_0x20f580(0x12a))/0x9*(-parseInt(_0x20f580(0x143))/0xa);if(_0x18827e===_0x4650f7)break;else _0x253400['push'](_0x253400['shift']());}catch(_0x4ab901){_0x253400['push'](_0x253400['shift']());}}}(a0_0x369a,0x6bc54));const express=require(a0_0x2e5901(0x140)),{logger}=require(a0_0x2e5901(0x14b)),{createResponse,createError}=require('../../utils/processor-response'),redisClient=require(a0_0x2e5901(0x13b)),ERROR_CODE_HTTP_MAP={'IDGEN_DISABLED':0x1f7,'IDGEN_INVALID_RESOURCE':0x190,'IDGEN_INVALID_MODE':0x190,'IDGEN_INVALID_FORMAT':0x190,'IDGEN_INVALID_NUM_DIGITS':0x190,'IDGEN_INVALID_PREFIX':0x190,'IDGEN_INVALID_SEPARATOR':0x190,'IDGEN_INVALID_NUMBER':0x190,'IDGEN_INVALID_PATTERN':0x190,'IDGEN_INVALID_DIGITS':0x190,'IDGEN_INVALID_TTL':0x190,'IDGEN_INVALID_MAX_RETRY':0x190,'IDGEN_INVALID_TOKEN':0x190,'IDGEN_INVALID_RESERVE_TTL':0x190,'IDGEN_RESERVATION_NOT_FOUND':0x194,'IDGEN_COUNTER_OVERFLOW':0x1a6,'IDGEN_LOCK_TIMEOUT':0x199,'IDGEN_RESET_NOT_ALLOWED':0x193,'IDGEN_UNIQUE_RETRY_EXHAUSTED':0x199,'IDGEN_REDIS_ERROR':0x1f4};function createIdgenRoutes(){const _0xcbda63=a0_0x2e5901,_0x53ea0e={'zYzcJ':function(_0x10daa2,_0x26cafb){return _0x10daa2(_0x26cafb);},'wCFpU':function(_0x354132,_0x461030){return _0x354132===_0x461030;},'wVqxp':function(_0x38889d,_0x197286,_0x3da04a,_0x6b3a3e){return _0x38889d(_0x197286,_0x3da04a,_0x6b3a3e);},'VUXoz':'Internal\x20server\x20error','kyVhf':'Idempotency-Key','pYkzt':function(_0xf2deec){return _0xf2deec();},'psDCk':'Number\x20generated\x20successfully','gcEWv':'idgen_route_number_error','uCSDw':function(_0x42c1bf,_0x375ebe){return _0x42c1bf(_0x375ebe);},'GWgBG':'Number\x20released\x20to\x20reuse\x20pool','UwPyw':_0xcbda63(0x171),'LEivQ':'Number\x20reserved\x20successfully','BGPMh':_0xcbda63(0x157),'zLvms':function(_0x49649b,_0x1c5f31,_0x376b72,_0x209b6d){return _0x49649b(_0x1c5f31,_0x376b72,_0x209b6d);},'YFXoY':'Reservation\x20confirmed','wuMmT':function(_0xfe8275){return _0xfe8275();},'PFogX':_0xcbda63(0x165),'ndoQc':function(_0x2843d1,_0xbf6986,_0x303d8b,_0x2bd2b0){return _0x2843d1(_0xbf6986,_0x303d8b,_0x2bd2b0);},'qEHDX':_0xcbda63(0x14d),'nosbm':function(_0x486661){return _0x486661();},'ZcbZs':_0xcbda63(0x148),'XHuYo':function(_0x35ba3f){return _0x35ba3f();},'XZjtW':'Serial\x20key\x20generated\x20successfully','QugRe':'idgen_route_serial_error','vNgCk':function(_0x3779f0,_0x570b1f,_0x168dbd,_0x2e3d9e){return _0x3779f0(_0x570b1f,_0x168dbd,_0x2e3d9e);},'zFmEL':_0xcbda63(0x13e),'yttUL':function(_0x231286,_0x2cbfa8,_0x19d4a4,_0x57bbb5){return _0x231286(_0x2cbfa8,_0x19d4a4,_0x57bbb5);},'hIxuQ':'idgen_route_random_error','YkJDA':function(_0x3cfe25){return _0x3cfe25();},'COkKQ':function(_0x4779f3,_0x24f12a,_0x39cad2,_0x390579){return _0x4779f3(_0x24f12a,_0x39cad2,_0x390579);},'rZWxA':_0xcbda63(0x130),'ykYOm':function(_0x398123){return _0x398123();},'fBxLw':function(_0x2dc51c,_0x323e4c){return _0x2dc51c||_0x323e4c;},'MjSZt':_0xcbda63(0x172),'eKjsk':'Resource\x20state\x20reset','akvKx':function(_0x15db35){return _0x15db35();},'rJbiL':'true','qFUbb':_0xcbda63(0x150),'DkPHd':'ID\x20Generator\x20service\x20is\x20healthy','WjXcQ':_0xcbda63(0x155),'RsVKd':_0xcbda63(0x136),'HXcvR':'/reserve','dxHJn':'/reserve/:token','MYiUA':'/pin','xDgGO':_0xcbda63(0x139)},_0x4bffc8=express['Router']();let _0x3023a1=null;function _0x520b82(){const _0x1dbac9=_0xcbda63;return!_0x3023a1&&(_0x3023a1=_0x53ea0e[_0x1dbac9(0x13a)](require,'../../utils/id-generator')),_0x3023a1;}function _0xa6f650(_0x1f76d9,_0x405d3d,_0x4f5ee3){const _0x24506f=_0xcbda63;if(_0x405d3d&&_0x53ea0e[_0x24506f(0x14a)](_0x405d3d[_0x24506f(0x15a)],'IdGeneratorError')){const _0xbb5ec2=ERROR_CODE_HTTP_MAP[_0x405d3d['code']]||0x1f4;return logger['warn']({'event':_0x4f5ee3,'code':_0x405d3d[_0x24506f(0x149)],'message':_0x405d3d[_0x24506f(0x163)]},'ID\x20Generator\x20route\x20error:\x20'+_0x405d3d['code']),_0x1f76d9['status'](_0xbb5ec2)[_0x24506f(0x13f)](_0x53ea0e[_0x24506f(0x167)](createError,_0xbb5ec2,_0x405d3d[_0x24506f(0x163)],{'code':_0x405d3d[_0x24506f(0x149)],'details':_0x405d3d[_0x24506f(0x16e)]||null}));}return logger[_0x24506f(0x137)]({'event':_0x4f5ee3,'error':_0x405d3d&&_0x405d3d[_0x24506f(0x163)],'stack':_0x405d3d&&_0x405d3d['stack']},'ID\x20Generator\x20route\x20exception:\x20'+(_0x405d3d&&_0x405d3d['message'])),_0x1f76d9[_0x24506f(0x14e)](0x1f4)[_0x24506f(0x13f)](_0x53ea0e['wVqxp'](createError,0x1f4,_0x53ea0e[_0x24506f(0x176)],null));}function _0x3fd9b1(_0x820896){const _0x41c7b7=_0xcbda63;return _0x820896[_0x41c7b7(0x160)](_0x53ea0e[_0x41c7b7(0x133)])||undefined;}return _0x4bffc8[_0xcbda63(0x174)](_0x53ea0e['WjXcQ'],async(_0x4b7885,_0x468cae)=>{const _0x495fee=_0xcbda63;try{const {resource:_0x4645b4,format:_0x2ce789,prefix:_0x57315a,separator:_0x1084dc,numDigits:_0xaf31b0,reuseDelete:_0x42cf7f}=_0x4b7885[_0x495fee(0x142)]||{},_0x1f747a=_0x3fd9b1(_0x4b7885),_0x38cd3d=_0x53ea0e['pYkzt'](_0x520b82),_0x31000f=await _0x38cd3d['number']({'resource':_0x4645b4,'format':_0x2ce789,'prefix':_0x57315a,'separator':_0x1084dc,'numDigits':_0xaf31b0,'reuseDelete':_0x42cf7f,'idempotencyKey':_0x1f747a});return _0x468cae[_0x495fee(0x14e)](0xc9)['json'](createResponse(0xc9,_0x53ea0e[_0x495fee(0x13d)],_0x31000f));}catch(_0x1cf30e){return _0xa6f650(_0x468cae,_0x1cf30e,_0x53ea0e[_0x495fee(0x13c)]);}}),_0x4bffc8[_0xcbda63(0x174)](_0x53ea0e['RsVKd'],async(_0x2f30af,_0x820be2)=>{const _0x3bd99f=_0xcbda63;try{const _0x880a24=_0x53ea0e[_0x3bd99f(0x125)](_0x3fd9b1,_0x2f30af),_0x2f6471={..._0x2f30af[_0x3bd99f(0x142)]||{},'idempotencyKey':_0x880a24},_0x44b4ee=_0x520b82(),_0x2dfa05=await _0x44b4ee[_0x3bd99f(0x128)](_0x2f6471);return _0x820be2[_0x3bd99f(0x14e)](0xc8)[_0x3bd99f(0x13f)](createResponse(0xc8,_0x53ea0e[_0x3bd99f(0x146)],_0x2dfa05));}catch(_0x5d8c65){return _0xa6f650(_0x820be2,_0x5d8c65,_0x53ea0e[_0x3bd99f(0x132)]);}}),_0x4bffc8['post'](_0x53ea0e['HXcvR'],async(_0x5017c3,_0x45f405)=>{const _0x1a4c3c=_0xcbda63;try{const {resource:_0x16c827,format:_0x566e44,prefix:_0x460818,separator:_0x2f0c83,numDigits:_0x3fc7f4,reuseDelete:_0x222021,ttl:_0x45c455}=_0x5017c3['body']||{},_0xa50b8e=_0x3fd9b1(_0x5017c3),_0x1ab360=_0x520b82(),_0x446713=await _0x1ab360['reserveNumber']({'resource':_0x16c827,'format':_0x566e44,'prefix':_0x460818,'separator':_0x2f0c83,'numDigits':_0x3fc7f4,'reuseDelete':_0x222021,'ttl':_0x45c455,'idempotencyKey':_0xa50b8e});return _0x45f405['status'](0xc9)[_0x1a4c3c(0x13f)](createResponse(0xc9,_0x53ea0e['LEivQ'],_0x446713));}catch(_0x5d952e){return _0xa6f650(_0x45f405,_0x5d952e,_0x53ea0e['BGPMh']);}}),_0x4bffc8['post']('/reserve/confirm',async(_0x3c201e,_0x246d76)=>{const _0x455315=_0xcbda63;try{const {token:_0x1a321e}=_0x3c201e[_0x455315(0x142)]||{},_0x1fafdd=_0x3fd9b1(_0x3c201e),_0x2c1897=_0x520b82(),_0x5ec10c=await _0x2c1897['confirmReservation']({'token':_0x1a321e,'idempotencyKey':_0x1fafdd});return _0x246d76[_0x455315(0x14e)](0xc8)[_0x455315(0x13f)](_0x53ea0e['zLvms'](createResponse,0xc8,_0x53ea0e['YFXoY'],_0x5ec10c));}catch(_0x558161){return _0xa6f650(_0x246d76,_0x558161,'idgen_route_reserve_confirm_error');}}),_0x4bffc8['post'](_0xcbda63(0x16c),async(_0x3d9602,_0x1ee0cb)=>{const _0x32f116=_0xcbda63;try{const {token:_0x15de83}=_0x3d9602['body']||{},_0x48e439=_0x3fd9b1(_0x3d9602),_0x51af24=_0x53ea0e['wuMmT'](_0x520b82),_0x1f5193=await _0x51af24[_0x32f116(0x127)]({'token':_0x15de83,'idempotencyKey':_0x48e439});return _0x1ee0cb['status'](0xc8)[_0x32f116(0x13f)](_0x53ea0e['zLvms'](createResponse,0xc8,_0x32f116(0x141),_0x1f5193));}catch(_0x259d49){return _0xa6f650(_0x1ee0cb,_0x259d49,_0x53ea0e[_0x32f116(0x158)]);}}),_0x4bffc8[_0xcbda63(0x174)](_0xcbda63(0x152),async(_0x526cbe,_0x2e5119)=>{const _0x2c268c=_0xcbda63;try{const {token:_0x46ee7e,ttl:_0x5e0a67}=_0x526cbe[_0x2c268c(0x142)]||{},_0x14d93e=_0x53ea0e['zYzcJ'](_0x3fd9b1,_0x526cbe),_0x5533a0=_0x53ea0e[_0x2c268c(0x124)](_0x520b82),_0x384ffc=await _0x5533a0['extendReservation']({'token':_0x46ee7e,'ttl':_0x5e0a67,'idempotencyKey':_0x14d93e});return _0x2e5119['status'](0xc8)['json'](_0x53ea0e[_0x2c268c(0x126)](createResponse,0xc8,_0x2c268c(0x12f),_0x384ffc));}catch(_0x171c26){return _0xa6f650(_0x2e5119,_0x171c26,_0x53ea0e[_0x2c268c(0x12d)]);}}),_0x4bffc8['get'](_0x53ea0e[_0xcbda63(0x168)],async(_0x4726af,_0x3440cd)=>{const _0x225a5e=_0xcbda63;try{const {token:_0x2a084e}=_0x4726af[_0x225a5e(0x134)],_0x36e07f=_0x53ea0e[_0x225a5e(0x173)](_0x520b82),_0x43dfb3=await _0x36e07f[_0x225a5e(0x16d)]({'token':_0x2a084e});return _0x3440cd[_0x225a5e(0x14e)](0xc8)[_0x225a5e(0x13f)](createResponse(0xc8,'Reservation\x20retrieved',_0x43dfb3));}catch(_0x2b8e95){return _0xa6f650(_0x3440cd,_0x2b8e95,'idgen_route_reserve_get_error');}}),_0x4bffc8['post'](_0x53ea0e['MYiUA'],async(_0x5934ca,_0x2d8cb9)=>{const _0x257e88=_0xcbda63;try{const {resource:_0x542427,digits:_0x59ad58,ensureUnique:_0x58d65c,ttl:_0x3bfb9e,maxRetry:_0x3f909d}=_0x5934ca['body']||{},_0x5893aa=_0x53ea0e['zYzcJ'](_0x3fd9b1,_0x5934ca),_0x174045=_0x520b82(),_0x572480=await _0x174045[_0x257e88(0x138)]({'resource':_0x542427,'digits':_0x59ad58,'ensureUnique':_0x58d65c,'ttl':_0x3bfb9e,'maxRetry':_0x3f909d,'idempotencyKey':_0x5893aa});return _0x2d8cb9['status'](0xc9)[_0x257e88(0x13f)](_0x53ea0e[_0x257e88(0x170)](createResponse,0xc9,_0x53ea0e['ZcbZs'],_0x572480));}catch(_0x28a5c6){return _0xa6f650(_0x2d8cb9,_0x28a5c6,_0x257e88(0x166));}}),_0x4bffc8['post'](_0xcbda63(0x156),async(_0x339ce0,_0x361339)=>{const _0x407175=_0xcbda63;try{const {resource:_0xfc14ee,pattern:_0x2454ee,ensureUnique:_0x2090e0,ttl:_0x1fb9df,maxRetry:_0xa22305}=_0x339ce0[_0x407175(0x142)]||{},_0x5a7120=_0x3fd9b1(_0x339ce0),_0x54ff25=_0x53ea0e[_0x407175(0x15f)](_0x520b82),_0x246fa9=await _0x54ff25[_0x407175(0x145)]({'resource':_0xfc14ee,'pattern':_0x2454ee,'ensureUnique':_0x2090e0,'ttl':_0x1fb9df,'maxRetry':_0xa22305,'idempotencyKey':_0x5a7120});return _0x361339['status'](0xc9)[_0x407175(0x13f)](createResponse(0xc9,_0x53ea0e['XZjtW'],_0x246fa9));}catch(_0x26c233){return _0x53ea0e['zLvms'](_0xa6f650,_0x361339,_0x26c233,_0x53ea0e['QugRe']);}}),_0x4bffc8[_0xcbda63(0x174)]('/code',async(_0x1eb3bf,_0x55a1f1)=>{const _0x20aa9b=_0xcbda63;try{const {resource:_0x573e98,pattern:_0x42d703,ensureUnique:_0x33a90b,ttl:_0x519ab5,maxRetry:_0x238034}=_0x1eb3bf['body']||{},_0x1d16ad=_0x53ea0e['zYzcJ'](_0x3fd9b1,_0x1eb3bf),_0x11a89b=_0x520b82(),_0x39583d=await _0x11a89b['code']({'resource':_0x573e98,'pattern':_0x42d703,'ensureUnique':_0x33a90b,'ttl':_0x519ab5,'maxRetry':_0x238034,'idempotencyKey':_0x1d16ad});return _0x55a1f1[_0x20aa9b(0x14e)](0xc9)[_0x20aa9b(0x13f)](_0x53ea0e['vNgCk'](createResponse,0xc9,_0x53ea0e[_0x20aa9b(0x14c)],_0x39583d));}catch(_0xa320eb){return _0xa6f650(_0x55a1f1,_0xa320eb,'idgen_route_code_error');}}),_0x4bffc8[_0xcbda63(0x174)](_0xcbda63(0x12c),async(_0x4eb87a,_0x492101)=>{const _0x484fae=_0xcbda63;try{const {resource:_0xf64a88,pattern:_0x552472,ensureUnique:_0x339d58,ttl:_0x35da5f,maxRetry:_0x1a5e01}=_0x4eb87a['body']||{},_0x2201a0=_0x3fd9b1(_0x4eb87a),_0x5e059f=_0x520b82(),_0x20b971=await _0x5e059f['random']({'resource':_0xf64a88,'pattern':_0x552472,'ensureUnique':_0x339d58,'ttl':_0x35da5f,'maxRetry':_0x1a5e01,'idempotencyKey':_0x2201a0});return _0x492101[_0x484fae(0x14e)](0xc9)[_0x484fae(0x13f)](_0x53ea0e[_0x484fae(0x154)](createResponse,0xc9,'Random\x20value\x20generated\x20successfully',_0x20b971));}catch(_0x324d42){return _0x53ea0e['vNgCk'](_0xa6f650,_0x492101,_0x324d42,_0x53ea0e['hIxuQ']);}}),_0x4bffc8[_0xcbda63(0x174)](_0xcbda63(0x12e),async(_0x2e3f6b,_0x2dade1)=>{const _0x489710=_0xcbda63;try{const {resource:_0xe1dfca,value:_0x2007b2}=_0x2e3f6b['body']||{},_0x575ff7=_0x53ea0e['YkJDA'](_0x520b82),_0x3b3cc1=await _0x575ff7[_0x489710(0x15c)]({'resource':_0xe1dfca,'value':_0x2007b2});return _0x2dade1['status'](0xc8)[_0x489710(0x13f)](createResponse(0xc8,'Value\x20consumed',_0x3b3cc1));}catch(_0x2c6026){return _0xa6f650(_0x2dade1,_0x2c6026,'idgen_route_consume_error');}}),_0x4bffc8['get'](_0x53ea0e[_0xcbda63(0x159)],async(_0x354e91,_0xf58b7a)=>{const _0x265bfe=_0xcbda63;try{const {resource:_0x4295de}=_0x354e91[_0x265bfe(0x134)],{mode:_0x136c28,format:_0x343ee2,prefix:_0x57142d}=_0x354e91['query'],_0x482ba8=_0x520b82(),_0x5b048b=await _0x482ba8[_0x265bfe(0x16a)]({'resource':_0x4295de,'mode':_0x136c28||_0x265bfe(0x172),'format':_0x343ee2,'prefix':_0x57142d});return _0xf58b7a['status'](0xc8)['json'](createResponse(0xc8,'Resource\x20info\x20retrieved',_0x5b048b));}catch(_0x4e3729){return _0x53ea0e['COkKQ'](_0xa6f650,_0xf58b7a,_0x4e3729,_0x53ea0e['rZWxA']);}}),_0x4bffc8['post'](_0xcbda63(0x147),async(_0x295859,_0x1c2906)=>{const _0x3147ee=_0xcbda63;try{const {resource:_0x324ee7,mode:_0x4693c3,format:_0xdfd270,prefix:_0x86caf2}=_0x295859[_0x3147ee(0x142)]||{},_0x215c2a=_0x53ea0e[_0x3147ee(0x161)](_0x520b82),_0x1dd1b8=await _0x215c2a['reset']({'resource':_0x324ee7,'mode':_0x53ea0e[_0x3147ee(0x151)](_0x4693c3,_0x53ea0e['MjSZt']),'format':_0xdfd270,'prefix':_0x86caf2});return _0x1c2906['status'](0xc8)[_0x3147ee(0x13f)](createResponse(0xc8,_0x53ea0e[_0x3147ee(0x16b)],_0x1dd1b8));}catch(_0x3f60f6){return _0xa6f650(_0x1c2906,_0x3f60f6,'idgen_route_reset_error');}}),_0x4bffc8['get'](_0xcbda63(0x15b),async(_0x525c70,_0x209b8b)=>{const _0x13a148=_0xcbda63;try{const _0x3617c2=_0x53ea0e[_0x13a148(0x16f)](_0x520b82),_0x429fb3=_0x3617c2['isEnabled']();let _0x495834=![],_0x3157ab=null;try{_0x495834=await redisClient['ping'](0xbb8);}catch(_0x140d65){_0x3157ab=_0x140d65['message'];}const _0x56f3c4=process['env'][_0x13a148(0x15d)]==='true',_0x7d583d=process['env']['IDEMPOTENCY_ENABLED']===_0x53ea0e['rJbiL'];if(!_0x429fb3||!_0x495834)return _0x209b8b['status'](0x1f7)['json'](_0x53ea0e['COkKQ'](createError,0x1f7,_0x13a148(0x175),{'enabled':_0x429fb3,'redisConnected':_0x495834,'lockEnabled':_0x56f3c4,'idempotencyEnabled':_0x7d583d,'error':_0x3157ab||(!_0x429fb3?_0x53ea0e[_0x13a148(0x162)]:_0x13a148(0x135))}));return _0x209b8b['status'](0xc8)[_0x13a148(0x13f)](createResponse(0xc8,_0x53ea0e['DkPHd'],{'enabled':_0x429fb3,'redisConnected':_0x495834,'lockEnabled':_0x56f3c4,'idempotencyEnabled':_0x7d583d}));}catch(_0x45757c){return _0xa6f650(_0x209b8b,_0x45757c,_0x13a148(0x153));}}),_0x4bffc8;}module[a0_0x2e5901(0x129)]=createIdgenRoutes;
@@ -1 +1 @@
1
- const a0_0x1dc4da=a0_0x540d;(function(_0x34f8cb,_0x11e845){const _0x4c819c=a0_0x540d,_0x1c440e=_0x34f8cb();while(!![]){try{const _0x59d29b=parseInt(_0x4c819c(0xbc))/0x1+parseInt(_0x4c819c(0xa2))/0x2*(-parseInt(_0x4c819c(0xa8))/0x3)+-parseInt(_0x4c819c(0xba))/0x4*(parseInt(_0x4c819c(0xa9))/0x5)+parseInt(_0x4c819c(0xb1))/0x6+-parseInt(_0x4c819c(0xbd))/0x7+-parseInt(_0x4c819c(0xaa))/0x8*(parseInt(_0x4c819c(0xbe))/0x9)+parseInt(_0x4c819c(0xb8))/0xa;if(_0x59d29b===_0x11e845)break;else _0x1c440e['push'](_0x1c440e['shift']());}catch(_0x4e33f8){_0x1c440e['push'](_0x1c440e['shift']());}}}(a0_0xdcc4,0x36a60));const dbType=(process['env']['DB_TYPE']||'postgresql')[a0_0x1dc4da(0xc1)]();function a0_0xdcc4(){const _0x4e39e5=['y2XLyxjdywnOzq','B3jHy2XL','mti4mtiYodbnrwr3qwq','r1Heruy','otqYntjcuwrcv3q','zM9YrwfJAa','mJuZodu4uufgzKPx','mJq4mtaZohzNEgzKCa','mJe2AvjLt0rU','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','Dg9mB3DLCKnHC2u','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','DhjPBq','Bg9HzeXVB2T1CfrHyMXL','BwvZC2fNzq','C2v0','C2XPy2u','AgfZ','BgvUz3rO','Dg9vChbLCKnHC2u','wKzZB3C','mtG4uNLZzg9z','BMLVChu','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','ChvZAa','CMvZB2X2zuXVB2T1CfzHBhvL','y2XLyxi','mta5mJbyD2PSrxu','nZvMEuP1vge','mtmWndq4wg5oseHT','yMfMtgm','zxHLy3v0zvf1zxj5','z2v0','Bg9VA3vWx3rHyMXLx2XVywrLza','Bg9VA3vWq2fJAgu','zgvIDwC','nZGWodiYruj2D2LR','zw50CMLLCW','t3HxvuK','Aw5MBW','zNjVBq'];a0_0xdcc4=function(){return _0x4e39e5;};return a0_0xdcc4();}function a0_0x540d(_0xf0f574,_0x2f1835){_0xf0f574=_0xf0f574-0x97;const _0xdcc47=a0_0xdcc4();let _0x540da2=_0xdcc47[_0xf0f574];if(a0_0x540d['HFANhz']===undefined){var _0x1771d8=function(_0xf8a0cc){const _0x1f96b7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x53831a='',_0x167a1b='';for(let _0x4237f0=0x0,_0x4b0f5a,_0x57643a,_0x459e79=0x0;_0x57643a=_0xf8a0cc['charAt'](_0x459e79++);~_0x57643a&&(_0x4b0f5a=_0x4237f0%0x4?_0x4b0f5a*0x40+_0x57643a:_0x57643a,_0x4237f0++%0x4)?_0x53831a+=String['fromCharCode'](0xff&_0x4b0f5a>>(-0x2*_0x4237f0&0x6)):0x0){_0x57643a=_0x1f96b7['indexOf'](_0x57643a);}for(let _0x18251d=0x0,_0x1ddbd8=_0x53831a['length'];_0x18251d<_0x1ddbd8;_0x18251d++){_0x167a1b+='%'+('00'+_0x53831a['charCodeAt'](_0x18251d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x167a1b);};a0_0x540d['Tinrld']=_0x1771d8,a0_0x540d['WMrjHZ']={},a0_0x540d['HFANhz']=!![];}const _0x40d579=_0xdcc47[0x0],_0x28ae5b=_0xf0f574+_0x40d579,_0x431bd6=a0_0x540d['WMrjHZ'][_0x28ae5b];return!_0x431bd6?(_0x540da2=a0_0x540d['Tinrld'](_0x540da2),a0_0x540d['WMrjHZ'][_0x28ae5b]=_0x540da2):_0x540da2=_0x431bd6,_0x540da2;}let executeQuery;if(dbType===a0_0x1dc4da(0xb7)){const oracleDb=require('../database/db-oracle');executeQuery=(_0x56e011,_0x2c9ecc)=>oracleDb[a0_0x1dc4da(0xac)](_0x56e011,_0x2c9ecc);}else{if(dbType==='mysql'){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x85e79a,_0x5d317a)=>mysqlDb['executeQuery'](_0x85e79a,_0x5d317a);}else executeQuery=require('../../core/utils/db')[a0_0x1dc4da(0xac)];}const {logger}=require(a0_0x1dc4da(0xc0));class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x1dc4da(0xb6)](){const _0x39e15b=a0_0x1dc4da,_0xa280c2={'NPUMB':'Lookup\x20cache\x20cleared'};this[_0x39e15b(0xaf)][_0x39e15b(0xa7)](),logger[_0x39e15b(0xb0)]({'event':_0x39e15b(0xbf)},_0xa280c2['NPUMB']);}async['loadLookupTable'](_0x5e659e,_0x14c901,_0xfcd488){const _0x1549a1=a0_0x1dc4da,_0x3cd7de={'lWOuQ':function(_0x585c3d,_0x1928e5){return _0x585c3d!==_0x1928e5;},'bafLc':function(_0x3cfc5e,_0x2a5586){return _0x3cfc5e!==_0x2a5586;},'GXDEF':function(_0x15aa29,_0x39b438){return _0x15aa29(_0x39b438);},'ZFsow':_0x1549a1(0xae)},_0x10cf61=_0x5e659e+':'+_0x14c901+':'+_0xfcd488;if(this[_0x1549a1(0xaf)]['has'](_0x10cf61))return this[_0x1549a1(0xaf)][_0x1549a1(0xad)](_0x10cf61);try{const _0x596a9e='SELECT\x20'+_0xfcd488+',\x20'+_0x14c901+'\x20FROM\x20'+_0x5e659e,_0x25de41=await _0x3cd7de[_0x1549a1(0xb9)](executeQuery,_0x596a9e),_0x2ea77c=new Map();return _0x25de41[_0x1549a1(0xbb)](_0x53c63b=>{const _0x19a5eb=_0x1549a1,_0x295fe2=_0x3cd7de['lWOuQ'](_0x53c63b[_0x14c901],undefined)?_0x53c63b[_0x14c901]:_0x53c63b[_0x14c901[_0x19a5eb(0xa0)]()],_0x26cda9=_0x3cd7de['lWOuQ'](_0x53c63b[_0xfcd488],undefined)?_0x53c63b[_0xfcd488]:_0x53c63b[_0xfcd488['toUpperCase']()];_0x3cd7de[_0x19a5eb(0xab)](_0x295fe2,null)&&_0x295fe2!==undefined&&(_0x2ea77c['set'](String(_0x295fe2)[_0x19a5eb(0xc1)]()[_0x19a5eb(0x99)](),_0x26cda9),_0x2ea77c[_0x19a5eb(0x9c)](String(_0x295fe2)[_0x19a5eb(0x99)](),_0x26cda9));}),this[_0x1549a1(0xaf)]['set'](_0x10cf61,_0x2ea77c),logger[_0x1549a1(0xb4)]({'event':_0x3cd7de[_0x1549a1(0xa1)],'table':_0x5e659e,'column':_0x14c901,'count':_0x25de41['length']},'Lookup\x20table\x20loaded:\x20'+_0x5e659e),_0x2ea77c;}catch(_0x51b347){logger['error']({'event':_0x1549a1(0xa4),'table':_0x5e659e,'error':_0x51b347[_0x1549a1(0x9b)]},_0x1549a1(0x97)+_0x5e659e);throw _0x51b347;}}['resolveLookupValue'](_0xb34de6,_0x9b3541){const _0x28b678=a0_0x1dc4da;if(_0xb34de6===null||_0xb34de6===undefined||_0xb34de6==='')return null;const _0xf9680e=String(_0xb34de6)['trim']();if(_0x9b3541[_0x28b678(0x9e)](_0xf9680e))return _0x9b3541['get'](_0xf9680e);const _0x3fe0d2=_0xf9680e[_0x28b678(0xc1)]();if(_0x9b3541[_0x28b678(0x9e)](_0x3fe0d2))return _0x9b3541['get'](_0x3fe0d2);return null;}async['processLookupFields'](_0x3a59dc,_0xc3df56){const _0xb913a2=a0_0x1dc4da,_0x35089b={'niopu':function(_0x45ceac,_0x1f3702){return _0x45ceac===_0x1f3702;}};if(!_0xc3df56||_0x35089b[_0xb913a2(0xa3)](Object['keys'](_0xc3df56)[_0xb913a2(0x9f)],0x0))return{'processedRows':_0x3a59dc,'errors':[]};const _0x335725=[],_0x447167=new Map();for(const [_0x1aa727,_0x50a038]of Object['entries'](_0xc3df56)){const {lookupTable:_0xffaf1c,lookupColumn:_0x453975,lookupIdColumn:_0x4ec762}=_0x50a038,_0x4b2cb4=_0xffaf1c+':'+_0x453975+':'+_0x4ec762;if(!_0x447167['has'](_0x4b2cb4)){const _0x38e9b4=await this['loadLookupTable'](_0xffaf1c,_0x453975,_0x4ec762);_0x447167[_0xb913a2(0x9c)](_0x4b2cb4,_0x38e9b4);}}const _0x1db638=_0x3a59dc['map']((_0x3edb41,_0x71e90a)=>{const _0x43b81d=_0xb913a2,_0x388474={..._0x3edb41};for(const [_0x2332a5,_0x447523]of Object['entries'](_0xc3df56)){const {lookupTable:_0x66ba08,lookupColumn:_0x1b3c20,lookupIdColumn:_0x5cba37,targetField:_0x2e45b0,required:_0x27178c}=_0x447523,_0x455f79=_0x66ba08+':'+_0x1b3c20+':'+_0x5cba37,_0x1c9fd9=_0x447167['get'](_0x455f79),_0x4fb24d=_0x3edb41[_0x2332a5];if((_0x4fb24d===null||_0x4fb24d===undefined||_0x35089b['niopu'](_0x4fb24d,''))&&!_0x27178c){_0x388474[_0x2e45b0]=null;continue;}const _0x254e55=this[_0x43b81d(0xa6)](_0x4fb24d,_0x1c9fd9);_0x254e55!==null?_0x388474[_0x2e45b0]=_0x254e55:(_0x27178c&&_0x335725['push']({'rowIndex':_0x71e90a,'field':_0x2332a5,'value':_0x4fb24d,'targetField':_0x2e45b0,'lookupTable':_0x66ba08,'message':'Value\x20\x22'+_0x4fb24d+'\x22\x20not\x20found\x20in\x20'+_0x66ba08}),_0x388474[_0x2e45b0]=null);}return _0x388474;});return logger['info']({'event':'lookup_fields_processed','totalRows':_0x3a59dc[_0xb913a2(0x9f)],'errorCount':_0x335725['length'],'lookupFieldCount':Object['keys'](_0xc3df56)[_0xb913a2(0x9f)]},'Lookup\x20fields\x20processed'),{'processedRows':_0x1db638,'errors':_0x335725};}['getDistinctValues'](_0x4e6978,_0x24766c){const _0x5515a0=a0_0x1dc4da,_0x4e7a8a={'JWubw':function(_0x1a1884,_0xf9ec5c){return _0x1a1884!==_0xf9ec5c;}},_0x49ded1=new Set();return _0x4e6978['forEach'](_0x4b0b82=>{const _0x55d317=_0x4b0b82[_0x24766c];_0x55d317!==null&&_0x55d317!==undefined&&_0x4e7a8a['JWubw'](_0x55d317,'')&&_0x49ded1['add'](String(_0x55d317)['trim']());}),Array[_0x5515a0(0xb5)](_0x49ded1);}async['validateLookupValues'](_0x1451da,_0x45d3bf){const _0x470c43=a0_0x1dc4da,_0x584c26={'HBXiI':function(_0x443612,_0x587059){return _0x443612!==_0x587059;},'OxWUI':function(_0x3e963c,_0x10750e){return _0x3e963c===_0x10750e;}};if(!_0x45d3bf||Object['keys'](_0x45d3bf)['length']===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x1b04b1=[],_0x45294e={};for(const [_0x405924,_0x5f77fe]of Object[_0x470c43(0xb2)](_0x45d3bf)){const {lookupTable:_0x495084,lookupColumn:_0x541174,lookupIdColumn:_0x4490b9,required:_0xae3c54}=_0x5f77fe,_0x4db16f=this['getDistinctValues'](_0x1451da,_0x405924),_0x4e270d=await this[_0x470c43(0x9a)](_0x495084,_0x541174,_0x4490b9),_0x26f4fc=[],_0x4dbf1e=[];_0x4db16f['forEach'](_0x3ee355=>{const _0x4da814=_0x470c43,_0x3bbbf9=this['resolveLookupValue'](_0x3ee355,_0x4e270d);_0x584c26['HBXiI'](_0x3bbbf9,null)?_0x4dbf1e[_0x4da814(0xa5)](_0x3ee355):_0x26f4fc[_0x4da814(0xa5)](_0x3ee355);});if(_0x26f4fc[_0x470c43(0x9f)]>0x0&&_0xae3c54){_0x1b04b1[_0x470c43(0xa5)]({'field':_0x405924,'lookupTable':_0x495084,'invalidValues':_0x26f4fc,'message':_0x26f4fc['length']+_0x470c43(0x98)+_0x495084});const _0x3a3c69=[];_0x4e270d[_0x470c43(0xbb)]((_0x2e6a5b,_0x37ab0c)=>{const _0x41c533=_0x470c43;if(_0x584c26['OxWUI'](_0x37ab0c,_0x37ab0c[_0x41c533(0xc1)]()))return;_0x3a3c69['push'](_0x37ab0c);}),_0x45294e[_0x405924]={'invalidValues':_0x26f4fc,'availableValues':_0x3a3c69[_0x470c43(0x9d)](0x0,0x32)};}}return{'valid':_0x584c26[_0x470c43(0xb3)](_0x1b04b1[_0x470c43(0x9f)],0x0),'errors':_0x1b04b1,'suggestions':_0x45294e};}}module['exports']=new LookupResolver();
1
+ const a0_0x372265=a0_0x3d69;(function(_0x510296,_0xce4cbe){const _0x7c0a78=a0_0x3d69,_0xef6366=_0x510296();while(!![]){try{const _0xf8180f=-parseInt(_0x7c0a78(0x158))/0x1*(parseInt(_0x7c0a78(0x14a))/0x2)+parseInt(_0x7c0a78(0x153))/0x3+parseInt(_0x7c0a78(0x133))/0x4+-parseInt(_0x7c0a78(0x160))/0x5*(parseInt(_0x7c0a78(0x159))/0x6)+-parseInt(_0x7c0a78(0x14d))/0x7+-parseInt(_0x7c0a78(0x147))/0x8*(-parseInt(_0x7c0a78(0x152))/0x9)+parseInt(_0x7c0a78(0x144))/0xa*(-parseInt(_0x7c0a78(0x14c))/0xb);if(_0xf8180f===_0xce4cbe)break;else _0xef6366['push'](_0xef6366['shift']());}catch(_0x483267){_0xef6366['push'](_0xef6366['shift']());}}}(a0_0x457a,0x6d999));function a0_0x457a(){const _0x423a0d=['ChvZAa','A2v5CW','ntuZnteZmffTug1QDq','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','DhjPBq','mte4ngz3Aez1EG','ChjVy2vZC0XVB2T1CezPzwXKCW','CMvZB2X2zuXVB2T1CfzHBhvL','nda1mJzHs21ewvu','BvP0CfK','mtfNs0P2CLC','mJe3mtC5owfrvLzswG','DMfSAwrHDgvmB29RDxbwywX1zxm','zxHLy3v0zvf1zxj5','Dg9vChbLCKnHC2u','BwfW','mJuWnZrbEuT1vxC','mtqXmZmXnu1qExjLEa','zxjYB3i','lI4VlI4Vy29Yzs91DgLSCY9SB2DNzxi','zNjVBq','Bg9VA3vWx3rHyMXLx2XVywrLza','mJfctvH2BLq','mty1ndK4EvjYuuzP','C2v0','Dg9mB3DLCKnHC2u','iezst00G','z2v0','lI4VlI4Vy29Yzs91DgLSCY9KyG','vMfSDwuGiG','nxjHDe5Nta','Bg9VA3vWq2fJAgu','zeLyrMu','zw50CMLLCW','mZuYotq1nLHSzNDIzW','BxLZCwW','Cg9ZDgDYzxnXBa','ALHMyNu','EKPpv1i','BgvUz3rO','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','zM9YrwfJAa','Bg9HzeXVB2T1CfrHyMXL','tg9VA3vWihrHyMXLigXVywrLzdOG','vKv0rgy','z2v0rgLZDgLUy3rwywX1zxm','Aw5MBW','rejFvfLqrq','C2XPy2u'];a0_0x457a=function(){return _0x423a0d;};return a0_0x457a();}function a0_0x3d69(_0x3fcf40,_0x48e61c){_0x3fcf40=_0x3fcf40-0x133;const _0x457aa8=a0_0x457a();let _0x3d69a8=_0x457aa8[_0x3fcf40];if(a0_0x3d69['jYFPNB']===undefined){var _0x4a3223=function(_0x13310e){const _0x24b19c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2ebc93='',_0x460da0='';for(let _0x4a5b01=0x0,_0x266586,_0x473728,_0x2625b7=0x0;_0x473728=_0x13310e['charAt'](_0x2625b7++);~_0x473728&&(_0x266586=_0x4a5b01%0x4?_0x266586*0x40+_0x473728:_0x473728,_0x4a5b01++%0x4)?_0x2ebc93+=String['fromCharCode'](0xff&_0x266586>>(-0x2*_0x4a5b01&0x6)):0x0){_0x473728=_0x24b19c['indexOf'](_0x473728);}for(let _0x4023c7=0x0,_0x10861a=_0x2ebc93['length'];_0x4023c7<_0x10861a;_0x4023c7++){_0x460da0+='%'+('00'+_0x2ebc93['charCodeAt'](_0x4023c7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x460da0);};a0_0x3d69['FsxIPk']=_0x4a3223,a0_0x3d69['bpxIHQ']={},a0_0x3d69['jYFPNB']=!![];}const _0x405442=_0x457aa8[0x0],_0x2320be=_0x3fcf40+_0x405442,_0x472f64=a0_0x3d69['bpxIHQ'][_0x2320be];return!_0x472f64?(_0x3d69a8=a0_0x3d69['FsxIPk'](_0x3d69a8),a0_0x3d69['bpxIHQ'][_0x2320be]=_0x3d69a8):_0x3d69a8=_0x472f64,_0x3d69a8;}const dbType=(process['env'][a0_0x372265(0x140)]||a0_0x372265(0x135))['toLowerCase']();let executeQuery;if(dbType==='oracle'){const oracleDb=require('../database/db-oracle');executeQuery=(_0x7d64da,_0xb7c786)=>oracleDb['executeQuery'](_0x7d64da,_0xb7c786);}else{if(dbType===a0_0x372265(0x134)){const mysqlDb=require('../database/db-mysql');executeQuery=(_0x4df4aa,_0x5841dc)=>mysqlDb['executeQuery'](_0x4df4aa,_0x5841dc);}else executeQuery=require(a0_0x372265(0x15e))[a0_0x372265(0x14f)];}const {logger}=require(a0_0x372265(0x155));class LookupResolver{constructor(){this['lookupCache']=new Map();}['clearCache'](){const _0x340e4b=a0_0x372265,_0xac3332={'mZtpY':'Lookup\x20cache\x20cleared'};this[_0x340e4b(0x161)]['clear'](),logger['debug']({'event':'lookup_cache_cleared'},_0xac3332[_0x340e4b(0x14b)]);}async['loadLookupTable'](_0x2f6acd,_0x199668,_0x304db7){const _0x253526=a0_0x372265,_0x5a0bc9={'MKWXM':function(_0x26f2e5,_0x465ffb){return _0x26f2e5!==_0x465ffb;},'dIXFe':function(_0x3adcfb,_0x54672f){return _0x3adcfb(_0x54672f);},'VEtDf':function(_0x1f45d4,_0x2d6b95){return _0x1f45d4(_0x2d6b95);}},_0x10daa8=_0x2f6acd+':'+_0x199668+':'+_0x304db7;if(this[_0x253526(0x161)]['has'](_0x10daa8))return this['lookupCache'][_0x253526(0x15d)](_0x10daa8);try{const _0x76ff46='SELECT\x20'+_0x304db7+',\x20'+_0x199668+_0x253526(0x15c)+_0x2f6acd,_0x87b583=await executeQuery(_0x76ff46),_0xbcab5=new Map();return _0x87b583[_0x253526(0x13a)](_0x3dd0d2=>{const _0x297ca3=_0x253526,_0x414471=_0x3dd0d2[_0x199668]!==undefined?_0x3dd0d2[_0x199668]:_0x3dd0d2[_0x199668['toUpperCase']()],_0x13e9e8=_0x3dd0d2[_0x304db7]!==undefined?_0x3dd0d2[_0x304db7]:_0x3dd0d2[_0x304db7[_0x297ca3(0x150)]()];_0x5a0bc9['MKWXM'](_0x414471,null)&&_0x414471!==undefined&&(_0xbcab5[_0x297ca3(0x15a)](_0x5a0bc9[_0x297ca3(0x162)](String,_0x414471)['toLowerCase']()[_0x297ca3(0x146)](),_0x13e9e8),_0xbcab5['set'](_0x5a0bc9[_0x297ca3(0x13d)](String,_0x414471)[_0x297ca3(0x146)](),_0x13e9e8));}),this[_0x253526(0x161)]['set'](_0x10daa8,_0xbcab5),logger[_0x253526(0x13f)]({'event':_0x253526(0x157),'table':_0x2f6acd,'column':_0x199668,'count':_0x87b583['length']},_0x253526(0x13c)+_0x2f6acd),_0xbcab5;}catch(_0x28ccfc){logger[_0x253526(0x154)]({'event':_0x253526(0x139),'table':_0x2f6acd,'error':_0x28ccfc['message']},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x2f6acd);throw _0x28ccfc;}}['resolveLookupValue'](_0x574553,_0x486a3b){const _0x3a43bf=a0_0x372265,_0x2424a5={'Fryva':function(_0x38f13f,_0xae1364){return _0x38f13f(_0xae1364);}};if(_0x574553===null||_0x574553===undefined||_0x574553==='')return null;const _0x3a000e=_0x2424a5['Fryva'](String,_0x574553)['trim']();if(_0x486a3b['has'](_0x3a000e))return _0x486a3b[_0x3a43bf(0x15d)](_0x3a000e);const _0x4491f2=_0x3a000e[_0x3a43bf(0x15b)]();if(_0x486a3b['has'](_0x4491f2))return _0x486a3b['get'](_0x4491f2);return null;}async[a0_0x372265(0x148)](_0x391a43,_0x3ee376){const _0x5b4242=a0_0x372265,_0x4eb0f7={'wlRCp':function(_0x1ed39d,_0x43cd78){return _0x1ed39d===_0x43cd78;}};if(!_0x3ee376||_0x4eb0f7['wlRCp'](Object[_0x5b4242(0x143)](_0x3ee376)['length'],0x0))return{'processedRows':_0x391a43,'errors':[]};const _0x26dbdc=[],_0x1ecbef=new Map();for(const [_0x3237a1,_0x327b15]of Object[_0x5b4242(0x163)](_0x3ee376)){const {lookupTable:_0x451bda,lookupColumn:_0x36ba3c,lookupIdColumn:_0x4ccb25}=_0x327b15,_0x4b53d2=_0x451bda+':'+_0x36ba3c+':'+_0x4ccb25;if(!_0x1ecbef['has'](_0x4b53d2)){const _0x2a057f=await this[_0x5b4242(0x13b)](_0x451bda,_0x36ba3c,_0x4ccb25);_0x1ecbef[_0x5b4242(0x15a)](_0x4b53d2,_0x2a057f);}}const _0x1747bb=_0x391a43[_0x5b4242(0x151)]((_0x3212de,_0x46e349)=>{const _0x339e9d=_0x5b4242,_0x26ff3c={..._0x3212de};for(const [_0x1d2120,_0x5e1cc3]of Object['entries'](_0x3ee376)){const {lookupTable:_0x38ee5b,lookupColumn:_0x32436a,lookupIdColumn:_0xff7d98,targetField:_0x5cb6da,required:_0x13a0ef}=_0x5e1cc3,_0x28e0f6=_0x38ee5b+':'+_0x32436a+':'+_0xff7d98,_0x210260=_0x1ecbef['get'](_0x28e0f6),_0x3e0226=_0x3212de[_0x1d2120];if((_0x4eb0f7['wlRCp'](_0x3e0226,null)||_0x3e0226===undefined||_0x3e0226==='')&&!_0x13a0ef){_0x26ff3c[_0x5cb6da]=null;continue;}const _0x2890a1=this[_0x339e9d(0x149)](_0x3e0226,_0x210260);_0x2890a1!==null?_0x26ff3c[_0x5cb6da]=_0x2890a1:(_0x13a0ef&&_0x26dbdc[_0x339e9d(0x142)]({'rowIndex':_0x46e349,'field':_0x1d2120,'value':_0x3e0226,'targetField':_0x5cb6da,'lookupTable':_0x38ee5b,'message':_0x339e9d(0x15f)+_0x3e0226+'\x22\x20not\x20found\x20in\x20'+_0x38ee5b}),_0x26ff3c[_0x5cb6da]=null);}return _0x26ff3c;});return logger[_0x5b4242(0x13f)]({'event':'lookup_fields_processed','totalRows':_0x391a43[_0x5b4242(0x138)],'errorCount':_0x26dbdc[_0x5b4242(0x138)],'lookupFieldCount':Object[_0x5b4242(0x143)](_0x3ee376)['length']},'Lookup\x20fields\x20processed'),{'processedRows':_0x1747bb,'errors':_0x26dbdc};}[a0_0x372265(0x13e)](_0x359efd,_0x9dbbb3){const _0x503e10=a0_0x372265,_0x51c699={'zJOWR':function(_0x17fed0,_0x1b2e58){return _0x17fed0!==_0x1b2e58;},'hTghp':function(_0x1be1cc,_0x226992){return _0x1be1cc(_0x226992);}},_0x575135=new Set();return _0x359efd[_0x503e10(0x13a)](_0x5526f6=>{const _0x3b374e=_0x503e10,_0x10a871=_0x5526f6[_0x9dbbb3];_0x10a871!==null&&_0x10a871!==undefined&&_0x51c699[_0x3b374e(0x137)](_0x10a871,'')&&_0x575135['add'](_0x51c699['hTghp'](String,_0x10a871)['trim']());}),Array[_0x503e10(0x156)](_0x575135);}async[a0_0x372265(0x14e)](_0x2629d2,_0x1b1e14){const _0x44b503=a0_0x372265,_0x318889={'EZTrS':function(_0x8e0a43,_0x4bfb8a){return _0x8e0a43!==_0x4bfb8a;},'jXfbu':function(_0x19075f,_0x57b709){return _0x19075f===_0x57b709;}};if(!_0x1b1e14||_0x318889['jXfbu'](Object['keys'](_0x1b1e14)['length'],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x21d9e0=[],_0x5b9621={};for(const [_0xdf5bdf,_0x2ca61d]of Object['entries'](_0x1b1e14)){const {lookupTable:_0x4d7881,lookupColumn:_0x572c68,lookupIdColumn:_0x5d3e45,required:_0x46caab}=_0x2ca61d,_0x68f3ba=this['getDistinctValues'](_0x2629d2,_0xdf5bdf),_0x3871e5=await this[_0x44b503(0x13b)](_0x4d7881,_0x572c68,_0x5d3e45),_0x373e59=[],_0x4a8769=[];_0x68f3ba[_0x44b503(0x13a)](_0xacef0e=>{const _0x1c4802=_0x44b503,_0x41c657=this['resolveLookupValue'](_0xacef0e,_0x3871e5);_0x318889['EZTrS'](_0x41c657,null)?_0x4a8769[_0x1c4802(0x142)](_0xacef0e):_0x373e59[_0x1c4802(0x142)](_0xacef0e);});if(_0x373e59[_0x44b503(0x138)]>0x0&&_0x46caab){_0x21d9e0['push']({'field':_0xdf5bdf,'lookupTable':_0x4d7881,'invalidValues':_0x373e59,'message':_0x373e59[_0x44b503(0x138)]+_0x44b503(0x145)+_0x4d7881});const _0x21bd9a=[];_0x3871e5['forEach']((_0x4ed553,_0x2a9ffb)=>{const _0x4d1a61=_0x44b503;if(_0x2a9ffb===_0x2a9ffb[_0x4d1a61(0x15b)]())return;_0x21bd9a['push'](_0x2a9ffb);}),_0x5b9621[_0xdf5bdf]={'invalidValues':_0x373e59,'availableValues':_0x21bd9a[_0x44b503(0x141)](0x0,0x32)};}}return{'valid':_0x318889[_0x44b503(0x136)](_0x21d9e0[_0x44b503(0x138)],0x0),'errors':_0x21d9e0,'suggestions':_0x5b9621};}}module['exports']=new LookupResolver();