@restforgejs/platform 5.3.7 → 5.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) 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/cli/designer.js +1 -1
  5. package/generators/cli/fast-track.js +193 -45
  6. package/generators/cli/init.js +37 -3
  7. package/generators/lib/templates/dashboard-catalog.js +1 -1
  8. package/generators/lib/templates/db-connection-env.js +1 -1
  9. package/generators/lib/templates/dbschema-catalog.js +1 -1
  10. package/generators/lib/templates/field-validation-catalog.js +1 -1
  11. package/generators/lib/templates/mysql-template.js +1 -1
  12. package/generators/lib/templates/oracle-template.js +1 -1
  13. package/generators/lib/templates/postgres-template.js +1 -1
  14. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  15. package/generators/lib/templates/sqlite-template.js +1 -1
  16. package/integrity-manifest.json +18 -18
  17. package/package.json +1 -1
  18. package/scripts/verify-integrity.js +1 -1
  19. package/server.js +1 -1
  20. package/src/components/handlers/adjust_handler.js +1 -1
  21. package/src/components/handlers/audit_handler.js +1 -1
  22. package/src/components/handlers/delete_handler.js +1 -1
  23. package/src/components/handlers/export_handler.js +1 -1
  24. package/src/components/handlers/import_handler.js +1 -1
  25. package/src/components/handlers/insert_handler.js +1 -1
  26. package/src/components/handlers/update_handler.js +1 -1
  27. package/src/components/handlers/upload_handler.js +1 -1
  28. package/src/components/handlers/workflow_handler.js +1 -1
  29. package/src/components/integrations/webhook.js +1 -1
  30. package/src/consumers/baseConsumer.js +1 -1
  31. package/src/consumers/declarativeMapper.js +1 -1
  32. package/src/consumers/handlers/apiHandler.js +1 -1
  33. package/src/consumers/handlers/consoleHandler.js +1 -1
  34. package/src/consumers/handlers/databaseHandler.js +1 -1
  35. package/src/consumers/handlers/index.js +1 -1
  36. package/src/consumers/handlers/kafkaHandler.js +1 -1
  37. package/src/consumers/index.js +1 -1
  38. package/src/consumers/messageTransformer.js +1 -1
  39. package/src/consumers/validator.js +1 -1
  40. package/src/core/db/dialect/base-dialect.js +1 -1
  41. package/src/core/db/dialect/index.js +1 -1
  42. package/src/core/db/dialect/mysql-dialect.js +1 -1
  43. package/src/core/db/dialect/oracle-dialect.js +1 -1
  44. package/src/core/db/dialect/postgres-dialect.js +1 -1
  45. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  46. package/src/core/db/flatten-helper.js +1 -1
  47. package/src/core/db/query-builder-error.js +1 -1
  48. package/src/core/db/query-builder.js +1 -1
  49. package/src/core/db/relation-helper.js +1 -1
  50. package/src/core/handlers/delete_handler.js +1 -1
  51. package/src/core/handlers/insert_handler.js +1 -1
  52. package/src/core/handlers/update_handler.js +1 -1
  53. package/src/core/models/base-model.js +1 -1
  54. package/src/core/utils/cache-manager.js +1 -1
  55. package/src/core/utils/component-engine.js +1 -1
  56. package/src/core/utils/context-builder.js +1 -1
  57. package/src/core/utils/datetime-formatter.js +1 -1
  58. package/src/core/utils/datetime-parser.js +1 -1
  59. package/src/core/utils/db.js +1 -1
  60. package/src/core/utils/logger.js +1 -1
  61. package/src/core/utils/payload-loader.js +1 -1
  62. package/src/core/utils/security-checks.js +1 -1
  63. package/src/middleware/body-options.js +1 -1
  64. package/src/middleware/cors.js +1 -1
  65. package/src/middleware/idempotency.js +1 -1
  66. package/src/middleware/rate-limiter.js +1 -1
  67. package/src/middleware/request-logger.js +1 -1
  68. package/src/middleware/security-headers.js +1 -1
  69. package/src/models/base-model-mysql.js +1 -1
  70. package/src/models/base-model-oracle.js +1 -1
  71. package/src/models/base-model-sqlite.js +1 -1
  72. package/src/models/base-model.js +1 -1
  73. package/src/pro/caching/redis-client.js +1 -1
  74. package/src/pro/caching/redis-helper.js +1 -1
  75. package/src/pro/consumers/baseConsumer.js +1 -1
  76. package/src/pro/consumers/declarativeMapper.js +1 -1
  77. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  78. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  79. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  80. package/src/pro/consumers/handlers/index.js +1 -1
  81. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  82. package/src/pro/consumers/index.js +1 -1
  83. package/src/pro/consumers/messageTransformer.js +1 -1
  84. package/src/pro/consumers/validator.js +1 -1
  85. package/src/pro/database/base-model-mysql.js +1 -1
  86. package/src/pro/database/base-model-oracle.js +1 -1
  87. package/src/pro/database/base-model-sqlite.js +1 -1
  88. package/src/pro/database/db-mysql.js +1 -1
  89. package/src/pro/database/db-oracle.js +1 -1
  90. package/src/pro/database/db-sqlite.js +1 -1
  91. package/src/pro/excel/excel-generator.js +1 -1
  92. package/src/pro/excel/excel-parser.js +1 -1
  93. package/src/pro/excel/export-service.js +1 -1
  94. package/src/pro/excel/export_handler.js +1 -1
  95. package/src/pro/excel/import-service.js +1 -1
  96. package/src/pro/excel/import-validator.js +1 -1
  97. package/src/pro/excel/import_handler.js +1 -1
  98. package/src/pro/excel/upsert-builder.js +1 -1
  99. package/src/pro/idgen/idgen-routes.js +1 -1
  100. package/src/pro/integrations/lookup-resolver.js +1 -1
  101. package/src/pro/integrations/upload-handler-v2.js +1 -1
  102. package/src/pro/integrations/upload-handler.js +1 -1
  103. package/src/pro/integrations/webhook.js +1 -1
  104. package/src/pro/locking/lock-routes.js +1 -1
  105. package/src/pro/locking/resource-lock-manager.js +1 -1
  106. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  107. package/src/pro/messaging/kafkaService.js +1 -1
  108. package/src/pro/messaging/messagehubService.js +1 -1
  109. package/src/pro/messaging/rabbitmqService.js +1 -1
  110. package/src/pro/scheduler/job-manager.js +1 -1
  111. package/src/pro/scheduler/job-routes.js +1 -1
  112. package/src/pro/scheduler/job-validator.js +1 -1
  113. package/src/pro/storage/base-storage-provider.js +1 -1
  114. package/src/pro/storage/file-metadata-helper.js +1 -1
  115. package/src/pro/storage/index.js +1 -1
  116. package/src/pro/storage/local-storage-provider.js +1 -1
  117. package/src/pro/storage/s3-storage-provider.js +1 -1
  118. package/src/pro/storage/upload-cleanup-job.js +1 -1
  119. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  120. package/src/pro/storage/upload-pending-tracker.js +1 -1
  121. package/src/pro/websocket/broadcast-helper.js +1 -1
  122. package/src/pro/websocket/index.js +1 -1
  123. package/src/pro/websocket/livesync-server.js +1 -1
  124. package/src/pro/websocket/ws-broadcaster.js +1 -1
  125. package/src/services/export-service.js +1 -1
  126. package/src/services/import-service.js +1 -1
  127. package/src/services/kafkaConsumerService.js +1 -1
  128. package/src/services/kafkaService.js +1 -1
  129. package/src/services/messagehubService.js +1 -1
  130. package/src/services/rabbitmqService.js +1 -1
  131. package/src/utils/cache-invalidation-registry.js +1 -1
  132. package/src/utils/cache-manager.js +1 -1
  133. package/src/utils/component-engine.js +1 -1
  134. package/src/utils/config-extractor.js +1 -1
  135. package/src/utils/consumerLogger.js +1 -1
  136. package/src/utils/context-builder.js +1 -1
  137. package/src/utils/dashboard-helpers.js +1 -1
  138. package/src/utils/dateHelper.js +1 -1
  139. package/src/utils/datetime-formatter.js +1 -1
  140. package/src/utils/datetime-parser.js +1 -1
  141. package/src/utils/db-bootstrap.js +1 -1
  142. package/src/utils/db-mysql.js +1 -1
  143. package/src/utils/db-oracle.js +1 -1
  144. package/src/utils/db-sqlite.js +1 -1
  145. package/src/utils/db.js +1 -1
  146. package/src/utils/demo-generator.js +1 -1
  147. package/src/utils/excel-generator.js +1 -1
  148. package/src/utils/excel-parser.js +1 -1
  149. package/src/utils/file-watcher.js +1 -1
  150. package/src/utils/id-generator.js +1 -1
  151. package/src/utils/idempotency-manager.js +1 -1
  152. package/src/utils/import-validator.js +1 -1
  153. package/src/utils/license-client.js +1 -1
  154. package/src/utils/lock-manager.js +1 -1
  155. package/src/utils/logger.js +1 -1
  156. package/src/utils/lookup-resolver.js +1 -1
  157. package/src/utils/payload-loader.js +1 -1
  158. package/src/utils/processor-response.js +1 -1
  159. package/src/utils/rabbitmq.js +1 -1
  160. package/src/utils/redis-client.js +1 -1
  161. package/src/utils/redis-helper.js +1 -1
  162. package/src/utils/request-scope.js +1 -1
  163. package/src/utils/security-checks.js +1 -1
  164. package/src/utils/service-resolver.js +1 -1
  165. package/src/utils/shutdown-coordinator.js +1 -1
  166. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  167. package/src/utils/sql-table-extractor.js +1 -1
  168. package/src/utils/trusted-keys.js +1 -1
  169. package/src/utils/upload-handler.js +1 -1
  170. package/src/utils/upsert-builder.js +1 -1
  171. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x4e3da0=a0_0x4811;function a0_0x13d5(){const _0x43d469=['mZCXnLnIz0TLra','BwvZC2fNzq','CMfUzg9Tvvvjra','mJG1vu16BvHd','x3r0Ba','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','z2vUzxjHDgvlzxK','AwrLBxbVDgvUy3LFC3rVCMu','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','zMLSDgvY','CMy6AwrLBtO','lcbuveW6ia','ogfotwPPvG','mta5mtrZt2Dbuhu','ntyYmtiXD21oBKre','C3rYAw5NAwz5','ntC3nJe4C2DbBu95','mtb1ue15qKq','x2LUAxrPywXPEMvK','mJe5odKYmeviCeTotW','zw5HyMXLza','z2v0','z2v0q2XPzw50','mZKWDNv1C3vj','tgjqqwG','mteWmJq0mMDYuM1XBW','CMv0CMLLDMu','yNvPBgrlzxK','ntyXotmZou1ytKrPBG','C3rVCMu','swrLBxbVDgvUy3KGy2fJAguGtuLtuW','DhrS','zw52','x2vUywjSzwq','lI9SB2DNzxi','CMvX','swrLBxbVDgvUy3KGy2fJAguGseLu','Dw5RBM93BG','CgfYC2u','Aw5MBW','zxHWB3j0CW','AwrLBxbVDgvUy3LFAgL0','AwrLBxbVDgvUy3LFC3rVCMvFzxjYB3i','C2v0zxG','s2jVAhK','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia'];a0_0x13d5=function(){return _0x43d469;};return a0_0x13d5();}(function(_0x599fbf,_0x4d85de){const _0x595253=a0_0x4811,_0x49d16a=_0x599fbf();while(!![]){try{const _0x853a62=parseInt(_0x595253(0x13d))/0x1+parseInt(_0x595253(0x140))/0x2+-parseInt(_0x595253(0x130))/0x3*(parseInt(_0x595253(0x12d))/0x4)+-parseInt(_0x595253(0x144))/0x5*(parseInt(_0x595253(0x13a))/0x6)+-parseInt(_0x595253(0x13b))/0x7*(parseInt(_0x595253(0x139))/0x8)+-parseInt(_0x595253(0x11b))/0x9+parseInt(_0x595253(0x13e))/0xa*(-parseInt(_0x595253(0x146))/0xb);if(_0x853a62===_0x4d85de)break;else _0x49d16a['push'](_0x49d16a['shift']());}catch(_0x4a50c3){_0x49d16a['push'](_0x49d16a['shift']());}}}(a0_0x13d5,0x9cbfd));function a0_0x4811(_0x5257e3,_0x97d22b){_0x5257e3=_0x5257e3-0x11a;const _0x13d53d=a0_0x13d5();let _0x481140=_0x13d53d[_0x5257e3];if(a0_0x4811['wPkFda']===undefined){var _0x367b6b=function(_0x596e54){const _0x3cf487='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc998a1='',_0x1da8b2='';for(let _0x525303=0x0,_0x226df1,_0x4e0d7d,_0xf54c0c=0x0;_0x4e0d7d=_0x596e54['charAt'](_0xf54c0c++);~_0x4e0d7d&&(_0x226df1=_0x525303%0x4?_0x226df1*0x40+_0x4e0d7d:_0x4e0d7d,_0x525303++%0x4)?_0xc998a1+=String['fromCharCode'](0xff&_0x226df1>>(-0x2*_0x525303&0x6)):0x0){_0x4e0d7d=_0x3cf487['indexOf'](_0x4e0d7d);}for(let _0x16cb99=0x0,_0x57a9c5=_0xc998a1['length'];_0x16cb99<_0x57a9c5;_0x16cb99++){_0x1da8b2+='%'+('00'+_0xc998a1['charCodeAt'](_0x16cb99)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1da8b2);};a0_0x4811['YdVYKA']=_0x367b6b,a0_0x4811['wCnPQy']={},a0_0x4811['wPkFda']=!![];}const _0x4d8aa7=_0x13d53d[0x0],_0x2e931b=_0x5257e3+_0x4d8aa7,_0x38ecd1=a0_0x4811['wCnPQy'][_0x2e931b];return!_0x38ecd1?(_0x481140=a0_0x4811['YdVYKA'](_0x481140),a0_0x4811['wCnPQy'][_0x2e931b]=_0x481140):_0x481140=_0x38ecd1,_0x481140;}const redisClient=require('./redis-client'),{logger}=require(a0_0x4e3da0(0x121)),crypto=require('crypto');class IdempotencyManager{constructor(){const _0x4c6b61=a0_0x4e3da0;this['_enabled']=null,this[_0x4c6b61(0x131)]=null,this['_initialized']=![];}['_initConfig'](){const _0x2806ff=a0_0x4e3da0,_0x12aee2={'eiLEW':function(_0x4bb4d0,_0x59f12c){return _0x4bb4d0===_0x59f12c;}};this['_enabled']=_0x12aee2['eiLEW'](process[_0x2806ff(0x11f)]['IDEMPOTENCY_ENABLED'],'true'),this['_ttl']=parseInt(process['env']['IDEMPOTENCY_TTL'],0xa)||0x12c,this['_initialized']=!![],logger[_0x2806ff(0x126)]({'event':'idempotency_config_init','enabled':this['_enabled'],'ttl':this['_ttl']},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x2806ff(0x120)]+_0x2806ff(0x138)+this['_ttl']+'s');}['_ensureInitialized'](){const _0x4759aa=a0_0x4e3da0;!this[_0x4759aa(0x13f)]&&this['_initConfig']();}get[a0_0x4e3da0(0x141)](){return this['_ensureInitialized'](),this['_enabled'];}get['ttl'](){const _0x3956a7=a0_0x4e3da0;return this['_ensureInitialized'](),this[_0x3956a7(0x131)];}['isEnabled'](){return this['enabled'];}[a0_0x4e3da0(0x11a)](_0x658460,_0x4dec4c){const _0x1beacf=a0_0x4e3da0,_0xf5371d={'oluzo':'default','UVjCQ':_0x1beacf(0x124)},_0x38365a=_0x4dec4c['path']['split']('/')[_0x1beacf(0x136)](Boolean),_0x30c8db=_0x38365a[0x0]||_0xf5371d['oluzo'],_0x5ee5c9=_0x38365a[0x1]||_0xf5371d['UVjCQ'],_0x3b933c=_0x38365a[0x2]||'unknown';return _0x1beacf(0x137)+_0x30c8db+':'+_0x5ee5c9+':'+_0x3b933c+':'+_0x658460;}async[a0_0x4e3da0(0x11c)](_0x236fb5,_0x487e4e){const _0x356302=a0_0x4e3da0,_0x3ddfe5={'RlsRa':_0x356302(0x134),'HUufL':_0x356302(0x132)};if(!this[_0x356302(0x141)])return![];try{const _0xba7f8f=redisClient[_0x356302(0x143)]();return await _0xba7f8f[_0x356302(0x12a)](_0x236fb5,this[_0x356302(0x11e)],JSON[_0x356302(0x13c)](_0x487e4e)),logger['debug']({'event':_0x3ddfe5['RlsRa'],'key':_0x236fb5,'ttl':this['ttl'],'statusCode':_0x487e4e['statusCode']},_0x3ddfe5['HUufL']),!![];}catch(_0xae753e){return logger['error']({'event':_0x356302(0x129),'key':_0x236fb5,'error':_0xae753e[_0x356302(0x12e)]},_0x356302(0x12c)+_0xae753e['message']),![];}}async[a0_0x4e3da0(0x147)](_0x3ae6c3){const _0x128657=a0_0x4e3da0,_0x30a36d={'zamyr':_0x128657(0x128),'LbPAh':_0x128657(0x123),'Kbohy':'idempotency_miss','ykUlw':_0x128657(0x135)};if(!this[_0x128657(0x141)])return null;try{const _0x2fd06a=redisClient['getClient'](),_0x51bef9=await _0x2fd06a[_0x128657(0x142)](_0x3ae6c3);if(_0x51bef9)return logger[_0x128657(0x126)]({'event':_0x30a36d['zamyr'],'key':_0x3ae6c3},_0x30a36d[_0x128657(0x145)]),JSON[_0x128657(0x125)](_0x51bef9);return logger['debug']({'event':_0x30a36d[_0x128657(0x12b)],'key':_0x3ae6c3},_0x128657(0x11d)),null;}catch(_0x15e27d){return logger['error']({'event':_0x30a36d['ykUlw'],'key':_0x3ae6c3,'error':_0x15e27d[_0x128657(0x12e)]},'Idempotency\x20retrieve\x20error:\x20'+_0x15e27d[_0x128657(0x12e)]),null;}}[a0_0x4e3da0(0x133)](_0x3df033=a0_0x4e3da0(0x122)){const _0x22b159=a0_0x4e3da0;return _0x3df033+'_'+crypto[_0x22b159(0x12f)]();}['buildDeterministicKey'](_0x2e3471,_0x498679,_0x43189c){return _0x2e3471+':'+_0x498679+':'+_0x43189c;}}module[a0_0x4e3da0(0x127)]=new IdempotencyManager();
1
+ 'use strict';function a0_0x4698(){const _0x398529=['nZq3mJyZnhHtEgnqtq','swrLBxbVDgvUy3KGy2fJAguGseLu','lI9YzwrPCY1JBgLLBNq','C2v0zxG','CMfUzg9Tvvvjra','AwrLBxbVDgvUy3LFC3rVCMu','ntuYodK3mffbrhjnBq','mtq2mduWveL0rfLt','C3rYAw5NAwz5','zw5HyMXLza','DhrS','Dhj1zq','nxj2AxPYEq','C3bSAxq','x2LUAxrdB25MAwC','surftvbpvevoq1LFru5bqKXfra','mtyXzMXVte5U','z2v0q2XPzw50','zMLSDgvY','EfPYqLm','x2LUAxrPywXPEMvK','mZa4mtuYshfmAg9s','z2v0','lcbuveW6ia','CMy6AwrLBtO','CMvX','y3j5ChrV','AwrLBxbVDgvUy3LFC3rVCMvFzxjYB3i','mJeXmtaXmM9tBgTgzG','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','nJuXndCZmdrKswXnz2G','x2vUywjSzwq','C3rHDhvZq29Kzq','Cgf0Aa','x2vUC3vYzuLUAxrPywXPEMvK','m1Lfq2LNuq','Dw5RBM93BG','AwrLBxbVDgvUy3LFAgL0','zxHWB3j0CW','BwvZC2fNzq','mtiXmhvlDfnlAW','mLzpsffOua','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i6ia','zgvIDwC','mtm4mtGXoxHrvwnqEa','yNrpA08'];a0_0x4698=function(){return _0x398529;};return a0_0x4698();}const a0_0x107125=a0_0x4622;(function(_0x5b2708,_0x4cdd64){const _0x3f6c69=a0_0x4622,_0x49b418=_0x5b2708();while(!![]){try{const _0x594cfd=-parseInt(_0x3f6c69(0xc3))/0x1*(-parseInt(_0x3f6c69(0xc0))/0x2)+-parseInt(_0x3f6c69(0xba))/0x3*(-parseInt(_0x3f6c69(0xb3))/0x4)+parseInt(_0x3f6c69(0xd1))/0x5*(parseInt(_0x3f6c69(0xc5))/0x6)+-parseInt(_0x3f6c69(0xa7))/0x7*(-parseInt(_0x3f6c69(0xac))/0x8)+parseInt(_0x3f6c69(0xcb))/0x9+parseInt(_0x3f6c69(0xcc))/0xa*(parseInt(_0x3f6c69(0xbf))/0xb)+-parseInt(_0x3f6c69(0xb5))/0xc;if(_0x594cfd===_0x4cdd64)break;else _0x49b418['push'](_0x49b418['shift']());}catch(_0x24b57b){_0x49b418['push'](_0x49b418['shift']());}}}(a0_0x4698,0xcb576));const redisClient=require(a0_0x107125(0xc7)),{logger}=require('./logger'),crypto=require(a0_0x107125(0xb1));function a0_0x4622(_0x4553a8,_0x89acac){_0x4553a8=_0x4553a8-0xa7;const _0x46985b=a0_0x4698();let _0x4622b3=_0x46985b[_0x4553a8];if(a0_0x4622['yxVDTT']===undefined){var _0x3f7f31=function(_0x3d058c){const _0x1a4b30='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c529d='',_0x1d1300='';for(let _0x221ad7=0x0,_0x17863b,_0x29b3b7,_0x569fc8=0x0;_0x29b3b7=_0x3d058c['charAt'](_0x569fc8++);~_0x29b3b7&&(_0x17863b=_0x221ad7%0x4?_0x17863b*0x40+_0x29b3b7:_0x29b3b7,_0x221ad7++%0x4)?_0x3c529d+=String['fromCharCode'](0xff&_0x17863b>>(-0x2*_0x221ad7&0x6)):0x0){_0x29b3b7=_0x1a4b30['indexOf'](_0x29b3b7);}for(let _0x46f05a=0x0,_0xe87d02=_0x3c529d['length'];_0x46f05a<_0xe87d02;_0x46f05a++){_0x1d1300+='%'+('00'+_0x3c529d['charCodeAt'](_0x46f05a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1d1300);};a0_0x4622['KGTOLz']=_0x3f7f31,a0_0x4622['bgnJRg']={},a0_0x4622['yxVDTT']=!![];}const _0x4a63ce=_0x46985b[0x0],_0x429191=_0x4553a8+_0x4a63ce,_0x465a82=a0_0x4622['bgnJRg'][_0x429191];return!_0x465a82?(_0x4622b3=a0_0x4622['KGTOLz'](_0x4622b3),a0_0x4622['bgnJRg'][_0x429191]=_0x4622b3):_0x4622b3=_0x465a82,_0x4622b3;}class IdempotencyManager{constructor(){const _0x179b32=a0_0x107125;this['_enabled']=null,this['_ttl']=null,this[_0x179b32(0xab)]=![];}[a0_0x107125(0xd3)](){const _0x11a8ae=a0_0x107125;this[_0x11a8ae(0xb6)]=process['env'][_0x11a8ae(0xd4)]===_0x11a8ae(0xd0),this['_ttl']=parseInt(process['env']['IDEMPOTENCY_TTL'],0xa)||0x12c,this[_0x11a8ae(0xab)]=!![],logger['info']({'event':'idempotency_config_init','enabled':this[_0x11a8ae(0xb6)],'ttl':this['_ttl']},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x11a8ae(0xb6)]+_0x11a8ae(0xae)+this['_ttl']+'s');}[a0_0x107125(0xb9)](){const _0x4150da=a0_0x107125;!this[_0x4150da(0xab)]&&this[_0x4150da(0xd3)]();}get[a0_0x107125(0xce)](){const _0x19d9c9=a0_0x107125;return this['_ensureInitialized'](),this[_0x19d9c9(0xb6)];}get[a0_0x107125(0xcf)](){const _0x386edb=a0_0x107125;return this[_0x386edb(0xb9)](),this['_ttl'];}['isEnabled'](){return this['enabled'];}['buildKey'](_0x1acec7,_0x18d720){const _0x435bb3=a0_0x107125,_0x1fceb4={'SQaMB':'default','sKDLN':'unknown'},_0x330c89=_0x18d720[_0x435bb3(0xb8)][_0x435bb3(0xd2)]('/')[_0x435bb3(0xa9)](Boolean),_0x28237a=_0x330c89[0x0]||_0x1fceb4['SQaMB'],_0x1d2afb=_0x330c89[0x1]||_0x435bb3(0xbb),_0x51146d=_0x330c89[0x2]||_0x1fceb4['sKDLN'];return _0x435bb3(0xaf)+_0x28237a+':'+_0x1d2afb+':'+_0x51146d+':'+_0x1acec7;}async['store'](_0x316e80,_0x3af9b8){const _0x2f0d35=a0_0x107125,_0x394d67={'xZrBS':_0x2f0d35(0xca),'ENLSV':_0x2f0d35(0xb2)};if(!this['enabled'])return![];try{const _0x27e472=redisClient[_0x2f0d35(0xa8)]();return await _0x27e472[_0x2f0d35(0xc8)](_0x316e80,this['ttl'],JSON[_0x2f0d35(0xcd)](_0x3af9b8)),logger[_0x2f0d35(0xc2)]({'event':_0x394d67[_0x2f0d35(0xaa)],'key':_0x316e80,'ttl':this[_0x2f0d35(0xcf)],'statusCode':_0x3af9b8[_0x2f0d35(0xb7)]},'Idempotency\x20response\x20stored'),!![];}catch(_0x364ae1){return logger['error']({'event':_0x394d67['ENLSV'],'key':_0x316e80,'error':_0x364ae1['message']},'Idempotency\x20store\x20error:\x20'+_0x364ae1[_0x2f0d35(0xbe)]),![];}}async['retrieve'](_0x29a835){const _0x170ec4=a0_0x107125,_0xf00644={'btOkO':_0x170ec4(0xc6),'LXhWY':'idempotency_miss'};if(!this['enabled'])return null;try{const _0x27cde0=redisClient[_0x170ec4(0xa8)](),_0x34e4f9=await _0x27cde0[_0x170ec4(0xad)](_0x29a835);if(_0x34e4f9)return logger['info']({'event':_0x170ec4(0xbc),'key':_0x29a835},_0xf00644[_0x170ec4(0xc4)]),JSON['parse'](_0x34e4f9);return logger['debug']({'event':_0xf00644['LXhWY'],'key':_0x29a835},'Idempotency\x20cache\x20MISS'),null;}catch(_0x45f656){return logger['error']({'event':_0x170ec4(0xb4),'key':_0x29a835,'error':_0x45f656[_0x170ec4(0xbe)]},_0x170ec4(0xc1)+_0x45f656['message']),null;}}['generateKey'](_0xb7df36=a0_0x107125(0xb0)){const _0x15abca=a0_0x107125;return _0xb7df36+'_'+crypto[_0x15abca(0xc9)]();}['buildDeterministicKey'](_0x420532,_0x3e9758,_0x2347a0){return _0x420532+':'+_0x3e9758+':'+_0x2347a0;}}module[a0_0x107125(0xbd)]=new IdempotencyManager();
@@ -1 +1 @@
1
- const a0_0x41a62f=a0_0x3eb0;function a0_0xe1ca(){const _0x713b5=['lI9SB2DNzxi','ndG3odq4mM95zfzmCa','DMfSAwrHDgvqAg9Uzq','m0vRC3rYsW','A2v5CW','DMfSAwrHDgvgAwvSzezVCM1HDa','mZq1nJHsuwfPvwi','u2rJyLO','ugDNtNO','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','ndaXodyXD2TtvM5Y','DMfSAwrHDgvoDw1Izxi','z2v0','ody5nZy2m1zZzefwuq','Aw5MBW','Cw1WEha','CMvXDwLYzwq','DgvZDa','sw52ywXPzcbUDw1IzxiGzM9YBwf0','mKPcqNrbwG','CMvWBgfJzq','AgfZ','AfHnr2m','sw52ywXPzcbWAg9UzsbMB3jTyxq','BNvTyMvY','C1fwwLe','ChvZAa','nZK5nJqWmff4CfjcEa','vwP6ru8','C2v0','ndK4nZKYmhPxtezfqG','mZmYnJy4mfPmswTprq','DMfSAwrHDgvfBwfPBa','zM9YBwf0','zM9YrwfJAa','Ahflzvq','sw52ywXPzcbLBwfPBcbMB3jTyxq','BgvUz3rO'];a0_0xe1ca=function(){return _0x713b5;};return a0_0xe1ca();}(function(_0x616f27,_0x325a67){const _0x4040b2=a0_0x3eb0,_0x27a1f0=_0x616f27();while(!![]){try{const _0x569e58=-parseInt(_0x4040b2(0x1b4))/0x1*(parseInt(_0x4040b2(0x1bd))/0x2)+-parseInt(_0x4040b2(0x1ad))/0x3*(-parseInt(_0x4040b2(0x1b0))/0x4)+-parseInt(_0x4040b2(0x1c9))/0x5+parseInt(_0x4040b2(0x1c8))/0x6+parseInt(_0x4040b2(0x1ab))/0x7+parseInt(_0x4040b2(0x1c5))/0x8+-parseInt(_0x4040b2(0x1b7))/0x9;if(_0x569e58===_0x325a67)break;else _0x27a1f0['push'](_0x27a1f0['shift']());}catch(_0x15fed3){_0x27a1f0['push'](_0x27a1f0['shift']());}}}(a0_0xe1ca,0x7ac32));function a0_0x3eb0(_0x8f8c83,_0x3e658a){_0x8f8c83=_0x8f8c83-0x1a7;const _0xe1ca2a=a0_0xe1ca();let _0x3eb03a=_0xe1ca2a[_0x8f8c83];if(a0_0x3eb0['xGTQLc']===undefined){var _0x47d8d7=function(_0x2fa6e4){const _0x202a5f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x13f786='',_0x644844='';for(let _0x49cf05=0x0,_0x39fe02,_0x4e8c4d,_0x107328=0x0;_0x4e8c4d=_0x2fa6e4['charAt'](_0x107328++);~_0x4e8c4d&&(_0x39fe02=_0x49cf05%0x4?_0x39fe02*0x40+_0x4e8c4d:_0x4e8c4d,_0x49cf05++%0x4)?_0x13f786+=String['fromCharCode'](0xff&_0x39fe02>>(-0x2*_0x49cf05&0x6)):0x0){_0x4e8c4d=_0x202a5f['indexOf'](_0x4e8c4d);}for(let _0x3572c3=0x0,_0x5253ff=_0x13f786['length'];_0x3572c3<_0x5253ff;_0x3572c3++){_0x644844+='%'+('00'+_0x13f786['charCodeAt'](_0x3572c3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x644844);};a0_0x3eb0['txqrMJ']=_0x47d8d7,a0_0x3eb0['HOAVUi']={},a0_0x3eb0['xGTQLc']=!![];}const _0x3794e1=_0xe1ca2a[0x0],_0x3e7815=_0x8f8c83+_0x3794e1,_0x1f0718=a0_0x3eb0['HOAVUi'][_0x3e7815];return!_0x1f0718?(_0x3eb03a=a0_0x3eb0['txqrMJ'](_0x3eb03a),a0_0x3eb0['HOAVUi'][_0x3e7815]=_0x3eb03a):_0x3eb03a=_0x1f0718,_0x3eb03a;}const {logger}=require(a0_0x41a62f(0x1aa));class ImportValidator{['validateRow'](_0x4fc990,_0x24e6ff=[],_0x3b7f9a={}){const _0x22856d=a0_0x41a62f,_0xde25bf={'XUihP':function(_0x17bd5e,_0x4865a3){return _0x17bd5e===_0x4865a3;},'hXMGc':_0x22856d(0x1ba),'qmpxp':function(_0xcb8975,_0x2072d1){return _0xcb8975===_0x2072d1;},'yZcpr':function(_0x2b154a,_0x203808){return _0x2b154a===_0x203808;}},_0x4b4ad3=[];return _0x24e6ff[_0x22856d(0x1cc)](_0x8e095e=>{const _0x2554cd=_0x22856d,_0x2d6e6c=_0x4fc990[_0x8e095e];(_0xde25bf['XUihP'](_0x2d6e6c,null)||_0x2d6e6c===undefined||_0x2d6e6c==='')&&_0x4b4ad3[_0x2554cd(0x1c4)]({'field':_0x8e095e,'type':_0xde25bf[_0x2554cd(0x1c0)],'message':_0x2554cd(0x1b3)});}),Object[_0x22856d(0x1ae)](_0x3b7f9a)[_0x22856d(0x1cc)](_0x29a261=>{const _0x3a1700=_0x22856d,_0x455fc0=_0x4fc990[_0x29a261],_0x668f62=_0x3b7f9a[_0x29a261];if(_0xde25bf[_0x3a1700(0x1b9)](_0x455fc0,null)||_0x455fc0===undefined||_0xde25bf['yZcpr'](_0x455fc0,''))return;const _0x5d03bd=this[_0x3a1700(0x1af)](_0x29a261,_0x455fc0,_0x668f62);_0x5d03bd&&_0x4b4ad3[_0x3a1700(0x1c4)](_0x5d03bd);}),_0x4b4ad3;}['validateFieldFormat'](_0x3811b1,_0x5f1585,_0x46266d){const _0x4774de=a0_0x41a62f,_0x4026bb={'ZjbpF':'url','UjzEO':_0x4774de(0x1c2)};switch(_0x46266d){case'email':return this[_0x4774de(0x1ca)](_0x3811b1,_0x5f1585);case'phone':return this['validatePhone'](_0x3811b1,_0x5f1585);case _0x4026bb['ZjbpF']:return this['validateUrl'](_0x3811b1,_0x5f1585);case _0x4026bb[_0x4774de(0x1c6)]:return this[_0x4774de(0x1b5)](_0x3811b1,_0x5f1585);default:return null;}}[a0_0x41a62f(0x1ca)](_0xe53a03,_0x805c13){const _0x39c62d=a0_0x41a62f,_0x55b352={'btbzs':function(_0x19a283,_0x1b9276){return _0x19a283(_0x1b9276);},'sQVZQ':_0x39c62d(0x1cb)},_0x31eef5=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x31eef5[_0x39c62d(0x1bb)](_0x55b352['btbzs'](String,_0x805c13)))return{'field':_0xe53a03,'type':_0x55b352[_0x39c62d(0x1c3)],'message':_0x39c62d(0x1a8)};return null;}[a0_0x41a62f(0x1ac)](_0x5ec587,_0x5b81dc){const _0x12ee3e=a0_0x41a62f,_0x35c8fc={'GlRqs':function(_0x43ea23,_0x3a11ca){return _0x43ea23(_0x3a11ca);},'NprAA':function(_0x5c688c,_0xd192ec){return _0x5c688c<_0xd192ec;},'jswRe':_0x12ee3e(0x1c1)},_0x4bc6f3=_0x35c8fc['GlRqs'](String,_0x5b81dc)[_0x12ee3e(0x1be)](/\s+/g,''),_0x48423d=/^[\d\+\-\(\)]+$/;if(!_0x48423d['test'](_0x4bc6f3)||_0x35c8fc['NprAA'](_0x4bc6f3['length'],0x8))return{'field':_0x5ec587,'type':'format','message':_0x35c8fc['jswRe']};return null;}['validateUrl'](_0x4a1172,_0xaddb76){const _0x2cac2d=a0_0x41a62f,_0x1cae6d={'hqKeT':_0x2cac2d(0x1cb)};try{return new URL(String(_0xaddb76)),null;}catch(_0x26dc39){return{'field':_0x4a1172,'type':_0x1cae6d[_0x2cac2d(0x1a7)],'message':'Invalid\x20URL\x20format'};}}[a0_0x41a62f(0x1b5)](_0x229704,_0x4def2f){const _0x3678d2=a0_0x41a62f,_0x5e9b6b={'PggNz':_0x3678d2(0x1bc)};if(isNaN(_0x4def2f))return{'field':_0x229704,'type':'format','message':_0x5e9b6b[_0x3678d2(0x1b2)]};return null;}['detectDuplicatesInFile'](_0x354e80,_0x5db367){const _0x579c9a=new Map(),_0x9750c=[];return _0x354e80['forEach']((_0x8290e6,_0x49b4cc)=>{const _0x4fae03=a0_0x3eb0,_0x23e3ad=_0x5db367['map'](_0x326e5e=>_0x8290e6[_0x326e5e])['join']('|');_0x579c9a[_0x4fae03(0x1bf)](_0x23e3ad)?_0x9750c['push']({'rowIndex':_0x49b4cc,'duplicateOf':_0x579c9a[_0x4fae03(0x1b6)](_0x23e3ad),'key':_0x23e3ad}):_0x579c9a[_0x4fae03(0x1c7)](_0x23e3ad,_0x49b4cc);}),_0x9750c;}['batchValidateRows'](_0x40ca8f,_0x1e749c,_0x3d32b7){const _0x459e85=a0_0x41a62f,_0x4d3a0a={'SdcbZ':function(_0x28aad2,_0x27b01c){return _0x28aad2>_0x27b01c;},'iWpSG':'batch_validation_complete'},_0x59a832=[];return _0x40ca8f[_0x459e85(0x1cc)]((_0x5db209,_0x2a071e)=>{const _0xbdb792=_0x459e85,_0x48d6a1=this['validateRow'](_0x5db209,_0x1e749c,_0x3d32b7);_0x4d3a0a[_0xbdb792(0x1b1)](_0x48d6a1[_0xbdb792(0x1a9)],0x0)&&_0x59a832['push']({'rowIndex':_0x2a071e,'rowData':_0x5db209,'errors':_0x48d6a1});}),logger[_0x459e85(0x1b8)]({'event':_0x4d3a0a['iWpSG'],'totalRows':_0x40ca8f['length'],'errorCount':_0x59a832[_0x459e85(0x1a9)]},'Batch\x20validation\x20completed'),_0x59a832;}}module['exports']=new ImportValidator();
1
+ const a0_0x1a1f57=a0_0x5e8c;function a0_0x144d(){const _0x3e61d1=['BNvTyMvY','odHPsuXTqxq','tw51B3G','wNDwBNG','A2v5CW','nJbdzMzes1i','yMf0y2HwywXPzgf0zvjVD3m','ntC2nZa0r0PMsu9o','BgvUz3rO','DgvZDa','ChvZAa','ntyYmvf2uxj3Ea','mtm4ndeXz3vPC3fI','mtmXote1Avz3rK92','C2v0','DMfSAwrHDgvvCMW','nwLXy2fRwa','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','ndG0ndi2CvjdB0fh','DMfSAwrHDgvsB3C','sw52ywXPzcbLBwfPBcbMB3jTyxq','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','mtuXntzIEvLJqNO','DMfSAwrHDgvfBwfPBa','zM9YrwfJAa','nhzWD0DuyW','CgHVBMu','DMfSAwrHDgvoDw1Izxi','lI9SB2DNzxi','AM9PBG','mti1mZy5mhzsz3vzEG','sw52ywXPzcbUDw1IzxiGzM9YBwf0','mtaWotG5owD5sKTUBa','DMfSAwrHDgvqAg9Uzq','zM9YBwf0','z0T6DKu'];a0_0x144d=function(){return _0x3e61d1;};return a0_0x144d();}(function(_0x3fd123,_0xe3f4b4){const _0x55ffe4=a0_0x5e8c,_0x33bd03=_0x3fd123();while(!![]){try{const _0x2e5fa2=-parseInt(_0x55ffe4(0x134))/0x1*(-parseInt(_0x55ffe4(0x12d))/0x2)+parseInt(_0x55ffe4(0x13b))/0x3+-parseInt(_0x55ffe4(0x122))/0x4*(parseInt(_0x55ffe4(0x12b))/0x5)+-parseInt(_0x55ffe4(0x120))/0x6*(parseInt(_0x55ffe4(0x128))/0x7)+-parseInt(_0x55ffe4(0x11c))/0x8*(-parseInt(_0x55ffe4(0x127))/0x9)+parseInt(_0x55ffe4(0x139))/0xa+parseInt(_0x55ffe4(0x126))/0xb*(-parseInt(_0x55ffe4(0x131))/0xc);if(_0x2e5fa2===_0xe3f4b4)break;else _0x33bd03['push'](_0x33bd03['shift']());}catch(_0x1f5c28){_0x33bd03['push'](_0x33bd03['shift']());}}}(a0_0x144d,0x97db4));const {logger}=require(a0_0x1a1f57(0x137));function a0_0x5e8c(_0x186041,_0x1b9155){_0x186041=_0x186041-0x118;const _0x144de9=a0_0x144d();let _0x5e8c15=_0x144de9[_0x186041];if(a0_0x5e8c['paFcFg']===undefined){var _0x18e6b2=function(_0x5abc49){const _0x80ea7f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xfb57a3='',_0x2e90fc='';for(let _0x4747f8=0x0,_0x14c2d9,_0x216f4d,_0x18dfb7=0x0;_0x216f4d=_0x5abc49['charAt'](_0x18dfb7++);~_0x216f4d&&(_0x14c2d9=_0x4747f8%0x4?_0x14c2d9*0x40+_0x216f4d:_0x216f4d,_0x4747f8++%0x4)?_0xfb57a3+=String['fromCharCode'](0xff&_0x14c2d9>>(-0x2*_0x4747f8&0x6)):0x0){_0x216f4d=_0x80ea7f['indexOf'](_0x216f4d);}for(let _0xd3b7b1=0x0,_0x40c81a=_0xfb57a3['length'];_0xd3b7b1<_0x40c81a;_0xd3b7b1++){_0x2e90fc+='%'+('00'+_0xfb57a3['charCodeAt'](_0xd3b7b1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2e90fc);};a0_0x5e8c['SdMPKF']=_0x18e6b2,a0_0x5e8c['NUsJSx']={},a0_0x5e8c['paFcFg']=!![];}const _0x2a0fb9=_0x144de9[0x0],_0xbac49f=_0x186041+_0x2a0fb9,_0x59e440=a0_0x5e8c['NUsJSx'][_0xbac49f];return!_0x59e440?(_0x5e8c15=a0_0x5e8c['SdMPKF'](_0x5e8c15),a0_0x5e8c['NUsJSx'][_0xbac49f]=_0x5e8c15):_0x5e8c15=_0x59e440,_0x5e8c15;}class ImportValidator{['validateRow'](_0x4a8fbf,_0x2327a1=[],_0x541dd2={}){const _0x4d288e=a0_0x1a1f57,_0x3161bb={'qBtqK':'required','YGeBS':function(_0x80c320,_0x1528e3){return _0x80c320===_0x1528e3;},'gFtHj':function(_0x7a1089,_0x570109){return _0x7a1089===_0x570109;}},_0x3cfb8e=[];return _0x2327a1[_0x4d288e(0x133)](_0x31bf7c=>{const _0x5d4ca7=_0x4a8fbf[_0x31bf7c];(_0x5d4ca7===null||_0x5d4ca7===undefined||_0x5d4ca7==='')&&_0x3cfb8e['push']({'field':_0x31bf7c,'type':_0x3161bb['qBtqK'],'message':'Required\x20field\x20is\x20empty'});}),Object[_0x4d288e(0x11f)](_0x541dd2)[_0x4d288e(0x133)](_0x2bdccd=>{const _0x5b4ef9=_0x4d288e,_0x16f5ad=_0x4a8fbf[_0x2bdccd],_0x3a969d=_0x541dd2[_0x2bdccd];if(_0x16f5ad===null||_0x3161bb['YGeBS'](_0x16f5ad,undefined)||_0x3161bb['gFtHj'](_0x16f5ad,''))return;const _0x116d5b=this['validateFieldFormat'](_0x2bdccd,_0x16f5ad,_0x3a969d);_0x116d5b&&_0x3cfb8e[_0x5b4ef9(0x125)](_0x116d5b);}),_0x3cfb8e;}['validateFieldFormat'](_0x2e9aac,_0x1946a1,_0x7b07b6){const _0x4c195c=a0_0x1a1f57,_0x4f605e={'sPEKl':'email','HtaMq':_0x4c195c(0x11b)};switch(_0x7b07b6){case _0x4f605e['sPEKl']:return this[_0x4c195c(0x132)](_0x2e9aac,_0x1946a1);case _0x4c195c(0x135):return this['validatePhone'](_0x2e9aac,_0x1946a1);case'url':return this['validateUrl'](_0x2e9aac,_0x1946a1);case _0x4f605e['HtaMq']:return this[_0x4c195c(0x136)](_0x2e9aac,_0x1946a1);default:return null;}}[a0_0x1a1f57(0x132)](_0xd1a5b4,_0x44d2f8){const _0x53dc5a=a0_0x1a1f57,_0x17eced=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x17eced[_0x53dc5a(0x124)](String(_0x44d2f8)))return{'field':_0xd1a5b4,'type':'format','message':_0x53dc5a(0x12f)};return null;}[a0_0x1a1f57(0x118)](_0x278ce9,_0x425432){const _0x2bf9af=a0_0x1a1f57,_0x23e3a1={'xFEnq':function(_0x11cb72,_0x2c8eaa){return _0x11cb72(_0x2c8eaa);},'ZwVnx':'Invalid\x20phone\x20format'},_0x26f2a9=_0x23e3a1['xFEnq'](String,_0x425432)['replace'](/\s+/g,''),_0x3b6aec=/^[\d\+\-\(\)]+$/;if(!_0x3b6aec['test'](_0x26f2a9)||_0x26f2a9['length']<0x8)return{'field':_0x278ce9,'type':'format','message':_0x23e3a1[_0x2bf9af(0x11e)]};return null;}[a0_0x1a1f57(0x12a)](_0x4ef3f0,_0x2088f9){const _0x32a403=a0_0x1a1f57,_0x587b25={'HOcuc':function(_0x3963d2,_0x35e562){return _0x3963d2(_0x35e562);}};try{return new URL(_0x587b25['HOcuc'](String,_0x2088f9)),null;}catch(_0xd8f469){return{'field':_0x4ef3f0,'type':_0x32a403(0x119),'message':'Invalid\x20URL\x20format'};}}['validateNumber'](_0x59b61e,_0x31237e){const _0x496846=a0_0x1a1f57,_0x2d9d08={'xFdom':function(_0x358fd5,_0x2808bc){return _0x358fd5(_0x2808bc);},'Mnuox':_0x496846(0x119),'gKzvE':_0x496846(0x13a)};if(_0x2d9d08['xFdom'](isNaN,_0x31237e))return{'field':_0x59b61e,'type':_0x2d9d08[_0x496846(0x11d)],'message':_0x2d9d08[_0x496846(0x11a)]};return null;}['detectDuplicatesInFile'](_0x172e35,_0x3d5252){const _0x2301ca=a0_0x1a1f57,_0x2327ed=new Map(),_0x5b1a32=[];return _0x172e35[_0x2301ca(0x133)]((_0x293f93,_0x539880)=>{const _0x56d792=_0x2301ca,_0x3228d2=_0x3d5252['map'](_0x3ac5e6=>_0x293f93[_0x3ac5e6])[_0x56d792(0x138)]('|');_0x2327ed['has'](_0x3228d2)?_0x5b1a32[_0x56d792(0x125)]({'rowIndex':_0x539880,'duplicateOf':_0x2327ed['get'](_0x3228d2),'key':_0x3228d2}):_0x2327ed[_0x56d792(0x129)](_0x3228d2,_0x539880);}),_0x5b1a32;}[a0_0x1a1f57(0x121)](_0x38a257,_0x405a31,_0x4afeb6){const _0x2c8efd=a0_0x1a1f57,_0x4bf4f8={'YJmzU':_0x2c8efd(0x130)},_0xa550f6=[];return _0x38a257['forEach']((_0x9ad85,_0x14425a)=>{const _0x288437=_0x2c8efd,_0x8d6afe=this[_0x288437(0x12e)](_0x9ad85,_0x405a31,_0x4afeb6);_0x8d6afe['length']>0x0&&_0xa550f6[_0x288437(0x125)]({'rowIndex':_0x14425a,'rowData':_0x9ad85,'errors':_0x8d6afe});}),logger['info']({'event':_0x2c8efd(0x12c),'totalRows':_0x38a257[_0x2c8efd(0x123)],'errorCount':_0xa550f6['length']},_0x4bf4f8['YJmzU']),_0xa550f6;}}module['exports']=new ImportValidator();