@restforgejs/platform 5.2.0 → 5.2.10

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 (174) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +2 -2
  3. package/cli/consumer.js +2 -2
  4. package/generators/cli/fast-track.js +293 -35
  5. package/generators/lib/migrate/backend-payload-migrator.js +39 -17
  6. package/generators/lib/migrate/field-type-resolver.js +64 -7
  7. package/generators/lib/migrate/migrate-runner.js +12 -2
  8. package/generators/lib/migrate/sql-parser.js +5 -3
  9. package/generators/lib/payload/payload-runner.js +103 -11
  10. package/generators/lib/templates/dashboard-catalog.js +1 -1
  11. package/generators/lib/templates/db-connection-env.js +1 -1
  12. package/generators/lib/templates/dbschema-catalog.js +1 -1
  13. package/generators/lib/templates/field-validation-catalog.js +1 -1
  14. package/generators/lib/templates/mysql-template.js +1 -1
  15. package/generators/lib/templates/oracle-template.js +1 -1
  16. package/generators/lib/templates/postgres-template.js +1 -1
  17. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  18. package/generators/lib/templates/sqlite-template.js +1 -1
  19. package/integrity-manifest.json +18 -18
  20. package/package.json +1 -1
  21. package/scripts/verify-integrity.js +1 -1
  22. package/server.js +2 -2
  23. package/src/components/handlers/adjust_handler.js +1 -1
  24. package/src/components/handlers/audit_handler.js +1 -1
  25. package/src/components/handlers/delete_handler.js +1 -1
  26. package/src/components/handlers/export_handler.js +1 -1
  27. package/src/components/handlers/import_handler.js +1 -1
  28. package/src/components/handlers/insert_handler.js +1 -1
  29. package/src/components/handlers/update_handler.js +1 -1
  30. package/src/components/handlers/upload_handler.js +1 -1
  31. package/src/components/handlers/workflow_handler.js +1 -1
  32. package/src/components/integrations/webhook.js +1 -1
  33. package/src/consumers/baseConsumer.js +1 -1
  34. package/src/consumers/declarativeMapper.js +1 -1
  35. package/src/consumers/handlers/apiHandler.js +1 -1
  36. package/src/consumers/handlers/consoleHandler.js +1 -1
  37. package/src/consumers/handlers/databaseHandler.js +1 -1
  38. package/src/consumers/handlers/index.js +1 -1
  39. package/src/consumers/handlers/kafkaHandler.js +1 -1
  40. package/src/consumers/index.js +1 -1
  41. package/src/consumers/messageTransformer.js +1 -1
  42. package/src/consumers/validator.js +1 -1
  43. package/src/core/db/dialect/base-dialect.js +1 -1
  44. package/src/core/db/dialect/index.js +1 -1
  45. package/src/core/db/dialect/mysql-dialect.js +1 -1
  46. package/src/core/db/dialect/oracle-dialect.js +1 -1
  47. package/src/core/db/dialect/postgres-dialect.js +1 -1
  48. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  49. package/src/core/db/flatten-helper.js +1 -1
  50. package/src/core/db/query-builder-error.js +1 -1
  51. package/src/core/db/query-builder.js +1 -1
  52. package/src/core/db/relation-helper.js +1 -1
  53. package/src/core/handlers/delete_handler.js +1 -1
  54. package/src/core/handlers/insert_handler.js +1 -1
  55. package/src/core/handlers/update_handler.js +1 -1
  56. package/src/core/models/base-model.js +1 -1
  57. package/src/core/utils/cache-manager.js +1 -1
  58. package/src/core/utils/component-engine.js +1 -1
  59. package/src/core/utils/context-builder.js +1 -1
  60. package/src/core/utils/datetime-formatter.js +1 -1
  61. package/src/core/utils/datetime-parser.js +1 -1
  62. package/src/core/utils/db.js +1 -1
  63. package/src/core/utils/logger.js +1 -1
  64. package/src/core/utils/payload-loader.js +1 -1
  65. package/src/core/utils/security-checks.js +1 -1
  66. package/src/middleware/body-options.js +1 -1
  67. package/src/middleware/cors.js +1 -1
  68. package/src/middleware/idempotency.js +1 -1
  69. package/src/middleware/rate-limiter.js +1 -1
  70. package/src/middleware/request-logger.js +1 -1
  71. package/src/middleware/security-headers.js +1 -1
  72. package/src/models/base-model-mysql.js +1 -1
  73. package/src/models/base-model-oracle.js +1 -1
  74. package/src/models/base-model-sqlite.js +1 -1
  75. package/src/models/base-model.js +1 -1
  76. package/src/pro/caching/redis-client.js +1 -1
  77. package/src/pro/caching/redis-helper.js +1 -1
  78. package/src/pro/consumers/baseConsumer.js +1 -1
  79. package/src/pro/consumers/declarativeMapper.js +1 -1
  80. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  81. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  82. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  83. package/src/pro/consumers/handlers/index.js +1 -1
  84. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  85. package/src/pro/consumers/index.js +1 -1
  86. package/src/pro/consumers/messageTransformer.js +1 -1
  87. package/src/pro/consumers/validator.js +1 -1
  88. package/src/pro/database/base-model-mysql.js +1 -1
  89. package/src/pro/database/base-model-oracle.js +1 -1
  90. package/src/pro/database/base-model-sqlite.js +1 -1
  91. package/src/pro/database/db-mysql.js +1 -1
  92. package/src/pro/database/db-oracle.js +1 -1
  93. package/src/pro/database/db-sqlite.js +1 -1
  94. package/src/pro/excel/excel-generator.js +1 -1
  95. package/src/pro/excel/excel-parser.js +1 -1
  96. package/src/pro/excel/export-service.js +1 -1
  97. package/src/pro/excel/export_handler.js +1 -1
  98. package/src/pro/excel/import-service.js +1 -1
  99. package/src/pro/excel/import-validator.js +1 -1
  100. package/src/pro/excel/import_handler.js +1 -1
  101. package/src/pro/excel/upsert-builder.js +1 -1
  102. package/src/pro/idgen/idgen-routes.js +1 -1
  103. package/src/pro/integrations/lookup-resolver.js +1 -1
  104. package/src/pro/integrations/upload-handler-v2.js +1 -1
  105. package/src/pro/integrations/upload-handler.js +1 -1
  106. package/src/pro/integrations/webhook.js +1 -1
  107. package/src/pro/locking/lock-routes.js +1 -1
  108. package/src/pro/locking/resource-lock-manager.js +1 -1
  109. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  110. package/src/pro/messaging/kafkaService.js +1 -1
  111. package/src/pro/messaging/messagehubService.js +1 -1
  112. package/src/pro/messaging/rabbitmqService.js +1 -1
  113. package/src/pro/scheduler/job-manager.js +1 -1
  114. package/src/pro/scheduler/job-routes.js +1 -1
  115. package/src/pro/scheduler/job-validator.js +1 -1
  116. package/src/pro/storage/base-storage-provider.js +1 -1
  117. package/src/pro/storage/file-metadata-helper.js +1 -1
  118. package/src/pro/storage/index.js +1 -1
  119. package/src/pro/storage/local-storage-provider.js +1 -1
  120. package/src/pro/storage/s3-storage-provider.js +1 -1
  121. package/src/pro/storage/upload-cleanup-job.js +1 -1
  122. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  123. package/src/pro/storage/upload-pending-tracker.js +1 -1
  124. package/src/pro/websocket/broadcast-helper.js +1 -1
  125. package/src/pro/websocket/index.js +1 -1
  126. package/src/pro/websocket/livesync-server.js +1 -1
  127. package/src/pro/websocket/ws-broadcaster.js +1 -1
  128. package/src/services/export-service.js +1 -1
  129. package/src/services/import-service.js +1 -1
  130. package/src/services/kafkaConsumerService.js +1 -1
  131. package/src/services/kafkaService.js +1 -1
  132. package/src/services/messagehubService.js +1 -1
  133. package/src/services/rabbitmqService.js +1 -1
  134. package/src/utils/cache-invalidation-registry.js +1 -1
  135. package/src/utils/cache-manager.js +1 -1
  136. package/src/utils/component-engine.js +1 -1
  137. package/src/utils/config-extractor.js +1 -1
  138. package/src/utils/consumerLogger.js +1 -1
  139. package/src/utils/context-builder.js +1 -1
  140. package/src/utils/dashboard-helpers.js +1 -1
  141. package/src/utils/dateHelper.js +1 -1
  142. package/src/utils/datetime-formatter.js +1 -1
  143. package/src/utils/datetime-parser.js +1 -1
  144. package/src/utils/db-bootstrap.js +1 -1
  145. package/src/utils/db-mysql.js +1 -1
  146. package/src/utils/db-oracle.js +1 -1
  147. package/src/utils/db-sqlite.js +1 -1
  148. package/src/utils/db.js +1 -1
  149. package/src/utils/demo-generator.js +1 -1
  150. package/src/utils/excel-generator.js +1 -1
  151. package/src/utils/excel-parser.js +1 -1
  152. package/src/utils/file-watcher.js +1 -1
  153. package/src/utils/id-generator.js +1 -1
  154. package/src/utils/idempotency-manager.js +1 -1
  155. package/src/utils/import-validator.js +1 -1
  156. package/src/utils/license-client.js +1 -1
  157. package/src/utils/lock-manager.js +1 -1
  158. package/src/utils/logger.js +1 -1
  159. package/src/utils/lookup-resolver.js +1 -1
  160. package/src/utils/payload-loader.js +1 -1
  161. package/src/utils/processor-response.js +1 -1
  162. package/src/utils/rabbitmq.js +1 -1
  163. package/src/utils/redis-client.js +1 -1
  164. package/src/utils/redis-helper.js +1 -1
  165. package/src/utils/request-scope.js +1 -1
  166. package/src/utils/security-checks.js +1 -1
  167. package/src/utils/service-resolver.js +1 -1
  168. package/src/utils/shutdown-coordinator.js +1 -1
  169. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  170. package/src/utils/sql-table-extractor.js +1 -1
  171. package/src/utils/trusted-keys.js +1 -1
  172. package/src/utils/upload-handler.js +1 -1
  173. package/src/utils/upsert-builder.js +1 -1
  174. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';function a0_0x61b7(_0x43c568,_0xd72e8c){_0x43c568=_0x43c568-0x14e;const _0x5444dc=a0_0x5444();let _0x61b714=_0x5444dc[_0x43c568];if(a0_0x61b7['wwEkQH']===undefined){var _0x34b6c5=function(_0x24343a){const _0x4f2ed3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f122b='',_0x47d7a8='';for(let _0x38312f=0x0,_0x360097,_0xfc88a5,_0x10eb72=0x0;_0xfc88a5=_0x24343a['charAt'](_0x10eb72++);~_0xfc88a5&&(_0x360097=_0x38312f%0x4?_0x360097*0x40+_0xfc88a5:_0xfc88a5,_0x38312f++%0x4)?_0x2f122b+=String['fromCharCode'](0xff&_0x360097>>(-0x2*_0x38312f&0x6)):0x0){_0xfc88a5=_0x4f2ed3['indexOf'](_0xfc88a5);}for(let _0x962c38=0x0,_0x3cce77=_0x2f122b['length'];_0x962c38<_0x3cce77;_0x962c38++){_0x47d7a8+='%'+('00'+_0x2f122b['charCodeAt'](_0x962c38)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x47d7a8);};a0_0x61b7['hurbor']=_0x34b6c5,a0_0x61b7['smgrEq']={},a0_0x61b7['wwEkQH']=!![];}const _0x2a32ed=_0x5444dc[0x0],_0x5b8462=_0x43c568+_0x2a32ed,_0x39011f=a0_0x61b7['smgrEq'][_0x5b8462];return!_0x39011f?(_0x61b714=a0_0x61b7['hurbor'](_0x61b714),a0_0x61b7['smgrEq'][_0x5b8462]=_0x61b714):_0x61b714=_0x39011f,_0x61b714;}const a0_0x4b7fa3=a0_0x61b7;(function(_0x17d8cb,_0x5be315){const _0x2caf62=a0_0x61b7,_0x1f7e5a=_0x17d8cb();while(!![]){try{const _0x597c08=-parseInt(_0x2caf62(0x14f))/0x1*(-parseInt(_0x2caf62(0x177))/0x2)+parseInt(_0x2caf62(0x16c))/0x3*(parseInt(_0x2caf62(0x16d))/0x4)+parseInt(_0x2caf62(0x155))/0x5+parseInt(_0x2caf62(0x15a))/0x6+-parseInt(_0x2caf62(0x175))/0x7*(-parseInt(_0x2caf62(0x163))/0x8)+-parseInt(_0x2caf62(0x157))/0x9*(parseInt(_0x2caf62(0x153))/0xa)+parseInt(_0x2caf62(0x16b))/0xb*(-parseInt(_0x2caf62(0x173))/0xc);if(_0x597c08===_0x5be315)break;else _0x1f7e5a['push'](_0x1f7e5a['shift']());}catch(_0x3f410a){_0x1f7e5a['push'](_0x1f7e5a['shift']());}}}(a0_0x5444,0x9247d));const redisClient=require(a0_0x4b7fa3(0x15e)),{logger}=require(a0_0x4b7fa3(0x154)),crypto=require('crypto');function a0_0x5444(){const _0x479332=['C2v0zxG','mtb5r0jmv2S','yNvPBgrezxrLCM1PBMLZDgLJs2v5','mtiWnJeZy3HuAeTx','Dw5RBM93BG','z2v0q2XPzw50','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','mJe3mfbxD0TkCW','lI9SB2DNzxi','ndqYndaYmhnitLHoyG','zxjYB3i','mtqWnJDkCffZqwq','DhrS','x2vUC3vYzuLUAxrPywXPEMvK','mJm2ntu3ofbXENr2CW','CMvX','AwrLBxbVDgvUy3LFAgL0','zgvIDwC','lI9YzwrPCY1JBgLLBNq','x2LUAxrdB25MAwC','AwrLBxbVDgvUy3LFy29UzMLNx2LUAxq','CgfYC2u','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','ofvOwK9Ssq','x2vUywjSzwq','zw5HyMXLza','C3bSAxq','Aw5MBW','zw52','BwvZC2fNzq','lcbuveW6ia','odeZoty4mvjfCg9rAW','mtC4ognJtuzqua','mJC3nMXvC1v1CG','C3rYAw5NAwz5','x3r0Ba','zgvMyxvSDa','BKXcBKC','CLrvwMG','mZzuBKnRueq','C3rVCMu','nJaZnZq1mu9muujYuq'];a0_0x5444=function(){return _0x479332;};return a0_0x5444();}class IdempotencyManager{constructor(){const _0x896cda=a0_0x4b7fa3;this['_enabled']=null,this[_0x896cda(0x16f)]=null,this['_initialized']=![];}[a0_0x4b7fa3(0x15f)](){const _0x5c5561=a0_0x4b7fa3,_0x374f06={'TdIor':function(_0x5a89c2,_0x178f8c){return _0x5a89c2===_0x178f8c;},'NvwyP':_0x5c5561(0x160)};this[_0x5c5561(0x164)]=_0x374f06['TdIor'](process[_0x5c5561(0x168)]['IDEMPOTENCY_ENABLED'],'true'),this['_ttl']=parseInt(process[_0x5c5561(0x168)]['IDEMPOTENCY_TTL'],0xa)||0x12c,this['_initialized']=!![],logger['info']({'event':_0x374f06['NvwyP'],'enabled':this['_enabled'],'ttl':this[_0x5c5561(0x16f)]},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this['_enabled']+_0x5c5561(0x16a)+this[_0x5c5561(0x16f)]+'s');}[a0_0x4b7fa3(0x159)](){!this['_initialized']&&this['_initConfig']();}get[a0_0x4b7fa3(0x165)](){const _0x255893=a0_0x4b7fa3;return this['_ensureInitialized'](),this[_0x255893(0x164)];}get[a0_0x4b7fa3(0x158)](){const _0x48a74c=a0_0x4b7fa3;return this['_ensureInitialized'](),this[_0x48a74c(0x16f)];}['isEnabled'](){return this['enabled'];}['buildKey'](_0x593c0d,_0x106281){const _0x50b7c4=a0_0x4b7fa3,_0x3a36c2={'EALQV':_0x50b7c4(0x170),'Hqrcb':_0x50b7c4(0x150)},_0x3c471d=_0x106281['path'][_0x50b7c4(0x166)]('/')['filter'](Boolean),_0x36ca37=_0x3c471d[0x0]||_0x3a36c2['EALQV'],_0xde9d7f=_0x3c471d[0x1]||'unknown',_0x3f5439=_0x3c471d[0x2]||_0x3a36c2['Hqrcb'];return'rf:idem:'+_0x36ca37+':'+_0xde9d7f+':'+_0x3f5439+':'+_0x593c0d;}async[a0_0x4b7fa3(0x174)](_0x1affee,_0x1eeb15){const _0x1556fe=a0_0x4b7fa3,_0x4ce1f9={'qNJCT':'idempotency_store','nLBnG':'Idempotency\x20response\x20stored'};if(!this['enabled'])return![];try{const _0x1890e1=redisClient[_0x1556fe(0x151)]();return await _0x1890e1[_0x1556fe(0x176)](_0x1affee,this['ttl'],JSON[_0x1556fe(0x16e)](_0x1eeb15)),logger['debug']({'event':_0x4ce1f9['qNJCT'],'key':_0x1affee,'ttl':this[_0x1556fe(0x158)],'statusCode':_0x1eeb15['statusCode']},_0x4ce1f9[_0x1556fe(0x171)]),!![];}catch(_0x4eba19){return logger[_0x1556fe(0x156)]({'event':'idempotency_store_error','key':_0x1affee,'error':_0x4eba19[_0x1556fe(0x169)]},_0x1556fe(0x162)+_0x4eba19['message']),![];}}async['retrieve'](_0x20d25b){const _0xffe8a0=a0_0x4b7fa3,_0x278cd7={'rTUZh':'Idempotency\x20cache\x20HIT','xcBly':'idempotency_miss','OhFAz':'Idempotency\x20cache\x20MISS'};if(!this[_0xffe8a0(0x165)])return null;try{const _0x2a2492=redisClient[_0xffe8a0(0x151)](),_0x4deb68=await _0x2a2492['get'](_0x20d25b);if(_0x4deb68)return logger[_0xffe8a0(0x167)]({'event':_0xffe8a0(0x15c),'key':_0x20d25b},_0x278cd7[_0xffe8a0(0x172)]),JSON[_0xffe8a0(0x161)](_0x4deb68);return logger[_0xffe8a0(0x15d)]({'event':_0x278cd7['xcBly'],'key':_0x20d25b},_0x278cd7['OhFAz']),null;}catch(_0x2fcfdf){return logger[_0xffe8a0(0x156)]({'event':_0xffe8a0(0x152),'key':_0x20d25b,'error':_0x2fcfdf[_0xffe8a0(0x169)]},'Idempotency\x20retrieve\x20error:\x20'+_0x2fcfdf['message']),null;}}['generateKey'](_0x4acb44=a0_0x4b7fa3(0x15b)){return _0x4acb44+'_'+crypto['randomUUID']();}[a0_0x4b7fa3(0x14e)](_0x41cf6e,_0x6c61d8,_0x28f282){return _0x41cf6e+':'+_0x6c61d8+':'+_0x28f282;}}module['exports']=new IdempotencyManager();
1
+ 'use strict';const a0_0x2bddd9=a0_0x138d;function a0_0x138d(_0x1fe82c,_0x162164){_0x1fe82c=_0x1fe82c-0xa4;const _0xcfa066=a0_0xcfa0();let _0x138d01=_0xcfa066[_0x1fe82c];if(a0_0x138d['GNUqeg']===undefined){var _0x2642d3=function(_0x59e80c){const _0x42d6a8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4bd2c4='',_0x2bb7df='';for(let _0x331689=0x0,_0x500be4,_0x2b68f0,_0x2a1a96=0x0;_0x2b68f0=_0x59e80c['charAt'](_0x2a1a96++);~_0x2b68f0&&(_0x500be4=_0x331689%0x4?_0x500be4*0x40+_0x2b68f0:_0x2b68f0,_0x331689++%0x4)?_0x4bd2c4+=String['fromCharCode'](0xff&_0x500be4>>(-0x2*_0x331689&0x6)):0x0){_0x2b68f0=_0x42d6a8['indexOf'](_0x2b68f0);}for(let _0xb50579=0x0,_0x31c5fd=_0x4bd2c4['length'];_0xb50579<_0x31c5fd;_0xb50579++){_0x2bb7df+='%'+('00'+_0x4bd2c4['charCodeAt'](_0xb50579)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2bb7df);};a0_0x138d['fgOuDK']=_0x2642d3,a0_0x138d['xZzbjC']={},a0_0x138d['GNUqeg']=!![];}const _0x3f20e2=_0xcfa066[0x0],_0x1804f1=_0x1fe82c+_0x3f20e2,_0x5972c1=a0_0x138d['xZzbjC'][_0x1804f1];return!_0x5972c1?(_0x138d01=a0_0x138d['fgOuDK'](_0x138d01),a0_0x138d['xZzbjC'][_0x1804f1]=_0x138d01):_0x138d01=_0x5972c1,_0x138d01;}(function(_0x46c717,_0x305ecc){const _0x30aa9d=a0_0x138d,_0x220e61=_0x46c717();while(!![]){try{const _0x43c94b=parseInt(_0x30aa9d(0xb9))/0x1*(parseInt(_0x30aa9d(0xd0))/0x2)+-parseInt(_0x30aa9d(0xb5))/0x3*(parseInt(_0x30aa9d(0xab))/0x4)+-parseInt(_0x30aa9d(0xc6))/0x5*(parseInt(_0x30aa9d(0xb7))/0x6)+-parseInt(_0x30aa9d(0xaa))/0x7+-parseInt(_0x30aa9d(0xa7))/0x8+-parseInt(_0x30aa9d(0xa8))/0x9*(-parseInt(_0x30aa9d(0xce))/0xa)+parseInt(_0x30aa9d(0xc7))/0xb*(parseInt(_0x30aa9d(0xaf))/0xc);if(_0x43c94b===_0x305ecc)break;else _0x220e61['push'](_0x220e61['shift']());}catch(_0x5aca34){_0x220e61['push'](_0x220e61['shift']());}}}(a0_0xcfa0,0x342ed));function a0_0xcfa0(){const _0x5056cb=['swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','z2vUzxjHDgvlzxK','x2LUAxrPywXPEMvK','yNvPBgrlzxK','oteYndaWEKn0rwTW','mZG3otq1wwX3B29u','DhrS','nZG5ntm3Cg1IuNDt','ndC4oty0sKPsuvHA','Aw5MBW','Dw5RBM93BG','z2v0','mtiZnZKYv1jrzu9V','zgvIDwC','sgjqEfa','AwrLBxbVDgvUy3LFC3rVCMvFzxjYB3i','CMfUzg9Tvvvjra','AwrLBxbVDgvUy3LFBwLZCW','m1vZv01cAa','y3j5ChrV','mJq5otyWvKPbzvj6','AwrLBxbVDgvUy3LFy29UzMLNx2LUAxq','mtqYmfnrs1PsvW','swrLBxbVDgvUy3KGy2fJAguGseLu','x2vUywjSzwq','C3bSAxq','AKD3Be4','zw5HyMXLza','zw52','AwrLBxbVDgvUy3LFC3rVCMu','BwvZC2fNzq','A1POC0G','surftvbpvevoq1LFru5bqKXfra','x3r0Ba','zMrJyu8','mtvHz05WrLO','odHJs3DQCgu','zxjYB3i','rejWr1G','z2v0q2XPzw50','x2vUC3vYzuLUAxrPywXPEMvK','C29LuwW','Cgf0Aa','nZbfs09ytM8','C3rHDhvZq29Kzq','ndi0y0vvEfD3','AxnfBMfIBgvK','wNjlBva','surftvbpvevoq1LFvfrm','zMLSDgvY','A0n5vKW'];a0_0xcfa0=function(){return _0x5056cb;};return a0_0xcfa0();}const redisClient=require('./redis-client'),{logger}=require('./logger'),crypto=require(a0_0x2bddd9(0xb6));class IdempotencyManager{constructor(){this['_enabled']=null,this['_ttl']=null,this['_initialized']=![];}['_initConfig'](){const _0x541dab=a0_0x2bddd9,_0x34db90={'ZrKmP':function(_0x4058e0,_0x5be179){return _0x4058e0===_0x5be179;},'eYmqO':'true','jGwlN':function(_0x2f7b81,_0x97a3a9,_0x59a723){return _0x2f7b81(_0x97a3a9,_0x59a723);},'soeQl':_0x541dab(0xb8)};this[_0x541dab(0xbb)]=_0x34db90[_0x541dab(0xd2)](process[_0x541dab(0xbf)][_0x541dab(0xc3)],_0x34db90['eYmqO']),this['_ttl']=_0x34db90[_0x541dab(0xbd)](parseInt,process['env'][_0x541dab(0xd3)],0xa)||0x12c,this[_0x541dab(0xa5)]=!![],logger[_0x541dab(0xac)]({'event':_0x34db90[_0x541dab(0xcc)],'enabled':this['_enabled'],'ttl':this[_0x541dab(0xc4)]},_0x541dab(0xd6)+this['_enabled']+',\x20TTL:\x20'+this['_ttl']+'s');}['_ensureInitialized'](){!this['_initialized']&&this['_initConfig']();}get[a0_0x2bddd9(0xbe)](){const _0x2bf5cd=a0_0x2bddd9;return this['_ensureInitialized'](),this[_0x2bf5cd(0xbb)];}get['ttl'](){const _0x1d9aae=a0_0x2bddd9;return this[_0x1d9aae(0xcb)](),this[_0x1d9aae(0xc4)];}[a0_0x2bddd9(0xd1)](){const _0x157020=a0_0x2bddd9;return this[_0x157020(0xbe)];}[a0_0x2bddd9(0xa6)](_0x3903c6,_0x263338){const _0x55d9f1=a0_0x2bddd9,_0xbc7e44={'DBpGX':_0x55d9f1(0xad)},_0x46fb7e=_0x263338[_0x55d9f1(0xcd)][_0x55d9f1(0xbc)]('/')[_0x55d9f1(0xd4)](Boolean),_0x5a81ec=_0x46fb7e[0x0]||'default',_0x5e0789=_0x46fb7e[0x1]||_0xbc7e44[_0x55d9f1(0xc9)],_0x1e7eaf=_0x46fb7e[0x2]||'unknown';return'rf:idem:'+_0x5a81ec+':'+_0x5e0789+':'+_0x1e7eaf+':'+_0x3903c6;}async['store'](_0x1570a3,_0x2501f6){const _0x20bcda=a0_0x2bddd9,_0x286371={'fdcaO':_0x20bcda(0xc0),'kZhsH':_0x20bcda(0xd7)};if(!this['enabled'])return![];try{const _0x38f6d2=redisClient['getClient']();return await _0x38f6d2['setex'](_0x1570a3,this[_0x20bcda(0xa9)],JSON['stringify'](_0x2501f6)),logger['debug']({'event':_0x286371[_0x20bcda(0xc5)],'key':_0x1570a3,'ttl':this[_0x20bcda(0xa9)],'statusCode':_0x2501f6[_0x20bcda(0xcf)]},_0x286371[_0x20bcda(0xc2)]),!![];}catch(_0x3c3b7d){return logger[_0x20bcda(0xc8)]({'event':_0x20bcda(0xb2),'key':_0x1570a3,'error':_0x3c3b7d[_0x20bcda(0xc1)]},'Idempotency\x20store\x20error:\x20'+_0x3c3b7d[_0x20bcda(0xc1)]),![];}}async['retrieve'](_0x3a26ed){const _0x3cfc02=a0_0x2bddd9,_0x4446ba={'kCyVL':'idempotency_hit','tDtmX':_0x3cfc02(0xba),'HbPxP':'Idempotency\x20cache\x20MISS'};if(!this['enabled'])return null;try{const _0x5f598d=redisClient[_0x3cfc02(0xca)](),_0x1b0473=await _0x5f598d[_0x3cfc02(0xae)](_0x3a26ed);if(_0x1b0473)return logger[_0x3cfc02(0xac)]({'event':_0x4446ba[_0x3cfc02(0xd5)],'key':_0x3a26ed},_0x4446ba['tDtmX']),JSON['parse'](_0x1b0473);return logger[_0x3cfc02(0xb0)]({'event':_0x3cfc02(0xb4),'key':_0x3a26ed},_0x4446ba[_0x3cfc02(0xb1)]),null;}catch(_0x107b31){return logger[_0x3cfc02(0xc8)]({'event':'idempotency_retrieve_error','key':_0x3a26ed,'error':_0x107b31[_0x3cfc02(0xc1)]},'Idempotency\x20retrieve\x20error:\x20'+_0x107b31[_0x3cfc02(0xc1)]),null;}}[a0_0x2bddd9(0xa4)](_0x384f2f='req'){const _0x56417c=a0_0x2bddd9;return _0x384f2f+'_'+crypto[_0x56417c(0xb3)]();}['buildDeterministicKey'](_0x2e378c,_0x951175,_0x1eb499){return _0x2e378c+':'+_0x951175+':'+_0x1eb499;}}module['exports']=new IdempotencyManager();
@@ -1 +1 @@
1
- const a0_0xe6ce8=a0_0x29ec;function a0_0x112c(){const _0x46cfec=['DMfSAwrHDgvvCMW','ntyWmtjXsvfpqNC','DMfSAwrHDgvoDw1Izxi','lI9SB2DNzxi','mNzQyMfXyW','Eg5ptMe','uwzPCu0','DMfSAwrHDgvfBwfPBa','ChvZAa','mZe1otC4mg92r1Hxuq','C2v0','mZK1tMfVt0Le','nJC3otyYnLD1thnuqq','yMf0y2HwywXPzgf0zvjVD3m','sw52ywXPzcbvuKWGzM9YBwf0','nJCYndjhtLvoCfO','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','DxjS','mte0nteZm3nduxfOEa','zM9YBwf0','zM9YrwfJAa','nZK4ntj1DLrQD2m','ndeXodC0ngz4teDwsW','DMfSAwrHDgvsB3C','z2v0','wNbbuMG','DMfSAwrHDgvgAwvSzezVCM1HDa','zw1HAwW','DMfSAwrHDgvqAg9Uzq','BgvUz3rO','Cfj0A2q','D1H3ALe','A0LhC00','DgvZDa','swvkwLi','z2X0qK8','CgHVBMu'];a0_0x112c=function(){return _0x46cfec;};return a0_0x112c();}function a0_0x29ec(_0x56542c,_0x484606){_0x56542c=_0x56542c-0xad;const _0x112cd8=a0_0x112c();let _0x29ec29=_0x112cd8[_0x56542c];if(a0_0x29ec['eFbtzT']===undefined){var _0x4e5b44=function(_0x148246){const _0x466ab6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2da604='',_0x378436='';for(let _0x130e52=0x0,_0x4cf663,_0x2e701a,_0xc8cc48=0x0;_0x2e701a=_0x148246['charAt'](_0xc8cc48++);~_0x2e701a&&(_0x4cf663=_0x130e52%0x4?_0x4cf663*0x40+_0x2e701a:_0x2e701a,_0x130e52++%0x4)?_0x2da604+=String['fromCharCode'](0xff&_0x4cf663>>(-0x2*_0x130e52&0x6)):0x0){_0x2e701a=_0x466ab6['indexOf'](_0x2e701a);}for(let _0x130439=0x0,_0x4f2c4c=_0x2da604['length'];_0x130439<_0x4f2c4c;_0x130439++){_0x378436+='%'+('00'+_0x2da604['charCodeAt'](_0x130439)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x378436);};a0_0x29ec['xPtILH']=_0x4e5b44,a0_0x29ec['cgsbQD']={},a0_0x29ec['eFbtzT']=!![];}const _0x10caf9=_0x112cd8[0x0],_0x3c12b4=_0x56542c+_0x10caf9,_0x1f0945=a0_0x29ec['cgsbQD'][_0x3c12b4];return!_0x1f0945?(_0x29ec29=a0_0x29ec['xPtILH'](_0x29ec29),a0_0x29ec['cgsbQD'][_0x3c12b4]=_0x29ec29):_0x29ec29=_0x1f0945,_0x29ec29;}(function(_0x148aa0,_0xfb46b8){const _0xbc44a6=a0_0x29ec,_0x233a94=_0x148aa0();while(!![]){try{const _0x1791fe=parseInt(_0xbc44a6(0xc3))/0x1*(parseInt(_0xbc44a6(0xb2))/0x2)+parseInt(_0xbc44a6(0xb7))/0x3+parseInt(_0xbc44a6(0xaf))/0x4*(-parseInt(_0xbc44a6(0xb9))/0x5)+-parseInt(_0xbc44a6(0xbd))/0x6+parseInt(_0xbc44a6(0xba))/0x7+-parseInt(_0xbc44a6(0xc4))/0x8+parseInt(_0xbc44a6(0xc0))/0x9;if(_0x1791fe===_0xfb46b8)break;else _0x233a94['push'](_0x233a94['shift']());}catch(_0x32dab1){_0x233a94['push'](_0x233a94['shift']());}}}(a0_0x112c,0x91a64));const {logger}=require(a0_0xe6ce8(0xb1));class ImportValidator{[a0_0xe6ce8(0xc5)](_0x2fed12,_0x54e388=[],_0xafd7b6={}){const _0x32fad6=a0_0xe6ce8,_0x3dd597={'IeJZR':function(_0x26aaa2,_0x37909e){return _0x26aaa2===_0x37909e;},'QfiqM':'required'},_0x3b8a80=[];return _0x54e388['forEach'](_0x4083af=>{const _0x40f67a=a0_0x29ec,_0x174f71=_0x2fed12[_0x4083af];(_0x3dd597[_0x40f67a(0xd0)](_0x174f71,null)||_0x3dd597[_0x40f67a(0xd0)](_0x174f71,undefined)||_0x174f71==='')&&_0x3b8a80[_0x40f67a(0xb6)]({'field':_0x4083af,'type':_0x3dd597[_0x40f67a(0xb4)],'message':'Required\x20field\x20is\x20empty'});}),Object['keys'](_0xafd7b6)[_0x32fad6(0xc2)](_0x2048f5=>{const _0x385550=_0x32fad6,_0x4251c9=_0x2fed12[_0x2048f5],_0x54dd57=_0xafd7b6[_0x2048f5];if(_0x4251c9===null||_0x3dd597[_0x385550(0xd0)](_0x4251c9,undefined)||_0x4251c9==='')return;const _0x13dbbe=this[_0x385550(0xc8)](_0x2048f5,_0x4251c9,_0x54dd57);_0x13dbbe&&_0x3b8a80[_0x385550(0xb6)](_0x13dbbe);}),_0x3b8a80;}['validateFieldFormat'](_0x173018,_0x531a39,_0x815162){const _0x2847a3=a0_0xe6ce8,_0x607910={'xnONa':_0x2847a3(0xad)};switch(_0x815162){case _0x2847a3(0xc9):return this[_0x2847a3(0xb5)](_0x173018,_0x531a39);case _0x607910[_0x2847a3(0xb3)]:return this['validatePhone'](_0x173018,_0x531a39);case _0x2847a3(0xbf):return this['validateUrl'](_0x173018,_0x531a39);case'number':return this[_0x2847a3(0xb0)](_0x173018,_0x531a39);default:return null;}}[a0_0xe6ce8(0xb5)](_0x3fd8d3,_0x21ab82){const _0x5dc58e=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x5dc58e['test'](String(_0x21ab82)))return{'field':_0x3fd8d3,'type':'format','message':'Invalid\x20email\x20format'};return null;}[a0_0xe6ce8(0xca)](_0x4d1116,_0x535722){const _0x202ebb=a0_0xe6ce8,_0x5ed794={'IqsbP':function(_0x2e5a7c,_0x209bc2){return _0x2e5a7c(_0x209bc2);},'bqBnI':function(_0xff7fa2,_0x3d83a5){return _0xff7fa2<_0x3d83a5;}},_0x433945=_0x5ed794['IqsbP'](String,_0x535722)['replace'](/\s+/g,''),_0x1d4209=/^[\d\+\-\(\)]+$/;if(!_0x1d4209[_0x202ebb(0xcf)](_0x433945)||_0x5ed794['bqBnI'](_0x433945['length'],0x8))return{'field':_0x4d1116,'type':_0x202ebb(0xc1),'message':'Invalid\x20phone\x20format'};return null;}[a0_0xe6ce8(0xae)](_0x40528f,_0x1c1bf7){const _0x327ec2=a0_0xe6ce8,_0x5c74b3={'fctcK':function(_0x30ffdf,_0x337eba){return _0x30ffdf(_0x337eba);},'wXwjQ':'format','gltBO':_0x327ec2(0xbc)};try{return new URL(_0x5c74b3['fctcK'](String,_0x1c1bf7)),null;}catch(_0xb044a0){return{'field':_0x40528f,'type':_0x5c74b3[_0x327ec2(0xcd)],'message':_0x5c74b3[_0x327ec2(0xd1)]};}}[a0_0xe6ce8(0xb0)](_0x4691e4,_0x5988ac){const _0x4f8e2a=a0_0xe6ce8,_0x44741b={'voWaV':function(_0x2c948a,_0x59aab2){return _0x2c948a(_0x59aab2);},'TnZnU':_0x4f8e2a(0xc1)};if(_0x44741b['voWaV'](isNaN,_0x5988ac))return{'field':_0x4691e4,'type':_0x44741b['TnZnU'],'message':'Invalid\x20number\x20format'};return null;}[a0_0xe6ce8(0xbe)](_0x19fd93,_0xfc3197){const _0x36cf51=a0_0xe6ce8,_0x37859=new Map(),_0x20514c=[];return _0x19fd93[_0x36cf51(0xc2)]((_0x455a43,_0x118b1e)=>{const _0x3882c0=_0x36cf51,_0x2ec728=_0xfc3197['map'](_0xad7968=>_0x455a43[_0xad7968])['join']('|');_0x37859['has'](_0x2ec728)?_0x20514c['push']({'rowIndex':_0x118b1e,'duplicateOf':_0x37859[_0x3882c0(0xc6)](_0x2ec728),'key':_0x2ec728}):_0x37859[_0x3882c0(0xb8)](_0x2ec728,_0x118b1e);}),_0x20514c;}[a0_0xe6ce8(0xbb)](_0x396dc9,_0x2ca499,_0x2a16d3){const _0x571365=a0_0xe6ce8,_0x2b057f={'kIGsM':function(_0x4f680f,_0x226a11){return _0x4f680f>_0x226a11;},'ZpARh':'batch_validation_complete','pRtkd':'Batch\x20validation\x20completed'},_0x2d17a2=[];return _0x396dc9[_0x571365(0xc2)]((_0x3db75a,_0x47890e)=>{const _0x32a4c4=_0x571365,_0x65d327=this['validateRow'](_0x3db75a,_0x2ca499,_0x2a16d3);_0x2b057f[_0x32a4c4(0xce)](_0x65d327[_0x32a4c4(0xcb)],0x0)&&_0x2d17a2[_0x32a4c4(0xb6)]({'rowIndex':_0x47890e,'rowData':_0x3db75a,'errors':_0x65d327});}),logger['info']({'event':_0x2b057f[_0x571365(0xc7)],'totalRows':_0x396dc9[_0x571365(0xcb)],'errorCount':_0x2d17a2[_0x571365(0xcb)]},_0x2b057f[_0x571365(0xcc)]),_0x2d17a2;}}module['exports']=new ImportValidator();
1
+ function a0_0x13b9(_0x12fd64,_0x3d16c1){_0x12fd64=_0x12fd64-0xb9;const _0x45c09d=a0_0x45c0();let _0x13b907=_0x45c09d[_0x12fd64];if(a0_0x13b9['kDKCOJ']===undefined){var _0x1f4901=function(_0x2971d5){const _0x1d839b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x306073='',_0x2c315a='';for(let _0xababe9=0x0,_0x175ecc,_0xf9c598,_0x1107c5=0x0;_0xf9c598=_0x2971d5['charAt'](_0x1107c5++);~_0xf9c598&&(_0x175ecc=_0xababe9%0x4?_0x175ecc*0x40+_0xf9c598:_0xf9c598,_0xababe9++%0x4)?_0x306073+=String['fromCharCode'](0xff&_0x175ecc>>(-0x2*_0xababe9&0x6)):0x0){_0xf9c598=_0x1d839b['indexOf'](_0xf9c598);}for(let _0x3fbcda=0x0,_0x24fa2a=_0x306073['length'];_0x3fbcda<_0x24fa2a;_0x3fbcda++){_0x2c315a+='%'+('00'+_0x306073['charCodeAt'](_0x3fbcda)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2c315a);};a0_0x13b9['kTOqbP']=_0x1f4901,a0_0x13b9['genhIX']={},a0_0x13b9['kDKCOJ']=!![];}const _0x28515b=_0x45c09d[0x0],_0x5636d8=_0x12fd64+_0x28515b,_0x24f696=a0_0x13b9['genhIX'][_0x5636d8];return!_0x24f696?(_0x13b907=a0_0x13b9['kTOqbP'](_0x13b907),a0_0x13b9['genhIX'][_0x5636d8]=_0x13b907):_0x13b907=_0x24f696,_0x13b907;}const a0_0xbc5a9f=a0_0x13b9;(function(_0x3f8fcd,_0x4db2da){const _0x13ce4f=a0_0x13b9,_0x20cc44=_0x3f8fcd();while(!![]){try{const _0x5e4d8b=-parseInt(_0x13ce4f(0xcf))/0x1*(parseInt(_0x13ce4f(0xca))/0x2)+parseInt(_0x13ce4f(0xbd))/0x3*(parseInt(_0x13ce4f(0xdb))/0x4)+parseInt(_0x13ce4f(0xc2))/0x5+parseInt(_0x13ce4f(0xc6))/0x6*(parseInt(_0x13ce4f(0xe2))/0x7)+-parseInt(_0x13ce4f(0xbe))/0x8+parseInt(_0x13ce4f(0xde))/0x9+-parseInt(_0x13ce4f(0xc0))/0xa;if(_0x5e4d8b===_0x4db2da)break;else _0x20cc44['push'](_0x20cc44['shift']());}catch(_0x1108a2){_0x20cc44['push'](_0x20cc44['shift']());}}}(a0_0x45c0,0x318e6));const {logger}=require('./logger');class ImportValidator{['validateRow'](_0x9d695f,_0x528334=[],_0x2896db={}){const _0x28ae90=a0_0x13b9,_0x181ca5={'aoXgZ':function(_0x599a6f,_0x1b9903){return _0x599a6f===_0x1b9903;},'SQORd':function(_0x443d3c,_0x347c47){return _0x443d3c===_0x347c47;}},_0x299a55=[];return _0x528334[_0x28ae90(0xc4)](_0x106c90=>{const _0x45b6fc=_0x28ae90,_0xcd927=_0x9d695f[_0x106c90];(_0x181ca5[_0x45b6fc(0xbb)](_0xcd927,null)||_0x181ca5['aoXgZ'](_0xcd927,undefined)||_0xcd927==='')&&_0x299a55['push']({'field':_0x106c90,'type':_0x45b6fc(0xdd),'message':_0x45b6fc(0xda)});}),Object[_0x28ae90(0xc9)](_0x2896db)['forEach'](_0x3c0a19=>{const _0x2e9765=_0x28ae90,_0x1c303c=_0x9d695f[_0x3c0a19],_0x269a60=_0x2896db[_0x3c0a19];if(_0x1c303c===null||_0x181ca5['SQORd'](_0x1c303c,undefined)||_0x1c303c==='')return;const _0x510f76=this['validateFieldFormat'](_0x3c0a19,_0x1c303c,_0x269a60);_0x510f76&&_0x299a55[_0x2e9765(0xc8)](_0x510f76);}),_0x299a55;}['validateFieldFormat'](_0x49e5ff,_0x5aeb1d,_0x36380a){const _0x109640=a0_0x13b9,_0xb6fbf1={'HqGhc':_0x109640(0xce)};switch(_0x36380a){case _0x109640(0xcb):return this['validateEmail'](_0x49e5ff,_0x5aeb1d);case _0x109640(0xd6):return this['validatePhone'](_0x49e5ff,_0x5aeb1d);case _0x109640(0xc7):return this['validateUrl'](_0x49e5ff,_0x5aeb1d);case _0xb6fbf1[_0x109640(0xcc)]:return this[_0x109640(0xd0)](_0x49e5ff,_0x5aeb1d);default:return null;}}[a0_0xbc5a9f(0xc5)](_0x405e0e,_0x17c7a8){const _0xa58bf3=a0_0xbc5a9f,_0x4bea8d={'JeuOQ':'format','GtYUY':_0xa58bf3(0xcd)},_0xc1f957=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0xc1f957['test'](String(_0x17c7a8)))return{'field':_0x405e0e,'type':_0x4bea8d[_0xa58bf3(0xdc)],'message':_0x4bea8d[_0xa58bf3(0xbc)]};return null;}['validatePhone'](_0x4d279b,_0x52a5f4){const _0x13db62=a0_0xbc5a9f,_0x452b85={'hctmj':'format','ottHW':'Invalid\x20phone\x20format'},_0x8acea3=String(_0x52a5f4)[_0x13db62(0xb9)](/\s+/g,''),_0x2f2c79=/^[\d\+\-\(\)]+$/;if(!_0x2f2c79[_0x13db62(0xd5)](_0x8acea3)||_0x8acea3['length']<0x8)return{'field':_0x4d279b,'type':_0x452b85[_0x13db62(0xba)],'message':_0x452b85['ottHW']};return null;}[a0_0xbc5a9f(0xc1)](_0x44ffdf,_0xce75ba){const _0x5b6932=a0_0xbc5a9f,_0x2f8312={'OuLqI':function(_0x28ad18,_0x47d2ed){return _0x28ad18(_0x47d2ed);},'UifiF':_0x5b6932(0xd8)};try{return new URL(_0x2f8312['OuLqI'](String,_0xce75ba)),null;}catch(_0x4b20da){return{'field':_0x44ffdf,'type':'format','message':_0x2f8312[_0x5b6932(0xbf)]};}}[a0_0xbc5a9f(0xd0)](_0x370c4b,_0x308105){const _0x5280d1=a0_0xbc5a9f,_0x6d2340={'LhOLK':'format'};if(isNaN(_0x308105))return{'field':_0x370c4b,'type':_0x6d2340['LhOLK'],'message':_0x5280d1(0xd2)};return null;}[a0_0xbc5a9f(0xc3)](_0x42824b,_0x5be5c4){const _0xb29ca6=a0_0xbc5a9f,_0x1883f7=new Map(),_0x50bdce=[];return _0x42824b[_0xb29ca6(0xc4)]((_0x58b98b,_0x3359de)=>{const _0x78154e=_0xb29ca6,_0xf4d42=_0x5be5c4['map'](_0x13ed5f=>_0x58b98b[_0x13ed5f])['join']('|');_0x1883f7[_0x78154e(0xe0)](_0xf4d42)?_0x50bdce[_0x78154e(0xc8)]({'rowIndex':_0x3359de,'duplicateOf':_0x1883f7['get'](_0xf4d42),'key':_0xf4d42}):_0x1883f7[_0x78154e(0xdf)](_0xf4d42,_0x3359de);}),_0x50bdce;}[a0_0xbc5a9f(0xd4)](_0x40fcd5,_0x45d3b6,_0x5c2376){const _0x92bbec=a0_0xbc5a9f,_0x2529a5={'feswx':function(_0x52eed6,_0x319ecf){return _0x52eed6>_0x319ecf;},'KtTJJ':'Batch\x20validation\x20completed'},_0x4a8b8a=[];return _0x40fcd5['forEach']((_0x1b3abb,_0x346715)=>{const _0x16a840=a0_0x13b9,_0x4bc9f5=this[_0x16a840(0xe1)](_0x1b3abb,_0x45d3b6,_0x5c2376);_0x2529a5[_0x16a840(0xd3)](_0x4bc9f5[_0x16a840(0xd7)],0x0)&&_0x4a8b8a['push']({'rowIndex':_0x346715,'rowData':_0x1b3abb,'errors':_0x4bc9f5});}),logger[_0x92bbec(0xd1)]({'event':'batch_validation_complete','totalRows':_0x40fcd5['length'],'errorCount':_0x4a8b8a[_0x92bbec(0xd7)]},_0x2529a5['KtTJJ']),_0x4a8b8a;}}function a0_0x45c0(){const _0x74c78d=['AgfZ','DMfSAwrHDgvsB3C','mtyYmZnPA1LgD20','CMvWBgfJzq','Agn0BwO','yw9yz1O','r3rzvvK','mJD1BNDXzLi','mtm1mdKWnfzlwMHsyq','vwLMAuy','ndmWotqXmgrZwg9MrG','DMfSAwrHDgvvCMW','mtKXmZe2nxrTyxnwrW','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','zM9YrwfJAa','DMfSAwrHDgvfBwfPBa','mJi4qwT1C1Ds','DxjS','ChvZAa','A2v5CW','mKz2BgXRtq','zw1HAwW','shfhAgm','sw52ywXPzcbLBwfPBcbMB3jTyxq','BNvTyMvY','mJC5mdCXu3bys2vH','DMfSAwrHDgvoDw1Izxi','Aw5MBW','sw52ywXPzcbUDw1IzxiGzM9YBwf0','zMvZD3G','yMf0y2HwywXPzgf0zvjVD3m','DgvZDa','CgHVBMu','BgvUz3rO','sw52ywXPzcbvuKWGzM9YBwf0','zxHWB3j0CW','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','mty3mJm2svfuA2vg','sMv1t1e','CMvXDwLYzwq','mJeXmZm4owDnq2jIyW','C2v0'];a0_0x45c0=function(){return _0x74c78d;};return a0_0x45c0();}module[a0_0xbc5a9f(0xd9)]=new ImportValidator();