@loxia-labs/loxia-autopilot-one 1.0.16 β†’ 1.0.17

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 (122) hide show
  1. package/bin/cli.js +1 -1
  2. package/bin/loxia-terminal-v2.js +1 -1
  3. package/bin/loxia-terminal.js +1 -1
  4. package/bin/start-with-terminal.js +1 -1
  5. package/package.json +1 -1
  6. package/scripts/install-scanners.js +1 -1
  7. package/src/analyzers/CSSAnalyzer.js +1 -1
  8. package/src/analyzers/ConfigValidator.js +1 -1
  9. package/src/analyzers/ESLintAnalyzer.js +1 -1
  10. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  11. package/src/analyzers/PrettierFormatter.js +1 -1
  12. package/src/analyzers/PythonAnalyzer.js +1 -1
  13. package/src/analyzers/SecurityAnalyzer.js +1 -1
  14. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  15. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  17. package/src/analyzers/codeCloneDetector/index.js +1 -1
  18. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  19. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  20. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  21. package/src/core/agentPool.js +1 -1
  22. package/src/core/agentScheduler.js +1 -1
  23. package/src/core/contextManager.js +1 -1
  24. package/src/core/messageProcessor.js +1 -1
  25. package/src/core/orchestrator.js +1 -1
  26. package/src/core/stateManager.js +1 -1
  27. package/src/index.js +1 -1
  28. package/src/interfaces/cli.js +1 -1
  29. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  38. package/src/interfaces/terminal/api/apiClient.js +1 -1
  39. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  40. package/src/interfaces/terminal/api/session.js +1 -1
  41. package/src/interfaces/terminal/api/websocket.js +1 -1
  42. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  43. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  44. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  45. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  47. package/src/interfaces/terminal/components/Header.js +1 -1
  48. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  49. package/src/interfaces/terminal/components/InputBox.js +1 -1
  50. package/src/interfaces/terminal/components/Layout.js +1 -1
  51. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  52. package/src/interfaces/terminal/components/MessageList.js +1 -1
  53. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  54. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  55. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  56. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  57. package/src/interfaces/terminal/components/TextInput.js +1 -1
  58. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  59. package/src/interfaces/terminal/config/constants.js +1 -1
  60. package/src/interfaces/terminal/index.js +1 -1
  61. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  62. package/src/interfaces/terminal/state/useAgents.js +1 -1
  63. package/src/interfaces/terminal/state/useConnection.js +1 -1
  64. package/src/interfaces/terminal/state/useMessages.js +1 -1
  65. package/src/interfaces/terminal/state/useTools.js +1 -1
  66. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  67. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  68. package/src/interfaces/terminal/utils/theme.js +1 -1
  69. package/src/interfaces/webServer.js +1 -1
  70. package/src/modules/fileExplorer/controller.js +1 -1
  71. package/src/modules/fileExplorer/index.js +1 -1
  72. package/src/modules/fileExplorer/middleware.js +1 -1
  73. package/src/modules/fileExplorer/routes.js +1 -1
  74. package/src/services/agentActivityService.js +1 -1
  75. package/src/services/aiService.js +1 -1
  76. package/src/services/apiKeyManager.js +1 -1
  77. package/src/services/benchmarkService.js +1 -1
  78. package/src/services/budgetService.js +1 -1
  79. package/src/services/contextInjectionService.js +1 -1
  80. package/src/services/conversationCompactionService.js +1 -1
  81. package/src/services/errorHandler.js +1 -1
  82. package/src/services/fileAttachmentService.js +1 -1
  83. package/src/services/modelRouterService.js +1 -1
  84. package/src/services/modelsService.js +1 -1
  85. package/src/services/qualityInspector.js +1 -1
  86. package/src/services/tokenCountingService.js +1 -1
  87. package/src/tools/agentCommunicationTool.js +1 -1
  88. package/src/tools/agentDelayTool.js +1 -1
  89. package/src/tools/asyncToolManager.js +1 -1
  90. package/src/tools/baseTool.js +1 -1
  91. package/src/tools/browserTool.js +1 -1
  92. package/src/tools/cloneDetectionTool.js +1 -1
  93. package/src/tools/dependencyResolverTool.js +1 -1
  94. package/src/tools/fileContentReplaceTool.js +1 -1
  95. package/src/tools/fileSystemTool.js +1 -1
  96. package/src/tools/fileTreeTool.js +1 -1
  97. package/src/tools/imageTool.js +1 -1
  98. package/src/tools/importAnalyzerTool.js +1 -1
  99. package/src/tools/jobDoneTool.js +1 -1
  100. package/src/tools/seekTool.js +1 -1
  101. package/src/tools/staticAnalysisTool.js +1 -1
  102. package/src/tools/taskManagerTool.js +1 -1
  103. package/src/tools/terminalTool.js +1 -1
  104. package/src/tools/webTool.js +1 -1
  105. package/src/types/agent.js +1 -1
  106. package/src/types/contextReference.js +1 -1
  107. package/src/types/conversation.js +1 -1
  108. package/src/types/toolCommand.js +1 -1
  109. package/src/utilities/attachmentValidator.js +1 -1
  110. package/src/utilities/configManager.js +1 -1
  111. package/src/utilities/constants.js +1 -1
  112. package/src/utilities/directoryAccessManager.js +1 -1
  113. package/src/utilities/fileProcessor.js +1 -1
  114. package/src/utilities/logger.js +1 -1
  115. package/src/utilities/tagParser.js +1 -1
  116. package/src/utilities/toolConstants.js +1 -1
  117. package/src/utilities/userDataDir.js +1 -1
  118. package/web-ui/build/index.html +2 -2
  119. package/web-ui/build/static/index-CRkOpV4k.css +1 -0
  120. package/web-ui/build/static/index-DzOU48ux.js +367 -0
  121. package/web-ui/build/static/index-DFmFvOoy.css +0 -1
  122. package/web-ui/build/static/index-DOk0l6Kf.js +0 -348
@@ -1 +1 @@
1
- const a0_0x491c83=a0_0x3f90;function a0_0x338a(){const _0x44dec1=['tufyx0rfufrix0XjtuLu','lMv4zq','Dg9gAxHLza','mtu5mtG0oeDmB0PTra','Dg1W','AhrTBgnVDG','CMvZB2X2zq','lMvNz3m','zMfSC2u','zxH0BMfTzq','C29YDa','mJvivuHIB0C','lNDHCG','cIaGica','cI0Gtwf4Aw11BsbKAxjLy3rVCMLLCZOG','zM9YrwfJAa','Bwf4rgvWDgG','lMvVDa','cKrPCMvJDg9YEtOG','lNbKzG','zxHJBhvKzuv4DgvUC2LVBNm','Aw5JBhvKzuv4DgvUC2LVBNmGBxvZDcbIzsbHBIbHCNjHEq','4PsC4Psa4Psaia','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CYiSiciUDgvZDc50CYiSiciUC3bLyY50CYjDlaOGicjLEgnSDwrLrgLYzwn0B3jPzxmIoIbBiL9FDgvZDhnFxYiSicj0zxn0CYiSicjZCgvJCYjDcN0kygbGcGPpvvrqvvqGrK9stufuoGPZCMmVcUkuNokuGokuGcbJB21WB25LBNrZlWRILiiGicdILjZILidILiaGsgvHzgvYlMPZEaRILiiGicdILjZILidILiaGrM9VDgvYlMPZEaRILiiGicdILjtILidILiaGtgf5B3v0lMPZEaRILjZILidILiaGDxrPBhmVcUkuGIaGiokuNokuGokuGcbOzwXWzxjZlMPZcUkuGIaGiokuLokuGokuGcbJB25MAwCUANmk4Psu4Psa4PsaigLUzgv4lMPZcGPbvvrptufusumGsuDot1jfuZOkvgHLihrVB2WGyxv0B21HDgLJywXSEsbPz25VCMvZignVBw1VBIbKAxjLy3rVCMLLCZOklsbUB2rLx21VzhvSzxmSic5NAxqSigrPC3qSigj1AwXKlcbJB3zLCMfNzqOTic5UzxH0lcaUBNv4DcWGlMnHy2HLlcbVDxqSihrHCMDLDaOTic52C2nVzguSic5PzgvHlcbFx3b5y2fJAgvFxYWGDMvUDGOkteLnsvrbveLptLm6cI0Gtwf4Aw11BsbKzxb0AdOG','lMH5Cg90AgvZAxm','rMLSzsb0CMvLihrVB2WGy2XLyw51CcbJB21WBgv0zwq','AxnbCNjHEq','lMjTCa','ndaWotu5DNDNt0Dx','rxH0zw5ZAw9Uici','lMDPzG','yNvPBgq','cKzPBguGvhjLzsbuB29SoIbhzw5LCMf0zsbOAwvYyxjJAgLJywWGDhjLzsbYzxbYzxnLBNrHDgLVBIbVzIbWCM9Qzwn0igrPCMvJDg9YEsbZDhj1y3r1CMuUcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLlxrYzwuIlaOGicjKAxjLy3rVCNKIoIaIC3jJiIWkicaIBwf4rgvWDgGIoIa0laOGicjPBMnSDwrLrxH0zw5ZAw9UCYi6ifSIlMPZiIWGiI5QC3GIlcaIlNrZiIWGiI50C3GIxsWkicaIzxHJBhvKzuv4DgvUC2LVBNmIoIbBiI50zxn0lMPZiIWGiI5ZCgvJlMPZiL0ScIaGiNnOB3DgAwXLCYi6ihrYDwuScIaGiNnOB3DiAwrKzw4IoIbMywXZzqP9cMbGyaOkuefsqu1fvevsuZOkcMrPCMvJDg9YEsaOB3b0Aw9UywWPoGOGic0GrgLYzwn0B3j5ihrVihnJyw4GkgrLzMf1Bhq6ihDVCMTPBMCGzgLYzwn0B3j5kqOGic0Gq2fUigjLihjLBgf0AxzLig9YigfIC29SDxrLihbHDgGkicaTiev4yw1WBgvZoIaIC3jJiIWGiNnYyY9JB21WB25LBNrZiIWGiI9OB21Ll3vZzxiVChjVAMvJDcikcM1HEerLChrOicHVChrPB25HBcK6cIaGlsbnyxHPBxvTigrLChrOihrVihnJyw4GkgrLzMf1Bhq6ia','odm3otK2tKrzseXN','revgqvvmvf9nqvHFrevqveG','lMLJBW','zgLYzwn0B3jPzxndB3vUDa','Aw5MBW','C2HVD1nPEMvZ','AM9PBG','lM5VEa','DhjLzunVBMzPzW','u1LnqK9muW','BM9Kzv9TB2r1BgvZ','C3rHCNrZv2L0Aa','cLnRAxbWzwq6ia','C2HVD0zPBgvZ','lNPPCa','su5eru5u','lMPWzwC','lNrTCa','lNrVEa','lMXVy2S','BgvUz3rO','zM9YBwf0vhjLzq','BMfTzq','D29YA2LUz0rPCMvJDg9YEq','rgLYzwn0B3j5igrVzxmGBM90igv4Axn0ig9YigLZigLUywnJzxnZAwjSztOG','zM9YBwf0rMLSzvnPEMu','lMDPDa','yMfZzw5HBwu','lM1PBI5QCW','r2vUzxjHDgLUzYbMAwXLihrYzwu','mZuWAfPXzKHy','D2HLzwXZ','lM51Ehq','cI0Gtwf4Aw11BsbMAwXLCZOG','Bwf4lwrLChrOignHBM5VDcbLEgnLzwqG','AxneAxjLy3rVCNK','lMf2Aq','zxHJBhvKzurPCMvJDg9YAwvZig11C3qGyMuGyw4GyxjYyxK','Bg9JywXLq29TCgfYzq','y2HPBgrYzw4','Dhj1zq','AxngAwXL','DhjPBq','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','Bg9Nz2vY','ieDc','lM1HCa','lM1PBI5JC3m','lMr5BgLI','4PscicaG','lM1VDG','z2vUzxjHDgvtDw1Tyxj5','twf4Aw11BsbKAxjLy3rVCNKGy291BNqGCMvHy2HLza','x19WEwnHy2HLx18','C2TPChbLzenVDw50','tufyx0rjuKvdve9ssuvt','ChvZAa','zxjYB3i','lM9IAG','Bwf4lwrLChrOig11C3qGyMuGysbWB3nPDgL2zsbUDw1Izxi','4Psu4Psa4Psaia','C3rHDa','zxHLyW','zxHJBhvKzuv4DgvUC2LVBNmGBxvZDcbIzsbHBIbHCNjHEq','Aw5JBhvKzuv4DgvUC2LVBNm','lNrLBxa','mZG5nZu1mgn2teD4Aa','zwDNCW','mtCWmJK0mhbKuMP0zq','zMLSzs10CMvL','Dg9mB3DLCKnHC2u','lNnV','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK','lNbUzW','Aw5JBhvKzxm','zMLSzxndB3vUDa','BgLInJq','mte0mtm3otjTt2zZug8','zgLYzwn0B3j5','lNDVzMy','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','mtHcAwHxquO','zxHLy3v0zq','BwvZC2fNzq','DgLTzw91Da','mtG1nZKWqwLSD2fh','DhLWzq','lMjPBG','zxHJBhvKzurPCMvJDg9YAwvZ','BwfW','twf4Aw11BsbMAwXLignVDw50ihjLywnOzwq','DMvUzg9Y','CMvSyxrPDMu','lMnHy2HL','AwDUB3jLqMLUyxj5rMLSzxm','tufyx0zjtevtx0Lox1rsruu','C3bSAxq','C3rHDhm','ie1c','AxnbC3LUyW','cKrPCMvJDg9YAwvZoIa','yM93zxjFy29TCg9Uzw50CW','AxnbyNnVBhv0zq','lNb5za'];a0_0x338a=function(){return _0x44dec1;};return a0_0x338a();}(function(_0x5afc85,_0x41ec86){const _0x5459e2=a0_0x3f90,_0x310be1=_0x5afc85();while(!![]){try{const _0xcd74=parseInt(_0x5459e2(0x231))/0x1+parseInt(_0x5459e2(0x258))/0x2+parseInt(_0x5459e2(0x271))/0x3+-parseInt(_0x5459e2(0x276))/0x4*(parseInt(_0x5459e2(0x260))/0x5)+parseInt(_0x5459e2(0x242))/0x6*(parseInt(_0x5459e2(0x20b))/0x7)+-parseInt(_0x5459e2(0x23a))/0x8+parseInt(_0x5459e2(0x23e))/0x9*(-parseInt(_0x5459e2(0x22f))/0xa);if(_0xcd74===_0x41ec86)break;else _0x310be1['push'](_0x310be1['shift']());}catch(_0x25dc46){_0x310be1['push'](_0x310be1['shift']());}}}(a0_0x338a,0xe253e));import{BaseTool}from'./baseTool.js';import{promises as a0_0x1402a6}from'fs';import a0_0x369c54 from'path';const TREE_CONFIG={'DEFAULT_MAX_DEPTH':0x3,'MAX_DEPTH_LIMIT':0xa,'MAX_FILES_IN_TREE':0x2710,'MAX_DIRECTORIES':0x3e8,'SHOW_FILES_DEFAULT':!![],'SHOW_HIDDEN_DEFAULT':![],'SHOW_SIZES_DEFAULT':![],'SYMBOLS':{'BRANCH':a0_0x491c83(0x26b),'LAST_BRANCH':a0_0x491c83(0x229),'VERTICAL':a0_0x491c83(0x21e),'INDENT':'\x20\x20\x20\x20'}},DEFAULT_IGNORE_DIRECTORIES=[a0_0x491c83(0x1f7),a0_0x491c83(0x207),'dist',a0_0x491c83(0x274),'coverage','.next',a0_0x491c83(0x20d),a0_0x491c83(0x24a),'out','target',a0_0x491c83(0x248),a0_0x491c83(0x252),'.vscode','.idea','.vs',a0_0x491c83(0x222),'venv','env','.env','.pytest_cache','.mypy_cache',a0_0x491c83(0x230),a0_0x491c83(0x25c),'lib',a0_0x491c83(0x239),'parts','sdist',a0_0x491c83(0x20c),a0_0x491c83(0x1ff),a0_0x491c83(0x1f4),a0_0x491c83(0x25a),a0_0x491c83(0x26d),a0_0x491c83(0x259),'temp','.tmp','.temp'],DEFAULT_IGNORE_EXTENSIONS=[a0_0x491c83(0x21b),a0_0x491c83(0x209),a0_0x491c83(0x21c),a0_0x491c83(0x200),'.log',a0_0x491c83(0x1fe),a0_0x491c83(0x22e),'.pyc','.pyo',a0_0x491c83(0x254),a0_0x491c83(0x234),'.dll',a0_0x491c83(0x21d),a0_0x491c83(0x256),a0_0x491c83(0x227),'.o','.a','.class','.jar',a0_0x491c83(0x261)],BINARY_EXTENSIONS=[a0_0x491c83(0x236),'.jpg',a0_0x491c83(0x1fd),a0_0x491c83(0x273),a0_0x491c83(0x270),a0_0x491c83(0x278),'.svg',a0_0x491c83(0x268),a0_0x491c83(0x1fb),'.tar','.gz','.rar','.7z','.mp3','.mp4',a0_0x491c83(0x211),a0_0x491c83(0x21f),'.wmv',a0_0x491c83(0x23c),'.woff2','.ttf',a0_0x491c83(0x266),a0_0x491c83(0x244),'.dat','.db','.sqlite'];class FileTreeTool extends BaseTool{constructor(_0x534ee5={},_0x37da5f=null){const _0x587ff1=a0_0x491c83;super(_0x534ee5,_0x37da5f),this['id']=_0x587ff1(0x232),this['requiresProject']=!![],this[_0x587ff1(0x250)]=!![],this[_0x587ff1(0x241)]=_0x534ee5['timeout']||0x1d4c0,this[_0x587ff1(0x1f5)]={...TREE_CONFIG,..._0x534ee5['treeConfig']},this['stats']={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};}['getDescription'](){const _0xd4817c=a0_0x491c83;return _0xd4817c(0x275)+TREE_CONFIG[_0xd4817c(0x277)]+')\x0a\x20\x20-\x20Range:\x201-'+TREE_CONFIG[_0xd4817c(0x255)]+_0xd4817c(0x26c)+TREE_CONFIG['MAX_DEPTH_LIMIT']+_0xd4817c(0x20e)+TREE_CONFIG['MAX_FILES_IN_TREE']+_0xd4817c(0x263)+TREE_CONFIG[_0xd4817c(0x224)]+'\x0a-\x20Binary\x20files\x20can\x20be\x20filtered\x20with\x20ignoreBinaryFiles\x20option\x0a\x20\x20\x20\x20';}['parseParameters'](_0x48e180){const _0x30d52f=a0_0x491c83;try{if(_0x48e180[_0x30d52f(0x217)]()['startsWith']('{')){const _0x16d505=JSON['parse'](_0x48e180);return{'directory':_0x16d505[_0x30d52f(0x23b)]||'.','maxDepth':_0x16d505[_0x30d52f(0x265)]||TREE_CONFIG[_0x30d52f(0x277)],'includeExtensions':_0x16d505['includeExtensions']||[],'excludeExtensions':_0x16d505[_0x30d52f(0x269)]||[],'excludeDirectories':_0x16d505[_0x30d52f(0x245)]||[],'showFiles':_0x16d505[_0x30d52f(0x1fa)]!==![],'showHidden':_0x16d505['showHidden']===!![],'showSizes':_0x16d505['showSizes']===!![],'ignoreBinaryFiles':_0x16d505['ignoreBinaryFiles']===!![]};}const _0x55fd4c={'directory':'.','maxDepth':TREE_CONFIG[_0x30d52f(0x277)],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![]},_0x3e1f7f=/<directory>(.*?)<\/directory>/i,_0xafec8c=_0x3e1f7f['exec'](_0x48e180);_0xafec8c&&(_0x55fd4c['directory']=_0xafec8c[0x1][_0x30d52f(0x217)]());const _0x2309bd=/<max-depth>(\d+)<\/max-depth>/i,_0x40ec37=_0x2309bd[_0x30d52f(0x22b)](_0x48e180);_0x40ec37&&(_0x55fd4c['maxDepth']=parseInt(_0x40ec37[0x1],0xa));const _0x11bfbb=/<include-extensions>(.*?)<\/include-extensions>/i,_0x491aa9=_0x11bfbb[_0x30d52f(0x22b)](_0x48e180);_0x491aa9&&(_0x55fd4c[_0x30d52f(0x22d)]=_0x491aa9[0x1]['split'](',')['map'](_0xcfdbc4=>_0xcfdbc4['trim']())['filter'](_0x5938b6=>_0x5938b6[_0x30d52f(0x201)]>0x0));const _0x578ea5=/<exclude-extensions>(.*?)<\/exclude-extensions>/i,_0x1c214b=_0x578ea5[_0x30d52f(0x22b)](_0x48e180);_0x1c214b&&(_0x55fd4c['excludeExtensions']=_0x1c214b[0x1]['split'](',')['map'](_0x54231a=>_0x54231a[_0x30d52f(0x217)]())['filter'](_0x3d5568=>_0x3d5568[_0x30d52f(0x201)]>0x0));const _0x431e9b=/<exclude-directories>(.*?)<\/exclude-directories>/i,_0x29f44d=_0x431e9b[_0x30d52f(0x22b)](_0x48e180);_0x29f44d&&(_0x55fd4c['excludeDirectories']=_0x29f44d[0x1][_0x30d52f(0x24d)](',')[_0x30d52f(0x246)](_0x1677a3=>_0x1677a3['trim']())['filter'](_0x3588b5=>_0x3588b5['length']>0x0));const _0x33899b=/<show-files>(.*?)<\/show-files>/i,_0x16c75f=_0x33899b['exec'](_0x48e180);_0x16c75f&&(_0x55fd4c['showFiles']=_0x16c75f[0x1][_0x30d52f(0x217)]()[_0x30d52f(0x233)]()!==_0x30d52f(0x25d));const _0x254812=/<show-hidden>(.*?)<\/show-hidden>/i,_0x1f2cdd=_0x254812['exec'](_0x48e180);_0x1f2cdd&&(_0x55fd4c['showHidden']=_0x1f2cdd[0x1]['trim']()[_0x30d52f(0x233)]()==='true');const _0x214da1=/<show-sizes>(.*?)<\/show-sizes>/i,_0x12d772=_0x214da1['exec'](_0x48e180);_0x12d772&&(_0x55fd4c[_0x30d52f(0x27b)]=_0x12d772[0x1]['trim']()[_0x30d52f(0x233)]()==='true');const _0x109241=/<ignore-binary-files>(.*?)<\/ignore-binary-files>/i,_0x329613=_0x109241['exec'](_0x48e180);return _0x329613&&(_0x55fd4c[_0x30d52f(0x24b)]=_0x329613[0x1]['trim']()[_0x30d52f(0x233)]()===_0x30d52f(0x215)),_0x55fd4c;}catch(_0x135f85){return this[_0x30d52f(0x219)]?.['error']('Failed\x20to\x20parse\x20file-tree\x20parameters',{'error':_0x135f85[_0x30d52f(0x240)]}),{'directory':'.','maxDepth':TREE_CONFIG[_0x30d52f(0x277)],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![],'parseError':_0x135f85['message']};}}[a0_0x491c83(0x218)](){return[];}[a0_0x491c83(0x23d)](_0x1c9ca7){const _0x7a6345=a0_0x491c83,_0xc6bdd=[];if(_0x1c9ca7[_0x7a6345(0x265)]!==undefined){if(typeof _0x1c9ca7['maxDepth']!=='number'||_0x1c9ca7['maxDepth']<0x1)_0xc6bdd['push'](_0x7a6345(0x228));else _0x1c9ca7['maxDepth']>this['treeConfig']['MAX_DEPTH_LIMIT']&&_0xc6bdd[_0x7a6345(0x225)](_0x7a6345(0x20f)+this['treeConfig']['MAX_DEPTH_LIMIT']);}_0x1c9ca7['directory']&&_0x1c9ca7['directory'][_0x7a6345(0x237)]('..')&&_0xc6bdd['push'](_0x7a6345(0x235));if(_0x1c9ca7['includeExtensions']!==undefined&&_0x1c9ca7[_0x7a6345(0x22d)]!==null){if(!Array[_0x7a6345(0x26f)](_0x1c9ca7[_0x7a6345(0x22d)]))_0xc6bdd[_0x7a6345(0x225)](_0x7a6345(0x26a));else for(const _0x259e7a of _0x1c9ca7['includeExtensions']){!_0x259e7a['startsWith']('.')&&_0xc6bdd[_0x7a6345(0x225)](_0x7a6345(0x272)+_0x259e7a+'\x22\x20must\x20start\x20with\x20a\x20dot\x20(e.g.,\x20\x22.js\x22)');}}if(_0x1c9ca7['excludeExtensions']!==undefined&&_0x1c9ca7['excludeExtensions']!==null){if(!Array[_0x7a6345(0x26f)](_0x1c9ca7[_0x7a6345(0x269)]))_0xc6bdd[_0x7a6345(0x225)](_0x7a6345(0x22c));else for(const _0x577e4e of _0x1c9ca7['excludeExtensions']){!_0x577e4e['startsWith']('.')&&_0xc6bdd['push'](_0x7a6345(0x272)+_0x577e4e+'\x22\x20must\x20start\x20with\x20a\x20dot\x20(e.g.,\x20\x22.js\x22)');}}_0x1c9ca7[_0x7a6345(0x245)]!==undefined&&_0x1c9ca7[_0x7a6345(0x245)]!==null&&(!Array['isArray'](_0x1c9ca7[_0x7a6345(0x245)])&&_0xc6bdd[_0x7a6345(0x225)](_0x7a6345(0x212)));if(_0xc6bdd['length']>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0xc6bdd[_0x7a6345(0x1f3)](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x491c83(0x23f)](_0x518de6,_0x8af306){const _0xe27100=a0_0x491c83,{directory:directory='.',maxDepth:maxDepth=TREE_CONFIG['DEFAULT_MAX_DEPTH'],includeExtensions:includeExtensions=[],excludeExtensions:excludeExtensions=[],excludeDirectories:excludeDirectories=[],showFiles:showFiles=!![],showHidden:showHidden=![],showSizes:showSizes=![],ignoreBinaryFiles:ignoreBinaryFiles=![]}=_0x518de6,{projectDir:_0x1b79b3,agentId:_0x1e48e4,directoryAccess:_0x3c7cd4}=_0x8af306;let _0x1b702d=_0x1b79b3||process['cwd']();_0x3c7cd4&&_0x3c7cd4['workingDirectory']&&(_0x1b702d=_0x3c7cd4[_0xe27100(0x204)],this[_0xe27100(0x219)]?.[_0xe27100(0x27a)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x3c7cd4['workingDirectory'],'agentId':_0x1e48e4}));const _0x29b60b=a0_0x369c54[_0xe27100(0x253)](directory)?directory:a0_0x369c54[_0xe27100(0x25b)](_0x1b702d,directory);try{const _0x2b312b=await a0_0x1402a6[_0xe27100(0x22a)](_0x29b60b);if(!_0x2b312b['isDirectory']())throw new Error('Path\x20is\x20not\x20a\x20directory');}catch(_0xe890a8){throw new Error(_0xe27100(0x205)+directory);}this['logger']?.[_0xe27100(0x27a)](_0xe27100(0x20a),{'directory':directory,'targetDir':_0x29b60b,'maxDepth':maxDepth,'includeExtensions':includeExtensions?.['length']||0x0,'excludeExtensions':excludeExtensions?.[_0xe27100(0x201)]||0x0,'agentId':_0x1e48e4}),this['stats']={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};const _0xd91a98=[...DEFAULT_IGNORE_DIRECTORIES,...excludeDirectories||[]],_0x4caf3c=[...DEFAULT_IGNORE_EXTENSIONS];ignoreBinaryFiles&&_0x4caf3c[_0xe27100(0x225)](...BINARY_EXTENSIONS);const _0xb90184=await this['buildTree'](_0x29b60b,_0x29b60b,0x0,maxDepth,_0xd91a98,includeExtensions||[],[...excludeExtensions||[],..._0x4caf3c],showFiles,showHidden,showSizes),_0x22db9e=this['formatTree'](_0xb90184),_0x4d408b=this['generateSummary'](directory,this[_0xe27100(0x24e)],maxDepth);return{'success':!![],'directory':_0x29b60b,'tree':_0x22db9e,'summary':_0x4d408b,'maxDepth':maxDepth,'totalFiles':this[_0xe27100(0x24e)][_0xe27100(0x238)],'totalDirectories':this['stats'][_0xe27100(0x279)],'skippedCount':this[_0xe27100(0x24e)]['skippedCount'],'statistics':{...this[_0xe27100(0x24e)]},'toolUsed':'file-tree'};}async['buildTree'](_0xf34565,_0x4ed17b,_0x2912d9,_0x1ba541,_0x94948b,_0x68532a,_0x226ecc,_0x55eb6,_0x1e3bda,_0x48797d){const _0x502ef5=a0_0x491c83;if(_0x2912d9>_0x1ba541)return null;if(this[_0x502ef5(0x24e)][_0x502ef5(0x279)]>=this['treeConfig']['MAX_DIRECTORIES'])return this['logger']?.['warn'](_0x502ef5(0x221),{'maxDirectories':this['treeConfig']['MAX_DIRECTORIES']}),null;try{const _0x1dc566=await a0_0x1402a6['readdir'](_0x4ed17b,{'withFileTypes':!![]}),_0xa1ac4d={'name':_0x2912d9===0x0?a0_0x369c54['basename'](_0x4ed17b)+'/':a0_0x369c54[_0x502ef5(0x208)](_0x4ed17b),'path':a0_0x369c54['relative'](_0xf34565,_0x4ed17b),'type':_0x502ef5(0x23b),'children':[]};this['stats']['directoriesCount']++;for(const _0x21f857 of _0x1dc566){if(this[_0x502ef5(0x24e)][_0x502ef5(0x238)]>=this['treeConfig'][_0x502ef5(0x24c)]){this['logger']?.['warn'](_0x502ef5(0x247),{'maxFiles':this[_0x502ef5(0x1f5)][_0x502ef5(0x24c)]});break;}if(!_0x1e3bda&&_0x21f857['name'][_0x502ef5(0x1f8)]('.')){this[_0x502ef5(0x24e)]['skippedCount']++;continue;}const _0x4e0f6a=a0_0x369c54['join'](_0x4ed17b,_0x21f857[_0x502ef5(0x203)]);if(_0x21f857[_0x502ef5(0x210)]()){if(_0x94948b['includes'](_0x21f857['name'])){this['stats'][_0x502ef5(0x223)]++;continue;}const _0x350a1d=await this['buildTree'](_0xf34565,_0x4e0f6a,_0x2912d9+0x1,_0x1ba541,_0x94948b,_0x68532a,_0x226ecc,_0x55eb6,_0x1e3bda,_0x48797d);_0x350a1d&&(_0x350a1d[_0x502ef5(0x214)][_0x502ef5(0x201)]>0x0||_0x2912d9===0x0)&&_0xa1ac4d[_0x502ef5(0x214)]['push'](_0x350a1d);}else{if(_0x21f857[_0x502ef5(0x216)]()&&_0x55eb6){if(_0x2912d9+0x1>_0x1ba541)continue;const _0x2889ad=a0_0x369c54[_0x502ef5(0x25e)](_0x21f857[_0x502ef5(0x203)]);if(_0x68532a[_0x502ef5(0x201)]>0x0){if(!_0x68532a[_0x502ef5(0x237)](_0x2889ad)){this[_0x502ef5(0x24e)]['skippedCount']++;continue;}}else{if(_0x226ecc['includes'](_0x2889ad)){this[_0x502ef5(0x24e)]['skippedCount']++;continue;}}let _0x46e8ad='';if(_0x48797d)try{const _0x16e634=await a0_0x1402a6['stat'](_0x4e0f6a);_0x46e8ad='\x20('+this[_0x502ef5(0x206)](_0x16e634['size'])+')';}catch(_0x57bdec){}_0xa1ac4d['children'][_0x502ef5(0x225)]({'name':_0x21f857['name']+_0x46e8ad,'path':a0_0x369c54[_0x502ef5(0x249)](_0xf34565,_0x4e0f6a),'type':'file','ext':_0x2889ad}),this[_0x502ef5(0x24e)][_0x502ef5(0x238)]++;}}}return _0xa1ac4d['children'][_0x502ef5(0x25f)]((_0x24368c,_0x4014ff)=>{const _0x2a6ec3=_0x502ef5;if(_0x24368c['type']===_0x4014ff[_0x2a6ec3(0x243)])return _0x24368c[_0x2a6ec3(0x203)][_0x2a6ec3(0x213)](_0x4014ff['name']);return _0x24368c['type']===_0x2a6ec3(0x23b)?-0x1:0x1;}),_0xa1ac4d;}catch(_0x1f7e89){return this['logger']?.[_0x502ef5(0x226)]('Error\x20building\x20tree',{'currentPath':_0x4ed17b,'error':_0x1f7e89[_0x502ef5(0x240)]}),{'name':a0_0x369c54['basename'](_0x4ed17b),'path':a0_0x369c54[_0x502ef5(0x249)](_0xf34565,_0x4ed17b),'type':'directory','error':_0x1f7e89[_0x502ef5(0x240)],'children':[]};}}['formatTree'](_0x284f50,_0x30696e='',_0x48cd69=!![],_0x5216f8=!![]){const _0x4364b0=a0_0x491c83;if(!_0x284f50)return'';const _0x3a722d=this['treeConfig'][_0x4364b0(0x1f6)];let _0x13bca9='';_0x5216f8?_0x13bca9=_0x284f50['name']+'\x0a':_0x13bca9=''+_0x30696e+(_0x48cd69?_0x3a722d['LAST_BRANCH']:_0x3a722d['BRANCH'])+_0x284f50[_0x4364b0(0x203)]+'\x0a';if(_0x284f50[_0x4364b0(0x214)]&&_0x284f50['children']['length']>0x0){const _0x530006=_0x5216f8?'':_0x30696e+(_0x48cd69?_0x3a722d[_0x4364b0(0x1fc)]:_0x3a722d['VERTICAL']);_0x284f50[_0x4364b0(0x214)][_0x4364b0(0x264)]((_0x2a101d,_0x51a606)=>{const _0x3fb029=_0x4364b0,_0x4466f3=_0x51a606===_0x284f50['children']['length']-0x1;_0x13bca9+=this[_0x3fb029(0x202)](_0x2a101d,_0x530006,_0x4466f3,![]);});}return _0x13bca9;}[a0_0x491c83(0x206)](_0x40c16d){const _0x2fe327=a0_0x491c83,_0x22d3fe=0x400,_0x21264e=_0x22d3fe*0x400,_0x177c6c=_0x21264e*0x400;if(_0x40c16d>=_0x177c6c)return(_0x40c16d/_0x177c6c)['toFixed'](0x2)+_0x2fe327(0x21a);else{if(_0x40c16d>=_0x21264e)return(_0x40c16d/_0x21264e)[_0x2fe327(0x257)](0x2)+_0x2fe327(0x24f);else return _0x40c16d>=_0x22d3fe?(_0x40c16d/_0x22d3fe)[_0x2fe327(0x257)](0x2)+'\x20KB':_0x40c16d+'\x20B';}}[a0_0x491c83(0x220)](_0x3bb6c6,_0x2ccb73,_0x1fc5f9){const _0x23482c=a0_0x491c83;return(_0x23482c(0x267)+_0x3bb6c6+'\x0aMax\x20Depth:\x20'+_0x1fc5f9+'\x0aFiles:\x20'+_0x2ccb73['filesCount']+_0x23482c(0x251)+_0x2ccb73[_0x23482c(0x279)]+_0x23482c(0x1f9)+_0x2ccb73[_0x23482c(0x223)]+_0x23482c(0x262))[_0x23482c(0x217)]();}async['cleanup'](_0x595db6){const _0x140d17=a0_0x491c83;this[_0x140d17(0x219)]?.['info'](_0x140d17(0x26e),{'operationId':_0x595db6});}}function a0_0x3f90(_0x1b465f,_0x473313){_0x1b465f=_0x1b465f-0x1f3;const _0x338ad3=a0_0x338a();let _0x3f90a8=_0x338ad3[_0x1b465f];if(a0_0x3f90['otSqBM']===undefined){var _0x5b760=function(_0x5d7c2a){const _0x2aaf27='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1402a6='',_0x369c54='';for(let _0x534ee5=0x0,_0x37da5f,_0x48e180,_0x55fd4c=0x0;_0x48e180=_0x5d7c2a['charAt'](_0x55fd4c++);~_0x48e180&&(_0x37da5f=_0x534ee5%0x4?_0x37da5f*0x40+_0x48e180:_0x48e180,_0x534ee5++%0x4)?_0x1402a6+=String['fromCharCode'](0xff&_0x37da5f>>(-0x2*_0x534ee5&0x6)):0x0){_0x48e180=_0x2aaf27['indexOf'](_0x48e180);}for(let _0x3e1f7f=0x0,_0xafec8c=_0x1402a6['length'];_0x3e1f7f<_0xafec8c;_0x3e1f7f++){_0x369c54+='%'+('00'+_0x1402a6['charCodeAt'](_0x3e1f7f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x369c54);};a0_0x3f90['YgrFav']=_0x5b760,a0_0x3f90['zARGzG']={},a0_0x3f90['otSqBM']=!![];}const _0x45e782=_0x338ad3[0x0],_0x36531e=_0x1b465f+_0x45e782,_0x162f8d=a0_0x3f90['zARGzG'][_0x36531e];return!_0x162f8d?(_0x3f90a8=a0_0x3f90['YgrFav'](_0x3f90a8),a0_0x3f90['zARGzG'][_0x36531e]=_0x3f90a8):_0x3f90a8=_0x162f8d,_0x3f90a8;}export default FileTreeTool;
1
+ function a0_0x10d5(){const _0xb3e802=['lMv4zq','DhjPBq','z2vUzxjHDgvtDw1Tyxj5','BwvZC2fNzq','4PsC4Psa4Psaia','zgLYzwn0B3jPzxndB3vUDa','zM9YBwf0vhjLzq','Aw5JBhvKzxm','lMrSBa','lMLKzwe','lNzZy29Kzq','zgLYzwn0B3j5','lNDVzMy','lNPPCa','n2DNEeLoBa','Dg9mB3DLCKnHC2u','mJG0mdC5mfrAtu5Hta','Bwf4rgvWDgG','Bg9JywXLq29TCgfYzq','mte5ouHpyNr2vG','tufyx0rfufrix0XjtuLu','teftvf9cuKfoq0G','BNvTyMvY','mtG1yvvpue54','D29YA2LUz0rPCMvJDg9YEq','lNnXBgL0zq','CMvZB2X2zq','cK1HEcbezxb0AdOG','lM1Wna','Aw5MBW','lMr5BgLI','BM9Kzv9TB2r1BgvZ','4Psu4Psa4Psaia','zxHLyW','Aw5JBhvKzuv4DgvUC2LVBNm','lNrLBxa','zxHJBhvKzurPCMvJDg9YAwvZig11C3qGyMuGyw4GyxjYyxK','lMjPBG','C2HVD0HPzgrLBG','kqOGic0GuMfUz2u6ideT','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','DhLWzq','BgLInJq','ndm4mZa4mgzJuNH0vW','cI0GqMLUyxj5igzPBgvZignHBIbIzsbMAwX0zxjLzcb3AxrOigLNBM9YzujPBMfYEuzPBgvZig9WDgLVBGOGicaG','zxHJBhvKzurPCMvJDg9YAwvZ','ovPKsw5Asq','icaGia','AxnbCNjHEq','zw52','BwfW','zMLSzq','mtGWmtuWz0HQDNDZ','zxHJBhvKzuv4DgvUC2LVBNm','otq5mJiYneTcALzkzq','lMPWzwC','C3rHDhm','C2HVD1nPEMvZ','C2TPChbLzenVDw50','y3DK','D2fYBG','BMfTzq','y2HPBgrYzw4','cI0Gtwf4Aw11BsbKAxjLy3rVCMLLCZOG','lM1PBI5JC3m','DMvUDG','DgfYz2v0','yNvPBgq','ugf0AcbPCYbUB3qGysbKAxjLy3rVCNK','su5eru5u','ChvZAa','Aw5JBhvKzuv4DgvUC2LVBNmGBxvZDcbIzsbHBIbHCNjHEq','lNb5za','tufyx0rjuKvdve9ssuvt','mtm4otqXmhr6q2Dizq','Dg9gAxHLza','D2HLzwXZ','rxjYB3iGyNvPBgrPBMCGDhjLzq','CgfYC2u','Dg1W','rMLSzsb0CMvLihrVB2WGy2XLyw51CcbJB21WBgv0zwq','cKzPBgvZoIa','Dhj1zq','lNrTCa','zxjYB3i','lM51Ehq','qLjbtKni','tufyx0zjtevtx0Lox1rsruu','BgvUz3rO','DMvUzg9Y','AxngAwXL','mJGWntzjBfDPy2u','yMfZzw5HBwu','lMrHDa','DgvTCa','lNb5DgvZDf9JywnOzq','zwDNCW','C2L6zq','Bg9Nz2vY','lMvUDG','ntGWntq4sNLcCKXh','u1LnqK9muW','mZq2rvHPA3fW','zMLSDgvY','yNvPBgruCMvL','lMvNz3m','lNjHCG','C3bSAxq','zMfSC2u','C3rHDa','yM93zxjFy29TCg9Uzw50CW','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','cLnRAxbWzwq6ia','lMLJBW','zMLSzxndB3vUDa','lMPWzW','zM9YBwf0rMLSzvnPEMu','lMD6','CMvSyxrPDMu','lNrHCG','DhjLzunVBMzPzW'];a0_0x10d5=function(){return _0xb3e802;};return a0_0x10d5();}const a0_0x38a9c3=a0_0x4adf;(function(_0x353bf5,_0x85632d){const _0x16e34f=a0_0x4adf,_0x4bc190=_0x353bf5();while(!![]){try{const _0x4efd69=parseInt(_0x16e34f(0x180))/0x1+parseInt(_0x16e34f(0x19c))/0x2*(parseInt(_0x16e34f(0x191))/0x3)+parseInt(_0x16e34f(0x161))/0x4+-parseInt(_0x16e34f(0x1c6))/0x5*(-parseInt(_0x16e34f(0x16a))/0x6)+-parseInt(_0x16e34f(0x1bd))/0x7*(-parseInt(_0x16e34f(0x16c))/0x8)+-parseInt(_0x16e34f(0x164))/0x9*(parseInt(_0x16e34f(0x1bf))/0xa)+parseInt(_0x16e34f(0x1c2))/0xb*(-parseInt(_0x16e34f(0x19a))/0xc);if(_0x4efd69===_0x85632d)break;else _0x4bc190['push'](_0x4bc190['shift']());}catch(_0x4bacee){_0x4bc190['push'](_0x4bc190['shift']());}}}(a0_0x10d5,0xcdd83));function a0_0x4adf(_0x1d6d99,_0x53e34a){_0x1d6d99=_0x1d6d99-0x14f;const _0x10d5ea=a0_0x10d5();let _0x4adf66=_0x10d5ea[_0x1d6d99];if(a0_0x4adf['fffpvC']===undefined){var _0x51f641=function(_0x571290){const _0x7a03c9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x278c74='',_0xcdb5e6='';for(let _0x42580d=0x0,_0x5d3456,_0x3fa928,_0x41f245=0x0;_0x3fa928=_0x571290['charAt'](_0x41f245++);~_0x3fa928&&(_0x5d3456=_0x42580d%0x4?_0x5d3456*0x40+_0x3fa928:_0x3fa928,_0x42580d++%0x4)?_0x278c74+=String['fromCharCode'](0xff&_0x5d3456>>(-0x2*_0x42580d&0x6)):0x0){_0x3fa928=_0x7a03c9['indexOf'](_0x3fa928);}for(let _0x2fa212=0x0,_0x208876=_0x278c74['length'];_0x2fa212<_0x208876;_0x2fa212++){_0xcdb5e6+='%'+('00'+_0x278c74['charCodeAt'](_0x2fa212)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xcdb5e6);};a0_0x4adf['rWHYta']=_0x51f641,a0_0x4adf['KgTlQe']={},a0_0x4adf['fffpvC']=!![];}const _0x3a9302=_0x10d5ea[0x0],_0x145173=_0x1d6d99+_0x3a9302,_0x456a74=a0_0x4adf['KgTlQe'][_0x145173];return!_0x456a74?(_0x4adf66=a0_0x4adf['rWHYta'](_0x4adf66),a0_0x4adf['KgTlQe'][_0x145173]=_0x4adf66):_0x4adf66=_0x456a74,_0x4adf66;}import{BaseTool}from'./baseTool.js';import{promises as a0_0x278c74}from'fs';import a0_0xcdb5e6 from'path';const TREE_CONFIG={'DEFAULT_MAX_DEPTH':0x3,'MAX_DEPTH_LIMIT':0xa,'MAX_FILES_IN_TREE':0x2710,'MAX_DIRECTORIES':0x3e8,'SHOW_FILES_DEFAULT':!![],'SHOW_HIDDEN_DEFAULT':![],'SHOW_SIZES_DEFAULT':![],'SYMBOLS':{'BRANCH':a0_0x38a9c3(0x1b3),'LAST_BRANCH':a0_0x38a9c3(0x156),'VERTICAL':'β”‚\x20\x20\x20','INDENT':a0_0x38a9c3(0x165)}},DEFAULT_IGNORE_DIRECTORIES=[a0_0x38a9c3(0x155),'.git','dist',a0_0x38a9c3(0x179),'coverage','.next',a0_0x38a9c3(0x18b),'.cache','out',a0_0x38a9c3(0x178),a0_0x38a9c3(0x18f),a0_0x38a9c3(0x1a4),a0_0x38a9c3(0x1b9),a0_0x38a9c3(0x1b8),'.vs','__pycache__',a0_0x38a9c3(0x177),a0_0x38a9c3(0x167),a0_0x38a9c3(0x199),a0_0x38a9c3(0x195),'.mypy_cache',a0_0x38a9c3(0x196),a0_0x38a9c3(0x19f),'lib',a0_0x38a9c3(0x160),'parts','sdist',a0_0x38a9c3(0x182),'.tox','.nox','htmlcov','.hypothesis',a0_0x38a9c3(0x185),a0_0x38a9c3(0x194),'.tmp',a0_0x38a9c3(0x159)],DEFAULT_IGNORE_EXTENSIONS=['.map','.min.js',a0_0x38a9c3(0x176),'.lock','.log',a0_0x38a9c3(0x189),a0_0x38a9c3(0x159),'.pyc','.pyo',a0_0x38a9c3(0x17e),'.so',a0_0x38a9c3(0x1b7),a0_0x38a9c3(0x154),a0_0x38a9c3(0x1af),'.obj','.o','.a','.class','.jar','.war'],BINARY_EXTENSIONS=['.png',a0_0x38a9c3(0x1a9),a0_0x38a9c3(0x16d),'.gif','.bmp',a0_0x38a9c3(0x1a7),'.svg','.pdf',a0_0x38a9c3(0x1bc),a0_0x38a9c3(0x1ad),a0_0x38a9c3(0x1ab),a0_0x38a9c3(0x1a0),'.7z','.mp3',a0_0x38a9c3(0x152),'.avi','.mov','.wmv',a0_0x38a9c3(0x1bb),'.woff2','.ttf','.eot',a0_0x38a9c3(0x15b),a0_0x38a9c3(0x193),'.db',a0_0x38a9c3(0x14f)];class FileTreeTool extends BaseTool{constructor(_0x42580d={},_0x5d3456=null){const _0x30a699=a0_0x38a9c3;super(_0x42580d,_0x5d3456),this['id']='file-tree',this['requiresProject']=!![],this['isAsync']=!![],this['timeout']=_0x42580d['timeout']||0x1d4c0,this[_0x30a699(0x1ae)]={...TREE_CONFIG,..._0x42580d['treeConfig']},this['stats']={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};}['getDescription'](){const _0x48fcd0=a0_0x38a9c3;return'\x0aFile\x20Tree\x20Tool:\x20Generate\x20hierarchical\x20tree\x20representation\x20of\x20project\x20directory\x20structure.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-tree\x22,\x0a\x20\x20\x22directory\x22:\x20\x22src\x22,\x0a\x20\x20\x22maxDepth\x22:\x204,\x0a\x20\x20\x22includeExtensions\x22:\x20[\x22.js\x22,\x20\x22.jsx\x22,\x20\x22.ts\x22,\x20\x22.tsx\x22],\x0a\x20\x20\x22excludeExtensions\x22:\x20[\x22.test.js\x22,\x20\x22.spec.js\x22],\x0a\x20\x20\x22showFiles\x22:\x20true,\x0a\x20\x20\x22showHidden\x22:\x20false\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0adirectory\x20(optional):\x0a\x20\x20-\x20Directory\x20to\x20scan\x20(default:\x20working\x20directory)\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x20path\x0a\x20\x20-\x20Examples:\x20\x22src\x22,\x20\x22src/components\x22,\x20\x22/home/user/project\x22\x0a\x0amaxDepth\x20(optional):\x0a\x20\x20-\x20Maximum\x20depth\x20to\x20scan\x20(default:\x20'+TREE_CONFIG['DEFAULT_MAX_DEPTH']+_0x48fcd0(0x15d)+TREE_CONFIG['MAX_DEPTH_LIMIT']+'\x0a\x20\x20-\x20Deeper\x20=\x20more\x20detail,\x20slower\x20performance\x0a\x0aincludeExtensions\x20(optional\x20-\x20WHITELIST):\x0a\x20\x20-\x20Include\x20ONLY\x20these\x20file\x20extensions\x0a\x20\x20-\x20Array\x20of\x20extensions\x0a\x20\x20-\x20Examples:\x20[\x22.js\x22,\x20\x22.jsx\x22,\x20\x22.ts\x22,\x20\x22.tsx\x22]\x0a\x20\x20-\x20Takes\x20precedence\x20over\x20excludeExtensions\x0a\x0aexcludeExtensions\x20(optional\x20-\x20BLACKLIST):\x0a\x20\x20-\x20Exclude\x20these\x20file\x20extensions\x0a\x20\x20-\x20Array\x20of\x20extensions\x0a\x20\x20-\x20Examples:\x20[\x22.test.js\x22,\x20\x22.spec.js\x22,\x20\x22.min.js\x22]\x0a\x20\x20-\x20Only\x20applies\x20if\x20includeExtensions\x20is\x20not\x20set\x0a\x0aexcludeDirectories\x20(optional):\x0a\x20\x20-\x20Additional\x20directories\x20to\x20ignore\x0a\x20\x20-\x20Already\x20ignores:\x20node_modules,\x20.git,\x20dist,\x20build,\x20etc.\x0a\x20\x20-\x20Examples:\x20[\x22tests\x22,\x20\x22fixtures\x22,\x20\x22mocks\x22]\x0a\x0ashowFiles\x20(optional):\x0a\x20\x20-\x20Whether\x20to\x20show\x20files\x20(default:\x20true)\x0a\x20\x20-\x20Set\x20to\x20false\x20to\x20show\x20only\x20directory\x20structure\x0a\x0ashowHidden\x20(optional):\x0a\x20\x20-\x20Whether\x20to\x20show\x20hidden\x20files/folders\x20(default:\x20false)\x0a\x20\x20-\x20Hidden\x20=\x20starts\x20with\x20\x27.\x27\x0a\x0ashowSizes\x20(optional):\x0a\x20\x20-\x20Whether\x20to\x20show\x20file\x20sizes\x20(default:\x20false)\x0a\x20\x20-\x20Format:\x20KB,\x20MB\x0a\x0aignoreBinaryFiles\x20(optional):\x0a\x20\x20-\x20Whether\x20to\x20ignore\x20binary/media\x20files\x20(default:\x20false)\x0a\x20\x20-\x20Ignores:\x20images,\x20videos,\x20archives,\x20fonts,\x20etc.\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20tree:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-tree\x22,\x0a\x20\x20\x22directory\x22:\x20\x22.\x22\x0a}\x0a```\x0a\x0aExample\x202\x20-\x20JavaScript/TypeScript\x20only:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-tree\x22,\x0a\x20\x20\x22directory\x22:\x20\x22src\x22,\x0a\x20\x20\x22includeExtensions\x22:\x20[\x22.js\x22,\x20\x22.jsx\x22,\x20\x22.ts\x22,\x20\x22.tsx\x22],\x0a\x20\x20\x22maxDepth\x22:\x205\x0a}\x0a```\x0a\x0aExample\x203\x20-\x20Python\x20project\x20structure:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-tree\x22,\x0a\x20\x20\x22directory\x22:\x20\x22.\x22,\x0a\x20\x20\x22includeExtensions\x22:\x20[\x22.py\x22],\x0a\x20\x20\x22excludeExtensions\x22:\x20[\x22.pyc\x22],\x0a\x20\x20\x22showFiles\x22:\x20true\x0a}\x0a```\x0a\x0aExample\x204\x20-\x20Directory\x20structure\x20only:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-tree\x22,\x0a\x20\x20\x22directory\x22:\x20\x22src\x22,\x0a\x20\x20\x22showFiles\x22:\x20false,\x0a\x20\x20\x22maxDepth\x22:\x203\x0a}\x0a```\x0a\x0aExample\x205\x20-\x20Exclude\x20test\x20files:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-tree\x22,\x0a\x20\x20\x22directory\x22:\x20\x22src\x22,\x0a\x20\x20\x22excludeExtensions\x22:\x20[\x22.test.js\x22,\x20\x22.spec.js\x22,\x20\x22.test.ts\x22,\x20\x22.spec.ts\x22],\x0a\x20\x20\x22excludeDirectories\x22:\x20[\x22__tests__\x22,\x20\x22tests\x22,\x20\x22specs\x22]\x0a}\x0a```\x0a\x0aOUTPUT\x20FORMAT:\x0asrc/\x0aβ”œβ”€β”€\x20components/\x0aβ”‚\x20\x20\x20β”œβ”€β”€\x20Header.jsx\x0aβ”‚\x20\x20\x20β”œβ”€β”€\x20Footer.jsx\x0aβ”‚\x20\x20\x20└──\x20Layout.jsx\x0aβ”œβ”€β”€\x20utils/\x0aβ”‚\x20\x20\x20β”œβ”€β”€\x20helpers.js\x0aβ”‚\x20\x20\x20└──\x20config.js\x0a└──\x20index.js\x0a\x0aAUTOMATIC\x20IGNORES:\x0aThe\x20tool\x20automatically\x20ignores\x20common\x20directories:\x0a-\x20node_modules,\x20.git,\x20dist,\x20build,\x20coverage\x0a-\x20.next,\x20.nuxt,\x20.cache,\x20out,\x20target\x0a-\x20.vscode,\x20.idea,\x20__pycache__,\x20venv\x0a\x0aLIMITATIONS:\x0a-\x20Maximum\x20depth:\x20'+TREE_CONFIG['MAX_DEPTH_LIMIT']+'\x0a-\x20Maximum\x20files:\x20'+TREE_CONFIG[_0x48fcd0(0x18d)]+_0x48fcd0(0x175)+TREE_CONFIG['MAX_DIRECTORIES']+_0x48fcd0(0x162);}['parseParameters'](_0x3fa928){const _0x518c5c=a0_0x38a9c3;try{if(_0x3fa928[_0x518c5c(0x1b0)]()['startsWith']('{')){const _0x173310=JSON[_0x518c5c(0x184)](_0x3fa928);return{'directory':_0x173310['directory']||'.','maxDepth':_0x173310[_0x518c5c(0x1c0)]||TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':_0x173310[_0x518c5c(0x158)]||[],'excludeExtensions':_0x173310[_0x518c5c(0x16b)]||[],'excludeDirectories':_0x173310[_0x518c5c(0x163)]||[],'showFiles':_0x173310['showFiles']!==![],'showHidden':_0x173310[_0x518c5c(0x15c)]===!![],'showSizes':_0x173310['showSizes']===!![],'ignoreBinaryFiles':_0x173310['ignoreBinaryFiles']===!![]};}const _0x41f245={'directory':'.','maxDepth':TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![]},_0x2fa212=/<directory>(.*?)<\/directory>/i,_0x208876=_0x2fa212[_0x518c5c(0x157)](_0x3fa928);_0x208876&&(_0x41f245[_0x518c5c(0x1ba)]=_0x208876[0x1][_0x518c5c(0x1b0)]());const _0x435aeb=/<max-depth>(\d+)<\/max-depth>/i,_0x231778=_0x435aeb['exec'](_0x3fa928);_0x231778&&(_0x41f245['maxDepth']=parseInt(_0x231778[0x1],0xa));const _0xc5caac=/<include-extensions>(.*?)<\/include-extensions>/i,_0xb7ae4c=_0xc5caac['exec'](_0x3fa928);_0xb7ae4c&&(_0x41f245[_0x518c5c(0x158)]=_0xb7ae4c[0x1][_0x518c5c(0x1a1)](',')[_0x518c5c(0x168)](_0x37c33a=>_0x37c33a['trim']())[_0x518c5c(0x19d)](_0x548858=>_0x548858['length']>0x0));const _0x4c5bcf=/<exclude-extensions>(.*?)<\/exclude-extensions>/i,_0x27b58e=_0x4c5bcf[_0x518c5c(0x157)](_0x3fa928);_0x27b58e&&(_0x41f245['excludeExtensions']=_0x27b58e[0x1][_0x518c5c(0x1a1)](',')[_0x518c5c(0x168)](_0x5af320=>_0x5af320[_0x518c5c(0x1b0)]())['filter'](_0x5069be=>_0x5069be['length']>0x0));const _0x20db9e=/<exclude-directories>(.*?)<\/exclude-directories>/i,_0x4b8c38=_0x20db9e['exec'](_0x3fa928);_0x4b8c38&&(_0x41f245['excludeDirectories']=_0x4b8c38[0x1][_0x518c5c(0x1a1)](',')['map'](_0x3946bf=>_0x3946bf[_0x518c5c(0x1b0)]())['filter'](_0x4ca7e0=>_0x4ca7e0['length']>0x0));const _0x82641=/<show-files>(.*?)<\/show-files>/i,_0x283aac=_0x82641[_0x518c5c(0x157)](_0x3fa928);_0x283aac&&(_0x41f245['showFiles']=_0x283aac[0x1]['trim']()['toLowerCase']()!==_0x518c5c(0x1a2));const _0x5b7849=/<show-hidden>(.*?)<\/show-hidden>/i,_0x2ccbce=_0x5b7849['exec'](_0x3fa928);_0x2ccbce&&(_0x41f245[_0x518c5c(0x15c)]=_0x2ccbce[0x1]['trim']()[_0x518c5c(0x1be)]()===_0x518c5c(0x188));const _0x1b7b09=/<show-sizes>(.*?)<\/show-sizes>/i,_0x31c5e5=_0x1b7b09[_0x518c5c(0x157)](_0x3fa928);_0x31c5e5&&(_0x41f245[_0x518c5c(0x16f)]=_0x31c5e5[0x1]['trim']()['toLowerCase']()===_0x518c5c(0x188));const _0x378365=/<ignore-binary-files>(.*?)<\/ignore-binary-files>/i,_0x315544=_0x378365[_0x518c5c(0x157)](_0x3fa928);return _0x315544&&(_0x41f245['ignoreBinaryFiles']=_0x315544[0x1][_0x518c5c(0x1b0)]()[_0x518c5c(0x1be)]()===_0x518c5c(0x188)),_0x41f245;}catch(_0x460674){return this['logger']?.[_0x518c5c(0x18a)]('Failed\x20to\x20parse\x20file-tree\x20parameters',{'error':_0x460674['message']}),{'directory':'.','maxDepth':TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![],'parseError':_0x460674[_0x518c5c(0x1b2)]};}}['getRequiredParameters'](){return[];}[a0_0x38a9c3(0x15e)](_0x200dcf){const _0x3ae893=a0_0x38a9c3,_0x22c01d=[];if(_0x200dcf['maxDepth']!==undefined){if(typeof _0x200dcf[_0x3ae893(0x1c0)]!==_0x3ae893(0x1c5)||_0x200dcf[_0x3ae893(0x1c0)]<0x1)_0x22c01d[_0x3ae893(0x17c)]('max-depth\x20must\x20be\x20a\x20positive\x20number');else _0x200dcf['maxDepth']>this[_0x3ae893(0x1ae)]['MAX_DEPTH_LIMIT']&&_0x22c01d[_0x3ae893(0x17c)]('max-depth\x20cannot\x20exceed\x20'+this[_0x3ae893(0x1ae)][_0x3ae893(0x1c3)]);}_0x200dcf[_0x3ae893(0x1ba)]&&_0x200dcf['directory'][_0x3ae893(0x1b6)]('..')&&_0x22c01d[_0x3ae893(0x17c)]('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security');if(_0x200dcf['includeExtensions']!==undefined&&_0x200dcf['includeExtensions']!==null){if(!Array[_0x3ae893(0x166)](_0x200dcf['includeExtensions']))_0x22c01d[_0x3ae893(0x17c)](_0x3ae893(0x17d));else for(const _0x4b7b26 of _0x200dcf[_0x3ae893(0x158)]){!_0x4b7b26['startsWith']('.')&&_0x22c01d[_0x3ae893(0x17c)]('Extension\x20\x22'+_0x4b7b26+'\x22\x20must\x20start\x20with\x20a\x20dot\x20(e.g.,\x20\x22.js\x22)');}}if(_0x200dcf['excludeExtensions']!==undefined&&_0x200dcf['excludeExtensions']!==null){if(!Array[_0x3ae893(0x166)](_0x200dcf['excludeExtensions']))_0x22c01d[_0x3ae893(0x17c)]('excludeExtensions\x20must\x20be\x20an\x20array');else for(const _0x33a463 of _0x200dcf['excludeExtensions']){!_0x33a463['startsWith']('.')&&_0x22c01d[_0x3ae893(0x17c)]('Extension\x20\x22'+_0x33a463+'\x22\x20must\x20start\x20with\x20a\x20dot\x20(e.g.,\x20\x22.js\x22)');}}_0x200dcf[_0x3ae893(0x163)]!==undefined&&_0x200dcf['excludeDirectories']!==null&&(!Array['isArray'](_0x200dcf['excludeDirectories'])&&_0x22c01d[_0x3ae893(0x17c)](_0x3ae893(0x15a)));if(_0x22c01d['length']>0x0)throw new Error(_0x3ae893(0x1a5)+_0x22c01d['join'](',\x20'));return{'valid':!![],'errors':[]};}async['execute'](_0x325245,_0x32333e){const _0x5c2f4d=a0_0x38a9c3,{directory:directory='.',maxDepth:maxDepth=TREE_CONFIG['DEFAULT_MAX_DEPTH'],includeExtensions:includeExtensions=[],excludeExtensions:excludeExtensions=[],excludeDirectories:excludeDirectories=[],showFiles:showFiles=!![],showHidden:showHidden=![],showSizes:showSizes=![],ignoreBinaryFiles:ignoreBinaryFiles=![]}=_0x325245,{projectDir:_0x54d49b,agentId:_0x3fcd75,directoryAccess:_0x2adb68}=_0x32333e;let _0x197b5d=_0x54d49b||process[_0x5c2f4d(0x171)]();_0x2adb68&&_0x2adb68[_0x5c2f4d(0x1c7)]&&(_0x197b5d=_0x2adb68['workingDirectory'],this[_0x5c2f4d(0x198)]?.[_0x5c2f4d(0x153)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x2adb68['workingDirectory'],'agentId':_0x3fcd75}));const _0x54e1d4=a0_0xcdb5e6['isAbsolute'](directory)?directory:a0_0xcdb5e6[_0x5c2f4d(0x150)](_0x197b5d,directory);try{const _0x3d76df=await a0_0x278c74[_0x5c2f4d(0x1a3)](_0x54e1d4);if(!_0x3d76df['isDirectory']())throw new Error(_0x5c2f4d(0x17a));}catch(_0x4be907){throw new Error('Directory\x20does\x20not\x20exist\x20or\x20is\x20inaccessible:\x20'+directory);}this[_0x5c2f4d(0x198)]?.[_0x5c2f4d(0x153)]('Generating\x20file\x20tree',{'directory':directory,'targetDir':_0x54e1d4,'maxDepth':maxDepth,'includeExtensions':includeExtensions?.['length']||0x0,'excludeExtensions':excludeExtensions?.[_0x5c2f4d(0x18e)]||0x0,'agentId':_0x3fcd75}),this['stats']={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};const _0xbc6019=[...DEFAULT_IGNORE_DIRECTORIES,...excludeDirectories||[]],_0x3be9f3=[...DEFAULT_IGNORE_EXTENSIONS];ignoreBinaryFiles&&_0x3be9f3['push'](...BINARY_EXTENSIONS);const _0x3a35f4=await this[_0x5c2f4d(0x19e)](_0x54e1d4,_0x54e1d4,0x0,maxDepth,_0xbc6019,includeExtensions||[],[...excludeExtensions||[],..._0x3be9f3],showFiles,showHidden,showSizes),_0x8af19b=this['formatTree'](_0x3a35f4),_0x595324=this[_0x5c2f4d(0x1b1)](directory,this['stats'],maxDepth);return{'success':!![],'directory':_0x54e1d4,'tree':_0x8af19b,'summary':_0x595324,'maxDepth':maxDepth,'totalFiles':this['stats']['filesCount'],'totalDirectories':this['stats'][_0x5c2f4d(0x1b4)],'skippedCount':this[_0x5c2f4d(0x16e)][_0x5c2f4d(0x170)],'statistics':{...this['stats']},'toolUsed':'file-tree'};}async['buildTree'](_0x4244ba,_0x44daa6,_0x9b1551,_0x1cfea1,_0x49d5fa,_0x4f1d68,_0x83612d,_0xe2d9d7,_0x31be1a,_0x14d93f){const _0x4e8a94=a0_0x38a9c3;if(_0x9b1551>_0x1cfea1)return null;if(this['stats']['directoriesCount']>=this['treeConfig'][_0x4e8a94(0x17f)])return this[_0x4e8a94(0x198)]?.['warn']('Maximum\x20directory\x20count\x20reached',{'maxDirectories':this['treeConfig'][_0x4e8a94(0x17f)]}),null;try{const _0x1c08a8=await a0_0x278c74['readdir'](_0x44daa6,{'withFileTypes':!![]}),_0x5c9d45={'name':_0x9b1551===0x0?a0_0xcdb5e6[_0x4e8a94(0x192)](_0x44daa6)+'/':a0_0xcdb5e6['basename'](_0x44daa6),'path':a0_0xcdb5e6['relative'](_0x4244ba,_0x44daa6),'type':'directory','children':[]};this[_0x4e8a94(0x16e)]['directoriesCount']++;for(const _0x33dc0a of _0x1c08a8){if(this['stats'][_0x4e8a94(0x1a8)]>=this[_0x4e8a94(0x1ae)][_0x4e8a94(0x18d)]){this['logger']?.[_0x4e8a94(0x172)]('Maximum\x20file\x20count\x20reached',{'maxFiles':this['treeConfig'][_0x4e8a94(0x18d)]});break;}if(!_0x31be1a&&_0x33dc0a[_0x4e8a94(0x173)]['startsWith']('.')){this['stats']['skippedCount']++;continue;}const _0x6496b1=a0_0xcdb5e6['join'](_0x44daa6,_0x33dc0a['name']);if(_0x33dc0a['isDirectory']()){if(_0x49d5fa[_0x4e8a94(0x1b6)](_0x33dc0a[_0x4e8a94(0x173)])){this['stats']['skippedCount']++;continue;}const _0x5bb14a=await this[_0x4e8a94(0x19e)](_0x4244ba,_0x6496b1,_0x9b1551+0x1,_0x1cfea1,_0x49d5fa,_0x4f1d68,_0x83612d,_0xe2d9d7,_0x31be1a,_0x14d93f);_0x5bb14a&&(_0x5bb14a['children'][_0x4e8a94(0x18e)]>0x0||_0x9b1551===0x0)&&_0x5c9d45[_0x4e8a94(0x174)][_0x4e8a94(0x17c)](_0x5bb14a);}else{if(_0x33dc0a[_0x4e8a94(0x190)]()&&_0xe2d9d7){if(_0x9b1551+0x1>_0x1cfea1)continue;const _0xbceddf=a0_0xcdb5e6['extname'](_0x33dc0a['name']);if(_0x4f1d68['length']>0x0){if(!_0x4f1d68['includes'](_0xbceddf)){this[_0x4e8a94(0x16e)]['skippedCount']++;continue;}}else{if(_0x83612d['includes'](_0xbceddf)){this[_0x4e8a94(0x16e)]['skippedCount']++;continue;}}let _0x1d2099='';if(_0x14d93f)try{const _0x16d568=await a0_0x278c74['stat'](_0x6496b1);_0x1d2099='\x20('+this[_0x4e8a94(0x1aa)](_0x16d568[_0x4e8a94(0x197)])+')';}catch(_0x267620){}_0x5c9d45['children']['push']({'name':_0x33dc0a['name']+_0x1d2099,'path':a0_0xcdb5e6['relative'](_0x4244ba,_0x6496b1),'type':_0x4e8a94(0x169),'ext':_0xbceddf}),this[_0x4e8a94(0x16e)][_0x4e8a94(0x1a8)]++;}}}return _0x5c9d45[_0x4e8a94(0x174)]['sort']((_0x4c5022,_0x3e3979)=>{const _0x51c6b2=_0x4e8a94;if(_0x4c5022['type']===_0x3e3979[_0x51c6b2(0x15f)])return _0x4c5022[_0x51c6b2(0x173)][_0x51c6b2(0x1c1)](_0x3e3979['name']);return _0x4c5022[_0x51c6b2(0x15f)]==='directory'?-0x1:0x1;}),_0x5c9d45;}catch(_0x128d06){return this['logger']?.[_0x4e8a94(0x18a)](_0x4e8a94(0x183),{'currentPath':_0x44daa6,'error':_0x128d06['message']}),{'name':a0_0xcdb5e6['basename'](_0x44daa6),'path':a0_0xcdb5e6[_0x4e8a94(0x1ac)](_0x4244ba,_0x44daa6),'type':_0x4e8a94(0x1ba),'error':_0x128d06[_0x4e8a94(0x1b2)],'children':[]};}}[a0_0x38a9c3(0x1b5)](_0x4b748e,_0x362c03='',_0x5372e9=!![],_0x276c57=!![]){const _0x4f3215=a0_0x38a9c3;if(!_0x4b748e)return'';const _0x1a26fa=this['treeConfig'][_0x4f3215(0x19b)];let _0x48c41e='';_0x276c57?_0x48c41e=_0x4b748e[_0x4f3215(0x173)]+'\x0a':_0x48c41e=''+_0x362c03+(_0x5372e9?_0x1a26fa[_0x4f3215(0x1c4)]:_0x1a26fa[_0x4f3215(0x18c)])+_0x4b748e[_0x4f3215(0x173)]+'\x0a';if(_0x4b748e[_0x4f3215(0x174)]&&_0x4b748e[_0x4f3215(0x174)]['length']>0x0){const _0x4787cb=_0x276c57?'':_0x362c03+(_0x5372e9?_0x1a26fa[_0x4f3215(0x17b)]:_0x1a26fa['VERTICAL']);_0x4b748e[_0x4f3215(0x174)]['forEach']((_0x3cc9aa,_0x267dc3)=>{const _0x422c91=_0x4f3215,_0x18dc7b=_0x267dc3===_0x4b748e[_0x422c91(0x174)]['length']-0x1;_0x48c41e+=this[_0x422c91(0x1b5)](_0x3cc9aa,_0x4787cb,_0x18dc7b,![]);});}return _0x48c41e;}['formatFileSize'](_0x2d2b5e){const _0x5a7043=a0_0x38a9c3,_0x19e627=0x400,_0xeb499d=_0x19e627*0x400,_0x23723a=_0xeb499d*0x400;if(_0x2d2b5e>=_0x23723a)return(_0x2d2b5e/_0x23723a)[_0x5a7043(0x181)](0x2)+'\x20GB';else{if(_0x2d2b5e>=_0xeb499d)return(_0x2d2b5e/_0xeb499d)[_0x5a7043(0x181)](0x2)+'\x20MB';else return _0x2d2b5e>=_0x19e627?(_0x2d2b5e/_0x19e627)[_0x5a7043(0x181)](0x2)+'\x20KB':_0x2d2b5e+'\x20B';}}[a0_0x38a9c3(0x1b1)](_0x4c5283,_0x26790d,_0x43b99e){const _0x241620=a0_0x38a9c3;return('\x0aDirectory:\x20'+_0x4c5283+_0x241620(0x151)+_0x43b99e+_0x241620(0x187)+_0x26790d[_0x241620(0x1a8)]+'\x0aDirectories:\x20'+_0x26790d['directoriesCount']+_0x241620(0x1a6)+_0x26790d['skippedCount']+'\x0a\x20\x20\x20\x20')['trim']();}async['cleanup'](_0x256768){const _0x20d426=a0_0x38a9c3;this['logger']?.[_0x20d426(0x153)](_0x20d426(0x186),{'operationId':_0x256768});}}export default FileTreeTool;
@@ -1 +1 @@
1
- const a0_0x2657ec=a0_0x5c95;function a0_0x2ee1(){const _0x50acae=['zxjYB3i','DgvTCg9Yyxj5vxjS','z2vUzxjHDgvKlq','sw1Hz2uGz2vUzxjHDgLVBIbICM9HzgnHC3qGC2vUDa','sw1Hz2uGC2f2zwqGDg86ia','BM93','D2fYBG','nJHizxb4vKy','y2XLyxi','mtmZodG3uLvMEw9Q','zgLYBMfTzq','x3bHCNnLwe1mugfYyw1Z','Aw1Hz2uTz2vU','cGOQkLbYB21WDdOQkIa','C2f2zvrVuhjVAMvJDa','owvQwNfsBG','AM9PBG','yMf0y2G','ovv5ENPXvG','C2v0','mtaYnhGXnZKY','u2H1DhrPBMCGzg93BIbjBwfNzvrVB2W','x2vZDgLTyxrLv2fPDfrPBwu','rMfPBgvKihrVigrVD25SB2fKigLTywDLoIbivfrqia','x2DLBMvYyxrLsw1Hz2u','sw52ywXPzcbMB3jTyxq6ia','x3zHBgLKyxrLugfYyw1LDgvYCW','y3vYCMvUDePVyG','nteYEduXmG','BwTKAxi','sw1Hz2uGCxvLDwvKigzVCIbNzw5LCMf0Aw9U','y3vYCMvUDe1VzgvS','Bw9KzwW','CxvLDwu','igLTywDLCYKUifbSzwfZzsb3ywL0igzVCIbJDxjYzw50igPVyNmGDg8Gy29TCgXLDguU','lNbUzW','BM9YBwfSAxPL','cIOQrxjYB3i6kIOG','C3rHCNrZv2L0Aa','sw1Hz2uGz2vUzxjHDgLVBIbLCNjVCJO','zxHLyW','yNjVywrJyxn0vg9tzxnZAw9U','C3LZDgvT','zMXVB3i','x2nVBNzLCNruB1DLyLvYBa','x3bYB2nLC3nrDwv1zq','x3jLC29SDMvpDxrWDxrqyxrO','zNvSBa','C3vIC3rYAw5N','ChjVy2vZC2LUzW','yxP1CMuTB3bLBMfPlwrHBgXLmW','B3v0Chv0ugf0Aa','Aw5MBW','ANbN','x2rVD25SB2fKsw1Hz2u','ntC5mdG4vMXcqNbQ','vevnuf9dtevbtLvqx01t','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0','Bg94AweTAw1Hz2vZ','tufyx1bst01qvf9mru5hveG','y3DK','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLlIbjBwfNzsbNzw5LCMf0Aw9UihjLCxvPCMvZiefjihnLCNzPy2uU','yxjYyxLcDwzMzxi','ignOyxjHy3rLCNmP','CgfYC2u','Aw5JBhvKzxm','ndGXotCZohvLt1zYCG','zgvIDwC','sw1Hz2uGCMvZDwX0ihnHDMvKihrVignVBNzLCNnHDgLVBIbOAxn0B3j5','zxH0BMfTzq','AxnqCM9JzxnZAw5N','zg93BMXVywrfCNjVCG','BwvZC2fNzxm','CMvZB2X2zwrpDxrWDxrqyxrO','sw1Hz2uGChjVBxb0igLZihjLCxvPCMvK','mtC5mNGXmdi0','CgvYC2LZDefNzw50u3rHDgu','DgvTCerPCG','CxvHBgL0Eq','BgvUz3rO','B2jQzwn0','ndq0AfHcExrd','DhjPBq','BgfZDefJDgL2Axr5','revgqvvmvf9rvufmsvrz','BwvZC2fNzq','C2vZC2LVBKLK','AxnbCNjHEq','CMfUzg9T','Dg9mB3DLCKnHC2u','Cg9YDa','re9xtKXpqurFveLnru9vva','sw1Hz2uGz2vUzxjHDgLVBIbMywLSzwq6ia','vg9VBdOGsw1Hz2uGr2vUzxjHDg9Yic0Gr2vUzxjHDguGAw1Hz2vZihvZAw5Niefjig1VzgvSCWOkkIPqDxjWB3nLoIOQieDLBMvYyxrLigLTywDLCYbMCM9TihrLEhqGzgvZy3jPChrPB25ZihvZAw5NierbteWTrsaZlIbjBwfNzxmGyxjLihnHDMvKihrVigzPBgvZigfUzcbKAxnWBgf5zwqGAw4Gy2HHDc4kcIOQq1jjveLdquW6ief1Dg9TyxrPyYbfEgvJDxrPB24QkGOTiefowsbGygbQC29UigjSB2nRihDPDgGGiNrVB2Xjzci6icjPBwfNzs1Nzw4IihDPBgWGyMuGrvHfq1vuruqGsu1nrurjqvrftfKklsbkDxn0ig91Dhb1Dcb0AguGy29TBwfUzcb3AgvUihLVDsb3yw50ihrVigDLBMvYyxrLigfUigLTywDLcI0GswyGz2vUzxjHDgLVBIbMywLSCYWGB3v0Chv0igeGtKvxignVBw1HBMqGD2L0AcbJB3jYzwn0Aw9UCWOkkIPvu0fhrtOQkGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMLTywDLlwDLBIiScIaGiNbHCMfTzxrLCNmIoIb7cIaGicaIChjVBxb0iJOGiKrLDgfPBgvKigrLC2nYAxb0Aw9Uig9MihrOzsbPBwfNzsiScIaGicaIB3v0Chv0ugf0Aci6icjPBwfNzxmVzMLSzw5HBwuUCg5NiIWkicaGicjTB2rLBci6icjHENvYzs1VCgvUywKTzgfSBguZiIWkicaGicjZAxPLiJOGiJeWmJr4mtaYncikicb9cN0kygbGcGOQkLbHCMfTzxrLCNm6kIOklsaQkNbYB21WDcOQicHYzxf1AxjLzcK6ierLDgfPBgvKigrLC2nYAxb0Aw9Uig9MigLTywDLihrVigDLBMvYyxrLcI0GkIPVDxrWDxrqyxrOkIOGkg9WDgLVBMfSktOGugf0Acb0BYbZyxzLigLTywDLicHWzxjTyw5LBNqPlIbpBwL0igzVCIb0zw1WigzPBguUcI0GkIPTB2rLBcOQicHVChrPB25HBcK6icjHENvYzs1VCgvUywKTzgfSBguZiIaOzgvMyxvSDcKklsaQkNnPEMuQkIaOB3b0Aw9UywWPoIaYntz4mJu2lca1mtj4nteYlcaXmdi0EdeWmJqSideWmJr4mtC5mIWGmtC5mNGXmdi0icHKzwzHDwX0oIaXmdi0EdeWmJqPcI0GkIPXDwfSAxr5kIOGkg9WDgLVBMfSktOGiNn0yw5KyxjKiIbVCIaIAgqIicHKzwzHDwX0oIbZDgfUzgfYzcKkcIOQrvHbtvbmrtOQkGPvC2vYoIaIy3jLyxrLigeGC3vUC2v0igLTywDLiGPzB3uGB3v0Chv0oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMLTywDLlwDLBIiScIaGiNbHCMfTzxrLCNmIoIb7cIaGicaIChjVBxb0iJOGiKeGyMvHDxrPzNvSihn1BNnLDcbVDMvYihrOzsbVy2vHBIb3AxrOihzPyNjHBNqGB3jHBMDLigfUzcbWAw5RignVBg9YCYbYzwzSzwn0Aw5Nig9UignHBg0GD2f0zxjZiIWkicaGicjVDxrWDxrqyxrOiJOGiMLTywDLCY9ZDw5ZzxqUCg5NiIWkicaGicjZAxPLiJOGiJeWmJr4mtaYncikicb9cN0kygbGcGOQkK5VDgvZoIOQcI0Gsw1Hz2vZihrHA2uGmtuTmZaGC2vJB25KCYb0BYbNzw5LCMf0zqOTiejLigrLC2nYAxb0AxzLigLUihbYB21WDhmGzM9YigjLDhrLCIbYzxn1BhrZcI0Gtwf4ia','C2v0quLtzxj2AwnL','Bg9Nz2vY','zgLYzwn0B3j5qwnJzxnZ','tMv0D29YAYbLCNjVCJOG','Bg94Awfxzwjtzxj2zxi','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq','z2v0qwDLBNq','otuZmKnfq1P0uW','ywDLBNrjza','C3rHDhvZ','uhjVBxb0ihrVBYbSB25NicHTyxGG','vKfmsurFrK9stufuuW','ndi1mJaWEg5rsxnr','mte0odK4mhLStKHryG','sw1Hz2uGzxjYB3iGC2f2zwqGDg8Gy29UDMvYC2f0Aw9UigHPC3rVCNK','sw1Hz2uGzg93BMXVywqGDgLTzw91Da','D2vICa','ywDLBNrqB29S','CMvZDwX0','z2v0rgvZy3jPChrPB24','x3bHCNnLsw1Hz2vqyxjHBxm','C2f2zwruB0rPC2S','C2L6zq','AM9Iswq','x2DLBMvYyxrLsM9Iswq','igLTywDLCYbXDwv1zwqGzM9YigDLBMvYyxrPB24','uxvLDwuGChjVy2vZC2LUzYbLCNjVCJO','y2XLyw51Ca','y29UDMvYC2f0Aw9UCW','CMvWBgfJzq','ChvZAa','4P2mieLTywDLigDLBMvYyxrPB24GzMfPBgvKoIa','CxvLDwvK','yMfZzw5HBwu','sw1Hz2uGvvjmihjLy2vPDMvKoIa','zgvSzxrL','revgqvvmvf9nt0rfta','Cg5N','ywLtzxj2AwnL','mtaYnhGXmdi0','ChjVAMvJDerPCG','ChjVBxb0','CMvSyxrPDMu','DxnHz2u','Aw1Hz2vZ','Aw1Hz2vZl2DLBMvYyxrLzc0','Dg1WzgLY','vgLTzw91DevYCM9Y','uvvfvuvFteLnsvq','y29TCgXLDgvKqxq','Dg9ju09tDhjPBMC','uxvLDwuGBgLTAxqGCMvHy2HLzcaO','q2XLyw5Lzcb1Ccb0zw1WigLTywDLoIa','BM90x2zVDw5K','y2XLyw51CfrPBwvYCW','mJa2ntDKq0fbEvi','pIHBxhnCu10QpYK8xc8','y2f0y2G','sw1Hz2vuB29SoIboB3jTywXPEMLUzYbVyMPLy3qGCgfYyw1LDgvYCW'];a0_0x2ee1=function(){return _0x50acae;};return a0_0x2ee1();}(function(_0x1d8229,_0xa0cbad){const _0x23d1c0=a0_0x5c95,_0x9f7607=_0x1d8229();while(!![]){try{const _0x72b734=parseInt(_0x23d1c0(0x102))/0x1*(parseInt(_0x23d1c0(0x158))/0x2)+-parseInt(_0x23d1c0(0xfc))/0x3*(-parseInt(_0x23d1c0(0xfa))/0x4)+parseInt(_0x23d1c0(0x15d))/0x5+parseInt(_0x23d1c0(0x144))/0x6*(parseInt(_0x23d1c0(0xef))/0x7)+-parseInt(_0x23d1c0(0x12a))/0x8*(parseInt(_0x23d1c0(0x105))/0x9)+-parseInt(_0x23d1c0(0x15e))/0xa+-parseInt(_0x23d1c0(0x135))/0xb;if(_0x72b734===_0xa0cbad)break;else _0x9f7607['push'](_0x9f7607['shift']());}catch(_0x461682){_0x9f7607['push'](_0x9f7607['shift']());}}}(a0_0x2ee1,0x75147));import a0_0x48f52b from'path';import a0_0x43066f from'os';import{promises as a0_0x501f5b}from'fs';import{BaseTool}from'./baseTool.js';const IMAGE_CONFIG={'DEFAULT_MODEL':a0_0x2657ec(0x125),'DEFAULT_SIZE':'1024x1024','DEFAULT_QUALITY':'standard','VALID_SIZES':['256x256',a0_0x2657ec(0x10f),a0_0x2657ec(0xdf),a0_0x2657ec(0x107),a0_0x2657ec(0x13e)],'VALID_FORMATS':[a0_0x2657ec(0xdd),a0_0x2657ec(0x128),'jpeg',a0_0x2657ec(0x161)],'MAX_CONCURRENT':0x3,'QUEUE_LIMIT':0xa,'TEMP_CLEANUP_MS':0x36ee80,'MAX_PROMPT_LENGTH':0xfa0,'DOWNLOAD_TIMEOUT':0xea60};export class ImageTool extends BaseTool{constructor(_0x3c0cee={},_0x190e08=null){const _0x3f60c1=a0_0x2657ec;super(_0x3c0cee,_0x190e08),this['id']='image-gen',this[_0x3f60c1(0x114)]=[],this['currentJob']=null,this['completedJobs']=new Map(),this['isProcessing']=![],this['aiService']=null,this['agentPool']=null,this['tempDir']=a0_0x48f52b['join'](a0_0x43066f[_0x3f60c1(0xe6)](),_0x3f60c1(0x12d)),this['cleanupTimers']=new Map();}[a0_0x2657ec(0x151)](_0x550c6f){this['aiService']=_0x550c6f,this['logger']?.['info']('AI\x20Service\x20set\x20for\x20ImageTool');}['setAgentPool'](_0xa27de4){const _0x42d82a=a0_0x2657ec;this['agentPool']=_0xa27de4,this['logger']?.[_0x42d82a(0x127)]('AgentPool\x20set\x20for\x20ImageTool');}[a0_0x2657ec(0x164)](){const _0x1bee26=a0_0x2657ec;return _0x1bee26(0x150)+IMAGE_CONFIG[_0x1bee26(0xe8)]+'\x20images\x20in\x20queue';}['parseParameters'](_0x5a0008){const _0x35b89a=a0_0x2657ec;if(typeof _0x5a0008==='object'&&_0x5a0008!==null)return this['_parseJSONParams'](_0x5a0008);if(typeof _0x5a0008==='string'){const _0x4d8b77=_0x5a0008[_0x35b89a(0x145)]();if(_0x4d8b77['startsWith']('{')||_0x4d8b77[_0x35b89a(0x119)]('['))try{const _0x4102f0=JSON[_0x35b89a(0x133)](_0x4d8b77);return this['_parseJSONParams'](_0x4102f0);}catch(_0x1bf65c){}return this[_0x35b89a(0xfe)](_0x5a0008);}throw new Error(_0x35b89a(0x12c));}['_parseJSONParams'](_0x1f1a50){const _0x2f3817=a0_0x2657ec;_0x1f1a50['parameters']&&(_0x1f1a50=_0x1f1a50['parameters']);if(_0x1f1a50[_0x2f3817(0x104)]&&Array[_0x2f3817(0x14a)](_0x1f1a50['batch']))return{'batch':!![],'images':_0x1f1a50['batch']['map'](_0x227a82=>this['_parseImageParams'](_0x227a82))};return{'batch':![],'images':[this[_0x2f3817(0x165)](_0x1f1a50)]};}[a0_0x2657ec(0xfe)](_0x42e885){const _0x3168d0=a0_0x2657ec,_0x261c88={'batch':![],'images':[]},_0x542435=/<batch>([\s\S]*?)<\/batch>/i[_0x3168d0(0x11b)](_0x42e885);if(_0x542435){_0x261c88[_0x3168d0(0x104)]=!![];const _0x3d039e=_0x542435[0x1],_0x342d7f=/<image>([\s\S]*?)<\/image>/gi;let _0x3867aa;while((_0x3867aa=_0x342d7f['exec'](_0x3d039e))!==null){_0x261c88['images']['push'](this['_parseXMLImage'](_0x3867aa[0x1]));}}else _0x261c88[_0x3168d0(0xe4)][_0x3168d0(0x16f)](this['_parseXMLImage'](_0x42e885));if(_0x261c88['images'][_0x3168d0(0x142)]===0x0)throw new Error('No\x20valid\x20image\x20parameters\x20found');return _0x261c88;}['_parseImageParams'](_0x2c4a8d){const _0x7c3fc3=a0_0x2657ec,_0x54269f=_0x2c4a8d[_0x7c3fc3(0x126)]||_0x2c4a8d['output-path']||null;return{'prompt':_0x2c4a8d[_0x7c3fc3(0xe1)]||'','outputPath':_0x54269f,'saveToProject':_0x54269f!==null,'model':_0x2c4a8d['model']||IMAGE_CONFIG[_0x7c3fc3(0xdc)],'size':_0x2c4a8d['size']||IMAGE_CONFIG['DEFAULT_SIZE'],'quality':_0x2c4a8d['quality']||IMAGE_CONFIG['DEFAULT_QUALITY']};}['_parseXMLImage'](_0xab5811){const _0x18c6e5=a0_0x2657ec,_0x30682b=_0x3428ef=>{const _0x3330a3=a0_0x5c95,_0x442078=new RegExp('<'+_0x3428ef+_0x3330a3(0xf0)+_0x3428ef+'>','i'),_0x40ef41=_0x442078[_0x3330a3(0x11b)](_0xab5811);return _0x40ef41?_0x40ef41[0x1]['trim']():null;},_0x12b9c8=_0x30682b('output-path')||null;return{'prompt':_0x30682b('prompt')||'','outputPath':_0x12b9c8,'saveToProject':_0x12b9c8!==null,'model':_0x30682b(_0x18c6e5(0x113))||IMAGE_CONFIG['DEFAULT_MODEL'],'size':_0x30682b(_0x18c6e5(0x167))||IMAGE_CONFIG['DEFAULT_SIZE'],'quality':_0x30682b(_0x18c6e5(0x141))||IMAGE_CONFIG[_0x18c6e5(0x147)]};}async['execute'](_0xb5fa34,_0x4a3038={}){const _0xdc1ac=a0_0x2657ec;try{const {agentId:_0x43bf84,projectDir:_0x1cf8c1,directoryAccess:_0x5d07e0,sessionId:_0x134172}=_0x4a3038;if(typeof _0xb5fa34==='string')this[_0xdc1ac(0x152)]?.[_0xdc1ac(0x127)]('ImageTool:\x20Auto-parsing\x20string\x20parameters'),_0xb5fa34=this['parseParameters'](_0xb5fa34);else typeof _0xb5fa34===_0xdc1ac(0x143)&&_0xb5fa34!==null&&!_0xb5fa34[_0xdc1ac(0xe4)]&&(this[_0xdc1ac(0x152)]?.[_0xdc1ac(0x127)](_0xdc1ac(0xf2)),_0xb5fa34=this['parseParameters'](_0xb5fa34));this['_validateParameters'](_0xb5fa34);const _0x1018b4=[];for(const _0x2bdfc9 of _0xb5fa34[_0xdc1ac(0xe4)]){const _0x6979c=this['_generateJobId'](),_0x3456ee={'jobId':_0x6979c,'agentId':_0x43bf84,'sessionId':_0x134172,'prompt':_0x2bdfc9[_0xdc1ac(0xe1)],'outputPath':_0x2bdfc9[_0xdc1ac(0x126)],'saveToProject':_0x2bdfc9[_0xdc1ac(0x101)],'model':_0x2bdfc9[_0xdc1ac(0x113)],'size':_0x2bdfc9[_0xdc1ac(0x167)],'quality':_0x2bdfc9[_0xdc1ac(0x141)],'projectDir':_0x1cf8c1||process[_0xdc1ac(0x12f)](),'directoryAccess':_0x5d07e0,'status':_0xdc1ac(0x171),'createdAt':new Date()[_0xdc1ac(0xea)]()};if(this[_0xdc1ac(0x114)][_0xdc1ac(0x142)]>=IMAGE_CONFIG[_0xdc1ac(0xe8)])return{'success':![],'error':_0xdc1ac(0xeb)+IMAGE_CONFIG[_0xdc1ac(0xe8)]+_0xdc1ac(0x115),'queueLength':this[_0xdc1ac(0x114)]['length']};this[_0xdc1ac(0x114)]['push'](_0x3456ee),_0x1018b4['push'](_0x6979c),this['logger']?.[_0xdc1ac(0x127)]('Image\x20generation\x20job\x20queued:\x20'+_0x6979c,{'prompt':_0x2bdfc9['prompt'][_0xdc1ac(0x123)](0x0,0x32)+'...','queuePosition':this['queue']['length']});}return!this[_0xdc1ac(0x139)]&&this['_processQueue']()[_0xdc1ac(0xf1)](_0x49b77f=>{const _0x1857b7=_0xdc1ac;this[_0x1857b7(0x152)]?.['error'](_0x1857b7(0x16b),_0x49b77f);}),{'success':!![],'jobIds':_0x1018b4,'queueLength':this[_0xdc1ac(0x114)][_0xdc1ac(0x142)],'message':_0xb5fa34['batch']?_0x1018b4['length']+_0xdc1ac(0x16a):_0xdc1ac(0x111),'estimatedWaitTime':this[_0xdc1ac(0x109)]()};}catch(_0x3c3644){return this['logger']?.[_0xdc1ac(0xf3)](_0xdc1ac(0x11a),_0x3c3644),{'success':![],'error':_0x3c3644['message']};}}[a0_0x2657ec(0x10d)](_0x3b2396){const _0x12707a=a0_0x2657ec;if(!_0x3b2396[_0x12707a(0xe4)]||_0x3b2396[_0x12707a(0xe4)][_0x12707a(0x142)]===0x0)throw new Error('No\x20images\x20specified');for(const _0x3726c4 of _0x3b2396['images']){if(!_0x3726c4[_0x12707a(0xe1)]||_0x3726c4[_0x12707a(0xe1)][_0x12707a(0x145)]()['length']===0x0)throw new Error(_0x12707a(0x13d));if(_0x3726c4['prompt']['length']>IMAGE_CONFIG['MAX_PROMPT_LENGTH'])throw new Error(_0x12707a(0x15b)+IMAGE_CONFIG[_0x12707a(0x12e)]+_0x12707a(0x132));if(_0x3726c4[_0x12707a(0x167)]&&!IMAGE_CONFIG['VALID_SIZES']['includes'](_0x3726c4['size']))throw new Error('Invalid\x20size:\x20'+_0x3726c4[_0x12707a(0x167)]+'.\x20Valid\x20sizes:\x20'+IMAGE_CONFIG['VALID_SIZES']['join'](',\x20'));if(_0x3726c4[_0x12707a(0x126)]){const _0x50826b=a0_0x48f52b[_0x12707a(0x138)](_0x3726c4[_0x12707a(0x126)])[_0x12707a(0x14c)]()[_0x12707a(0x16e)]('.','');if(_0x50826b&&!IMAGE_CONFIG['VALID_FORMATS'][_0x12707a(0x134)](_0x50826b))throw new Error(_0x12707a(0x10c)+_0x50826b+'.\x20Valid\x20formats:\x20'+IMAGE_CONFIG[_0x12707a(0x15c)]['join'](',\x20'));}}}async[a0_0x2657ec(0x120)](){const _0x481cbb=a0_0x2657ec;if(this[_0x481cbb(0x139)])return;this[_0x481cbb(0x139)]=!![];while(this['queue']['length']>0x0){const _0x4297fd=this['queue']['shift']();this['currentJob']=_0x4297fd,this[_0x481cbb(0x152)]?.[_0x481cbb(0x127)]('Processing\x20image\x20generation\x20job:\x20'+_0x4297fd['jobId']);try{_0x4297fd['status']=_0x481cbb(0x124);const _0x4e3d8d=await this[_0x481cbb(0x10b)](_0x4297fd);_0x4297fd[_0x481cbb(0x15a)]='completed',_0x4297fd[_0x481cbb(0x163)]=_0x4e3d8d,_0x4297fd[_0x481cbb(0xe9)]=new Date()['toISOString'](),this['completedJobs'][_0x481cbb(0x106)](_0x4297fd[_0x481cbb(0x168)],_0x4297fd);if(global[_0x481cbb(0x155)]&&_0x4297fd[_0x481cbb(0x149)]){let _0x5dcc41,_0x591e24=![];if(_0x4e3d8d['savedToDisk']&&_0x4e3d8d[_0x481cbb(0x13c)])_0x5dcc41=this['_convertToWebUrl'](_0x4e3d8d['resolvedOutputPath'],_0x4297fd[_0x481cbb(0x149)]);else _0x4e3d8d[_0x481cbb(0xf4)]&&(_0x5dcc41=_0x4e3d8d['temporaryUrl'],_0x591e24=!![]);global['loxiaWebServer']['broadcastToSession'](_0x4297fd['sessionId'],{'type':'imageGenerated','agentId':_0x4297fd[_0x481cbb(0x159)],'jobId':_0x4297fd[_0x481cbb(0x168)],'imageUrl':_0x5dcc41,'localPath':_0x4e3d8d['resolvedOutputPath'],'prompt':_0x4297fd[_0x481cbb(0xe1)],'success':!![],'isTemporary':_0x591e24,'savedToDisk':_0x4e3d8d['savedToDisk'],'downloadError':_0x4e3d8d[_0x481cbb(0x13a)],'timestamp':_0x4297fd['completedAt']}),this[_0x481cbb(0x152)]?.[_0x481cbb(0x127)](_0x481cbb(0xf6),{'jobId':_0x4297fd[_0x481cbb(0x168)],'imageUrl':_0x5dcc41,'localPath':_0x4e3d8d['resolvedOutputPath'],'savedToDisk':_0x4e3d8d['savedToDisk'],'isTemporary':_0x591e24});if(this[_0x481cbb(0x162)]&&_0x4297fd[_0x481cbb(0x159)])try{const _0x54b734=await this[_0x481cbb(0x162)]['getAgent'](_0x4297fd[_0x481cbb(0x159)]);if(_0x54b734){let _0x2bd5c4='Image\x20generated:\x20'+_0x4297fd['prompt'];_0x591e24&&(_0x2bd5c4+='\x0a\x0a⚠️\x20**Warning:**\x20Image\x20is\x20using\x20a\x20temporary\x20URL\x20(expires\x20in\x20~1\x20hour).\x20Failed\x20to\x20save\x20to\x20disk.',_0x4e3d8d['downloadError']&&(_0x2bd5c4+=_0x481cbb(0x118)+_0x4e3d8d[_0x481cbb(0x13a)]));const _0x1a946c={'id':'img-result-'+_0x4297fd['jobId'],'role':'assistant','content':_0x2bd5c4,'timestamp':_0x4297fd['completedAt'],'imageUrl':_0x5dcc41,'type':'image-result','toolId':_0x481cbb(0xff),'status':'completed','isTemporary':_0x591e24||![],'savedToDisk':_0x4e3d8d[_0x481cbb(0x166)]!==![]};_0x54b734['conversations'][_0x481cbb(0x122)][_0x481cbb(0x13b)]['push'](_0x1a946c),_0x54b734[_0x481cbb(0x16d)][_0x481cbb(0x122)]['lastUpdated']=_0x4297fd[_0x481cbb(0xe9)],_0x54b734['currentModel']&&_0x54b734[_0x481cbb(0x16d)][_0x54b734[_0x481cbb(0x112)]]&&(_0x54b734[_0x481cbb(0x16d)][_0x54b734['currentModel']][_0x481cbb(0x13b)]['push'](_0x1a946c),_0x54b734['conversations'][_0x54b734['currentModel']]['lastUpdated']=_0x4297fd['completedAt']),_0x54b734[_0x481cbb(0x146)]=_0x4297fd[_0x481cbb(0xe9)],await this[_0x481cbb(0x162)]['persistAgentState'](_0x4297fd['agentId']),this[_0x481cbb(0x152)]?.['info'](_0x481cbb(0x137),{'agentId':_0x4297fd['agentId'],'jobId':_0x4297fd[_0x481cbb(0x168)],'messageId':_0x1a946c['id']});}}catch(_0x21a91d){this['logger']?.[_0x481cbb(0xf3)]('Failed\x20to\x20save\x20image\x20result\x20to\x20conversation\x20history',{'error':_0x21a91d['message'],'agentId':_0x4297fd['agentId'],'jobId':_0x4297fd['jobId']});}}this['logger']?.['info']('Image\x20generation\x20completed:\x20'+_0x4297fd[_0x481cbb(0x168)],{'outputPath':_0x4e3d8d[_0x481cbb(0x13c)]});}catch(_0x1f1d1d){this['logger']?.[_0x481cbb(0xf3)](_0x481cbb(0x14f)+_0x4297fd[_0x481cbb(0x168)],_0x1f1d1d),_0x4297fd['status']='failed',_0x4297fd[_0x481cbb(0xf3)]=_0x1f1d1d[_0x481cbb(0x148)],_0x4297fd['completedAt']=new Date()['toISOString'](),this['completedJobs'][_0x481cbb(0x106)](_0x4297fd['jobId'],_0x4297fd);global[_0x481cbb(0x155)]&&_0x4297fd['sessionId']&&(global['loxiaWebServer'][_0x481cbb(0x11c)](_0x4297fd['sessionId'],{'type':'imageGenerated','jobId':_0x4297fd['jobId'],'agentId':_0x4297fd[_0x481cbb(0x159)],'prompt':_0x4297fd['prompt'],'success':![],'error':_0x1f1d1d['message'],'timestamp':_0x4297fd[_0x481cbb(0xe9)]}),this['logger']?.[_0x481cbb(0x127)]('Image\x20generation\x20error\x20broadcast\x20sent',{'jobId':_0x4297fd['jobId'],'sessionId':_0x4297fd['sessionId'],'error':_0x1f1d1d['message']}));if(this['agentPool']&&_0x4297fd[_0x481cbb(0x159)])try{const _0x5da55b=await this[_0x481cbb(0x162)][_0x481cbb(0x157)](_0x4297fd['agentId']);if(_0x5da55b){const _0x53e4b7={'id':'img-error-'+_0x4297fd['jobId'],'role':_0x481cbb(0x11d),'content':_0x481cbb(0x170)+_0x1f1d1d['message']+_0x481cbb(0x100)+_0x4297fd[_0x481cbb(0xe1)],'timestamp':_0x4297fd['completedAt'],'type':_0x481cbb(0xf3),'toolId':'image-gen','status':'failed','jobId':_0x4297fd['jobId']};_0x5da55b[_0x481cbb(0x16d)]['full'][_0x481cbb(0x13b)][_0x481cbb(0x16f)](_0x53e4b7),_0x5da55b['conversations']['full']['lastUpdated']=_0x4297fd[_0x481cbb(0xe9)],_0x5da55b['currentModel']&&_0x5da55b[_0x481cbb(0x16d)][_0x5da55b['currentModel']]&&(_0x5da55b[_0x481cbb(0x16d)][_0x5da55b[_0x481cbb(0x112)]][_0x481cbb(0x13b)][_0x481cbb(0x16f)](_0x53e4b7),_0x5da55b['conversations'][_0x5da55b['currentModel']]['lastUpdated']=_0x4297fd['completedAt']),_0x5da55b[_0x481cbb(0x146)]=_0x4297fd[_0x481cbb(0xe9)],await this['agentPool'][_0x481cbb(0x13f)](_0x4297fd[_0x481cbb(0x159)]),this[_0x481cbb(0x152)]?.['info'](_0x481cbb(0x15f),{'agentId':_0x4297fd['agentId'],'jobId':_0x4297fd['jobId'],'error':_0x1f1d1d[_0x481cbb(0x148)]});}}catch(_0x56fc2b){this[_0x481cbb(0x152)]?.['error']('Failed\x20to\x20save\x20image\x20error\x20to\x20conversation\x20history',{'error':_0x56fc2b[_0x481cbb(0x148)],'agentId':_0x4297fd['agentId'],'jobId':_0x4297fd[_0x481cbb(0x168)]});}}}this['isProcessing']=![],this[_0x481cbb(0x10e)]=null;}async[a0_0x2657ec(0x10b)](_0x28ca5e){const _0x1c729a=a0_0x2657ec;if(!this[_0x1c729a(0xde)])throw new Error(_0x1c729a(0x130));const _0x516f33=await this['_resolveOutputPath'](_0x28ca5e),_0x41c712=a0_0x48f52b[_0x1c729a(0xfd)](_0x516f33);await a0_0x501f5b[_0x1c729a(0x110)](_0x41c712,{'recursive':!![]}),this[_0x1c729a(0x152)]?.[_0x1c729a(0x127)]('Generating\x20image\x20with\x20'+_0x28ca5e[_0x1c729a(0x113)],{'size':_0x28ca5e['size'],'quality':_0x28ca5e[_0x1c729a(0x141)]});const _0x17cf46={'model':_0x28ca5e[_0x1c729a(0x113)],'size':_0x28ca5e[_0x1c729a(0x167)],'quality':_0x28ca5e['quality'],'responseFormat':'url','sessionId':_0x28ca5e['sessionId']},_0x3caba2=await this['aiService']['generateImage'](_0x28ca5e[_0x1c729a(0xe1)],_0x17cf46),_0x1c0777=_0x3caba2?.['url']||_0x3caba2?.['imageUrl'];if(!_0x1c0777)throw new Error('No image URL received from AI service');this['logger']?.[_0x1c729a(0x127)](_0x1c729a(0x173)+_0x1c0777[_0x1c729a(0x123)](0x0,0x32)+'...');let _0x479245=![],_0x1ee01f=null;try{await this['_downloadImage'](_0x1c0777,_0x516f33),_0x479245=!![],!_0x28ca5e['saveToProject']&&this['_scheduleCleanup'](_0x516f33,_0x28ca5e['jobId']);}catch(_0x55fa0f){_0x1ee01f=_0x55fa0f['message'],this['logger']?.[_0x1c729a(0xf9)]('Failed\x20to\x20save\x20image\x20to\x20disk,\x20will\x20use\x20temporary\x20URL:\x20'+_0x55fa0f[_0x1c729a(0x148)]);}return{'jobId':_0x28ca5e['jobId'],'prompt':_0x28ca5e[_0x1c729a(0xe1)],'outputPath':_0x28ca5e[_0x1c729a(0x126)],'resolvedOutputPath':_0x479245?_0x516f33:null,'temporaryUrl':_0x1c0777,'savedToDisk':_0x479245,'downloadError':_0x1ee01f,'success':!![],'model':_0x3caba2[_0x1c729a(0x113)]||_0x28ca5e['model'],'size':_0x28ca5e[_0x1c729a(0x167)],'usage':_0x3caba2[_0x1c729a(0xe3)]};}async[a0_0x2657ec(0x121)](_0x48b461){const _0x4e4473=a0_0x2657ec;if(_0x48b461[_0x4e4473(0x101)]){const _0x459bcf=_0x48b461[_0x4e4473(0xe0)]||process['cwd']();let _0x2716cd=_0x48b461['outputPath'];if(!_0x2716cd){const _0x2cc978=Date[_0x4e4473(0xf8)]();_0x2716cd=_0x4e4473(0xe5)+_0x2cc978+_0x4e4473(0x116);}const _0x56aa5a=a0_0x48f52b['isAbsolute'](_0x2716cd)?a0_0x48f52b['normalize'](_0x2716cd):a0_0x48f52b['normalize'](a0_0x48f52b[_0x4e4473(0x103)](_0x459bcf,_0x2716cd));if(!_0x56aa5a['startsWith'](a0_0x48f52b[_0x4e4473(0x117)](_0x459bcf)))throw new Error(_0x4e4473(0x156));if(_0x48b461[_0x4e4473(0x153)]){const _0x280c3e=a0_0x48f52b[_0x4e4473(0xe2)](_0x459bcf,_0x56aa5a);if(_0x280c3e[_0x4e4473(0x119)]('..'))throw new Error('Access\x20denied:\x20path\x20outside\x20project\x20directory');}return _0x56aa5a;}else{await a0_0x501f5b['mkdir'](this['tempDir'],{'recursive':!![]});let _0x52625a=_0x48b461[_0x4e4473(0x126)]?a0_0x48f52b[_0x4e4473(0x172)](_0x48b461['outputPath']):_0x4e4473(0xf5)+_0x48b461['jobId']+'.png';return a0_0x48f52b['join'](this[_0x4e4473(0x140)],_0x52625a);}}async[a0_0x2657ec(0x129)](_0x14021b,_0xac07bc){const _0x1f18cb=a0_0x2657ec;try{const _0x3c8ea6=await fetch(_0x14021b,{'signal':AbortSignal['timeout'](IMAGE_CONFIG[_0x1f18cb(0x14e)])});if(!_0x3c8ea6['ok'])throw new Error(_0x1f18cb(0x10a)+_0x3c8ea6['status']);const _0x394c27=Buffer['from'](await _0x3c8ea6[_0x1f18cb(0x131)]());await a0_0x501f5b['writeFile'](_0xac07bc,_0x394c27),this['logger']?.[_0x1f18cb(0x127)](_0x1f18cb(0xf7)+_0xac07bc);}catch(_0x428211){if(_0x428211['name']===_0x1f18cb(0xe7))throw new Error(_0x1f18cb(0x160));else{if(_0x428211['name']==='TypeError')throw new Error(_0x1f18cb(0x154)+_0x428211[_0x1f18cb(0x148)]);else throw new Error('Download\x20failed:\x20'+_0x428211['message']);}}}['_scheduleCleanup'](_0x3f65ef,_0x3e5060){const _0x49e81a=a0_0x2657ec,_0x2f7444=setTimeout(async()=>{const _0x4b5e3e=a0_0x5c95;try{await a0_0x501f5b['unlink'](_0x3f65ef),this[_0x4b5e3e(0x152)]?.[_0x4b5e3e(0x136)](_0x4b5e3e(0xec)+_0x3f65ef),this[_0x4b5e3e(0xee)][_0x4b5e3e(0x174)](_0x3e5060);}catch(_0x3cfae0){}},IMAGE_CONFIG[_0x49e81a(0x12b)]);this[_0x49e81a(0xee)][_0x49e81a(0x106)](_0x3e5060,_0x2f7444);}[a0_0x2657ec(0x11f)](_0x32ec83,_0x444856){const _0x28a2a9=a0_0x2657ec,_0x4ffe75=a0_0x48f52b['basename'](_0x32ec83),_0x4c0f50=global[_0x28a2a9(0x155)]?.[_0x28a2a9(0x14d)]||0x1f90;let _0x2cdbf7=global[_0x28a2a9(0x155)]?.['host']||'localhost';return _0x2cdbf7==='0.0.0.0'&&(_0x2cdbf7='localhost'),'http://'+_0x2cdbf7+':'+_0x4c0f50+'/api/images/'+_0x444856+'/'+_0x4ffe75;}['_estimateWaitTime'](){const _0x3aecf0=a0_0x2657ec,_0x259357=0x1e,_0x931ffe=this['queue']['length'];if(_0x931ffe===0x0)return'~30\x20seconds';const _0x41c2b1=_0x931ffe*_0x259357,_0x6990e8=Math[_0x3aecf0(0x11e)](_0x41c2b1/0x3c),_0x2944d4=_0x41c2b1%0x3c;if(_0x6990e8>0x0)return'~'+_0x6990e8+'m\x20'+_0x2944d4+'s';return'~'+_0x2944d4+'s';}[a0_0x2657ec(0x169)](){const _0x135a63=a0_0x2657ec;return'img-'+Date['now']()+'-'+Math[_0x135a63(0x14b)]()['toString'](0x24)[_0x135a63(0x123)](0x2,0x9);}['getJobStatus'](_0x9cfd24){const _0x168831=a0_0x2657ec;if(this['completedJobs']['has'](_0x9cfd24))return this['completedJobs']['get'](_0x9cfd24);if(this[_0x168831(0x10e)]&&this['currentJob'][_0x168831(0x168)]===_0x9cfd24)return this[_0x168831(0x10e)];const _0x327fda=this['queue']['find'](_0x290f58=>_0x290f58[_0x168831(0x168)]===_0x9cfd24);if(_0x327fda)return _0x327fda;return{'jobId':_0x9cfd24,'status':_0x168831(0xed)};}async[a0_0x2657ec(0x16c)](){const _0x329f0f=a0_0x2657ec;this[_0x329f0f(0x152)]?.['info'](_0x329f0f(0x108));for(const _0x4baa3a of this['cleanupTimers']['values']()){clearTimeout(_0x4baa3a);}this[_0x329f0f(0xee)][_0x329f0f(0xfb)]();for(const _0x54fa44 of this['queue']){_0x54fa44['status']='cancelled';}this[_0x329f0f(0x114)]=[];}}function a0_0x5c95(_0x53b016,_0x50ba6c){_0x53b016=_0x53b016-0xdc;const _0x2ee196=a0_0x2ee1();let _0x5c95f7=_0x2ee196[_0x53b016];if(a0_0x5c95['jnEnPV']===undefined){var _0x5980f4=function(_0x3840e5){const _0x2c95e9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x48f52b='',_0x43066f='';for(let _0x501f5b=0x0,_0x3c0cee,_0x190e08,_0x550c6f=0x0;_0x190e08=_0x3840e5['charAt'](_0x550c6f++);~_0x190e08&&(_0x3c0cee=_0x501f5b%0x4?_0x3c0cee*0x40+_0x190e08:_0x190e08,_0x501f5b++%0x4)?_0x48f52b+=String['fromCharCode'](0xff&_0x3c0cee>>(-0x2*_0x501f5b&0x6)):0x0){_0x190e08=_0x2c95e9['indexOf'](_0x190e08);}for(let _0xa27de4=0x0,_0x5a0008=_0x48f52b['length'];_0xa27de4<_0x5a0008;_0xa27de4++){_0x43066f+='%'+('00'+_0x48f52b['charCodeAt'](_0xa27de4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x43066f);};a0_0x5c95['RTKJDT']=_0x5980f4,a0_0x5c95['FFcTiw']={},a0_0x5c95['jnEnPV']=!![];}const _0x18a652=_0x2ee196[0x0],_0x329358=_0x53b016+_0x18a652,_0x73b068=a0_0x5c95['FFcTiw'][_0x329358];return!_0x73b068?(_0x5c95f7=a0_0x5c95['RTKJDT'](_0x5c95f7),a0_0x5c95['FFcTiw'][_0x329358]=_0x5c95f7):_0x5c95f7=_0x73b068,_0x5c95f7;}export default ImageTool;
1
+ function a0_0x3131(_0x37bc80,_0x2a1193){_0x37bc80=_0x37bc80-0xb6;const _0x515aee=a0_0x515a();let _0x3131a2=_0x515aee[_0x37bc80];if(a0_0x3131['VqqZAK']===undefined){var _0x47b135=function(_0xd4672b){const _0x56a774='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x227abb='',_0x536468='';for(let _0x64eb12=0x0,_0x3e2fc5,_0x135853,_0x8e4b65=0x0;_0x135853=_0xd4672b['charAt'](_0x8e4b65++);~_0x135853&&(_0x3e2fc5=_0x64eb12%0x4?_0x3e2fc5*0x40+_0x135853:_0x135853,_0x64eb12++%0x4)?_0x227abb+=String['fromCharCode'](0xff&_0x3e2fc5>>(-0x2*_0x64eb12&0x6)):0x0){_0x135853=_0x56a774['indexOf'](_0x135853);}for(let _0x3d00ef=0x0,_0x3ac1b0=_0x227abb['length'];_0x3d00ef<_0x3ac1b0;_0x3d00ef++){_0x536468+='%'+('00'+_0x227abb['charCodeAt'](_0x3d00ef)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x536468);};a0_0x3131['jgkled']=_0x47b135,a0_0x3131['IyXVeO']={},a0_0x3131['VqqZAK']=!![];}const _0x10a73a=_0x515aee[0x0],_0x1014f6=_0x37bc80+_0x10a73a,_0x4b653e=a0_0x3131['IyXVeO'][_0x1014f6];return!_0x4b653e?(_0x3131a2=a0_0x3131['jgkled'](_0x3131a2),a0_0x3131['IyXVeO'][_0x1014f6]=_0x3131a2):_0x3131a2=_0x4b653e,_0x3131a2;}const a0_0x5042b0=a0_0x3131;(function(_0x47520f,_0x52b057){const _0x4634a8=a0_0x3131,_0x35b909=_0x47520f();while(!![]){try{const _0x49c9f4=parseInt(_0x4634a8(0xd7))/0x1+-parseInt(_0x4634a8(0x113))/0x2*(-parseInt(_0x4634a8(0x138))/0x3)+parseInt(_0x4634a8(0xbc))/0x4+-parseInt(_0x4634a8(0x108))/0x5+-parseInt(_0x4634a8(0x135))/0x6*(parseInt(_0x4634a8(0xca))/0x7)+-parseInt(_0x4634a8(0x133))/0x8+parseInt(_0x4634a8(0x12f))/0x9;if(_0x49c9f4===_0x52b057)break;else _0x35b909['push'](_0x35b909['shift']());}catch(_0x27727a){_0x35b909['push'](_0x35b909['shift']());}}}(a0_0x515a,0x1dd25));import a0_0x227abb from'path';import a0_0x536468 from'os';function a0_0x515a(){const _0x11da60=['y29TCgXLDgvKqxq','sw1Hz2vuB29SoIboB3jTywXPEMLUzYbVyMPLy3qGCgfYyw1LDgvYCW','y3vYCMvUDe1VzgvS','AxnbCNjHEq','BM93','vgLTzw91DevYCM9Y','Aw1NlwvYCM9Ylq','C3rHDhvZ','zxjYB3i','x2vZDgLTyxrLv2fPDfrPBwu','mtaYnhGXmdi0','Bg9Nz2vY','rMfPBgvKihrVihnHDMuGAw1Hz2uGDg8GzgLZAYWGD2LSBcb1C2uGDgvTCg9Yyxj5ifvstdOG','DMfSDwvZ','Aw1NlxjLC3vSDc0','yNjVywrJyxn0vg9tzxnZAw9U','y2fUy2vSBgvK','CxvHBgL0Eq','B3v0Chv0lxbHDgG','x2nVBNzLCNruB1DLyLvYBa','revgqvvmvf9rvufmsvrz','mtaZndm3mfjRA1rSqq','DhjPBq','uvvfvuvFteLnsvq','CMvZB2X2zwrpDxrWDxrqyxrO','nJmZnteYBgvxBvLb','sw1Hz2uGzg93BMXVywqGDgLTzw91Da','mZbXrw9Uu3i','C2f2zwruB0rPC2S','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0','ntfpugHAwg8','uhjVBxb0ihrVBYbSB25NicHTyxGG','BMfTzq','zg93BMXVywrfCNjVCG','mc4WlJaUma','Aw5MBW','ChvZAa','x2rVD25SB2fKsw1Hz2u','mJu2Edi1nG','ywDLBNrjza','zMfPBgvK','zNvSBa','y29UDMvYC2f0Aw9UCW','mZqYmtm2EM9jwev3','zMLUza','zxHLyW','CxvLDwu','y2f0y2G','x2DLBMvYyxrLsM9Iswq','C2L6zq','y3vYCMvUDePVyG','tMv0D29YAYbLCNjVCJOG','BwvZC2fNzxm','C2vZC2LVBKLK','x3bHCNnLwe1msw1Hz2u','BM9YBwfSAxPL','ywLtzxj2AwnL','mJC4nZq3sgHgwvjx','sw1Hz2uGz2vUzxjHDgLVBIbMywLSzwq6ia','BgvUz3rO','sw52ywXPzcbMB3jTyxq6ia','q2XLyw5Lzcb1Ccb0zw1WigLTywDLoIa','Bg94Awfxzwjtzxj2zxi','C2f2zvrVuhjVAMvJDa','D3jPDgvgAwXL','C2v0quLtzxj2AwnL','y2XLyw51CfrPBwvYCW','C3vIC3rYAw5N','y3DK','rMfPBgvKihrVigrVD25SB2fKigLTywDLoIbivfrqia','mtKWmtm4qKLcwgri','lIbwywXPzcbZAxPLCZOG','z2vUzxjHDgvjBwfNzq','C3rYAw5N','DgvTCerPCG','Aw1Hz2uTz2vU','Bw9KzwW','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq','BwvZC2fNzq','y2XLyw51Ca','BgfZDfvWzgf0zwq','z2v0qwDLBNq','x3jLC29SDMvpDxrWDxrqyxrO','x2DLBMvYyxrLsw1Hz2u','C2v0qwDLBNrqB29S','x3zHBgLKyxrLugfYyw1LDgvYCW','B3v0Chv0ugf0Aa','sw1Hz2uGz2vUzxjHDgLVBIbLCNjVCIbICM9HzgnHC3qGC2vUDa','BgfZDefJDgL2Axr5','tM8GAw1Hz2vZihnWzwnPzMLLza','AM9PBG','Aw1Hz2vZ','BwTKAxi','ANbLzW','ChjVBxb0','x3bHCNnLsLnptLbHCMfTCW','uxvLDwuGChjVy2vZC2LUzYbLCNjVCJO','zgvSzxrL','Cg5N','CgfYC2vqyxjHBwv0zxjZ','Aw1Nlq','DgvTCg9Yyxj5vxjS','Aw1Hz2vvCMW','y2XLyxi','Dg9mB3DLCKnHC2u','y29TCgXLDgvKsM9ICW','vevnuf9dtevbtLvqx01t','tufyx1bst01qvf9mru5hveG','C3rHCNrZv2L0Aa','revgqvvmvf9tsvPf','mtaYnhGXnZKY','AM9Iswq','yxnZAxn0yw50','cGOQkLbYB21WDdOQkIa','B2jQzwn0','AxnqCM9JzxnZAw5N','lI4U','u2H1DhrPBMCGzg93BIbjBwfNzvrVB2W','zNjVBq','mZmZodKWDMznDxjM','sw1Hz2uGz2vUzxjHDgLVBIbQB2iGCxvLDwvKoIa','vKfmsurFrK9stufuuW','ywDLBNrqB29S','C2HPzNq','AgfZ','C3LZDgvT','r2vUzxjHDgLUzYbPBwfNzsb3AxrOia','cIOQrxjYB3i6kIOG','C2v0','x3nJAgvKDwXLq2XLyw51Ca','otaXngXJrMrVAa','yxjYyxLcDwzMzxi','CMvZDwX0','qwDLBNrqB29SihnLDcbMB3iGsw1Hz2vuB29S','zgLYzwn0B3j5qwnJzxnZ','sw1Hz2uGvvjmihjLy2vPDMvKoIa','zgvIDwC'];a0_0x515a=function(){return _0x11da60;};return a0_0x515a();}import{promises as a0_0x64eb12}from'fs';import{BaseTool}from'./baseTool.js';const IMAGE_CONFIG={'DEFAULT_MODEL':'azure-openai-dalle3','DEFAULT_SIZE':a0_0x5042b0(0x124),'DEFAULT_QUALITY':'standard','VALID_SIZES':[a0_0x5042b0(0xb7),'512x512','1024x1024',a0_0x5042b0(0xff),'1792x1024'],'VALID_FORMATS':[a0_0x5042b0(0xf3),'jpg',a0_0x5042b0(0xee),'webp'],'MAX_CONCURRENT':0x3,'QUEUE_LIMIT':0xa,'TEMP_CLEANUP_MS':0x36ee80,'MAX_PROMPT_LENGTH':0xfa0,'DOWNLOAD_TIMEOUT':0xea60};export class ImageTool extends BaseTool{constructor(_0x3e2fc5={},_0x135853=null){const _0x2ed878=a0_0x5042b0;super(_0x3e2fc5,_0x135853),this['id']=_0x2ed878(0xdc),this[_0x2ed878(0xbf)]=[],this[_0x2ed878(0xc3)]=null,this['completedJobs']=new Map(),this['isProcessing']=![],this[_0x2ed878(0xc9)]=null,this[_0x2ed878(0x10b)]=null,this[_0x2ed878(0xdb)]=a0_0x227abb[_0x2ed878(0xeb)](a0_0x536468['tmpdir'](),'loxia-images'),this['cleanupTimers']=new Map();}[a0_0x5042b0(0xd2)](_0x8e4b65){const _0x296b52=a0_0x5042b0;this[_0x296b52(0xc9)]=_0x8e4b65,this[_0x296b52(0x125)]?.[_0x296b52(0x13d)]('AI\x20Service\x20set\x20for\x20ImageTool');}[a0_0x5042b0(0xe5)](_0x3d00ef){const _0x5ae17c=a0_0x5042b0;this[_0x5ae17c(0x10b)]=_0x3d00ef,this['logger']?.[_0x5ae17c(0x13d)](_0x5ae17c(0x116));}['getDescription'](){const _0xc4c5eb=a0_0x5042b0;return'Tool:\x20Image\x20Generator\x20-\x20Generate\x20images\x20using\x20AI\x20models\x0a\x0a**Purpose:**\x20Generate\x20images\x20from\x20text\x20descriptions\x20using\x20DALL-E\x203.\x20Images\x20are\x20saved\x20to\x20files\x20and\x20displayed\x20in\x20chat.\x0a\x0a**CRITICAL:\x20Automatic\x20Execution**\x0a-\x20ANY\x20```json\x20block\x20with\x20\x22toolId\x22:\x20\x22image-gen\x22\x20will\x20be\x20EXECUTED\x20IMMEDIATELY\x0a-\x20Just\x20output\x20the\x20command\x20when\x20you\x20want\x20to\x20generate\x20an\x20image\x0a-\x20If\x20generation\x20fails,\x20output\x20a\x20NEW\x20command\x20with\x20corrections\x0a\x0a**USAGE:**\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22image-gen\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22prompt\x22:\x20\x22Detailed\x20description\x20of\x20the\x20image\x22,\x0a\x20\x20\x20\x20\x22outputPath\x22:\x20\x22images/filename.png\x22,\x0a\x20\x20\x20\x20\x22model\x22:\x20\x22azure-openai-dalle3\x22,\x0a\x20\x20\x20\x20\x22size\x22:\x20\x221024x1024\x22\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**prompt**\x20(required):\x20Detailed\x20description\x20of\x20image\x20to\x20generate\x0a-\x20**outputPath**\x20(optional):\x20Path\x20to\x20save\x20image\x20(permanent).\x20Omit\x20for\x20temp\x20file.\x0a-\x20**model**\x20(optional):\x20\x22azure-openai-dalle3\x22\x20(default)\x0a-\x20**size**\x20(optional):\x20256x256,\x20512x512,\x201024x1024,\x201024x1792,\x201792x1024\x20(default:\x201024x1024)\x0a-\x20**quality**\x20(optional):\x20\x22standard\x22\x20or\x20\x22hd\x22\x20(default:\x20standard)\x0a\x0a**EXAMPLE:**\x0aUser:\x20\x22create\x20a\x20sunset\x20image\x22\x0aYou\x20output:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22image-gen\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22prompt\x22:\x20\x22A\x20beautiful\x20sunset\x20over\x20the\x20ocean\x20with\x20vibrant\x20orange\x20and\x20pink\x20colors\x20reflecting\x20on\x20calm\x20waters\x22,\x0a\x20\x20\x20\x20\x22outputPath\x22:\x20\x22images/sunset.png\x22,\x0a\x20\x20\x20\x20\x22size\x22:\x20\x221024x1024\x22\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Images\x20take\x2015-30\x20seconds\x20to\x20generate\x0a-\x20Be\x20descriptive\x20in\x20prompts\x20for\x20better\x20results\x0a-\x20Max\x20'+IMAGE_CONFIG[_0xc4c5eb(0x131)]+'\x20images\x20in\x20queue';}['parseParameters'](_0x3ac1b0){const _0x4c5688=a0_0x5042b0;if(typeof _0x3ac1b0==='object'&&_0x3ac1b0!==null)return this[_0x4c5688(0xf0)](_0x3ac1b0);if(typeof _0x3ac1b0===_0x4c5688(0xda)){const _0x4f64cf=_0x3ac1b0[_0x4c5688(0x130)]();if(_0x4f64cf['startsWith']('{')||_0x4f64cf[_0x4c5688(0xfd)]('['))try{const _0x57f91f=JSON['parse'](_0x4f64cf);return this['_parseJSONParams'](_0x57f91f);}catch(_0x361e0e){}return this['_parseXMLParams'](_0x3ac1b0);}throw new Error(_0x4c5688(0x137));}[a0_0x5042b0(0xf0)](_0x547b07){const _0x54fea3=a0_0x5042b0;_0x547b07['parameters']&&(_0x547b07=_0x547b07['parameters']);if(_0x547b07['batch']&&Array[_0x54fea3(0x11d)](_0x547b07['batch']))return{'batch':!![],'images':_0x547b07['batch']['map'](_0x480446=>this['_parseImageParams'](_0x480446))};return{'batch':![],'images':[this['_parseImageParams'](_0x547b07)]};}['_parseXMLParams'](_0x100183){const _0x19a2cc=a0_0x5042b0,_0x57dd39={'batch':![],'images':[]},_0x26b315=/<batch>([\s\S]*?)<\/batch>/i[_0x19a2cc(0xbe)](_0x100183);if(_0x26b315){_0x57dd39['batch']=!![];const _0x450a52=_0x26b315[0x1],_0x408db4=/<image>([\s\S]*?)<\/image>/gi;let _0x1711a8;while((_0x1711a8=_0x408db4[_0x19a2cc(0xbe)](_0x450a52))!==null){_0x57dd39[_0x19a2cc(0xec)][_0x19a2cc(0x13e)](this['_parseXMLImage'](_0x1711a8[0x1]));}}else _0x57dd39[_0x19a2cc(0xec)][_0x19a2cc(0x13e)](this[_0x19a2cc(0xc7)](_0x100183));if(_0x57dd39[_0x19a2cc(0xec)]['length']===0x0)throw new Error('No\x20valid\x20image\x20parameters\x20found');return _0x57dd39;}['_parseImageParams'](_0x26734d){const _0x29e4f5=a0_0x5042b0,_0x550d66=_0x26734d[_0x29e4f5(0xe7)]||_0x26734d[_0x29e4f5(0x12c)]||null;return{'prompt':_0x26734d['prompt']||'','outputPath':_0x550d66,'saveToProject':_0x550d66!==null,'model':_0x26734d[_0x29e4f5(0xdd)]||IMAGE_CONFIG['DEFAULT_MODEL'],'size':_0x26734d['size']||IMAGE_CONFIG['DEFAULT_SIZE'],'quality':_0x26734d[_0x29e4f5(0x12b)]||IMAGE_CONFIG[_0x29e4f5(0x12e)]};}['_parseXMLImage'](_0x371c87){const _0x45885e=a0_0x5042b0,_0x3c69c7=_0x1aba92=>{const _0x106287=new RegExp('<'+_0x1aba92+'>([\x5cs\x5cS]*?)<\x5c/'+_0x1aba92+'>','i'),_0x392f3a=_0x106287['exec'](_0x371c87);return _0x392f3a?_0x392f3a[0x1]['trim']():null;},_0x280f37=_0x3c69c7(_0x45885e(0x12c))||null;return{'prompt':_0x3c69c7('prompt')||'','outputPath':_0x280f37,'saveToProject':_0x280f37!==null,'model':_0x3c69c7('model')||IMAGE_CONFIG['DEFAULT_MODEL'],'size':_0x3c69c7('size')||IMAGE_CONFIG[_0x45885e(0xfe)],'quality':_0x3c69c7('quality')||IMAGE_CONFIG['DEFAULT_QUALITY']};}async['execute'](_0x5ea2fc,_0x21c98a={}){const _0x3aa3e1=a0_0x5042b0;try{const {agentId:_0x5d2fe3,projectDir:_0x2b1e0d,directoryAccess:_0x1c2cd1,sessionId:_0x520523}=_0x21c98a;if(typeof _0x5ea2fc==='string')this[_0x3aa3e1(0x125)]?.[_0x3aa3e1(0x13d)]('ImageTool:\x20Auto-parsing\x20string\x20parameters'),_0x5ea2fc=this[_0x3aa3e1(0xf4)](_0x5ea2fc);else typeof _0x5ea2fc===_0x3aa3e1(0x103)&&_0x5ea2fc!==null&&!_0x5ea2fc[_0x3aa3e1(0xec)]&&(this['logger']?.[_0x3aa3e1(0x13d)](_0x3aa3e1(0x11b)),_0x5ea2fc=this[_0x3aa3e1(0xf4)](_0x5ea2fc));this[_0x3aa3e1(0xe6)](_0x5ea2fc);const _0x433fa3=[];for(const _0x5b981b of _0x5ea2fc['images']){const _0x4df110=this[_0x3aa3e1(0xc1)](),_0x3c698d={'jobId':_0x4df110,'agentId':_0x5d2fe3,'sessionId':_0x520523,'prompt':_0x5b981b[_0x3aa3e1(0xef)],'outputPath':_0x5b981b['outputPath'],'saveToProject':_0x5b981b['saveToProject'],'model':_0x5b981b['model'],'size':_0x5b981b['size'],'quality':_0x5b981b[_0x3aa3e1(0x12b)],'projectDir':_0x2b1e0d||process['cwd'](),'directoryAccess':_0x1c2cd1,'status':'queued','createdAt':new Date()['toISOString']()};if(this[_0x3aa3e1(0xbf)]['length']>=IMAGE_CONFIG[_0x3aa3e1(0x131)])return{'success':![],'error':'Queue\x20limit\x20reached\x20('+IMAGE_CONFIG[_0x3aa3e1(0x131)]+'\x20images).\x20Please\x20wait\x20for\x20current\x20jobs\x20to\x20complete.','queueLength':this[_0x3aa3e1(0xbf)][_0x3aa3e1(0xcc)]};this[_0x3aa3e1(0xbf)][_0x3aa3e1(0x13e)](_0x3c698d),_0x433fa3[_0x3aa3e1(0x13e)](_0x4df110),this['logger']?.[_0x3aa3e1(0x13d)](_0x3aa3e1(0x109)+_0x4df110,{'prompt':_0x5b981b[_0x3aa3e1(0xef)]['substring'](0x0,0x32)+_0x3aa3e1(0x105),'queuePosition':this[_0x3aa3e1(0xbf)]['length']});}return!this[_0x3aa3e1(0x104)]&&this['_processQueue']()[_0x3aa3e1(0xc0)](_0x1ce51d=>{const _0x128e66=_0x3aa3e1;this['logger']?.[_0x128e66(0x122)](_0x128e66(0xf1),_0x1ce51d);}),{'success':!![],'jobIds':_0x433fa3,'queueLength':this[_0x3aa3e1(0xbf)]['length'],'message':_0x5ea2fc['batch']?_0x433fa3[_0x3aa3e1(0xcc)]+'\x20images\x20queued\x20for\x20generation':'Image\x20queued\x20for\x20generation','estimatedWaitTime':this['_estimateWaitTime']()};}catch(_0x142eb0){return this[_0x3aa3e1(0x125)]?.['error']('Image\x20generation\x20error:',_0x142eb0),{'success':![],'error':_0x142eb0[_0x3aa3e1(0xdf)]};}}['_validateParameters'](_0x1f1dea){const _0xc87599=a0_0x5042b0;if(!_0x1f1dea[_0xc87599(0xec)]||_0x1f1dea[_0xc87599(0xec)][_0xc87599(0xcc)]===0x0)throw new Error(_0xc87599(0xea));for(const _0x3f06fa of _0x1f1dea[_0xc87599(0xec)]){if(!_0x3f06fa['prompt']||_0x3f06fa[_0xc87599(0xef)][_0xc87599(0x130)]()['length']===0x0)throw new Error('Image\x20prompt\x20is\x20required');if(_0x3f06fa[_0xc87599(0xef)]['length']>IMAGE_CONFIG['MAX_PROMPT_LENGTH'])throw new Error(_0xc87599(0x139)+IMAGE_CONFIG[_0xc87599(0xfc)]+'\x20characters)');if(_0x3f06fa['size']&&!IMAGE_CONFIG['VALID_SIZES']['includes'](_0x3f06fa['size']))throw new Error('Invalid\x20size:\x20'+_0x3f06fa['size']+_0xc87599(0xd8)+IMAGE_CONFIG['VALID_SIZES'][_0xc87599(0xeb)](',\x20'));if(_0x3f06fa['outputPath']){const _0x427d52=a0_0x227abb['extname'](_0x3f06fa[_0xc87599(0xe7)])[_0xc87599(0xf9)]()['replace']('.','');if(_0x427d52&&!IMAGE_CONFIG[_0xc87599(0x10a)]['includes'](_0x427d52))throw new Error(_0xc87599(0xcd)+_0x427d52+'.\x20Valid\x20formats:\x20'+IMAGE_CONFIG['VALID_FORMATS'][_0xc87599(0xeb)](',\x20'));}}}async['_processQueue'](){const _0x2ab8f6=a0_0x5042b0;if(this[_0x2ab8f6(0x104)])return;this[_0x2ab8f6(0x104)]=!![];while(this['queue'][_0x2ab8f6(0xcc)]>0x0){const _0x3dde29=this[_0x2ab8f6(0xbf)][_0x2ab8f6(0x10c)]();this[_0x2ab8f6(0xc3)]=_0x3dde29,this[_0x2ab8f6(0x125)]?.['info']('Processing\x20image\x20generation\x20job:\x20'+_0x3dde29[_0x2ab8f6(0x100)]);try{_0x3dde29[_0x2ab8f6(0x121)]='processing';const _0x532f40=await this[_0x2ab8f6(0xe4)](_0x3dde29);_0x3dde29[_0x2ab8f6(0x121)]='completed',_0x3dde29[_0x2ab8f6(0x115)]=_0x532f40,_0x3dde29[_0x2ab8f6(0x11a)]=new Date()['toISOString'](),this['completedJobs'][_0x2ab8f6(0x111)](_0x3dde29[_0x2ab8f6(0x100)],_0x3dde29);if(global[_0x2ab8f6(0xcf)]&&_0x3dde29[_0x2ab8f6(0xc6)]){let _0x2f7692,_0x11ae14=![];if(_0x532f40[_0x2ab8f6(0x136)]&&_0x532f40[_0x2ab8f6(0x132)])_0x2f7692=this['_convertToWebUrl'](_0x532f40['resolvedOutputPath'],_0x3dde29['sessionId']);else _0x532f40[_0x2ab8f6(0xf6)]&&(_0x2f7692=_0x532f40[_0x2ab8f6(0xf6)],_0x11ae14=!![]);global['loxiaWebServer'][_0x2ab8f6(0x129)](_0x3dde29[_0x2ab8f6(0xc6)],{'type':'imageGenerated','agentId':_0x3dde29[_0x2ab8f6(0xb8)],'jobId':_0x3dde29['jobId'],'imageUrl':_0x2f7692,'localPath':_0x532f40[_0x2ab8f6(0x132)],'prompt':_0x3dde29[_0x2ab8f6(0xef)],'success':!![],'isTemporary':_0x11ae14,'savedToDisk':_0x532f40['savedToDisk'],'downloadError':_0x532f40[_0x2ab8f6(0x13b)],'timestamp':_0x3dde29[_0x2ab8f6(0x11a)]}),this['logger']?.['info']('Image\x20generation\x20broadcast\x20sent',{'jobId':_0x3dde29['jobId'],'imageUrl':_0x2f7692,'localPath':_0x532f40[_0x2ab8f6(0x132)],'savedToDisk':_0x532f40['savedToDisk'],'isTemporary':_0x11ae14});if(this['agentPool']&&_0x3dde29[_0x2ab8f6(0xb8)])try{const _0x3b669d=await this['agentPool'][_0x2ab8f6(0xe2)](_0x3dde29['agentId']);if(_0x3b669d){let _0x44c1ac='Image\x20generated:\x20'+_0x3dde29[_0x2ab8f6(0xef)];_0x11ae14&&(_0x44c1ac+='\x0a\x0a⚠️\x20**Warning:**\x20Image\x20is\x20using\x20a\x20temporary\x20URL\x20(expires\x20in\x20~1\x20hour).\x20Failed\x20to\x20save\x20to\x20disk.',_0x532f40['downloadError']&&(_0x44c1ac+=_0x2ab8f6(0x110)+_0x532f40[_0x2ab8f6(0x13b)]));const _0x34db77={'id':_0x2ab8f6(0x128)+_0x3dde29[_0x2ab8f6(0x100)],'role':_0x2ab8f6(0x101),'content':_0x44c1ac,'timestamp':_0x3dde29['completedAt'],'imageUrl':_0x2f7692,'type':'image-result','toolId':'image-gen','status':'completed','isTemporary':_0x11ae14||![],'savedToDisk':_0x532f40['savedToDisk']!==![]};_0x3b669d[_0x2ab8f6(0xbb)]['full'][_0x2ab8f6(0xc5)][_0x2ab8f6(0x13e)](_0x34db77),_0x3b669d['conversations'][_0x2ab8f6(0xba)][_0x2ab8f6(0xe1)]=_0x3dde29[_0x2ab8f6(0x11a)],_0x3b669d[_0x2ab8f6(0x11c)]&&_0x3b669d['conversations'][_0x3b669d[_0x2ab8f6(0x11c)]]&&(_0x3b669d[_0x2ab8f6(0xbb)][_0x3b669d['currentModel']]['messages']['push'](_0x34db77),_0x3b669d[_0x2ab8f6(0xbb)][_0x3b669d['currentModel']][_0x2ab8f6(0xe1)]=_0x3dde29['completedAt']),_0x3b669d[_0x2ab8f6(0xe9)]=_0x3dde29[_0x2ab8f6(0x11a)],await this['agentPool']['persistAgentState'](_0x3dde29[_0x2ab8f6(0xb8)]),this['logger']?.['info']('Image\x20result\x20saved\x20to\x20conversation\x20history',{'agentId':_0x3dde29['agentId'],'jobId':_0x3dde29['jobId'],'messageId':_0x34db77['id']});}}catch(_0x45f952){this['logger']?.['error']('Failed\x20to\x20save\x20image\x20result\x20to\x20conversation\x20history',{'error':_0x45f952[_0x2ab8f6(0xdf)],'agentId':_0x3dde29[_0x2ab8f6(0xb8)],'jobId':_0x3dde29['jobId']});}}this[_0x2ab8f6(0x125)]?.[_0x2ab8f6(0x13d)]('Image\x20generation\x20completed:\x20'+_0x3dde29[_0x2ab8f6(0x100)],{'outputPath':_0x532f40[_0x2ab8f6(0x132)]});}catch(_0x1d1ff1){this['logger']?.[_0x2ab8f6(0x122)](_0x2ab8f6(0xcb)+_0x3dde29['jobId'],_0x1d1ff1),_0x3dde29[_0x2ab8f6(0x121)]='failed',_0x3dde29['error']=_0x1d1ff1[_0x2ab8f6(0xdf)],_0x3dde29[_0x2ab8f6(0x11a)]=new Date()['toISOString'](),this[_0x2ab8f6(0xfa)][_0x2ab8f6(0x111)](_0x3dde29['jobId'],_0x3dde29);global['loxiaWebServer']&&_0x3dde29['sessionId']&&(global[_0x2ab8f6(0xcf)][_0x2ab8f6(0x129)](_0x3dde29[_0x2ab8f6(0xc6)],{'type':'imageGenerated','jobId':_0x3dde29['jobId'],'agentId':_0x3dde29[_0x2ab8f6(0xb8)],'prompt':_0x3dde29[_0x2ab8f6(0xef)],'success':![],'error':_0x1d1ff1['message'],'timestamp':_0x3dde29['completedAt']}),this[_0x2ab8f6(0x125)]?.[_0x2ab8f6(0x13d)](_0x2ab8f6(0xe8),{'jobId':_0x3dde29[_0x2ab8f6(0x100)],'sessionId':_0x3dde29[_0x2ab8f6(0xc6)],'error':_0x1d1ff1['message']}));if(this[_0x2ab8f6(0x10b)]&&_0x3dde29[_0x2ab8f6(0xb8)])try{const _0x258478=await this[_0x2ab8f6(0x10b)]['getAgent'](_0x3dde29[_0x2ab8f6(0xb8)]);if(_0x258478){const _0x1d350d={'id':_0x2ab8f6(0x120)+_0x3dde29['jobId'],'role':_0x2ab8f6(0x10e),'content':'❌\x20Image\x20generation\x20failed:\x20'+_0x1d1ff1[_0x2ab8f6(0xdf)]+_0x2ab8f6(0x102)+_0x3dde29[_0x2ab8f6(0xef)],'timestamp':_0x3dde29['completedAt'],'type':'error','toolId':'image-gen','status':_0x2ab8f6(0xb9),'jobId':_0x3dde29[_0x2ab8f6(0x100)]};_0x258478['conversations'][_0x2ab8f6(0xba)][_0x2ab8f6(0xc5)][_0x2ab8f6(0x13e)](_0x1d350d),_0x258478[_0x2ab8f6(0xbb)]['full'][_0x2ab8f6(0xe1)]=_0x3dde29['completedAt'],_0x258478['currentModel']&&_0x258478[_0x2ab8f6(0xbb)][_0x258478['currentModel']]&&(_0x258478[_0x2ab8f6(0xbb)][_0x258478['currentModel']][_0x2ab8f6(0xc5)]['push'](_0x1d350d),_0x258478[_0x2ab8f6(0xbb)][_0x258478['currentModel']][_0x2ab8f6(0xe1)]=_0x3dde29['completedAt']),_0x258478['lastActivity']=_0x3dde29['completedAt'],await this[_0x2ab8f6(0x10b)]['persistAgentState'](_0x3dde29[_0x2ab8f6(0xb8)]),this[_0x2ab8f6(0x125)]?.[_0x2ab8f6(0x13d)]('Image\x20error\x20saved\x20to\x20conversation\x20history',{'agentId':_0x3dde29['agentId'],'jobId':_0x3dde29['jobId'],'error':_0x1d1ff1['message']});}}catch(_0x5c70ca){this['logger']?.['error']('Failed\x20to\x20save\x20image\x20error\x20to\x20conversation\x20history',{'error':_0x5c70ca[_0x2ab8f6(0xdf)],'agentId':_0x3dde29[_0x2ab8f6(0xb8)],'jobId':_0x3dde29[_0x2ab8f6(0x100)]});}}}this['isProcessing']=![],this[_0x2ab8f6(0xc3)]=null;}async['_generateImage'](_0x2c2c20){const _0x3f485e=a0_0x5042b0;if(!this[_0x3f485e(0xc9)])throw new Error('AI\x20service\x20not\x20available.\x20Image\x20generation\x20requires\x20AI\x20service.');const _0x452b30=await this[_0x3f485e(0xe3)](_0x2c2c20),_0x7557c=a0_0x227abb['dirname'](_0x452b30);await a0_0x64eb12['mkdir'](_0x7557c,{'recursive':!![]}),this['logger']?.[_0x3f485e(0x13d)](_0x3f485e(0x10f)+_0x2c2c20['model'],{'size':_0x2c2c20[_0x3f485e(0xc2)],'quality':_0x2c2c20[_0x3f485e(0x12b)]});const _0x101bf1={'model':_0x2c2c20['model'],'size':_0x2c2c20[_0x3f485e(0xc2)],'quality':_0x2c2c20['quality'],'responseFormat':'url','sessionId':_0x2c2c20[_0x3f485e(0xc6)]},_0x3031f7=await this[_0x3f485e(0xc9)][_0x3f485e(0xd9)](_0x2c2c20[_0x3f485e(0xef)],_0x101bf1),_0xc3d333=_0x3031f7?.['url']||_0x3031f7?.[_0x3f485e(0xf7)];if(!_0xc3d333)throw new Error('No image URL received from AI service');this[_0x3f485e(0x125)]?.[_0x3f485e(0x13d)](_0x3f485e(0x118)+_0xc3d333[_0x3f485e(0xd4)](0x0,0x32)+'...');let _0x312fa1=![],_0x580abf=null;try{await this[_0x3f485e(0xb6)](_0xc3d333,_0x452b30),_0x312fa1=!![],!_0x2c2c20[_0x3f485e(0xd0)]&&this['_scheduleCleanup'](_0x452b30,_0x2c2c20['jobId']);}catch(_0x20c21e){_0x580abf=_0x20c21e['message'],this[_0x3f485e(0x125)]?.['warn'](_0x3f485e(0x126)+_0x20c21e[_0x3f485e(0xdf)]);}return{'jobId':_0x2c2c20['jobId'],'prompt':_0x2c2c20[_0x3f485e(0xef)],'outputPath':_0x2c2c20['outputPath'],'resolvedOutputPath':_0x312fa1?_0x452b30:null,'temporaryUrl':_0xc3d333,'savedToDisk':_0x312fa1,'downloadError':_0x580abf,'success':!![],'model':_0x3031f7['model']||_0x2c2c20['model'],'size':_0x2c2c20['size'],'usage':_0x3031f7['usage']};}async[a0_0x5042b0(0xe3)](_0x4a2c8d){const _0x4f880f=a0_0x5042b0;if(_0x4a2c8d['saveToProject']){const _0x3cad7c=_0x4a2c8d['projectDir']||process[_0x4f880f(0xd5)]();let _0x3eee8c=_0x4a2c8d[_0x4f880f(0xe7)];if(!_0x3eee8c){const _0x13a38c=Date[_0x4f880f(0x11e)]();_0x3eee8c='images/generated-'+_0x13a38c+'.png';}const _0x242790=a0_0x227abb['isAbsolute'](_0x3eee8c)?a0_0x227abb['normalize'](_0x3eee8c):a0_0x227abb['normalize'](a0_0x227abb['join'](_0x3cad7c,_0x3eee8c));if(!_0x242790[_0x4f880f(0xfd)](a0_0x227abb[_0x4f880f(0xc8)](_0x3cad7c)))throw new Error(_0x4f880f(0xde));if(_0x4a2c8d[_0x4f880f(0x117)]){const _0x482938=a0_0x227abb['relative'](_0x3cad7c,_0x242790);if(_0x482938[_0x4f880f(0xfd)]('..'))throw new Error('Access\x20denied:\x20path\x20outside\x20project\x20directory');}return _0x242790;}else{await a0_0x64eb12[_0x4f880f(0xed)](this[_0x4f880f(0xdb)],{'recursive':!![]});let _0x511e7b=_0x4a2c8d[_0x4f880f(0xe7)]?a0_0x227abb['basename'](_0x4a2c8d[_0x4f880f(0xe7)]):'generated-'+_0x4a2c8d['jobId']+'.png';return a0_0x227abb[_0x4f880f(0xeb)](this[_0x4f880f(0xdb)],_0x511e7b);}}async['_downloadImage'](_0x253d39,_0x2752e0){const _0x562978=a0_0x5042b0;try{const _0x495641=await fetch(_0x253d39,{'signal':AbortSignal['timeout'](IMAGE_CONFIG['DOWNLOAD_TIMEOUT'])});if(!_0x495641['ok'])throw new Error(_0x562978(0xd6)+_0x495641['status']);const _0x38a878=Buffer[_0x562978(0x107)](await _0x495641[_0x562978(0x114)]());await a0_0x64eb12[_0x562978(0xd1)](_0x2752e0,_0x38a878),this['logger']?.['info']('Image\x20saved\x20to:\x20'+_0x2752e0);}catch(_0x13a9d8){if(_0x13a9d8[_0x562978(0x13a)]===_0x562978(0x11f))throw new Error(_0x562978(0x134));else{if(_0x13a9d8['name']==='TypeError')throw new Error(_0x562978(0xc4)+_0x13a9d8['message']);else throw new Error('Download\x20failed:\x20'+_0x13a9d8[_0x562978(0xdf)]);}}}[a0_0x5042b0(0x112)](_0x3080c4,_0x107767){const _0x33585f=a0_0x5042b0,_0x53d023=setTimeout(async()=>{const _0x2f6ed7=a0_0x3131;try{await a0_0x64eb12['unlink'](_0x3080c4),this[_0x2f6ed7(0x125)]?.[_0x2f6ed7(0x119)](_0x2f6ed7(0xce)+_0x3080c4),this[_0x2f6ed7(0xd3)][_0x2f6ed7(0xf2)](_0x107767);}catch(_0x3a5019){}},IMAGE_CONFIG[_0x33585f(0xfb)]);this['cleanupTimers'][_0x33585f(0x111)](_0x107767,_0x53d023);}[a0_0x5042b0(0x12d)](_0x505d43,_0xb1deec){const _0x37ec0e=a0_0x5042b0,_0x4d4ab8=a0_0x227abb['basename'](_0x505d43),_0x4e5845=global[_0x37ec0e(0xcf)]?.['port']||0x1f90;let _0x5fa1=global['loxiaWebServer']?.['host']||'localhost';return _0x5fa1===_0x37ec0e(0x13c)&&(_0x5fa1='localhost'),'http://'+_0x5fa1+':'+_0x4e5845+'/api/images/'+_0xb1deec+'/'+_0x4d4ab8;}[a0_0x5042b0(0x123)](){const _0x5a69a0=a0_0x5042b0,_0x44c747=0x1e,_0x11eda6=this['queue'][_0x5a69a0(0xcc)];if(_0x11eda6===0x0)return'~30\x20seconds';const _0x1fd78b=_0x11eda6*_0x44c747,_0x164f51=Math['floor'](_0x1fd78b/0x3c),_0x4805b1=_0x1fd78b%0x3c;if(_0x164f51>0x0)return'~'+_0x164f51+'m\x20'+_0x4805b1+'s';return'~'+_0x4805b1+'s';}['_generateJobId'](){const _0x126bd6=a0_0x5042b0;return _0x126bd6(0xf5)+Date['now']()+'-'+Math['random']()['toString'](0x24)[_0x126bd6(0xd4)](0x2,0x9);}['getJobStatus'](_0x585024){const _0x5de1c4=a0_0x5042b0;if(this[_0x5de1c4(0xfa)][_0x5de1c4(0x10d)](_0x585024))return this[_0x5de1c4(0xfa)]['get'](_0x585024);if(this['currentJob']&&this[_0x5de1c4(0xc3)][_0x5de1c4(0x100)]===_0x585024)return this['currentJob'];const _0x2d7bea=this[_0x5de1c4(0xbf)][_0x5de1c4(0xbd)](_0x198548=>_0x198548['jobId']===_0x585024);if(_0x2d7bea)return _0x2d7bea;return{'jobId':_0x585024,'status':'not_found'};}async[a0_0x5042b0(0xe0)](){const _0x49e246=a0_0x5042b0;this[_0x49e246(0x125)]?.[_0x49e246(0x13d)](_0x49e246(0x106));for(const _0x28cb12 of this[_0x49e246(0xd3)][_0x49e246(0x127)]()){clearTimeout(_0x28cb12);}this['cleanupTimers'][_0x49e246(0xf8)]();for(const _0x5be31c of this['queue']){_0x5be31c[_0x49e246(0x121)]=_0x49e246(0x12a);}this['queue']=[];}}export default ImageTool;
@@ -1 +1 @@
1
- const a0_0x21425b=a0_0x3a94;(function(_0x88c329,_0x2876bb){const _0x304408=a0_0x3a94,_0xf71b4f=_0x88c329();while(!![]){try{const _0x16f329=-parseInt(_0x304408(0xc0))/0x1*(-parseInt(_0x304408(0x11a))/0x2)+-parseInt(_0x304408(0xc6))/0x3+-parseInt(_0x304408(0x135))/0x4+-parseInt(_0x304408(0x136))/0x5*(parseInt(_0x304408(0xf2))/0x6)+parseInt(_0x304408(0xd0))/0x7+-parseInt(_0x304408(0xd4))/0x8+parseInt(_0x304408(0x131))/0x9;if(_0x16f329===_0x2876bb)break;else _0xf71b4f['push'](_0xf71b4f['shift']());}catch(_0xdfd690){_0xf71b4f['push'](_0xf71b4f['shift']());}}}(a0_0x3238,0x7123b));import{promises as a0_0x2f6ecc}from'fs';import a0_0x225a71 from'path';function a0_0x3238(){const _0x4fba23=['yxr0CMLIDxrLCW','revgqvvmvf9nt0rf','AgfZ','Aw1WB3j0CW','Dg90ywXgAwXLCW','zgvIDwC','ihn5BwjVBhmGBM90igv4Cg9YDgvKigzYB20GDgHLAxiGC291CMnLCW','zMLSzu5VDezVDw5Ksw1WB3j0CW','icaGicaG8j+sOsbgAxG6iefKzcbLEhbVCNrZihrVia','Aw5JBhvKzxm','u1vque9svevex0vyvevou0LptLm','CMvKDwnL','zw50CMLLCW','8j+tGsbgAwXLCYbHBMfSExPLzdOG','Aw1WB3j0Aw5NrMLSzq','A2v5CW','mtrly1LxwgG','icHTyxG6ia','zgvSzxrL','sw52ywXPzcbTB2rLoIa','yxzHAwXHyMXLrxHWB3j0CW','igHHCYa','mJy3ndu1n1bQvgjQrG','Dg90ywXjBxbVCNrZ','BMfTzwq','z2v0qwXSrMLSzxm','B3v0Chv0','8j+tIIbjBxbVCNqVrxHWB3j0iefUywX5C2LZifn1Bw1HCNK','CgfYC2vfEhbVCNrZ','cIaGtwLZC2LUzYbfEhbVCNrZoG','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','zxHPC3rZ','ntC5nda0AKTNy3Dt','D29YA2LUz0rPCMvJDg9YEq','sw1WB3j0igfUywX5C2LZignVBxbSzxrLza','C2L6zq','nJmXnteYBNPXwvzd','vKfmsurFt1vuufvuuW','CMvZB2X2zuLTCg9YDfbHDgG','DMfSDwvZ','ywrK','Bg9Nz2vY','D2fYBG','igjYB2TLBIbPBxbVCNqOCYK','vKfmsurFtu9ervm','8j+tIIbezxrHAwXLzcbjBxbVCNqVrxHWB3j0iefUywX5C2LZifjLCg9YDa','icaGicaG8j+sOsbgAxG6ie5VigrLzMf1BhqGzxHWB3j0lIbvC2uGBMfTzwqGAw1WB3j0oIb7ia','CMvWBgfJzq','lMDPDa','Dg9mB3DLCKnHC2u','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','iIbVCIb1C2uGB25Lig9MihrOzsbHDMfPBgfIBguGzxHWB3j0CW','zxH0BMfTzq','zgLZDa','revgqvvmvf9jr05puKvFuefuvevstLm','Aw5MBW','icaGicaGvgHLEsbTAwDODcbIzsb1C2vKigj5igv4DgvYBMfSihbHy2THz2vZig9YignVDwXKigjLihjLBw92zwq','AwDUB3jLugf0DgvYBNm','ChvZAa','CxvPy2S','x3zHBgLKyxrLugfYyw1LDgvYCW','Bg9HzeLNBM9YzuzPBgu','CMvHzezPBgu','lNrZEa','icaGicaG8j+tPcboBYbLEhbVCNrZigzVDw5KigLUihrHCMDLDcbMAwXL','lMDPDgLNBM9Yzq','mtmYotmWwffPCgPj','icaXlIbgAxGG','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0k','CMvSyxrPDMu','lIbnDxn0igjLig9UzsbVzJOG','tufyx0zjtevt','BMfTzq','AxngAwXL','cVcFKQeGuNvUihDPDgGGB3v0Chv0psjKzxrHAwXLzciGzM9YignVBxbSzxrLigfUywX5C2LZigfUzcbMAxGGC3vNz2vZDgLVBNm','BMfTzxnWywnL','C3rHCNrZv2L0Aa','AwDUB3jLrMLSzsbTDxn0igjLigeGC3rYAw5N','ugfYC2vKigfSBcbMAwXLCW','yw5HBhL6zq','CM9VDerPCG','Bwf0y2G','zNvSBa','C2HVDwXKswDUB3jLrMLSzq','zxHWB3j0CW','zMLSDgvY','4P2mie1ju1njtKCGrKLmrvm','cVcFK4SGuKvdt01nru5eqvrjt05t','ANnVBG','DhjPBq','ig5VBI1LEgLZDgvUDcbZEw1IB2WOCYK','revgqvvmvf9pvvrqvvq','C3rYAw5N','Dw51C2vKrxHWB3j0CW','8j+uHcbdAxjJDwXHCIbKzxbLBMrLBMnPzxm6ia','C3rHDa','BwvZC2fNzq','Aw1WB3j0zwrtEw1IB2W','icdIGkiGvg90ywWGzxHWB3j0CZOG','zML4','icaGicaG8j+sOsbgAxG6ierLzMf1BhqGzxHWB3j0igv4Axn0CYWGy2HLy2SGAw1WB3j0ihn5BNrHEa','zxjYB3i','icaGicaGrNjVBsbMAwXLoIa','ugf0AcbKB2vZig5VDcbLEgLZDdOG','icaGicaG8j+sOsbgAxG6ierPzcb5B3uGBwvHBIaI','C2v0','mtK1otjMr0TRDeS','cVcFLi0Gvg9WieLZC3vLCYb0BYbgAxG6','z2v0rgvZy3jPChrPB24','Cgf0Aa','revgqvvmvf9jr05puKvFrKLmrq','l2LUzgv4lNrZ','BwfW','cIaGtwLZC2LUzYbgAwXLCZO','DgvZDa','CgfYC2vjBxbVCNrZ','icaGvw51C2vKoIa','sw1WB3j0igfUywX5EMvYigv4zwn1DgLUzW','igLTCg9YDhmG','zNjVBq','Axnoyw1LC3bHy2u','AM9PBG','ig1PC3nPBMCGzxHWB3j0khmP','zgvWzw5Kzw5JAwvZ','z2v0','lMPZEa','AxnfEhrLCM5HBa','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','lNrZ','mty5otu5ntfnDvvsBeW','icaGiokaOIa','icaGicaG8j+tPcbbDMfPBgfIBguGzxHWB3j0CZOG','zgv0ywLSzwq','mti3otmYEfvwuenv','mtq1s2Tvwerv','Aw5KzxHpzG','C3bSAxq','tw9KztOG','zM9YrwfJAa','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0k','BwLZC2LUz0zPBgvZ','BM9YBwfSAxPL','C3rYAw5NAwz5','Bw9Kzq','C3vTBwfYEq','lM1QCW','DxrMltG','y2LYy3vSyxjezxbLBMrLBMnPzxm','cUkAOo+4JYaGtuLtu0LorYbfwfbpuLrt','icaGicaG8j+sOsbgAxG6ienOzwnRigLMigzPBguGzxHPC3rZig9YignVCNjLy3qGDgHLigLTCg9YDcbWyxrO','8j+tIcbtDgf0Axn0AwnZoG','yMfZzw5HBwu','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','zxHLyW','z2v0uMvSyxrPDMvqyxrO','icdIGkiGrMLSzxmGyw5HBhL6zwq6ia','BgvUz3rO','y292zxjHz2u','AwDUB3jLrMLSzq','rM91BMqGzMLSzxm','CgfYC2vqyxjHBwv0zxjZ','8j+tPcbuB3rHBcbLEhbVCNrZoIa','AxnezwzHDwX0','BwLZC2LUz0v4Cg9YDhm','8j+tPsbuB3rHBcbPBxbVCNrZoIa','zgLYBMfTzq','Aw1WB3j0zwrgCM9TrMLSzq'];a0_0x3238=function(){return _0x4fba23;};return a0_0x3238();}import{BaseTool}from'./baseTool.js';import a0_0xc33af5 from'../utilities/tagParser.js';const ANALYZER_CONFIG={'DEFAULT_MODE':a0_0x21425b(0x102),'VALID_MODES':[a0_0x21425b(0x102),a0_0x21425b(0xeb),a0_0x21425b(0x113)],'DEFAULT_OUTPUT':a0_0x21425b(0x99),'VALID_OUTPUTS':[a0_0x21425b(0x99),a0_0x21425b(0x134),'json'],'DEFAULT_IGNORE_FILE':'.gitignore','MAX_FILES':0x2710,'SUPPORTED_EXTENSIONS':['.js',a0_0x21425b(0x9a),a0_0x21425b(0x130),a0_0x21425b(0x12d),a0_0x21425b(0xef)],'DEFAULT_IGNORE_PATTERNS':['node_modules',a0_0x21425b(0xe0),a0_0x21425b(0xe5),'build',a0_0x21425b(0xa6)],'FILE_READ_TIMEOUT':0x1388};function a0_0x3a94(_0x5ec759,_0x4f802f){_0x5ec759=_0x5ec759-0x98;const _0x32383b=a0_0x3238();let _0x3a94ac=_0x32383b[_0x5ec759];if(a0_0x3a94['QnwTao']===undefined){var _0x314dd2=function(_0x5d6bc7){const _0x2c6aa6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f6ecc='',_0x225a71='';for(let _0xc33af5=0x0,_0x1c3f47,_0x1e9f75,_0x2adeca=0x0;_0x1e9f75=_0x5d6bc7['charAt'](_0x2adeca++);~_0x1e9f75&&(_0x1c3f47=_0xc33af5%0x4?_0x1c3f47*0x40+_0x1e9f75:_0x1e9f75,_0xc33af5++%0x4)?_0x2f6ecc+=String['fromCharCode'](0xff&_0x1c3f47>>(-0x2*_0xc33af5&0x6)):0x0){_0x1e9f75=_0x2c6aa6['indexOf'](_0x1e9f75);}for(let _0x36119f=0x0,_0x38bff4=_0x2f6ecc['length'];_0x36119f<_0x38bff4;_0x36119f++){_0x225a71+='%'+('00'+_0x2f6ecc['charCodeAt'](_0x36119f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x225a71);};a0_0x3a94['kjDzrD']=_0x314dd2,a0_0x3a94['EMqVHS']={},a0_0x3a94['QnwTao']=!![];}const _0x58be07=_0x32383b[0x0],_0x145618=_0x5ec759+_0x58be07,_0x30ffa0=a0_0x3a94['EMqVHS'][_0x145618];return!_0x30ffa0?(_0x3a94ac=a0_0x3a94['kjDzrD'](_0x3a94ac),a0_0x3a94['EMqVHS'][_0x145618]=_0x3a94ac):_0x3a94ac=_0x30ffa0,_0x3a94ac;}export class ImportAnalyzerTool extends BaseTool{constructor(_0x1c3f47={},_0x1e9f75=null){super(_0x1c3f47,_0x1e9f75),this['id']='import-analyzer';}[a0_0x21425b(0x11c)](){const _0x4fd4b3=a0_0x21425b;return _0x4fd4b3(0x12f);}[a0_0x21425b(0xa9)](_0x2adeca){const _0x7313d9=a0_0x21425b;if(typeof _0x2adeca==='object'&&_0x2adeca!==null)return{'path':_0x2adeca['path']||'.','mode':_0x2adeca[_0x7313d9(0x98)]||ANALYZER_CONFIG['DEFAULT_MODE'],'output':_0x2adeca[_0x7313d9(0xca)]||ANALYZER_CONFIG[_0x7313d9(0x10b)],'ignoreFile':_0x2adeca['ignoreFile']||ANALYZER_CONFIG[_0x7313d9(0x11e)]};if(typeof _0x2adeca===_0x7313d9(0x10c)){const _0x36119f=/<import-analyzer([^>]*)>([\s\S]*?)<\/import-analyzer>/i,_0x38bff4=_0x36119f[_0x7313d9(0xa2)](_0x2adeca);if(_0x38bff4){const _0x2f945d=_0x38bff4[0x1],_0x5aee4d=_0x38bff4[0x2],_0x2ee8d4=/path=["']([^"']*)["']/i['exec'](_0x2f945d),_0x498644=/mode=["']([^"']*)["']/i['exec'](_0x2f945d),_0x53e19b=/output=["']([^"']*)["']/i[_0x7313d9(0xa2)](_0x2f945d),_0x248f9e=/ignore-file=["']([^"']*)["']/i[_0x7313d9(0xa2)](_0x2f945d),_0x39a0cc=/<path>(.*?)<\/path>/i,_0x42d9e7=_0x39a0cc[_0x7313d9(0xa2)](_0x5aee4d),_0x27c1ee=/<mode>(.*?)<\/mode>/i,_0xf46501=_0x27c1ee['exec'](_0x5aee4d),_0x597433=/<output>(.*?)<\/output>/i,_0x4e5c65=_0x597433['exec'](_0x5aee4d),_0x5c6469=/<ignore-file>(.*?)<\/ignore-file>/i,_0x12d999=_0x5c6469[_0x7313d9(0xa2)](_0x5aee4d),_0x2796c1=(_0x42d9e7?_0x42d9e7[0x1][_0x7313d9(0x109)]():null)||(_0x2ee8d4?_0x2ee8d4[0x1]:'.'),_0x5232ac=(_0xf46501?_0xf46501[0x1][_0x7313d9(0x109)]():null)||(_0x498644?_0x498644[0x1]:ANALYZER_CONFIG['DEFAULT_MODE']),_0x219bfe=(_0x4e5c65?_0x4e5c65[0x1]['trim']():null)||(_0x53e19b?_0x53e19b[0x1]:ANALYZER_CONFIG[_0x7313d9(0x10b)]),_0xceedd2=(_0x12d999?_0x12d999[0x1][_0x7313d9(0x109)]():null)||(_0x248f9e?_0x248f9e[0x1]:ANALYZER_CONFIG[_0x7313d9(0x11e)]);return{'path':_0x2796c1,'mode':_0x5232ac,'output':_0x219bfe,'ignoreFile':_0xceedd2};}try{const _0x5ebcbb=a0_0xc33af5['parseTags'](_0x2adeca,_0x7313d9(0xff));if(_0x5ebcbb&&_0x5ebcbb[_0x7313d9(0xa5)]>0x0){const _0x104eee=_0x5ebcbb[0x0];return{'path':_0x104eee['attributes'][_0x7313d9(0x11d)]||'.','mode':_0x104eee[_0x7313d9(0xb0)]['mode']||ANALYZER_CONFIG[_0x7313d9(0xb1)],'output':_0x104eee['attributes'][_0x7313d9(0xca)]||ANALYZER_CONFIG[_0x7313d9(0x10b)],'ignoreFile':_0x104eee[_0x7313d9(0xb0)]['ignore-file']||ANALYZER_CONFIG['DEFAULT_IGNORE_FILE']};}}catch(_0x591508){}throw new Error('Invalid import-analyzer format. Use <import-analyzer> tags or JSON format.');}throw new Error('Invalid\x20parameter\x20format.\x20Expected\x20string\x20(XML)\x20or\x20object\x20(JSON).');}[a0_0x21425b(0xec)](_0x11ad6e){const _0x5d4cce=a0_0x21425b;if(!_0x11ad6e||typeof _0x11ad6e!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x11ad6e[_0x5d4cce(0x11d)]&&typeof _0x11ad6e[_0x5d4cce(0x11d)]!=='string')throw new Error('path\x20must\x20be\x20a\x20string');if(_0x11ad6e['mode']&&!ANALYZER_CONFIG['VALID_MODES']['includes'](_0x11ad6e[_0x5d4cce(0x98)]))throw new Error(_0x5d4cce(0xc3)+_0x11ad6e['mode']+'.\x20Must\x20be\x20one\x20of:\x20'+ANALYZER_CONFIG[_0x5d4cce(0xdc)][_0x5d4cce(0x129)](',\x20'));if(_0x11ad6e[_0x5d4cce(0xca)]&&!ANALYZER_CONFIG[_0x5d4cce(0xd5)]['includes'](_0x11ad6e['output']))throw new Error('Invalid\x20output:\x20'+_0x11ad6e[_0x5d4cce(0xca)]+_0x5d4cce(0xf6)+ANALYZER_CONFIG['VALID_OUTPUTS']['join'](',\x20'));if(_0x11ad6e['ignoreFile']&&typeof _0x11ad6e[_0x5d4cce(0xa7)]!=='string')throw new Error(_0x5d4cce(0xfd));}['_resolveAndValidatePath'](_0x559e72,_0x17ff6d){const _0x1e952b=a0_0x21425b,{projectDir:_0x1f9767,directoryAccess:_0x1040d2}=_0x17ff6d;let _0x1266b8=_0x1f9767||process['cwd']();_0x1040d2&&_0x1040d2['workingDirectory']&&(_0x1266b8=_0x1040d2[_0x1e952b(0xd1)]);const _0xe07dd4=a0_0x225a71['isAbsolute'](_0x559e72)?a0_0x225a71[_0x1e952b(0x13d)](_0x559e72):a0_0x225a71['normalize'](a0_0x225a71['join'](_0x1266b8,_0x559e72)),_0x5d0c78=a0_0x225a71[_0x1e952b(0x13d)](_0x1266b8);if(!_0xe07dd4[_0x1e952b(0xfc)](_0x5d0c78))throw new Error(_0x1e952b(0xe2)+_0x559e72+'\x20resolves\x20outside\x20working\x20directory');return _0xe07dd4;}async['execute'](_0x14e201,_0x49d62d={}){const _0x31047c=a0_0x21425b;try{this[_0x31047c(0xec)](_0x14e201);const {path:_0x106ba2,mode:_0xfb8df9,output:_0x1a3e37,ignoreFile:_0x546966}=_0x14e201,{projectDir:_0x5ccc37,agentId:_0x590de3,directoryAccess:_0x2a754d}=_0x49d62d,_0x5e9fc8=this[_0x31047c(0xa1)](_0x106ba2,_0x49d62d);this['logger']?.['info'](_0x31047c(0x125),{'mode':_0xfb8df9,'resolvedPath':_0x5e9fc8,'output':_0x1a3e37,'agentId':_0x590de3});const _0x3053e4=[];_0x3053e4['push']('πŸ”\x20Analyzing\x20imports\x20in:\x20'+_0x5e9fc8),_0x3053e4['push'](_0x31047c(0x139)+_0xfb8df9),_0x3053e4['push']('Output:\x20'+_0x1a3e37+'\x0a');try{await a0_0x2f6ecc['access'](_0x5e9fc8);}catch{return{'success':![],'error':_0x31047c(0x117)+_0x5e9fc8,'output':_0x3053e4['join']('\x0a')};}const _0x4cfabf=new ImportExportAnalyzer(_0x5e9fc8,_0x546966,this['logger']),_0xe9bafc=await _0x4cfabf['analyze'](_0xfb8df9);let _0x217da8;switch(_0x1a3e37){case _0x31047c(0x108):_0x217da8=JSON[_0x31047c(0x13e)](_0xe9bafc,null,0x2);break;case _0x31047c(0x134):_0x217da8=this['_formatDetailedOutput'](_0xe9bafc),_0x3053e4['push'](_0x217da8);break;case _0x31047c(0x99):default:_0x217da8=this['_formatSummaryOutput'](_0xe9bafc),_0x3053e4[_0x31047c(0xea)](_0x217da8);break;}return{'success':!![],'mode':_0xfb8df9,'message':_0x31047c(0xd2),'statistics':{'totalFiles':_0xe9bafc['summary'][_0x31047c(0xb4)],'totalImports':_0xe9bafc[_0x31047c(0x99)][_0x31047c(0xc7)],'totalExports':_0xe9bafc['summary']['totalExports'],'issuesFound':_0xe9bafc['fileNotFoundImports']['length']+Object['values'](_0xe9bafc[_0x31047c(0xac)])[_0x31047c(0xbb)]((_0x222635,_0x128415)=>_0x222635+_0x128415[_0x31047c(0xa5)],0x0)},'output':_0x1a3e37===_0x31047c(0x108)?_0x217da8:_0x3053e4['join']('\x0a'),'results':_0xe9bafc};}catch(_0x978fc){return this[_0x31047c(0xd9)]?.[_0x31047c(0x115)]('Import\x20analyzer\x20error:',_0x978fc),{'success':![],'error':_0x978fc[_0x31047c(0x110)],'output':_0x978fc[_0x31047c(0x110)]};}}['_formatSummaryOutput'](_0x386118){const _0x16e8c4=a0_0x21425b,_0x4afaf0=[];_0x4afaf0['push'](_0x16e8c4(0xcb)),_0x4afaf0[_0x16e8c4(0xea)](_0x16e8c4(0x13b)),_0x4afaf0[_0x16e8c4(0xea)](_0x16e8c4(0xbd)+_0x386118[_0x16e8c4(0x99)]['totalFiles']),_0x4afaf0['push'](_0x16e8c4(0xad)+_0x386118[_0x16e8c4(0x99)]['totalImports']),_0x4afaf0['push'](_0x16e8c4(0xaa)+_0x386118[_0x16e8c4(0x99)]['totalExports']+'\x0a');const _0x4a61b2=_0x386118['fileNotFoundImports']['length'],_0xea04a3=Object['values'](_0x386118[_0x16e8c4(0xac)])['reduce']((_0x5100f5,_0x1452db)=>_0x5100f5+_0x1452db[_0x16e8c4(0xa5)],0x0),_0xdb342a=_0x386118['circularDependencies']?_0x386118[_0x16e8c4(0x9c)]['length']:0x0;return _0x4a61b2>0x0&&_0x4afaf0[_0x16e8c4(0xea)]('❌\x20Missing\x20files:\x20'+_0x4a61b2+'\x20imports\x20pointing\x20to\x20non-existent\x20files'),_0xea04a3>0x0&&_0x4afaf0['push']('⚠️\x20\x20Missing\x20exports:\x20'+_0xea04a3+_0x16e8c4(0xb6)),_0xdb342a>0x0&&_0x4afaf0[_0x16e8c4(0xea)](_0x16e8c4(0x10e)+_0xdb342a+'\x20circular\x20dependency\x20chains\x20detected'),_0x4a61b2===0x0&&_0xea04a3===0x0&&_0xdb342a===0x0?_0x4afaf0[_0x16e8c4(0xea)]('\u2705 No import/export issues detected!'):(_0x4afaf0[_0x16e8c4(0xea)](_0x16e8c4(0x11b)),Object['keys'](_0x386118['missingFiles']||{})['length']>0x0&&(_0x4afaf0['push'](_0x16e8c4(0x121)),Object['entries'](_0x386118['missingFiles'])['slice'](0x0,0x3)[_0x16e8c4(0x13a)](([_0x49c83d,_0x3b5a7d])=>{const _0x3fb430=_0x16e8c4;_0x4afaf0[_0x3fb430(0xea)]('\x20\x20\x20\x20β€’\x20'+_0x49c83d+_0x3fb430(0xc5)+_0x3b5a7d['length']+_0x3fb430(0xdb));})),Object[_0x16e8c4(0xbf)](_0x386118['missingExports'])[_0x16e8c4(0xa5)]>0x0&&(_0x4afaf0[_0x16e8c4(0xea)](_0x16e8c4(0xcd)),Object[_0x16e8c4(0xbc)](_0x386118['missingExports'])['slice'](0x0,0x3)['forEach'](([_0x255fb8,_0x3476f8])=>{const _0x1162e1=_0x16e8c4;_0x4afaf0[_0x1162e1(0xea)](_0x1162e1(0x132)+_0x255fb8+_0x1162e1(0x126)+_0x3476f8['length']+_0x1162e1(0x10a));})),_0x4afaf0[_0x16e8c4(0xea)](_0x16e8c4(0xfa))),_0x4afaf0['join']('\x0a');}['_formatDetailedOutput'](_0x1949cd){const _0x18e5ca=a0_0x21425b,_0x382866=[];_0x382866['push'](_0x18e5ca(0xdd)),_0x382866['push'](_0x18e5ca(0xf4)),_0x382866[_0x18e5ca(0xea)](_0x18e5ca(0x9f)),_0x382866['push'](_0x18e5ca(0xa4)+_0x1949cd['summary']['totalFiles']),_0x382866['push']('\x20\x20β€’\x20Total\x20imports:\x20'+_0x1949cd[_0x18e5ca(0x99)]['totalImports']),_0x382866['push'](_0x18e5ca(0x112)+_0x1949cd[_0x18e5ca(0x99)]['totalExports']+'\x0a');if(_0x1949cd['fileNotFoundImports']['length']>0x0){_0x382866['push'](_0x18e5ca(0x106)),_0x382866['push']('─────────────────');const _0x18e0fa={};_0x1949cd[_0x18e5ca(0xb7)][_0x18e5ca(0x13a)](_0x39e1b0=>{const _0x370d91=_0x18e5ca;!_0x18e0fa[_0x39e1b0[_0x370d91(0xbe)]]&&(_0x18e0fa[_0x39e1b0['importingFile']]=[]),_0x18e0fa[_0x39e1b0[_0x370d91(0xbe)]][_0x370d91(0xea)](_0x39e1b0);}),Object[_0x18e5ca(0xbc)](_0x18e0fa)['forEach'](([_0x2aed53,imports])=>{const _0x2e2670=_0x18e5ca;_0x382866[_0x2e2670(0xea)]('\x0aπŸ“„\x20'+_0x2aed53+':'),imports['forEach'](_0x44e2b9=>{const _0x343675=_0x2e2670,importType=_0x44e2b9[_0x343675(0xab)]?'default':_0x44e2b9['isNamespace']?_0x343675(0xfb):'named';_0x382866[_0x343675(0xea)]('\x20\x20\x20⚠️\x20\x20Cannot\x20find\x20file:\x20'+_0x44e2b9[_0x343675(0xaf)]),_0x382866[_0x343675(0xea)]('\x20\x20\x20\x20\x20\x20Trying\x20to\x20import:\x20'+_0x44e2b9['importedSymbol']+'\x20('+importType+')'),_0x382866['push'](_0x343675(0x9e));});});}Object['keys'](_0x1949cd['missingExports'])[_0x18e5ca(0xa5)]>0x0&&(_0x382866[_0x18e5ca(0xea)](_0x18e5ca(0x9d)),_0x382866[_0x18e5ca(0xea)]('──────────────────'),Object[_0x18e5ca(0xbc)](_0x1949cd[_0x18e5ca(0xac)])['forEach'](([_0x18f690,_0xfa16c3])=>{const _0x2a0989=_0x18e5ca;_0x382866[_0x2a0989(0xea)]('\x0aπŸ“„\x20'+_0x18f690+':'),_0xfa16c3['forEach'](_0x5a5cd4=>{const _0x5d226a=_0x2a0989,importType=_0x5a5cd4[_0x5d226a(0xab)]?'default':_0x5a5cd4[_0x5d226a(0x128)]?'namespace':_0x5d226a(0xc8);_0x382866[_0x5d226a(0xea)]('\x20\x20\x20❌\x20Symbol\x20not\x20exported:\x20\x22'+_0x5a5cd4['importedSymbol']+'\x22\x20('+importType+')'),_0x382866['push'](_0x5d226a(0x116)+_0x5a5cd4[_0x5d226a(0xaf)]);if(_0x5a5cd4['availableExports'][_0x5d226a(0xa5)]>0x0){_0x382866['push'](_0x5d226a(0x133)+_0x5a5cd4[_0x5d226a(0xc4)]['join'](',\x20'));if(_0x5a5cd4['isDefault']&&_0x5a5cd4[_0x5d226a(0xc4)][_0x5d226a(0xb9)]('default'))_0x382866['push'](_0x5d226a(0x114));else{if(_0x5a5cd4['isDefault']&&!_0x5a5cd4['availableExports']['includes']('default'))_0x382866['push'](_0x5d226a(0xde)+(_0x5a5cd4[_0x5d226a(0xc4)][0x0]||'symbolName')+'\x20}');else{const _0x2abd06=_0x5a5cd4[_0x5d226a(0xc4)]['find'](_0x4c9f03=>_0x4c9f03[_0x5d226a(0xe1)]()===_0x5a5cd4[_0x5d226a(0x111)][_0x5d226a(0xe1)]());_0x2abd06?_0x382866[_0x5d226a(0xea)](_0x5d226a(0x118)+_0x2abd06+'\x22?\x20(case\x20mismatch)'):_0x382866['push']('\x20\x20\x20\x20\x20\x20πŸ’‘\x20Fix:\x20Add\x20export\x20for\x20\x22'+_0x5a5cd4[_0x5d226a(0x111)]+_0x5d226a(0xe3));}}}else _0x382866['push'](_0x5d226a(0xf0)),_0x382866[_0x5d226a(0xea)](_0x5d226a(0xb8)+_0x5a5cd4[_0x5d226a(0xaf)]+'\x20or\x20check\x20if\x20it\x27s\x20the\x20correct\x20file');});}));_0x1949cd[_0x18e5ca(0x9c)]&&_0x1949cd['circularDependencies'][_0x18e5ca(0xa5)]>0x0&&(_0x382866['push']('\x0aπŸ”„\x20CIRCULAR\x20DEPENDENCIES'),_0x382866[_0x18e5ca(0xea)]('────────────────────────'),_0x1949cd['circularDependencies']['forEach']((_0x51f7fd,_0x1908af)=>{_0x382866['push']('\x0a\x20\x20Cycle\x20'+(_0x1908af+0x1)+':'),_0x51f7fd['forEach']((_0x36a43b,_0x2d1714)=>{const _0x406420=a0_0x3a94;_0x2d1714<_0x51f7fd[_0x406420(0xa5)]-0x1&&_0x382866[_0x406420(0xea)]('\x20\x20\x20\x20'+_0x36a43b+'\x20β†’\x20'+_0x51f7fd[_0x2d1714+0x1]);}),_0x382866['push']('\x20\x20\x20\x20πŸ’‘\x20Fix:\x20Refactor\x20to\x20break\x20the\x20circular\x20dependency');}));_0x1949cd[_0x18e5ca(0x10d)]&&Object['keys'](_0x1949cd['unusedExports'])['length']>0x0&&(_0x382866['push']('\x0aπŸ—‘οΈ\x20\x20POTENTIALLY\x20UNUSED\x20EXPORTS'),_0x382866[_0x18e5ca(0xea)](_0x18e5ca(0xce)),Object['entries'](_0x1949cd['unusedExports'])['slice'](0x0,0xa)[_0x18e5ca(0x13a)](([_0x43faab,exports])=>{const _0x40c9db=_0x18e5ca;_0x382866['push']('\x0aπŸ“„\x20'+_0x43faab+':'),_0x382866[_0x40c9db(0xea)](_0x40c9db(0x124)+exports['join'](',\x20'));}),_0x382866[_0x18e5ca(0xea)]('\n \uD83D\uDCA1 Note: These exports are not imported within this project'),_0x382866['push'](_0x18e5ca(0xe8)));_0x382866[_0x18e5ca(0xea)](_0x18e5ca(0x107)),_0x382866['push']('──────────────────');const _0x12d2ed=_0x1949cd[_0x18e5ca(0xb7)][_0x18e5ca(0xa5)]+Object['values'](_0x1949cd['missingExports'])[_0x18e5ca(0xbb)]((_0xff096,_0x20fbe8)=>_0xff096+_0x20fbe8['length'],0x0);return _0x12d2ed===0x0?_0x382866['push']('\u2705 Your import/export structure looks good!'):(_0x382866[_0x18e5ca(0xea)]('Found\x20'+_0x12d2ed+'\x20issue(s)\x20that\x20need\x20attention:'),_0x1949cd['fileNotFoundImports']['length']>0x0&&_0x382866[_0x18e5ca(0xea)](_0x18e5ca(0xf3)+_0x1949cd['fileNotFoundImports']['length']+'\x20missing\x20file\x20reference(s)'),Object[_0x18e5ca(0xbf)](_0x1949cd[_0x18e5ca(0xac)])[_0x18e5ca(0xa5)]>0x0&&_0x382866['push']('\x20\x202.\x20Resolve\x20'+Object[_0x18e5ca(0xd7)](_0x1949cd[_0x18e5ca(0xac)])['reduce']((_0x10e4be,_0x4e93e9)=>_0x10e4be+_0x4e93e9[_0x18e5ca(0xa5)],0x0)+_0x18e5ca(0x12a)),_0x1949cd[_0x18e5ca(0x9c)]&&_0x1949cd['circularDependencies']['length']>0x0&&_0x382866['push']('\x20\x203.\x20Refactor\x20'+_0x1949cd[_0x18e5ca(0x9c)]['length']+'\x20circular\x20dependency\x20chain(s)')),_0x382866['join']('\x0a');}}class ImportExportAnalyzer{constructor(_0x48257d,_0x3b5475=a0_0x21425b(0xf1),_0x2082ad=null){const _0x12d66e=a0_0x21425b;this[_0x12d66e(0x100)]=a0_0x225a71['resolve'](_0x48257d),this['ignoreFile']=_0x3b5475,this['logger']=_0x2082ad,this[_0x12d66e(0xe9)]=[...ANALYZER_CONFIG[_0x12d66e(0xe6)]],this['imports']=[],this[_0x12d66e(0x104)]=new Map(),this['dependencies']=new Map();}async[a0_0x21425b(0xed)](){const _0x9d0c7f=a0_0x21425b;try{const _0x4eb672=a0_0x225a71['join'](this[_0x9d0c7f(0x100)],this['ignoreFile']),_0x3b51c1=await a0_0x2f6ecc['readFile'](_0x4eb672,'utf-8'),_0x13611a=_0x3b51c1[_0x9d0c7f(0x138)]('\x0a')['map'](_0x30998c=>_0x30998c[_0x9d0c7f(0x109)]())['filter'](_0x10f97d=>_0x10f97d&&!_0x10f97d['startsWith']('#'));this['ignorePatterns'][_0x9d0c7f(0xea)](..._0x13611a),this['logger']?.[_0x9d0c7f(0xb5)]('Loaded\x20ignore\x20patterns',{'count':_0x13611a[_0x9d0c7f(0xa5)]});}catch{this[_0x9d0c7f(0xd9)]?.[_0x9d0c7f(0xb5)]('No ignore file found, using defaults');}}['shouldIgnoreFile'](_0x3dbda8){const _0x11c86f=a0_0x21425b,_0x4c6db4=a0_0x225a71[_0x11c86f(0xf5)](this[_0x11c86f(0x100)],_0x3dbda8);return this['ignorePatterns']['some'](_0x12387b=>{const _0x1702eb=_0x11c86f;if(_0x12387b['includes']('*')){const _0x4bba0=new RegExp(_0x12387b['replace'](/\*/g,'.*'));return _0x4bba0[_0x1702eb(0x122)](_0x4c6db4)||_0x4bba0['test'](a0_0x225a71[_0x1702eb(0xa0)](_0x3dbda8));}return _0x4c6db4[_0x1702eb(0xb9)](_0x12387b)||a0_0x225a71[_0x1702eb(0xa0)](_0x3dbda8)===_0x12387b;});}async['getAllFiles'](_0x3a5af6){const _0x3a05cc=a0_0x21425b,_0x576584=[],_0x48cb98=async _0x1eebe8=>{const _0x452d09=a0_0x3a94;try{const _0x129b14=await a0_0x2f6ecc['readdir'](_0x1eebe8,{'withFileTypes':!![]});for(const _0x5d43dc of _0x129b14){const _0x34a313=a0_0x225a71['join'](_0x1eebe8,_0x5d43dc[_0x452d09(0xf8)]);if(this[_0x452d09(0x103)](_0x34a313))continue;if(_0x5d43dc['isDirectory']())await _0x48cb98(_0x34a313);else{if(_0x5d43dc['isFile']()){const _0x11a1d6=a0_0x225a71['extname'](_0x5d43dc[_0x452d09(0xf8)]);ANALYZER_CONFIG[_0x452d09(0xba)][_0x452d09(0xb9)](_0x11a1d6)&&_0x576584['push'](_0x34a313);}}}}catch(_0x568951){this['logger']?.[_0x452d09(0xda)]('Cannot\x20read\x20directory',{'dir':_0x1eebe8,'error':_0x568951[_0x452d09(0x110)]});}};await _0x48cb98(_0x3a5af6);if(_0x576584['length']>ANALYZER_CONFIG[_0x3a05cc(0xf7)]){this[_0x3a05cc(0xd9)]?.[_0x3a05cc(0xda)]('File\x20count\x20exceeds\x20limit:\x20'+_0x576584[_0x3a05cc(0xa5)]+'\x20>\x20'+ANALYZER_CONFIG[_0x3a05cc(0xf7)]);throw new Error('Too\x20many\x20files\x20to\x20analyze:\x20'+_0x576584[_0x3a05cc(0xa5)]+_0x3a05cc(0xc1)+ANALYZER_CONFIG['MAX_FILES']+')');}return _0x576584;}async[a0_0x21425b(0x123)](_0x26523f,_0xe58b9d){const _0x290d4c=a0_0x21425b,imports=[],_0x1007d5=_0x26523f['split']('\x0a'),_0x20cb9d=this['getRelativePath'](_0xe58b9d);!this[_0x290d4c(0x12b)]['has'](_0x20cb9d)&&this['dependencies']['set'](_0x20cb9d,new Set());for(let _0xf8b238=0x0;_0xf8b238<_0x1007d5[_0x290d4c(0xa5)];_0xf8b238++){const _0x1194f6=_0x1007d5[_0xf8b238]['trim']();if(_0x1194f6['startsWith']('//')||_0x1194f6[_0x290d4c(0xfc)]('/*'))continue;let _0x34499c=_0x1194f6,_0x1014f9=_0xf8b238;while(!_0x34499c[_0x290d4c(0xb9)](';')&&!_0x34499c['match'](/from\s+['"`][^'"`]+['"`]/)&&_0x1014f9<_0x1007d5['length']-0x1){_0x1014f9++;const _0x3858ca=_0x1007d5[_0x1014f9][_0x290d4c(0x109)]();if(_0x3858ca[_0x290d4c(0xfc)]('//')||_0x3858ca['startsWith']('/*'))continue;_0x34499c+='\x20'+_0x3858ca;}const importRegex=/import\s+(?:(?:\{([^}]+)\})|(?:([^,\s]+)(?:\s*,\s*\{([^}]+)\})?)|(?:\*\s+as\s+([^,\s]+)))\s+from\s+['"`]([^'"`]+)['"`]/g;let _0x4304e6;while((_0x4304e6=importRegex[_0x290d4c(0xa2)](_0x34499c))!==null){const [,_0x138379,defaultImport,_0x1a19e4,_0xc15421,_0x1a7dac]=_0x4304e6,_0x302cd8=await this[_0x290d4c(0xd6)](_0x1a7dac,_0xe58b9d);!_0x302cd8['isExternal']&&_0x302cd8[_0x290d4c(0xcf)]&&this['dependencies'][_0x290d4c(0x12c)](_0x20cb9d)[_0x290d4c(0xd8)](_0x302cd8['path']);defaultImport&&imports['push']({'importingFile':_0x20cb9d,'importedSymbol':defaultImport['trim'](),'importedFromFile':_0x302cd8[_0x290d4c(0x11d)],'fileExists':_0x302cd8[_0x290d4c(0xcf)],'isExternal':_0x302cd8['isExternal']||![],'isDefault':!![]});_0xc15421&&imports['push']({'importingFile':_0x20cb9d,'importedSymbol':_0xc15421[_0x290d4c(0x109)](),'importedFromFile':_0x302cd8['path'],'fileExists':_0x302cd8['exists'],'isExternal':_0x302cd8['isExternal']||![],'isNamespace':!![]});const _0x53feab=[_0x138379,_0x1a19e4][_0x290d4c(0x105)](Boolean)[_0x290d4c(0x129)](',');if(_0x53feab){const _0x4100df=_0x53feab['split'](',')['map'](_0x1ffe21=>{const _0x324946=_0x290d4c,_0x2df90e=_0x1ffe21[_0x324946(0x109)]()['split'](/\s+as\s+/);return _0x2df90e[0x0]['trim']();});_0x4100df['forEach'](_0x23f47f=>{const _0x165164=_0x290d4c;_0x23f47f&&imports[_0x165164(0xea)]({'importingFile':_0x20cb9d,'importedSymbol':_0x23f47f,'importedFromFile':_0x302cd8['path'],'fileExists':_0x302cd8['exists'],'isExternal':_0x302cd8['isExternal']||![],'isDefault':![]});});}}const requireRegex=/(?:const|let|var)\s+(?:\{([^}]+)\}|([^=\s]+))\s*=\s*require\(['"`]([^'"`]+)['"`]\)/g;while((_0x4304e6=requireRegex['exec'](_0x34499c))!==null){const [,_0x2ef9ea,_0x14900e,_0x280deb]=_0x4304e6,_0x40fc12=await this[_0x290d4c(0xd6)](_0x280deb,_0xe58b9d);!_0x40fc12[_0x290d4c(0x12e)]&&_0x40fc12['exists']&&this['dependencies'][_0x290d4c(0x12c)](_0x20cb9d)['add'](_0x40fc12[_0x290d4c(0x11d)]);if(_0x2ef9ea){const _0x43f9c1=_0x2ef9ea['split'](',')['map'](_0x559af3=>_0x559af3['trim']()['split'](':')[0x0][_0x290d4c(0x109)]());_0x43f9c1[_0x290d4c(0x13a)](_0x55cb8e=>{const _0x20b5d1=_0x290d4c;_0x55cb8e&&imports['push']({'importingFile':_0x20cb9d,'importedSymbol':_0x55cb8e,'importedFromFile':_0x40fc12['path'],'fileExists':_0x40fc12['exists'],'isExternal':_0x40fc12[_0x20b5d1(0x12e)]||![],'isDefault':![]});});}else _0x14900e&&imports['push']({'importingFile':_0x20cb9d,'importedSymbol':_0x14900e['trim'](),'importedFromFile':_0x40fc12[_0x290d4c(0x11d)],'fileExists':_0x40fc12['exists'],'isExternal':_0x40fc12[_0x290d4c(0x12e)]||![],'isDefault':!![]});}_0xf8b238=_0x1014f9;}return imports;}[a0_0x21425b(0xcc)](_0x4d8f94){const _0x5e83d3=a0_0x21425b,exports=new Set(),_0x7fc11e=_0x4d8f94[_0x5e83d3(0x138)]('\x0a');for(const _0x3bfb29 of _0x7fc11e){const _0xb92272=_0x3bfb29[_0x5e83d3(0x109)]();if(_0xb92272[_0x5e83d3(0xfc)]('//')||_0xb92272['startsWith']('/*'))continue;/export\s+default\s+/[_0x5e83d3(0x122)](_0xb92272)&&exports['add']('default');const _0x5af4c3=_0xb92272[_0x5e83d3(0x101)](/export\s+\{([^}]+)\}/);if(_0x5af4c3){const _0x1d7ef7=_0x5af4c3[0x1]['split'](',')[_0x5e83d3(0x120)](_0x2e81c7=>{const _0x454a43=_0x5e83d3,_0x15b1d3=_0x2e81c7[_0x454a43(0x109)]()[_0x454a43(0x138)](/\s+as\s+/);return _0x15b1d3[_0x15b1d3[_0x454a43(0xa5)]-0x1]['trim']();});_0x1d7ef7['forEach'](_0x28fb46=>exports['add'](_0x28fb46));}const _0x5570a9=_0xb92272['match'](/export\s+(?:const|let|var|function|class|async\s+function)\s+([^=\s(]+)/);_0x5570a9&&exports['add'](_0x5570a9[0x1]);const exportFromMatch=_0xb92272['match'](/export\s+\{([^}]+)\}\s+from/);if(exportFromMatch){const _0x3b1bbd=exportFromMatch[0x1][_0x5e83d3(0x138)](',')[_0x5e83d3(0x120)](_0x4ec10c=>{const _0x51db7a=_0x5e83d3,_0x5ac53a=_0x4ec10c[_0x51db7a(0x109)]()['split'](/\s+as\s+/);return _0x5ac53a[_0x5ac53a['length']-0x1]['trim']();});_0x3b1bbd[_0x5e83d3(0x13a)](_0x4a962b=>exports[_0x5e83d3(0xd8)](_0x4a962b));}/export\s+\*\s+from/[_0x5e83d3(0x122)](_0xb92272)&&exports['add']('*');const moduleExportsMatch=_0xb92272[_0x5e83d3(0x101)](/module\.exports\s*=\s*\{([^}]+)\}/);if(moduleExportsMatch){const _0x5010b6=moduleExportsMatch[0x1]['split'](',')['map'](_0x35f42a=>{const _0x2b19fd=_0x5e83d3,_0xa42a3f=_0x35f42a[_0x2b19fd(0x109)]()['split'](':');return _0xa42a3f[0x0][_0x2b19fd(0x109)]();});_0x5010b6['forEach'](_0x12885b=>exports['add'](_0x12885b));}/module\.exports\s*=\s*[^{]/[_0x5e83d3(0x122)](_0xb92272)&&exports['add']('default');const moduleExportsPropMatch=_0xb92272[_0x5e83d3(0x101)](/module\.exports\.([^=\s]+)\s*=/);moduleExportsPropMatch&&exports['add'](moduleExportsPropMatch[0x1]);const exportsPropMatch=_0xb92272[_0x5e83d3(0x101)](/exports\.([^=\s]+)\s*=/);exportsPropMatch&&exports['add'](exportsPropMatch[0x1]);}return exports;}async[a0_0x21425b(0xd6)](importPath,_0x2d0829){const _0xbfee1=a0_0x21425b;if(importPath['startsWith']('.')){const _0x304c0c=a0_0x225a71[_0xbfee1(0xae)](_0x2d0829),_0x1c9004=a0_0x225a71['resolve'](_0x304c0c,importPath);if(a0_0x225a71[_0xbfee1(0xe4)](importPath))try{const _0x1aa95a=await a0_0x2f6ecc[_0xbfee1(0x10f)](_0x1c9004);if(_0x1aa95a['isFile']())return{'path':this[_0xbfee1(0xa3)](_0x1c9004),'exists':!![]};}catch{}const _0x437fbf=['','.js',_0xbfee1(0x9a),'.ts',_0xbfee1(0x12d),'.tsx','/index.js',_0xbfee1(0x11f),'/index.jsx','/index.tsx'];for(const _0x4bb3b2 of _0x437fbf){const _0x362bee=_0x1c9004+_0x4bb3b2;try{const _0x31e2c0=await a0_0x2f6ecc[_0xbfee1(0x10f)](_0x362bee);if(_0x31e2c0[_0xbfee1(0xf9)]())return{'path':this['getRelativePath'](_0x362bee),'exists':!![]};}catch{}}return{'path':this[_0xbfee1(0xa3)](_0x1c9004),'exists':![]};}return{'path':importPath,'exists':!![],'isExternal':!![]};}['getRelativePath'](_0x5a76a5){const _0x4dd95b=a0_0x21425b;return a0_0x225a71['relative'](this['rootDir'],_0x5a76a5)[_0x4dd95b(0xdf)](/\\/g,'/');}['findCircularDependencies'](){const _0x1611af=a0_0x21425b,_0xea369=[],_0x84df49=new Set(),_0x52b564=new Set(),_0x4bba10=(_0x4aab8d,_0x1dbd4a=[])=>{const _0x105cc8=a0_0x3a94;if(_0x52b564['has'](_0x4aab8d)){const _0xb94e5c=_0x1dbd4a[_0x105cc8(0x137)](_0x4aab8d);_0xb94e5c!==-0x1&&_0xea369['push']([..._0x1dbd4a['slice'](_0xb94e5c),_0x4aab8d]);return;}if(_0x84df49['has'](_0x4aab8d))return;_0x84df49[_0x105cc8(0xd8)](_0x4aab8d),_0x52b564[_0x105cc8(0xd8)](_0x4aab8d),_0x1dbd4a['push'](_0x4aab8d);const _0x5b6a65=this['dependencies']['get'](_0x4aab8d)||new Set();for(const _0x15e4e6 of _0x5b6a65){_0x4bba10(_0x15e4e6,[..._0x1dbd4a]);}_0x52b564[_0x105cc8(0xc2)](_0x4aab8d);};for(const _0xea12e7 of this[_0x1611af(0x12b)][_0x1611af(0xbf)]()){!_0x84df49['has'](_0xea12e7)&&_0x4bba10(_0xea12e7);}return _0xea369;}['findUnusedExports'](){const _0x6cbb5a=a0_0x21425b,_0x1d0f8b=new Map();for(const _0x14a34e of this['imports']){!_0x14a34e['isExternal']&&(!_0x1d0f8b[_0x6cbb5a(0xb2)](_0x14a34e['importedFromFile'])&&_0x1d0f8b['set'](_0x14a34e['importedFromFile'],new Set()),_0x1d0f8b['get'](_0x14a34e[_0x6cbb5a(0xaf)])['add'](_0x14a34e['importedSymbol']));}const _0x2b879f={};for(const [_0x525210,exports]of this[_0x6cbb5a(0x104)][_0x6cbb5a(0xbc)]()){const _0x127d62=_0x1d0f8b[_0x6cbb5a(0x12c)](_0x525210)||new Set(),_0x4a8652=Array[_0x6cbb5a(0x127)](exports)['filter'](_0x4b89e5=>!_0x127d62['has'](_0x4b89e5)&&_0x4b89e5!=='*');_0x4a8652[_0x6cbb5a(0xa5)]>0x0&&(_0x2b879f[_0x525210]=_0x4a8652);}return _0x2b879f;}async[a0_0x21425b(0xff)](_0x432189=a0_0x21425b(0x102)){const _0x11211a=a0_0x21425b;this[_0x11211a(0xd9)]?.['info']('Starting import analysis',{'mode':_0x432189,'rootDir':this[_0x11211a(0x100)]}),await this['loadIgnoreFile']();const _0x51d64d=await this[_0x11211a(0xc9)](this[_0x11211a(0x100)]);this['logger']?.[_0x11211a(0xe7)](_0x11211a(0xa8),{'count':_0x51d64d['length']});for(const _0x2c62e8 of _0x51d64d){try{const _0x543459=await a0_0x2f6ecc[_0x11211a(0xee)](_0x2c62e8,_0x11211a(0x9b)),_0x27c36b=this[_0x11211a(0xa3)](_0x2c62e8),_0x8d377d=await this[_0x11211a(0x123)](_0x543459,_0x2c62e8);this[_0x11211a(0xb3)][_0x11211a(0xea)](..._0x8d377d);const _0x2f7d1d=this[_0x11211a(0xcc)](_0x543459);this[_0x11211a(0x104)][_0x11211a(0x119)](_0x27c36b,_0x2f7d1d);}catch(_0x585f5e){this[_0x11211a(0xd9)]?.[_0x11211a(0xda)]('Error\x20parsing\x20file',{'file':_0x2c62e8,'error':_0x585f5e['message']});}}this[_0x11211a(0xd9)]?.[_0x11211a(0xe7)](_0x11211a(0xfe),{'imports':this['imports']['length'],'exports':this['exports']['size']});const _0x3ce468={'summary':{'totalFiles':_0x51d64d[_0x11211a(0xa5)],'totalImports':this['imports']['length'],'totalExports':Array[_0x11211a(0x127)](this['exports']['values']())['reduce']((_0x80b639,exports)=>_0x80b639+exports[_0x11211a(0xd3)],0x0)},'missingExports':{},'missingFiles':{},'fileNotFoundImports':[]};for(const importEntry of this['imports']){const {importingFile:importingFile,importedSymbol:importedSymbol,importedFromFile:importedFromFile,isDefault:_0x1020c3,isNamespace:_0x1ad6d4,fileExists:_0x171ba0,isExternal:_0x317f88}=importEntry;if(!_0x171ba0&&!_0x317f88){_0x3ce468[_0x11211a(0xb7)]['push']({'importingFile':importingFile,'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'isDefault':_0x1020c3||![],'isNamespace':_0x1ad6d4||![]});!_0x3ce468['missingFiles'][importingFile]&&(_0x3ce468['missingFiles'][importingFile]=[]);_0x3ce468[_0x11211a(0x13c)][importingFile][_0x11211a(0xea)]({'missingFile':importedFromFile,'importedSymbol':importedSymbol,'isDefault':_0x1020c3||![],'isNamespace':_0x1ad6d4||![]});continue;}if(_0x317f88)continue;const exportingFileExports=this[_0x11211a(0x104)][_0x11211a(0x12c)](importedFromFile);let _0x5b3e4b=![];if(exportingFileExports){if(_0x1ad6d4)_0x5b3e4b=exportingFileExports['size']>0x0;else _0x1020c3?_0x5b3e4b=exportingFileExports['has']('default'):_0x5b3e4b=exportingFileExports['has'](importedSymbol)||exportingFileExports[_0x11211a(0xb2)]('*');}!_0x5b3e4b&&(!_0x3ce468['missingExports'][importingFile]&&(_0x3ce468['missingExports'][importingFile]=[]),_0x3ce468[_0x11211a(0xac)][importingFile][_0x11211a(0xea)]({'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'availableExports':exportingFileExports?Array[_0x11211a(0x127)](exportingFileExports):[],'isDefault':_0x1020c3||![],'isNamespace':_0x1ad6d4||![]}));}return(_0x432189===_0x11211a(0x102)||_0x432189==='fix')&&(this['logger']?.['info']('Running\x20full\x20analysis'),_0x3ce468[_0x11211a(0x9c)]=this['findCircularDependencies'](),_0x3ce468[_0x11211a(0x10d)]=this['findUnusedExports']()),this['logger']?.[_0x11211a(0xe7)]('Analysis\x20complete',{'missingFiles':_0x3ce468['fileNotFoundImports'][_0x11211a(0xa5)],'missingExports':Object['keys'](_0x3ce468['missingExports'])[_0x11211a(0xa5)]}),_0x3ce468;}}export default ImportAnalyzerTool;
1
+ const a0_0x57f0e4=a0_0x174d;(function(_0x5b0d99,_0x2339e0){const _0x4c5d4b=a0_0x174d,_0x46634c=_0x5b0d99();while(!![]){try{const _0x58d34e=parseInt(_0x4c5d4b(0xe9))/0x1*(parseInt(_0x4c5d4b(0x84))/0x2)+-parseInt(_0x4c5d4b(0xe5))/0x3*(-parseInt(_0x4c5d4b(0x107))/0x4)+parseInt(_0x4c5d4b(0xc9))/0x5*(-parseInt(_0x4c5d4b(0xee))/0x6)+parseInt(_0x4c5d4b(0x8d))/0x7*(-parseInt(_0x4c5d4b(0xb0))/0x8)+parseInt(_0x4c5d4b(0x11f))/0x9*(-parseInt(_0x4c5d4b(0xf0))/0xa)+-parseInt(_0x4c5d4b(0x116))/0xb+parseInt(_0x4c5d4b(0xb3))/0xc;if(_0x58d34e===_0x2339e0)break;else _0x46634c['push'](_0x46634c['shift']());}catch(_0x20325b){_0x46634c['push'](_0x46634c['shift']());}}}(a0_0x5b97,0x900a8));import{promises as a0_0x3f6e9c}from'fs';import a0_0x343342 from'path';import{BaseTool}from'./baseTool.js';import a0_0xcd151c from'../utilities/tagParser.js';const ANALYZER_CONFIG={'DEFAULT_MODE':'full','VALID_MODES':[a0_0x57f0e4(0x9d),'quick',a0_0x57f0e4(0x11a)],'DEFAULT_OUTPUT':a0_0x57f0e4(0xe4),'VALID_OUTPUTS':['summary','detailed',a0_0x57f0e4(0xb7)],'DEFAULT_IGNORE_FILE':a0_0x57f0e4(0x10c),'MAX_FILES':0x2710,'SUPPORTED_EXTENSIONS':['.js','.mjs',a0_0x57f0e4(0xff),a0_0x57f0e4(0x111),a0_0x57f0e4(0x97)],'DEFAULT_IGNORE_PATTERNS':[a0_0x57f0e4(0x109),a0_0x57f0e4(0xf8),'dist',a0_0x57f0e4(0xb6),a0_0x57f0e4(0x102)],'FILE_READ_TIMEOUT':0x1388};export class ImportAnalyzerTool extends BaseTool{constructor(_0x1c48e5={},_0x38cc2e=null){super(_0x1c48e5,_0x38cc2e),this['id']='import-analyzer';}['getDescription'](){const _0x420329=a0_0x57f0e4;return _0x420329(0x9a);}[a0_0x57f0e4(0x115)](_0x2d6a0f){const _0x57071c=a0_0x57f0e4;if(typeof _0x2d6a0f===_0x57071c(0x125)&&_0x2d6a0f!==null)return{'path':_0x2d6a0f['path']||'.','mode':_0x2d6a0f['mode']||ANALYZER_CONFIG['DEFAULT_MODE'],'output':_0x2d6a0f['output']||ANALYZER_CONFIG[_0x57071c(0xc5)],'ignoreFile':_0x2d6a0f[_0x57071c(0xb1)]||ANALYZER_CONFIG['DEFAULT_IGNORE_FILE']};if(typeof _0x2d6a0f===_0x57071c(0xf9)){const _0x2fd2ae=/<import-analyzer([^>]*)>([\s\S]*?)<\/import-analyzer>/i,_0x261e3a=_0x2fd2ae['exec'](_0x2d6a0f);if(_0x261e3a){const _0x29ed2e=_0x261e3a[0x1],_0x2f3dbf=_0x261e3a[0x2],_0x1d64d4=/path=["']([^"']*)["']/i[_0x57071c(0xb9)](_0x29ed2e),_0x3b77ee=/mode=["']([^"']*)["']/i[_0x57071c(0xb9)](_0x29ed2e),_0x3ee62a=/output=["']([^"']*)["']/i[_0x57071c(0xb9)](_0x29ed2e),_0x104dfc=/ignore-file=["']([^"']*)["']/i['exec'](_0x29ed2e),_0x53cbf2=/<path>(.*?)<\/path>/i,_0x3379ea=_0x53cbf2[_0x57071c(0xb9)](_0x2f3dbf),_0x25e511=/<mode>(.*?)<\/mode>/i,_0x369295=_0x25e511[_0x57071c(0xb9)](_0x2f3dbf),_0xf506af=/<output>(.*?)<\/output>/i,_0x164828=_0xf506af['exec'](_0x2f3dbf),_0x5e1b37=/<ignore-file>(.*?)<\/ignore-file>/i,_0x1bcddb=_0x5e1b37['exec'](_0x2f3dbf),_0x255a49=(_0x3379ea?_0x3379ea[0x1][_0x57071c(0xc6)]():null)||(_0x1d64d4?_0x1d64d4[0x1]:'.'),_0x51509f=(_0x369295?_0x369295[0x1]['trim']():null)||(_0x3b77ee?_0x3b77ee[0x1]:ANALYZER_CONFIG['DEFAULT_MODE']),_0x52187e=(_0x164828?_0x164828[0x1][_0x57071c(0xc6)]():null)||(_0x3ee62a?_0x3ee62a[0x1]:ANALYZER_CONFIG['DEFAULT_OUTPUT']),_0x29c8e4=(_0x1bcddb?_0x1bcddb[0x1]['trim']():null)||(_0x104dfc?_0x104dfc[0x1]:ANALYZER_CONFIG[_0x57071c(0x108)]);return{'path':_0x255a49,'mode':_0x51509f,'output':_0x52187e,'ignoreFile':_0x29c8e4};}try{const _0x3fae1c=a0_0xcd151c['parseTags'](_0x2d6a0f,'analyze');if(_0x3fae1c&&_0x3fae1c['length']>0x0){const _0x2bd9da=_0x3fae1c[0x0];return{'path':_0x2bd9da['attributes']['path']||'.','mode':_0x2bd9da['attributes'][_0x57071c(0x9f)]||ANALYZER_CONFIG[_0x57071c(0x110)],'output':_0x2bd9da[_0x57071c(0x98)][_0x57071c(0xbe)]||ANALYZER_CONFIG[_0x57071c(0xc5)],'ignoreFile':_0x2bd9da['attributes']['ignore-file']||ANALYZER_CONFIG['DEFAULT_IGNORE_FILE']};}}catch(_0x3bb987){}throw new Error('Invalid import-analyzer format. Use <import-analyzer> tags or JSON format.');}throw new Error(_0x57071c(0x12b));}[a0_0x57f0e4(0xd7)](_0x621ce8){const _0x4b60a4=a0_0x57f0e4;if(!_0x621ce8||typeof _0x621ce8!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x621ce8[_0x4b60a4(0x124)]&&typeof _0x621ce8[_0x4b60a4(0x124)]!==_0x4b60a4(0xf9))throw new Error(_0x4b60a4(0x83));if(_0x621ce8[_0x4b60a4(0x9f)]&&!ANALYZER_CONFIG[_0x4b60a4(0xbf)][_0x4b60a4(0x93)](_0x621ce8[_0x4b60a4(0x9f)]))throw new Error('Invalid\x20mode:\x20'+_0x621ce8['mode']+_0x4b60a4(0xcb)+ANALYZER_CONFIG[_0x4b60a4(0xbf)][_0x4b60a4(0xbd)](',\x20'));if(_0x621ce8['output']&&!ANALYZER_CONFIG[_0x4b60a4(0x96)][_0x4b60a4(0x93)](_0x621ce8['output']))throw new Error(_0x4b60a4(0xfa)+_0x621ce8['output']+_0x4b60a4(0xcb)+ANALYZER_CONFIG[_0x4b60a4(0x96)]['join'](',\x20'));if(_0x621ce8['ignoreFile']&&typeof _0x621ce8[_0x4b60a4(0xb1)]!==_0x4b60a4(0xf9))throw new Error('ignoreFile\x20must\x20be\x20a\x20string');}[a0_0x57f0e4(0x85)](_0x3c801c,_0x3d1e94){const _0x48f19a=a0_0x57f0e4,{projectDir:_0x51f776,directoryAccess:_0x3e897f}=_0x3d1e94;let _0x3d8d3c=_0x51f776||process[_0x48f19a(0x12c)]();_0x3e897f&&_0x3e897f[_0x48f19a(0xe3)]&&(_0x3d8d3c=_0x3e897f[_0x48f19a(0xe3)]);const _0x34d6d8=a0_0x343342[_0x48f19a(0xf3)](_0x3c801c)?a0_0x343342['normalize'](_0x3c801c):a0_0x343342[_0x48f19a(0x128)](a0_0x343342[_0x48f19a(0xbd)](_0x3d8d3c,_0x3c801c)),_0x4505da=a0_0x343342[_0x48f19a(0x128)](_0x3d8d3c);if(!_0x34d6d8['startsWith'](_0x4505da))throw new Error('Path\x20traversal\x20detected:\x20'+_0x3c801c+_0x48f19a(0x87));return _0x34d6d8;}async['execute'](_0x5cedfd,_0x8a3717={}){const _0xf4855f=a0_0x57f0e4;try{this['_validateParameters'](_0x5cedfd);const {path:_0x4d1c47,mode:_0x2c252a,output:_0x20a1b2,ignoreFile:_0x32ec4f}=_0x5cedfd,{projectDir:_0x23c900,agentId:_0x4db24b,directoryAccess:_0x29d717}=_0x8a3717,_0x5f2a18=this[_0xf4855f(0x85)](_0x4d1c47,_0x8a3717);this['logger']?.[_0xf4855f(0xb4)](_0xf4855f(0xe1),{'mode':_0x2c252a,'resolvedPath':_0x5f2a18,'output':_0x20a1b2,'agentId':_0x4db24b});const _0x1e96bf=[];_0x1e96bf[_0xf4855f(0xea)](_0xf4855f(0x11e)+_0x5f2a18),_0x1e96bf[_0xf4855f(0xea)](_0xf4855f(0xac)+_0x2c252a),_0x1e96bf[_0xf4855f(0xea)](_0xf4855f(0x100)+_0x20a1b2+'\x0a');try{await a0_0x3f6e9c[_0xf4855f(0xba)](_0x5f2a18);}catch{return{'success':![],'error':'Path\x20does\x20not\x20exist:\x20'+_0x5f2a18,'output':_0x1e96bf[_0xf4855f(0xbd)]('\x0a')};}const _0x24992c=new ImportExportAnalyzer(_0x5f2a18,_0x32ec4f,this[_0xf4855f(0xcd)]),_0x1b684f=await _0x24992c['analyze'](_0x2c252a);let _0x116b74;switch(_0x20a1b2){case'json':_0x116b74=JSON['stringify'](_0x1b684f,null,0x2);break;case _0xf4855f(0xaa):_0x116b74=this[_0xf4855f(0xfb)](_0x1b684f),_0x1e96bf['push'](_0x116b74);break;case _0xf4855f(0xe4):default:_0x116b74=this[_0xf4855f(0x92)](_0x1b684f),_0x1e96bf[_0xf4855f(0xea)](_0x116b74);break;}return{'success':!![],'mode':_0x2c252a,'message':'Import\x20analysis\x20completed','statistics':{'totalFiles':_0x1b684f[_0xf4855f(0xe4)]['totalFiles'],'totalImports':_0x1b684f[_0xf4855f(0xe4)][_0xf4855f(0x127)],'totalExports':_0x1b684f['summary'][_0xf4855f(0x121)],'issuesFound':_0x1b684f[_0xf4855f(0xbc)][_0xf4855f(0x94)]+Object[_0xf4855f(0xc1)](_0x1b684f[_0xf4855f(0x8a)])[_0xf4855f(0x82)]((_0x422343,_0x167dbc)=>_0x422343+_0x167dbc['length'],0x0)},'output':_0x20a1b2===_0xf4855f(0xb7)?_0x116b74:_0x1e96bf[_0xf4855f(0xbd)]('\x0a'),'results':_0x1b684f};}catch(_0x1af514){return this['logger']?.[_0xf4855f(0x86)]('Import\x20analyzer\x20error:',_0x1af514),{'success':![],'error':_0x1af514[_0xf4855f(0x10d)],'output':_0x1af514['message']};}}[a0_0x57f0e4(0x92)](_0x56e3ae){const _0x236837=a0_0x57f0e4,_0x596db2=[];_0x596db2['push'](_0x236837(0x12a)),_0x596db2[_0x236837(0xea)]('================================\x0a'),_0x596db2[_0x236837(0xea)](_0x236837(0xeb)+_0x56e3ae['summary'][_0x236837(0xbb)]),_0x596db2['push'](_0x236837(0xe0)+_0x56e3ae['summary']['totalImports']),_0x596db2[_0x236837(0xea)]('πŸ“€\x20Total\x20exports:\x20'+_0x56e3ae['summary'][_0x236837(0x121)]+'\x0a');const _0x11044b=_0x56e3ae[_0x236837(0xbc)][_0x236837(0x94)],_0x237d82=Object['values'](_0x56e3ae[_0x236837(0x8a)])['reduce']((_0x5a5fb6,_0x50c257)=>_0x5a5fb6+_0x50c257['length'],0x0),_0x251121=_0x56e3ae['circularDependencies']?_0x56e3ae[_0x236837(0xc7)][_0x236837(0x94)]:0x0;return _0x11044b>0x0&&_0x596db2['push'](_0x236837(0xdf)+_0x11044b+_0x236837(0xe6)),_0x237d82>0x0&&_0x596db2[_0x236837(0xea)](_0x236837(0x89)+_0x237d82+'\x20symbols\x20not\x20exported\x20from\x20their\x20sources'),_0x251121>0x0&&_0x596db2[_0x236837(0xea)]('πŸ”„\x20Circular\x20dependencies:\x20'+_0x251121+'\x20circular\x20dependency\x20chains\x20detected'),_0x11044b===0x0&&_0x237d82===0x0&&_0x251121===0x0?_0x596db2[_0x236837(0xea)]('\u2705 No import/export issues detected!'):(_0x596db2['push']('\x0aπŸ”\x20Top\x20Issues\x20to\x20Fix:'),Object['keys'](_0x56e3ae[_0x236837(0xf7)]||{})[_0x236837(0x94)]>0x0&&(_0x596db2['push']('\x0a\x20\x20Missing\x20Files:'),Object[_0x236837(0x103)](_0x56e3ae['missingFiles'])['slice'](0x0,0x3)[_0x236837(0xab)](([_0x50c9c2,_0x1532c8])=>{const _0x3e854a=_0x236837;_0x596db2[_0x3e854a(0xea)](_0x3e854a(0x11b)+_0x50c9c2+_0x3e854a(0xdc)+_0x1532c8[_0x3e854a(0x94)]+'\x20broken\x20import(s)');})),Object['keys'](_0x56e3ae['missingExports'])[_0x236837(0x94)]>0x0&&(_0x596db2[_0x236837(0xea)]('\x0a\x20\x20Missing\x20Exports:'),Object[_0x236837(0x103)](_0x56e3ae['missingExports'])['slice'](0x0,0x3)[_0x236837(0xab)](([_0x33e0bb,_0x84976d])=>{const _0x5d82e0=_0x236837;_0x596db2[_0x5d82e0(0xea)]('\x20\x20\x20\x20β€’\x20'+_0x33e0bb+'\x20imports\x20'+_0x84976d[_0x5d82e0(0x94)]+_0x5d82e0(0xed));})),_0x596db2['push']('\x0aπŸ’‘\x20Run\x20with\x20output=\x22detailed\x22\x20for\x20complete\x20analysis\x20and\x20fix\x20suggestions')),_0x596db2[_0x236837(0xbd)]('\x0a');}[a0_0x57f0e4(0xfb)](_0x3c8950){const _0x52f08c=a0_0x57f0e4,_0x20a0c1=[];_0x20a0c1[_0x52f08c(0xea)](_0x52f08c(0xb5)),_0x20a0c1[_0x52f08c(0xea)]('=========================================\x0a'),_0x20a0c1['push']('πŸ“ˆ\x20Statistics:'),_0x20a0c1[_0x52f08c(0xea)]('\x20\x20β€’\x20Files\x20analyzed:\x20'+_0x3c8950['summary']['totalFiles']),_0x20a0c1[_0x52f08c(0xea)](_0x52f08c(0xc0)+_0x3c8950['summary']['totalImports']),_0x20a0c1[_0x52f08c(0xea)]('\x20\x20β€’\x20Total\x20exports:\x20'+_0x3c8950['summary']['totalExports']+'\x0a');if(_0x3c8950[_0x52f08c(0xbc)]['length']>0x0){_0x20a0c1['push'](_0x52f08c(0xfd)),_0x20a0c1['push']('─────────────────');const _0x473e84={};_0x3c8950['fileNotFoundImports']['forEach'](_0x1b2478=>{const _0xbad203=_0x52f08c;!_0x473e84[_0x1b2478['importingFile']]&&(_0x473e84[_0x1b2478['importingFile']]=[]),_0x473e84[_0x1b2478[_0xbad203(0xd4)]]['push'](_0x1b2478);}),Object['entries'](_0x473e84)['forEach'](([_0x4849ff,imports])=>{const _0x103375=_0x52f08c;_0x20a0c1[_0x103375(0xea)](_0x103375(0x106)+_0x4849ff+':'),imports[_0x103375(0xab)](_0x19ee8b=>{const _0x1be23f=_0x103375,importType=_0x19ee8b[_0x1be23f(0xc3)]?'default':_0x19ee8b[_0x1be23f(0xd3)]?_0x1be23f(0xd2):'named';_0x20a0c1[_0x1be23f(0xea)]('\x20\x20\x20⚠️\x20\x20Cannot\x20find\x20file:\x20'+_0x19ee8b['importedFromFile']),_0x20a0c1['push']('\x20\x20\x20\x20\x20\x20Trying\x20to\x20import:\x20'+_0x19ee8b['importedSymbol']+'\x20('+importType+')'),_0x20a0c1[_0x1be23f(0xea)]('\x20\x20\x20\x20\x20\x20πŸ’‘\x20Fix:\x20Check\x20if\x20file\x20exists\x20or\x20correct\x20the\x20import\x20path');});});}Object[_0x52f08c(0xe7)](_0x3c8950[_0x52f08c(0x8a)])['length']>0x0&&(_0x20a0c1[_0x52f08c(0xea)]('\x0a⚠️\x20\x20MISSING\x20EXPORTS'),_0x20a0c1[_0x52f08c(0xea)]('──────────────────'),Object[_0x52f08c(0x103)](_0x3c8950[_0x52f08c(0x8a)])[_0x52f08c(0xab)](([_0x2e3691,_0x339555])=>{const _0x455403=_0x52f08c;_0x20a0c1[_0x455403(0xea)]('\x0aπŸ“„\x20'+_0x2e3691+':'),_0x339555['forEach'](_0x1eb156=>{const _0x47fd63=_0x455403,importType=_0x1eb156['isDefault']?'default':_0x1eb156['isNamespace']?'namespace':_0x47fd63(0x10a);_0x20a0c1['push'](_0x47fd63(0x81)+_0x1eb156['importedSymbol']+_0x47fd63(0xf1)+importType+')'),_0x20a0c1['push']('\x20\x20\x20\x20\x20\x20From\x20file:\x20'+_0x1eb156[_0x47fd63(0xc4)]);if(_0x1eb156[_0x47fd63(0xa7)][_0x47fd63(0x94)]>0x0){_0x20a0c1[_0x47fd63(0xea)](_0x47fd63(0xa6)+_0x1eb156['availableExports'][_0x47fd63(0xbd)](',\x20'));if(_0x1eb156[_0x47fd63(0xc3)]&&_0x1eb156[_0x47fd63(0xa7)]['includes']('default'))_0x20a0c1['push']('\x20\x20\x20\x20\x20\x20πŸ’‘\x20Fix:\x20Default\x20export\x20exists,\x20check\x20import\x20syntax');else{if(_0x1eb156[_0x47fd63(0xc3)]&&!_0x1eb156['availableExports']['includes']('default'))_0x20a0c1['push'](_0x47fd63(0xdb)+(_0x1eb156[_0x47fd63(0xa7)][0x0]||_0x47fd63(0xec))+'\x20}');else{const _0x21a44e=_0x1eb156[_0x47fd63(0xa7)]['find'](_0x5b4e0b=>_0x5b4e0b[_0x47fd63(0xcc)]()===_0x1eb156[_0x47fd63(0x118)]['toLowerCase']());_0x21a44e?_0x20a0c1[_0x47fd63(0xea)](_0x47fd63(0x8f)+_0x21a44e+'\x22?\x20(case\x20mismatch)'):_0x20a0c1['push']('\x20\x20\x20\x20\x20\x20πŸ’‘\x20Fix:\x20Add\x20export\x20for\x20\x22'+_0x1eb156[_0x47fd63(0x118)]+_0x47fd63(0xf6));}}}else _0x20a0c1['push'](_0x47fd63(0x11c)),_0x20a0c1[_0x47fd63(0xea)](_0x47fd63(0x10e)+_0x1eb156[_0x47fd63(0xc4)]+_0x47fd63(0xa0));});}));_0x3c8950[_0x52f08c(0xc7)]&&_0x3c8950[_0x52f08c(0xc7)]['length']>0x0&&(_0x20a0c1['push'](_0x52f08c(0x90)),_0x20a0c1['push']('────────────────────────'),_0x3c8950[_0x52f08c(0xc7)][_0x52f08c(0xab)]((_0x5d9021,_0x29380d)=>{const _0x262656=_0x52f08c;_0x20a0c1['push'](_0x262656(0x119)+(_0x29380d+0x1)+':'),_0x5d9021[_0x262656(0xab)]((_0x5052fe,_0x549894)=>{_0x549894<_0x5d9021['length']-0x1&&_0x20a0c1['push']('\x20\x20\x20\x20'+_0x5052fe+'\x20β†’\x20'+_0x5d9021[_0x549894+0x1]);}),_0x20a0c1[_0x262656(0xea)](_0x262656(0x95));}));_0x3c8950['unusedExports']&&Object[_0x52f08c(0xe7)](_0x3c8950['unusedExports'])[_0x52f08c(0x94)]>0x0&&(_0x20a0c1['push'](_0x52f08c(0x101)),_0x20a0c1[_0x52f08c(0xea)]('──────────────────────────────'),Object[_0x52f08c(0x103)](_0x3c8950[_0x52f08c(0xd1)])[_0x52f08c(0xa5)](0x0,0xa)[_0x52f08c(0xab)](([_0x257ce0,exports])=>{const _0x1dc092=_0x52f08c;_0x20a0c1['push'](_0x1dc092(0x106)+_0x257ce0+':'),_0x20a0c1['push'](_0x1dc092(0xf5)+exports[_0x1dc092(0xbd)](',\x20'));}),_0x20a0c1[_0x52f08c(0xea)]('\n \uD83D\uDCA1 Note: These exports are not imported within this project'),_0x20a0c1['push']('\x20\x20\x20\x20\x20\x20They\x20might\x20be\x20used\x20by\x20external\x20packages\x20or\x20could\x20be\x20removed'));_0x20a0c1[_0x52f08c(0xea)]('\x0aπŸ“‹\x20RECOMMENDATIONS'),_0x20a0c1['push']('──────────────────');const _0x2e63d4=_0x3c8950[_0x52f08c(0xbc)]['length']+Object['values'](_0x3c8950[_0x52f08c(0x8a)])[_0x52f08c(0x82)]((_0x2ecabc,_0x1410e0)=>_0x2ecabc+_0x1410e0[_0x52f08c(0x94)],0x0);return _0x2e63d4===0x0?_0x20a0c1['push']('\u2705 Your import/export structure looks good!'):(_0x20a0c1['push']('Found\x20'+_0x2e63d4+_0x52f08c(0xb2)),_0x3c8950[_0x52f08c(0xbc)][_0x52f08c(0x94)]>0x0&&_0x20a0c1[_0x52f08c(0xea)]('\x20\x201.\x20Fix\x20'+_0x3c8950['fileNotFoundImports'][_0x52f08c(0x94)]+_0x52f08c(0x104)),Object[_0x52f08c(0xe7)](_0x3c8950[_0x52f08c(0x8a)])[_0x52f08c(0x94)]>0x0&&_0x20a0c1[_0x52f08c(0xea)]('\x20\x202.\x20Resolve\x20'+Object['values'](_0x3c8950['missingExports'])['reduce']((_0x151b58,_0x21ad22)=>_0x151b58+_0x21ad22['length'],0x0)+_0x52f08c(0xd8)),_0x3c8950['circularDependencies']&&_0x3c8950['circularDependencies']['length']>0x0&&_0x20a0c1['push']('\x20\x203.\x20Refactor\x20'+_0x3c8950[_0x52f08c(0xc7)]['length']+'\x20circular\x20dependency\x20chain(s)')),_0x20a0c1[_0x52f08c(0xbd)]('\x0a');}}class ImportExportAnalyzer{constructor(_0x186421,_0x4a26c9='.gitignore',_0x25258f=null){const _0x457b93=a0_0x57f0e4;this[_0x457b93(0xf4)]=a0_0x343342['resolve'](_0x186421),this[_0x457b93(0xb1)]=_0x4a26c9,this[_0x457b93(0xcd)]=_0x25258f,this['ignorePatterns']=[...ANALYZER_CONFIG[_0x457b93(0xa1)]],this['imports']=[],this[_0x457b93(0xc2)]=new Map(),this[_0x457b93(0xde)]=new Map();}async[a0_0x57f0e4(0xa8)](){const _0x3cddda=a0_0x57f0e4;try{const _0x4dd791=a0_0x343342['join'](this[_0x3cddda(0xf4)],this[_0x3cddda(0xb1)]),_0x5e1c71=await a0_0x3f6e9c['readFile'](_0x4dd791,'utf-8'),_0x557ea5=_0x5e1c71['split']('\x0a')['map'](_0x17252e=>_0x17252e[_0x3cddda(0xc6)]())[_0x3cddda(0xa9)](_0x3c9241=>_0x3c9241&&!_0x3c9241[_0x3cddda(0x122)]('#'));this[_0x3cddda(0x120)]['push'](..._0x557ea5),this['logger']?.[_0x3cddda(0xa4)](_0x3cddda(0xd0),{'count':_0x557ea5[_0x3cddda(0x94)]});}catch{this['logger']?.['debug']('No ignore file found, using defaults');}}['shouldIgnoreFile'](_0x410092){const _0x4c2c78=a0_0x57f0e4,_0x23dbbc=a0_0x343342[_0x4c2c78(0xef)](this['rootDir'],_0x410092);return this['ignorePatterns'][_0x4c2c78(0xc8)](_0x2c3f02=>{const _0x5c8928=_0x4c2c78;if(_0x2c3f02['includes']('*')){const _0x5c0baa=new RegExp(_0x2c3f02['replace'](/\*/g,'.*'));return _0x5c0baa['test'](_0x23dbbc)||_0x5c0baa['test'](a0_0x343342['basename'](_0x410092));}return _0x23dbbc[_0x5c8928(0x93)](_0x2c3f02)||a0_0x343342[_0x5c8928(0x112)](_0x410092)===_0x2c3f02;});}async[a0_0x57f0e4(0xcf)](_0x279109){const _0x34ff69=a0_0x57f0e4,_0x857dc=[],_0x1f4102=async _0xc3d3f4=>{const _0x4a44d7=a0_0x174d;try{const _0x207f6e=await a0_0x3f6e9c['readdir'](_0xc3d3f4,{'withFileTypes':!![]});for(const _0x438db5 of _0x207f6e){const _0x5378f3=a0_0x343342['join'](_0xc3d3f4,_0x438db5['name']);if(this[_0x4a44d7(0xa2)](_0x5378f3))continue;if(_0x438db5['isDirectory']())await _0x1f4102(_0x5378f3);else{if(_0x438db5[_0x4a44d7(0xaf)]()){const _0x53c812=a0_0x343342[_0x4a44d7(0xfe)](_0x438db5[_0x4a44d7(0x88)]);ANALYZER_CONFIG[_0x4a44d7(0xe8)][_0x4a44d7(0x93)](_0x53c812)&&_0x857dc['push'](_0x5378f3);}}}}catch(_0x291dc9){this[_0x4a44d7(0xcd)]?.[_0x4a44d7(0x8e)](_0x4a44d7(0xd6),{'dir':_0xc3d3f4,'error':_0x291dc9['message']});}};await _0x1f4102(_0x279109);if(_0x857dc['length']>ANALYZER_CONFIG['MAX_FILES']){this[_0x34ff69(0xcd)]?.['warn']('File\x20count\x20exceeds\x20limit:\x20'+_0x857dc[_0x34ff69(0x94)]+'\x20>\x20'+ANALYZER_CONFIG[_0x34ff69(0xd5)]);throw new Error(_0x34ff69(0xa3)+_0x857dc[_0x34ff69(0x94)]+_0x34ff69(0xfc)+ANALYZER_CONFIG[_0x34ff69(0xd5)]+')');}return _0x857dc;}async[a0_0x57f0e4(0x126)](_0x1c78b1,_0x20f80e){const _0x41a9ec=a0_0x57f0e4,imports=[],_0x3d2634=_0x1c78b1['split']('\x0a'),_0x5462e0=this['getRelativePath'](_0x20f80e);!this[_0x41a9ec(0xde)]['has'](_0x5462e0)&&this[_0x41a9ec(0xde)]['set'](_0x5462e0,new Set());for(let _0x14ec8a=0x0;_0x14ec8a<_0x3d2634['length'];_0x14ec8a++){const _0x2f1788=_0x3d2634[_0x14ec8a][_0x41a9ec(0xc6)]();if(_0x2f1788[_0x41a9ec(0x122)]('//')||_0x2f1788['startsWith']('/*'))continue;let _0x349087=_0x2f1788,_0x59284c=_0x14ec8a;while(!_0x349087[_0x41a9ec(0x93)](';')&&!_0x349087['match'](/from\s+['"`][^'"`]+['"`]/)&&_0x59284c<_0x3d2634['length']-0x1){_0x59284c++;const _0x14d656=_0x3d2634[_0x59284c][_0x41a9ec(0xc6)]();if(_0x14d656['startsWith']('//')||_0x14d656[_0x41a9ec(0x122)]('/*'))continue;_0x349087+='\x20'+_0x14d656;}const importRegex=/import\s+(?:(?:\{([^}]+)\})|(?:([^,\s]+)(?:\s*,\s*\{([^}]+)\})?)|(?:\*\s+as\s+([^,\s]+)))\s+from\s+['"`]([^'"`]+)['"`]/g;let _0x5b078c;while((_0x5b078c=importRegex['exec'](_0x349087))!==null){const [,_0x4a52df,defaultImport,_0xfecde8,_0x1ff8ef,_0x40a7b4]=_0x5b078c,_0x2c440a=await this[_0x41a9ec(0x105)](_0x40a7b4,_0x20f80e);!_0x2c440a[_0x41a9ec(0x114)]&&_0x2c440a[_0x41a9ec(0xf2)]&&this[_0x41a9ec(0xde)]['get'](_0x5462e0)['add'](_0x2c440a[_0x41a9ec(0x124)]);defaultImport&&imports['push']({'importingFile':_0x5462e0,'importedSymbol':defaultImport['trim'](),'importedFromFile':_0x2c440a[_0x41a9ec(0x124)],'fileExists':_0x2c440a[_0x41a9ec(0xf2)],'isExternal':_0x2c440a[_0x41a9ec(0x114)]||![],'isDefault':!![]});_0x1ff8ef&&imports[_0x41a9ec(0xea)]({'importingFile':_0x5462e0,'importedSymbol':_0x1ff8ef['trim'](),'importedFromFile':_0x2c440a[_0x41a9ec(0x124)],'fileExists':_0x2c440a[_0x41a9ec(0xf2)],'isExternal':_0x2c440a[_0x41a9ec(0x114)]||![],'isNamespace':!![]});const _0x2694ad=[_0x4a52df,_0xfecde8]['filter'](Boolean)['join'](',');if(_0x2694ad){const _0x458a82=_0x2694ad['split'](',')['map'](_0x32ea45=>{const _0x17aa5e=_0x41a9ec,_0x518739=_0x32ea45[_0x17aa5e(0xc6)]()[_0x17aa5e(0x123)](/\s+as\s+/);return _0x518739[0x0][_0x17aa5e(0xc6)]();});_0x458a82[_0x41a9ec(0xab)](_0x1fd68f=>{const _0x3ea912=_0x41a9ec;_0x1fd68f&&imports['push']({'importingFile':_0x5462e0,'importedSymbol':_0x1fd68f,'importedFromFile':_0x2c440a[_0x3ea912(0x124)],'fileExists':_0x2c440a[_0x3ea912(0xf2)],'isExternal':_0x2c440a[_0x3ea912(0x114)]||![],'isDefault':![]});});}}const requireRegex=/(?:const|let|var)\s+(?:\{([^}]+)\}|([^=\s]+))\s*=\s*require\(['"`]([^'"`]+)['"`]\)/g;while((_0x5b078c=requireRegex[_0x41a9ec(0xb9)](_0x349087))!==null){const [,_0x59a40d,_0x54bb66,_0x96a56c]=_0x5b078c,_0x4d6500=await this[_0x41a9ec(0x105)](_0x96a56c,_0x20f80e);!_0x4d6500[_0x41a9ec(0x114)]&&_0x4d6500['exists']&&this[_0x41a9ec(0xde)][_0x41a9ec(0x10f)](_0x5462e0)[_0x41a9ec(0x99)](_0x4d6500[_0x41a9ec(0x124)]);if(_0x59a40d){const _0x68600=_0x59a40d[_0x41a9ec(0x123)](',')['map'](_0x55fef5=>_0x55fef5['trim']()['split'](':')[0x0][_0x41a9ec(0xc6)]());_0x68600['forEach'](_0x35954f=>{const _0x21f1c6=_0x41a9ec;_0x35954f&&imports[_0x21f1c6(0xea)]({'importingFile':_0x5462e0,'importedSymbol':_0x35954f,'importedFromFile':_0x4d6500[_0x21f1c6(0x124)],'fileExists':_0x4d6500['exists'],'isExternal':_0x4d6500[_0x21f1c6(0x114)]||![],'isDefault':![]});});}else _0x54bb66&&imports['push']({'importingFile':_0x5462e0,'importedSymbol':_0x54bb66[_0x41a9ec(0xc6)](),'importedFromFile':_0x4d6500['path'],'fileExists':_0x4d6500[_0x41a9ec(0xf2)],'isExternal':_0x4d6500[_0x41a9ec(0x114)]||![],'isDefault':!![]});}_0x14ec8a=_0x59284c;}return imports;}['parseExports'](_0x570940){const _0x5dc119=a0_0x57f0e4,exports=new Set(),_0x35f482=_0x570940['split']('\x0a');for(const _0x148482 of _0x35f482){const _0x309f12=_0x148482[_0x5dc119(0xc6)]();if(_0x309f12['startsWith']('//')||_0x309f12['startsWith']('/*'))continue;/export\s+default\s+/[_0x5dc119(0xb8)](_0x309f12)&&exports['add']('default');const _0x185974=_0x309f12['match'](/export\s+\{([^}]+)\}/);if(_0x185974){const _0x12faca=_0x185974[0x1][_0x5dc119(0x123)](',')['map'](_0x3cbdec=>{const _0x3e2b3e=_0x5dc119,_0x4640e4=_0x3cbdec[_0x3e2b3e(0xc6)]()['split'](/\s+as\s+/);return _0x4640e4[_0x4640e4['length']-0x1]['trim']();});_0x12faca[_0x5dc119(0xab)](_0x3679e8=>exports['add'](_0x3679e8));}const _0x21abb9=_0x309f12['match'](/export\s+(?:const|let|var|function|class|async\s+function)\s+([^=\s(]+)/);_0x21abb9&&exports[_0x5dc119(0x99)](_0x21abb9[0x1]);const exportFromMatch=_0x309f12['match'](/export\s+\{([^}]+)\}\s+from/);if(exportFromMatch){const _0xd40201=exportFromMatch[0x1][_0x5dc119(0x123)](',')['map'](_0x1b6fcf=>{const _0x41b658=_0x5dc119,_0xd2305c=_0x1b6fcf['trim']()['split'](/\s+as\s+/);return _0xd2305c[_0xd2305c[_0x41b658(0x94)]-0x1]['trim']();});_0xd40201['forEach'](_0x4f6d5f=>exports[_0x5dc119(0x99)](_0x4f6d5f));}/export\s+\*\s+from/[_0x5dc119(0xb8)](_0x309f12)&&exports[_0x5dc119(0x99)]('*');const moduleExportsMatch=_0x309f12[_0x5dc119(0xce)](/module\.exports\s*=\s*\{([^}]+)\}/);if(moduleExportsMatch){const _0x2fe123=moduleExportsMatch[0x1]['split'](',')['map'](_0x38a13d=>{const _0x7c24ba=_0x5dc119,_0x2a692c=_0x38a13d[_0x7c24ba(0xc6)]()['split'](':');return _0x2a692c[0x0]['trim']();});_0x2fe123['forEach'](_0x252d43=>exports[_0x5dc119(0x99)](_0x252d43));}/module\.exports\s*=\s*[^{]/['test'](_0x309f12)&&exports['add']('default');const moduleExportsPropMatch=_0x309f12['match'](/module\.exports\.([^=\s]+)\s*=/);moduleExportsPropMatch&&exports['add'](moduleExportsPropMatch[0x1]);const exportsPropMatch=_0x309f12['match'](/exports\.([^=\s]+)\s*=/);exportsPropMatch&&exports['add'](exportsPropMatch[0x1]);}return exports;}async[a0_0x57f0e4(0x105)](importPath,_0xf0cbb){const _0x265cd3=a0_0x57f0e4;if(importPath['startsWith']('.')){const _0x5ad550=a0_0x343342['dirname'](_0xf0cbb),_0x250055=a0_0x343342['resolve'](_0x5ad550,importPath);if(a0_0x343342[_0x265cd3(0xfe)](importPath))try{const _0x74836a=await a0_0x3f6e9c[_0x265cd3(0xdd)](_0x250055);if(_0x74836a[_0x265cd3(0xaf)]())return{'path':this['getRelativePath'](_0x250055),'exists':!![]};}catch{}const _0xb9cada=['','.js','.mjs',_0x265cd3(0xff),'.jsx',_0x265cd3(0x97),_0x265cd3(0xca),_0x265cd3(0x91),_0x265cd3(0xad),_0x265cd3(0x9b)];for(const _0x1d02db of _0xb9cada){const _0x469470=_0x250055+_0x1d02db;try{const _0x328820=await a0_0x3f6e9c['stat'](_0x469470);if(_0x328820['isFile']())return{'path':this['getRelativePath'](_0x469470),'exists':!![]};}catch{}}return{'path':this['getRelativePath'](_0x250055),'exists':![]};}return{'path':importPath,'exists':!![],'isExternal':!![]};}[a0_0x57f0e4(0x10b)](_0x14fef7){const _0x1543c0=a0_0x57f0e4;return a0_0x343342['relative'](this[_0x1543c0(0xf4)],_0x14fef7)['replace'](/\\/g,'/');}['findCircularDependencies'](){const _0x272c21=a0_0x57f0e4,_0x428b5c=[],_0x4767a5=new Set(),_0x473893=new Set(),_0x3cc154=(_0x4f6fe7,_0x248c66=[])=>{const _0x170664=a0_0x174d;if(_0x473893[_0x170664(0x117)](_0x4f6fe7)){const _0x94329e=_0x248c66[_0x170664(0xe2)](_0x4f6fe7);_0x94329e!==-0x1&&_0x428b5c['push']([..._0x248c66['slice'](_0x94329e),_0x4f6fe7]);return;}if(_0x4767a5[_0x170664(0x117)](_0x4f6fe7))return;_0x4767a5['add'](_0x4f6fe7),_0x473893[_0x170664(0x99)](_0x4f6fe7),_0x248c66[_0x170664(0xea)](_0x4f6fe7);const _0x8284e9=this['dependencies']['get'](_0x4f6fe7)||new Set();for(const _0x31c719 of _0x8284e9){_0x3cc154(_0x31c719,[..._0x248c66]);}_0x473893['delete'](_0x4f6fe7);};for(const _0x4f58d0 of this[_0x272c21(0xde)]['keys']()){!_0x4767a5[_0x272c21(0x117)](_0x4f58d0)&&_0x3cc154(_0x4f58d0);}return _0x428b5c;}[a0_0x57f0e4(0x8b)](){const _0x1e1468=a0_0x57f0e4,_0x39af3f=new Map();for(const _0xd9a3d5 of this['imports']){!_0xd9a3d5[_0x1e1468(0x114)]&&(!_0x39af3f[_0x1e1468(0x117)](_0xd9a3d5['importedFromFile'])&&_0x39af3f[_0x1e1468(0xda)](_0xd9a3d5['importedFromFile'],new Set()),_0x39af3f[_0x1e1468(0x10f)](_0xd9a3d5[_0x1e1468(0xc4)])['add'](_0xd9a3d5[_0x1e1468(0x118)]));}const _0x297a8e={};for(const [_0x4f11c6,exports]of this['exports']['entries']()){const _0x2573ff=_0x39af3f['get'](_0x4f11c6)||new Set(),_0x571593=Array[_0x1e1468(0x11d)](exports)[_0x1e1468(0xa9)](_0x2e59bc=>!_0x2573ff['has'](_0x2e59bc)&&_0x2e59bc!=='*');_0x571593['length']>0x0&&(_0x297a8e[_0x4f11c6]=_0x571593);}return _0x297a8e;}async['analyze'](_0x5af4aa='full'){const _0xe8b62f=a0_0x57f0e4;this[_0xe8b62f(0xcd)]?.['info']('Starting import analysis',{'mode':_0x5af4aa,'rootDir':this['rootDir']}),await this['loadIgnoreFile']();const _0x32b823=await this['getAllFiles'](this['rootDir']);this[_0xe8b62f(0xcd)]?.['info']('Found\x20files',{'count':_0x32b823[_0xe8b62f(0x94)]});for(const _0x3c746d of _0x32b823){try{const _0x349f11=await a0_0x3f6e9c[_0xe8b62f(0xd9)](_0x3c746d,_0xe8b62f(0xae)),_0x450fdb=this[_0xe8b62f(0x10b)](_0x3c746d),_0x552200=await this[_0xe8b62f(0x126)](_0x349f11,_0x3c746d);this['imports']['push'](..._0x552200);const _0x52876a=this[_0xe8b62f(0x9c)](_0x349f11);this['exports'][_0xe8b62f(0xda)](_0x450fdb,_0x52876a);}catch(_0x4da499){this['logger']?.[_0xe8b62f(0x8e)](_0xe8b62f(0x129),{'file':_0x3c746d,'error':_0x4da499['message']});}}this[_0xe8b62f(0xcd)]?.[_0xe8b62f(0xb4)]('Parsed\x20all\x20files',{'imports':this['imports']['length'],'exports':this['exports']['size']});const _0x2a4440={'summary':{'totalFiles':_0x32b823['length'],'totalImports':this[_0xe8b62f(0x113)][_0xe8b62f(0x94)],'totalExports':Array[_0xe8b62f(0x11d)](this['exports'][_0xe8b62f(0xc1)]())['reduce']((_0x2b59be,exports)=>_0x2b59be+exports['size'],0x0)},'missingExports':{},'missingFiles':{},'fileNotFoundImports':[]};for(const importEntry of this[_0xe8b62f(0x113)]){const {importingFile:importingFile,importedSymbol:importedSymbol,importedFromFile:importedFromFile,isDefault:_0x41494d,isNamespace:_0x4606bf,fileExists:_0x56c9ce,isExternal:_0x480e79}=importEntry;if(!_0x56c9ce&&!_0x480e79){_0x2a4440['fileNotFoundImports'][_0xe8b62f(0xea)]({'importingFile':importingFile,'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'isDefault':_0x41494d||![],'isNamespace':_0x4606bf||![]});!_0x2a4440['missingFiles'][importingFile]&&(_0x2a4440['missingFiles'][importingFile]=[]);_0x2a4440['missingFiles'][importingFile][_0xe8b62f(0xea)]({'missingFile':importedFromFile,'importedSymbol':importedSymbol,'isDefault':_0x41494d||![],'isNamespace':_0x4606bf||![]});continue;}if(_0x480e79)continue;const exportingFileExports=this['exports'][_0xe8b62f(0x10f)](importedFromFile);let _0x388dd8=![];if(exportingFileExports){if(_0x4606bf)_0x388dd8=exportingFileExports['size']>0x0;else _0x41494d?_0x388dd8=exportingFileExports['has']('default'):_0x388dd8=exportingFileExports['has'](importedSymbol)||exportingFileExports[_0xe8b62f(0x117)]('*');}!_0x388dd8&&(!_0x2a4440[_0xe8b62f(0x8a)][importingFile]&&(_0x2a4440['missingExports'][importingFile]=[]),_0x2a4440[_0xe8b62f(0x8a)][importingFile]['push']({'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'availableExports':exportingFileExports?Array['from'](exportingFileExports):[],'isDefault':_0x41494d||![],'isNamespace':_0x4606bf||![]}));}return(_0x5af4aa==='full'||_0x5af4aa===_0xe8b62f(0x11a))&&(this[_0xe8b62f(0xcd)]?.['info'](_0xe8b62f(0x8c)),_0x2a4440[_0xe8b62f(0xc7)]=this['findCircularDependencies'](),_0x2a4440['unusedExports']=this['findUnusedExports']()),this['logger']?.[_0xe8b62f(0xb4)](_0xe8b62f(0x9e),{'missingFiles':_0x2a4440[_0xe8b62f(0xbc)][_0xe8b62f(0x94)],'missingExports':Object[_0xe8b62f(0xe7)](_0x2a4440[_0xe8b62f(0x8a)])['length']}),_0x2a4440;}}function a0_0x174d(_0x35c63d,_0x47d8b6){_0x35c63d=_0x35c63d-0x81;const _0x5b9734=a0_0x5b97();let _0x174d24=_0x5b9734[_0x35c63d];if(a0_0x174d['DFoVDs']===undefined){var _0x2e479f=function(_0xcd8d9b){const _0x53f707='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3f6e9c='',_0x343342='';for(let _0xcd151c=0x0,_0x1c48e5,_0x38cc2e,_0x2d6a0f=0x0;_0x38cc2e=_0xcd8d9b['charAt'](_0x2d6a0f++);~_0x38cc2e&&(_0x1c48e5=_0xcd151c%0x4?_0x1c48e5*0x40+_0x38cc2e:_0x38cc2e,_0xcd151c++%0x4)?_0x3f6e9c+=String['fromCharCode'](0xff&_0x1c48e5>>(-0x2*_0xcd151c&0x6)):0x0){_0x38cc2e=_0x53f707['indexOf'](_0x38cc2e);}for(let _0x2fd2ae=0x0,_0x261e3a=_0x3f6e9c['length'];_0x2fd2ae<_0x261e3a;_0x2fd2ae++){_0x343342+='%'+('00'+_0x3f6e9c['charCodeAt'](_0x2fd2ae)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x343342);};a0_0x174d['KautOg']=_0x2e479f,a0_0x174d['PRolSZ']={},a0_0x174d['DFoVDs']=!![];}const _0x239c29=_0x5b9734[0x0],_0x599f75=_0x35c63d+_0x239c29,_0x154fe2=a0_0x174d['PRolSZ'][_0x599f75];return!_0x154fe2?(_0x174d24=a0_0x174d['KautOg'](_0x174d24),a0_0x174d['PRolSZ'][_0x599f75]=_0x174d24):_0x174d24=_0x154fe2,_0x174d24;}export default ImportAnalyzerTool;function a0_0x5b97(){const _0x474116=['z2v0uMvSyxrPDMvqyxrO','lMDPDgLNBM9Yzq','BwvZC2fNzq','icaGicaG8j+sOsbgAxG6iefKzcbLEhbVCNrZihrVia','z2v0','revgqvvmvf9nt0rf','lMPZEa','yMfZzw5HBwu','Aw1WB3j0CW','AxnfEhrLCM5HBa','CgfYC2vqyxjHBwv0zxjZ','ndCZodq1owTWuffYyq','AgfZ','Aw1WB3j0zwrtEw1IB2W','cIaGq3LJBguG','zML4','icaGiokaOIa','icaGicaG8j+tPcboBYbLEhbVCNrZigzVDw5KigLUihrHCMDLDcbMAwXL','zNjVBq','8j+uJsbbBMfSExPPBMCGAw1WB3j0CYbPBJOG','mtH0uur0z3u','AwDUB3jLugf0DgvYBNm','Dg90ywXfEhbVCNrZ','C3rHCNrZv2L0Aa','C3bSAxq','Cgf0Aa','B2jQzwn0','CgfYC2vjBxbVCNrZ','Dg90ywXjBxbVCNrZ','BM9YBwfSAxPL','rxjYB3iGCgfYC2LUzYbMAwXL','8j+tIIbjBxbVCNqVrxHWB3j0iefUywX5C2LZifn1Bw1HCNK','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','y3DK','icaG4P2mifn5BwjVBcbUB3qGzxHWB3j0zwq6ici','CMvKDwnL','Cgf0AcbTDxn0igjLigeGC3rYAw5N','mKj4shftvW','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','zxjYB3i','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','BMfTzq','4PQG77IpicbnAxnZAw5Nigv4Cg9YDhm6ia','BwLZC2LUz0v4Cg9YDhm','zMLUzfvUDxnLzev4Cg9YDhm','uNvUBMLUzYbMDwXSigfUywX5C2LZ','mtG4odG5nePYsfrVDa','D2fYBG','icaGicaG8j+sOsbgAxG6ierPzcb5B3uGBwvHBIaI','cVcFLiqGq0Lsq1vmqviGrevqru5eru5dsuvt','l2LUzgv4lNrZ','x2zVCM1HDfn1Bw1HCNLpDxrWDxq','Aw5JBhvKzxm','BgvUz3rO','icaGipcFKQeGrML4oIbszwzHy3rVCIb0BYbICMvHAYb0AguGy2LYy3vSyxiGzgvWzw5Kzw5JEq','vKfmsurFt1vuufvuuW','lNrZEa','yxr0CMLIDxrLCW','ywrK','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','l2LUzgv4lNrZEa','CgfYC2vfEhbVCNrZ','zNvSBa','qw5HBhLZAxmGy29TCgXLDgu','Bw9Kzq','ig9YignOzwnRigLMigL0j3mGDgHLignVCNjLy3qGzMLSzq','revgqvvmvf9jr05puKvFuefuvevstLm','C2HVDwXKswDUB3jLrMLSzq','vg9Vig1HBNKGzMLSzxmGDg8Gyw5HBhL6ztOG','zgvIDwC','C2XPy2u','icaGicaG8j+tPcbbDMfPBgfIBguGzxHWB3j0CZOG','yxzHAwXHyMXLrxHWB3j0CW','Bg9HzeLNBM9YzuzPBgu','zMLSDgvY','zgv0ywLSzwq','zM9YrwfJAa','tw9KztOG','l2LUzgv4lMPZEa','DxrMltG','AxngAwXL','mJrMA2f5y0G','AwDUB3jLrMLSzq','igLZC3vLkhmPihrOyxqGBMvLzcbHDhrLBNrPB246','nJG3mdi4ogDby21jEG','Aw5MBW','8j+tIIbezxrHAwXLzcbjBxbVCNqVrxHWB3j0iefUywX5C2LZifjLCg9YDa','yNvPBgq','ANnVBG','DgvZDa','zxHLyW','ywnJzxnZ','Dg90ywXgAwXLCW','zMLSzu5VDezVDw5Ksw1WB3j0CW','AM9PBG','B3v0Chv0','vKfmsurFtu9ervm','icdIGkiGvg90ywWGAw1WB3j0CZOG','DMfSDwvZ','zxHWB3j0CW','AxnezwzHDwX0','Aw1WB3j0zwrgCM9TrMLSzq','revgqvvmvf9pvvrqvvq','DhjPBq','y2LYy3vSyxjezxbLBMrLBMnPzxm','C29Tzq','mJK2nuL2y1nqqq','l2LUzgv4lMPZ','lIbnDxn0igjLig9UzsbVzJOG','Dg9mB3DLCKnHC2u','Bg9Nz2vY','Bwf0y2G','z2v0qwXSrMLSzxm','tg9HzgvKigLNBM9YzsbWyxr0zxjUCW','Dw51C2vKrxHWB3j0CW','BMfTzxnWywnL','Axnoyw1LC3bHy2u','Aw1WB3j0Aw5NrMLSzq','tufyx0zjtevt','q2fUBM90ihjLywqGzgLYzwn0B3j5','x3zHBgLKyxrLugfYyw1LDgvYCW','ig1PC3nPBMCGzxHWB3j0khmP','CMvHzezPBgu','C2v0','icaGicaG8j+sOsbgAxG6ie5VigrLzMf1BhqGzxHWB3j0lIbvC2uGBMfTzwqGAw1WB3j0oIb7ia','igHHCYa','C3rHDa','zgvWzw5Kzw5JAwvZ','4P2mie1PC3nPBMCGzMLSzxm6ia','8j+tPsbuB3rHBcbPBxbVCNrZoIa','sw1WB3j0igfUywX5EMvYigv4zwn1DgLUzW','Aw5KzxHpzG','D29YA2LUz0rPCMvJDg9YEq','C3vTBwfYEq','mtq5mdfjBeX0DfC','igLTCg9YDhmGCg9PBNrPBMCGDg8GBM9Ulwv4Axn0zw50igzPBgvZ','A2v5CW','u1vque9svevex0vyvevou0LptLm','mta3otC0n0jsD1Dlta','ChvZAa','8j+tGsbgAwXLCYbHBMfSExPLzdOG','C3LTyM9StMfTzq','ig5VBI1LEgLZDgvUDcbZEw1IB2WOCYK','mZu0nMrsCxvIua','CMvSyxrPDMu','mJK0ntq4mezptMDcqG','iIaO','zxHPC3rZ','AxnbyNnVBhv0zq','CM9VDerPCG','icaGvw51C2vKoIa','iIbVCIb1C2uGB25Lig9MihrOzsbHDMfPBgfIBguGzxHWB3j0CW','BwLZC2LUz0zPBgvZ','lMDPDa','C3rYAw5N','sw52ywXPzcbVDxrWDxq6ia','x2zVCM1HDerLDgfPBgvKt3v0Chv0','icHTyxG6ia','4P2mie1ju1njtKCGrKLmrvm','zxH0BMfTzq','lNrZ','t3v0Chv0oIa','cVcFL5hVUi8GifbpvevoveLbteXzifvovvnfrcbfwfbpuLrt','y292zxjHz2u','zw50CMLLCW','ig1PC3nPBMCGzMLSzsbYzwzLCMvUy2uOCYK','CMvZB2X2zuLTCg9YDfbHDgG','cVcFK4qG','otaWyvH5BuHT','revgqvvmvf9jr05puKvFrKLmrq','BM9Kzv9TB2r1BgvZ','BMfTzwq'];a0_0x5b97=function(){return _0x474116;};return a0_0x5b97();}
@@ -1 +1 @@
1
- const a0_0xb0aed3=a0_0x3ede;(function(_0xcedee5,_0x317a3b){const _0x2be63b=a0_0x3ede,_0x5e8475=_0xcedee5();while(!![]){try{const _0x1e86f7=parseInt(_0x2be63b(0x1c4))/0x1+-parseInt(_0x2be63b(0x1dd))/0x2*(-parseInt(_0x2be63b(0x1bb))/0x3)+-parseInt(_0x2be63b(0x1b9))/0x4+parseInt(_0x2be63b(0x1df))/0x5+-parseInt(_0x2be63b(0x1ca))/0x6*(-parseInt(_0x2be63b(0x1ee))/0x7)+-parseInt(_0x2be63b(0x1ea))/0x8+parseInt(_0x2be63b(0x1e5))/0x9;if(_0x1e86f7===_0x317a3b)break;else _0x5e8475['push'](_0x5e8475['shift']());}catch(_0x33e526){_0x5e8475['push'](_0x5e8475['shift']());}}}(a0_0x57f5,0xde865));function a0_0x57f5(){const _0x93e615=['mta3nZi0mdHfvLz5Evm','y29TCgXLDgu','BgfZDenVBxbSzxrPB25tDw1Tyxj5','CMvXDwLYzxnqCM9Qzwn0','mZqZyM1YDe15','zgvZy3jPChrPB24','igj5igfNzw50ici','D2vIu29JA2v0twfUywDLCG','DhjPBq','z2v0qwDLBNq','z2v0u2nOzw1H','q29TCgXLDgLVBIbZDw1Tyxj5igLZihjLCxvPCMvK','Dg9mB3DLCKnHC2u','q2XLyxiGC3vTBwfYEsbVzIb3Agf0ihLVDsbHy2nVBxbSAxnOzwqGt1iGD2HHDcbWCMv2zw50zwqGy29TCgXLDgLVBIaOzs5NlIWGiKnYzwf0zwqGnsbZB25NigzPBgvZihn1y2nLC3nMDwXSEsiSicjvBMfIBguGDg8GChjVy2vLzdOGBwLZC2LUzYbbueKGy3jLzgvUDgLHBhmIlcaIu3r1y2SGywz0zxiGmYbMywLSzwqGy29TCgLSyxrPB24Gyxr0zw1WDhmIkq','nte5mtq4ogDQvfr5vG','ywn0Aw9U','owzzzgz2CW','zxH0CMfJDenVBNrLBNq','Bw9Kzq','4PYfifrHC2SGy29TCgXLDgvK','BgvUz3rO','vgfZAYbJB21WBgv0zwq','BwvZC2fNzq','C2v0qwDLBNrqB29S','sw52ywXPzcbHy3rPB24Uie9UBhKGiMnVBxbSzxrLiIbPCYbZDxbWB3j0zwq','mta4odKZog1or25iBG','yxn5BMm','cGOQkKrLDgfPBhm6kIOG','rMfPBgvKihrVig1HCMSGDgfZAYbHCYbJB21WBgv0ztOG','sM9Irg9UztOGrMfPBgvKihrVihn3AxrJAcbHz2vUDcbTB2rL','zxHLy3v0zq','ndK2nJjrsun0rNa','Dg9ju09tDhjPBMC','ywDLBNrqB29S','Dg9VBhnszwDPC3rYEq','BMfTzq','Bw9Kzs1JB250CM9S','yxv0B25VBw91C1DVCMTdB21WBgv0zq','y2fWywjPBgL0AwvZ','ihn3AxrJAgvKihrVieniqvqGBw9Kzq','C3vJy2vZCW','C3rYAw5N','yM9VBgvHBG','zgv0ywLSCW','qwn0Aw9UCYbHCNjHEsbPCYbYzxf1AxjLza','CgvYC2LZDefNzw50u3rHDgu','Bw9Kzvn0yxrL','yxjYyxK','B2jQzwn0','CgfYC2vqyxjHBwv0zxjZ','mte3mJu2uuP6vwXL','twfYAYb0yxnRigfZignVBxbSzxrLic0GywX3yxLZihvZzsaIy29TCgXLDguI','mZuYmdG4nvPPBxbgqG','Bg9Nz2vY','AwrSzq','D2fYBG','DMvYC2LVBG','C3vTBwfYEq','mta2mZe4mdHkALDJENy','AxnbCNjHEq','ihn1y2nLC3nMDwXSEq','sM9IierVBMu','ihDPDgGGAxnZDwvZ'];a0_0x57f5=function(){return _0x93e615;};return a0_0x57f5();}import{BaseTool}from'./baseTool.js';function a0_0x3ede(_0x3ab046,_0x3e7012){_0x3ab046=_0x3ab046-0x1b4;const _0x57f591=a0_0x57f5();let _0x3ede7e=_0x57f591[_0x3ab046];if(a0_0x3ede['CBmNZF']===undefined){var _0x3b2f67=function(_0xb70901){const _0x497a3a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x41a71b='',_0x11c174='';for(let _0x3dbcb2=0x0,_0xeb552a,_0x611fd8,_0x6fde31=0x0;_0x611fd8=_0xb70901['charAt'](_0x6fde31++);~_0x611fd8&&(_0xeb552a=_0x3dbcb2%0x4?_0xeb552a*0x40+_0x611fd8:_0x611fd8,_0x3dbcb2++%0x4)?_0x41a71b+=String['fromCharCode'](0xff&_0xeb552a>>(-0x2*_0x3dbcb2&0x6)):0x0){_0x611fd8=_0x497a3a['indexOf'](_0x611fd8);}for(let _0x30f859=0x0,_0x1c14ee=_0x41a71b['length'];_0x30f859<_0x1c14ee;_0x30f859++){_0x11c174+='%'+('00'+_0x41a71b['charCodeAt'](_0x30f859)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x11c174);};a0_0x3ede['HbnGFd']=_0x3b2f67,a0_0x3ede['cRRTJY']={},a0_0x3ede['CBmNZF']=!![];}const _0x249ea9=_0x57f591[0x0],_0x178309=_0x3ab046+_0x249ea9,_0x3a9e2f=a0_0x3ede['cRRTJY'][_0x178309];return!_0x3a9e2f?(_0x3ede7e=a0_0x3ede['HbnGFd'](_0x3ede7e),a0_0x3ede['cRRTJY'][_0x178309]=_0x3ede7e):_0x3ede7e=_0x3a9e2f,_0x3ede7e;}import a0_0x41a71b from'../utilities/tagParser.js';class JobDoneTool extends BaseTool{constructor(){const _0x1a8bf2=a0_0x3ede;super(),this['id']='jobdone',this[_0x1a8bf2(0x1ce)]=_0x1a8bf2(0x1e8),this['description']='Call\x20this\x20tool\x20when\x20you\x20have\x20successfully\x20completed\x20the\x20assigned\x20task,\x20OR\x20if\x20you\x20are\x20stuck/unable\x20to\x20proceed\x20after\x20multiple\x20failed\x20attempts.\x20Provide\x20a\x20summary\x20of\x20what\x20was\x20accomplished\x20or\x20what\x20prevented\x20completion.\x20This\x20will\x20exit\x20autonomous\x20mode\x20and\x20return\x20control\x20to\x20the\x20user.',this[_0x1a8bf2(0x1e3)]='1.0.0',this[_0x1a8bf2(0x1d1)]=['task-completion',_0x1a8bf2(0x1cf)],this[_0x1a8bf2(0x1ed)]=![],this[_0x1a8bf2(0x1c5)]=![];}['getDescription'](){const _0x381993=a0_0x3ede;return'\x0aJob\x20Done\x20Tool:\x20Signal\x20task\x20completion\x20in\x20autonomous\x20mode\x20and\x20exit\x20to\x20chat\x20mode.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Task\x20completion\x20summary\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20true,\x0a\x20\x20\x20\x20\x22details\x22:\x20\x22Optional\x20additional\x20details\x22\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a-\x20action:\x20Always\x20\x22complete\x22\x0a-\x20summary:\x20Clear\x20summary\x20of\x20what\x20was\x20accomplished\x20OR\x20what\x20prevented\x20completion\x20(required)\x0a-\x20success:\x20true\x20if\x20completed\x20successfully,\x20false\x20if\x20stuck/failed\x20(default:\x20true)\x0a-\x20details:\x20Optional\x20additional\x20information\x20about\x20the\x20task\x0a\x0aEXAMPLES:\x0a\x0a1.\x20Successful\x20completion:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Created\x205\x20song\x20files\x20successfully\x20with\x20lyrics\x20and\x20melodies\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20true\x0a\x20\x20}]\x0a}\x0a```\x0a\x0a2.\x20Unable\x20to\x20proceed:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Unable\x20to\x20proceed:\x20missing\x20API\x20credentials\x20for\x20the\x20service\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20false\x0a\x20\x20}]\x0a}\x0a```\x0a\x0a3.\x20Partial\x20completion:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Task\x20partially\x20complete:\x20implemented\x202\x20of\x203\x20requested\x20features\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20false,\x0a\x20\x20\x20\x20\x22details\x22:\x20\x22The\x20third\x20feature\x20requires\x20additional\x20dependencies\x20not\x20available\x22\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aWHEN\x20TO\x20USE:\x0a-\x20Call\x20when\x20you\x20have\x20SUCCESSFULLY\x20completed\x20the\x20assigned\x20task\x0a-\x20Call\x20if\x20you\x20are\x20STUCK\x20or\x20UNABLE\x20to\x20proceed\x20after\x20multiple\x20failed\x20attempts\x0a-\x20This\x20will\x20immediately\x20exit\x20autonomous\x20mode\x20and\x20return\x20control\x20to\x20the\x20user\x0a\x20\x20\x20\x20'[_0x381993(0x1f2)]();}[a0_0xb0aed3(0x1dc)](_0x11c174){const _0x45d34b=a0_0xb0aed3;try{const _0x3dbcb2=a0_0x41a71b['extractContent'](_0x11c174,_0x45d34b(0x1e4)),_0xeb552a=a0_0x41a71b[_0x45d34b(0x1bc)](_0x11c174,_0x45d34b(0x1d6)),_0x611fd8=a0_0x41a71b[_0x45d34b(0x1bc)](_0x11c174,_0x45d34b(0x1d3));let _0x6fde31='',_0x30f859='',_0x1c14ee=!![];return _0x3dbcb2[_0x45d34b(0x1bf)]>0x0?(_0x6fde31=_0x3dbcb2[0x0]['trim'](),_0x30f859=_0xeb552a[_0x45d34b(0x1bf)]>0x0?_0xeb552a[0x0]['trim']():'',_0x1c14ee=_0x611fd8['length']>0x0?_0x611fd8[0x0][_0x45d34b(0x1b7)]()!=='false':!![]):_0x6fde31=_0x11c174[_0x45d34b(0x1f2)]()||_0x45d34b(0x1c0),{'actions':[{'action':'complete','summary':_0x6fde31,'success':_0x1c14ee,'details':_0x30f859||undefined}]};}catch(_0x85e0b8){return{'actions':[{'action':_0x45d34b(0x1eb),'summary':_0x11c174['trim']()||'Task\x20completed','success':!![]}]};}}[a0_0xb0aed3(0x1b5)](){const _0x5bdaec=a0_0xb0aed3;return{'type':_0x5bdaec(0x1db),'properties':{'actions':{'type':_0x5bdaec(0x1da),'items':{'type':_0x5bdaec(0x1db),'properties':{'action':{'type':'string','enum':[_0x5bdaec(0x1eb)],'description':_0x5bdaec(0x1de)},'summary':{'type':_0x5bdaec(0x1d4),'description':_0x5bdaec(0x1b8)},'success':{'type':_0x5bdaec(0x1d5),'default':!![],'description':'Set\x20to\x20true\x20if\x20task\x20completed\x20successfully,\x20false\x20if\x20stuck/failed\x20or\x20partial\x20completion'},'details':{'type':_0x5bdaec(0x1d4),'description':'Optional:\x20Additional\x20details\x20about\x20what\x20was\x20done,\x20what\x20failed,\x20any\x20files\x20created,\x20or\x20next\x20steps\x20for\x20the\x20user'}},'required':[_0x5bdaec(0x1ba),'summary'],'additionalProperties':![]},'minItems':0x1,'maxItems':0x1}},'required':['actions'],'additionalProperties':![]};}async[a0_0xb0aed3(0x1c9)](_0x1ab454,_0x3d5317={}){const _0x49862a=a0_0xb0aed3;try{const {actions:_0x39d3b1}=_0x1ab454;if(!_0x39d3b1||!Array[_0x49862a(0x1e6)](_0x39d3b1)||_0x39d3b1[_0x49862a(0x1bf)]===0x0)throw new Error(_0x49862a(0x1d7));const _0x53b9b4=_0x39d3b1[0x0];if(_0x53b9b4['action']!=='complete')throw new Error(_0x49862a(0x1c3));if(!_0x53b9b4['summary'])throw new Error(_0x49862a(0x1b6));const _0x20dfca=_0x3d5317['agentId'];let _0x54d4fb='';if(_0x20dfca&&_0x3d5317[_0x49862a(0x1cd)])try{if(this['agentPool']){const _0x116b1a=await this[_0x49862a(0x1cc)][_0x49862a(0x1b4)](_0x20dfca);_0x116b1a&&(_0x54d4fb=_0x49862a(0x1f0)+_0x116b1a['name']+'\x22');}}catch(_0x4e6b9a){}const _0x2fcae1=_0x49862a(0x1be)+_0x54d4fb+(_0x53b9b4['success']!==![]?_0x49862a(0x1e7):_0x49862a(0x1e9))+'\x0a\x0a**Summary:**\x20'+_0x53b9b4[_0x49862a(0x1e4)]+(_0x53b9b4['details']?_0x49862a(0x1c6)+_0x53b9b4['details']:'')+'\x0a\x0a*Autonomous\x20mode\x20will\x20now\x20exit.*';if(_0x20dfca&&this[_0x49862a(0x1cc)])try{const _0x446120=await this[_0x49862a(0x1cc)][_0x49862a(0x1b4)](_0x20dfca);if(_0x446120){const _0x1d89a2=_0x446120['sessionId'];_0x446120[_0x49862a(0x1bd)]='chat',_0x446120[_0x49862a(0x1d9)]=_0x49862a(0x1e1),_0x446120[_0x49862a(0x1d0)]=!![],_0x446120[_0x49862a(0x1ec)]=_0x53b9b4['summary'],await this[_0x49862a(0x1cc)][_0x49862a(0x1d8)](_0x20dfca),this[_0x49862a(0x1e0)]?.['info']('JobDone:\x20Agent\x20'+_0x20dfca+_0x49862a(0x1d2),{'summary':_0x53b9b4['summary'],'success':_0x53b9b4['success']!==![]}),this[_0x49862a(0x1f1)]&&_0x1d89a2&&this['webSocketManager']['broadcastToSession'](_0x1d89a2,{'type':'agent_mode_changed','data':{'agentId':_0x20dfca,'mode':'chat','modeState':_0x49862a(0x1e1),'reason':'jobdone','timestamp':new Date()[_0x49862a(0x1cb)]()}});}}catch(_0x467abc){this[_0x49862a(0x1e0)]?.[_0x49862a(0x1e2)](_0x49862a(0x1c8),{'error':_0x467abc[_0x49862a(0x1c1)]});}return{'success':!![],'output':_0x2fcae1,'taskComplete':!![],'exitAutonomousMode':!![],'summary':_0x53b9b4[_0x49862a(0x1e4)],'details':_0x53b9b4['details']||null,'successfulCompletion':_0x53b9b4['success']!==![],'metadata':{'toolId':this['id'],'agentId':_0x20dfca||'unknown','completedAt':new Date()['toISOString'](),'action':_0x53b9b4[_0x49862a(0x1ba)]}};}catch(_0x330cb4){return{'success':![],'error':_0x330cb4[_0x49862a(0x1c1)],'output':_0x49862a(0x1c7)+_0x330cb4['message'],'taskComplete':![]};}}[a0_0xb0aed3(0x1c2)](_0x1f8ffb){this['agentPool']=_0x1f8ffb;}['setWebSocketManager'](_0x47148a){this['webSocketManager']=_0x47148a;}['getCapabilities'](){const _0x55594f=a0_0xb0aed3;return{'id':this['id'],'name':this[_0x55594f(0x1ce)],'description':this[_0x55594f(0x1ef)],'version':this[_0x55594f(0x1e3)],'capabilities':this['capabilities'],'requiresProject':this['requiresProject'],'async':this[_0x55594f(0x1c5)],'enabled':!![],'schema':this['getSchema']()};}}export default JobDoneTool;
1
+ const a0_0x14138e=a0_0x193f;(function(_0xf81b14,_0x544e5d){const _0x2f0789=a0_0x193f,_0x11edc1=_0xf81b14();while(!![]){try{const _0xa04aa3=-parseInt(_0x2f0789(0xa0))/0x1*(parseInt(_0x2f0789(0x96))/0x2)+parseInt(_0x2f0789(0x83))/0x3*(parseInt(_0x2f0789(0xa3))/0x4)+parseInt(_0x2f0789(0x91))/0x5*(-parseInt(_0x2f0789(0x92))/0x6)+parseInt(_0x2f0789(0x9f))/0x7+parseInt(_0x2f0789(0x8b))/0x8+-parseInt(_0x2f0789(0x99))/0x9*(parseInt(_0x2f0789(0xa6))/0xa)+-parseInt(_0x2f0789(0x9b))/0xb;if(_0xa04aa3===_0x544e5d)break;else _0x11edc1['push'](_0x11edc1['shift']());}catch(_0x402b80){_0x11edc1['push'](_0x11edc1['shift']());}}}(a0_0x3d61,0x23cf7));function a0_0x193f(_0x30ae76,_0x370f25){_0x30ae76=_0x30ae76-0x7c;const _0x3d614e=a0_0x3d61();let _0x193f6f=_0x3d614e[_0x30ae76];if(a0_0x193f['rEjtFK']===undefined){var _0x52e742=function(_0x3ce125){const _0x19879a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x272943='',_0x1cf147='';for(let _0x2cec1c=0x0,_0xa91927,_0xb85c77,_0x4611da=0x0;_0xb85c77=_0x3ce125['charAt'](_0x4611da++);~_0xb85c77&&(_0xa91927=_0x2cec1c%0x4?_0xa91927*0x40+_0xb85c77:_0xb85c77,_0x2cec1c++%0x4)?_0x272943+=String['fromCharCode'](0xff&_0xa91927>>(-0x2*_0x2cec1c&0x6)):0x0){_0xb85c77=_0x19879a['indexOf'](_0xb85c77);}for(let _0x51dc0e=0x0,_0x5c8032=_0x272943['length'];_0x51dc0e<_0x5c8032;_0x51dc0e++){_0x1cf147+='%'+('00'+_0x272943['charCodeAt'](_0x51dc0e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1cf147);};a0_0x193f['ZWLqBC']=_0x52e742,a0_0x193f['bWcNEr']={},a0_0x193f['rEjtFK']=!![];}const _0x20a6f5=_0x3d614e[0x0],_0x572ca0=_0x30ae76+_0x20a6f5,_0x123368=a0_0x193f['bWcNEr'][_0x572ca0];return!_0x123368?(_0x193f6f=a0_0x193f['ZWLqBC'](_0x193f6f),a0_0x193f['bWcNEr'][_0x572ca0]=_0x193f6f):_0x193f6f=_0x123368,_0x193f6f;}function a0_0x3d61(){const _0x5b5477=['BgvUz3rO','mZi5odvgvwnMBuO','BMfTzq','nJu4mtuYD01pA09e','yNjVywrJyxn0vg9tzxnZAw9U','Bg9Nz2vY','z2v0rgvZy3jPChrPB24','ndCWndG0uNLHwvPf','mK1Kq2XcDW','Dg9VBhnszwDPC3rYEq','yxv0B25VBw91C1DVCMTdB21WBgv0zq','mty3mti4u2ffuw1V','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','yM9VBgvHBG','odbfBNLVq0i','q2XLyxiGC3vTBwfYEsbVzIb3Agf0ihLVDsbHy2nVBxbSAxnOzwqGt1iGD2HHDcbWCMv2zw50zwqGy29TCgXLDgLVBIaOzs5NlIWGiKnYzwf0zwqGnsbZB25NigzPBgvZihn1y2nLC3nMDwXSEsiSicjvBMfIBguGDg8GChjVy2vLzdOGBwLZC2LUzYbbueKGy3jLzgvUDgLHBhmIlcaIu3r1y2SGywz0zxiGmYbMywLSzwqGy29TCgLSyxrPB24Gyxr0zw1WDhmIkq','C3vTBwfYEq','y29TCgXLDgu','C2v0v2vIu29JA2v0twfUywDLCG','AwrSzq','z2v0u2nOzw1H','BwvZC2fNzq','C3vJy2vZCW','ywDLBNrqB29S','zxH0CMfJDenVBNrLBNq','Bw9Kzs1JB250CM9S','ihDPDgGGAxnZDwvZ','AxnbCNjHEq','C2vZC2LVBKLK','zxHLy3v0zq','sM9Irg9UztOGrMfPBgvKihrVihn3AxrJAcbHz2vUDcbTB2rL','C3rYAw5N','Dg9ju09tDhjPBMC','t3b0Aw9UywW6iefKzgL0Aw9UywWGzgv0ywLSCYbHyM91Dcb3Agf0ihDHCYbKB25Llcb3Agf0igzHAwXLzcWGyw55igzPBgvZignYzwf0zwqSig9Yig5LEhqGC3rLChmGzM9YihrOzsb1C2vY','cGOQkLn1Bw1HCNK6kIOG','mtHWEM9st3O','qwn0Aw9UCYbHCNjHEsbPCYbYzxf1AxjLza','ywn0Aw9UCW','ywn0Aw9U','D2vIu29JA2v0twfUywDLCG','vgfZAYbJB21WBgv0zwq','zgv0ywLSCW','sM9IierVBMu','mtyXotaWmgPrC1DSrW','CgvYC2LZDefNzw50u3rHDgu','DMvYC2LVBG','z2v0q2fWywjPBgL0AwvZ','y2HHDa','ihn1y2nLC3nMDwXSEq','mtvkt05SrgS','ntyYmdiWvuTou2zS','DgfZAY1JB21WBgv0Aw9U','rMfPBgvKihrVig1HCMSGDgfZAYbHCYbJB21WBgv0ztOG','DhjPBq','mZqZoeveq253qG','CMvXDwLYzxnqCM9Qzwn0'];a0_0x3d61=function(){return _0x5b5477;};return a0_0x3d61();}import{BaseTool}from'./baseTool.js';import a0_0x272943 from'../utilities/tagParser.js';class JobDoneTool extends BaseTool{constructor(){const _0x369729=a0_0x193f;super(),this['id']='jobdone',this['name']=_0x369729(0x8a),this['description']='Call\x20this\x20tool\x20when\x20you\x20have\x20successfully\x20completed\x20the\x20assigned\x20task,\x20OR\x20if\x20you\x20are\x20stuck/unable\x20to\x20proceed\x20after\x20multiple\x20failed\x20attempts.\x20Provide\x20a\x20summary\x20of\x20what\x20was\x20accomplished\x20or\x20what\x20prevented\x20completion.\x20This\x20will\x20exit\x20autonomous\x20mode\x20and\x20return\x20control\x20to\x20the\x20user.',this[_0x369729(0x8d)]='1.0.0',this['capabilities']=[_0x369729(0x93),_0x369729(0xb1)],this[_0x369729(0x97)]=![],this['async']=![];}[a0_0x14138e(0x9e)](){const _0x13f934=a0_0x14138e;return _0x13f934(0xa4)['trim']();}['parseParameters'](_0x1cf147){const _0x12fc69=a0_0x14138e;try{const _0x2cec1c=a0_0x272943[_0x12fc69(0xb0)](_0x1cf147,'summary'),_0xa91927=a0_0x272943[_0x12fc69(0xb0)](_0x1cf147,_0x12fc69(0x89)),_0xb85c77=a0_0x272943[_0x12fc69(0xb0)](_0x1cf147,'success');let _0x4611da='',_0x51dc0e='',_0x5c8032=!![];return _0x2cec1c[_0x12fc69(0x98)]>0x0?(_0x4611da=_0x2cec1c[0x0][_0x12fc69(0x95)](),_0x51dc0e=_0xa91927['length']>0x0?_0xa91927[0x0]['trim']():'',_0x5c8032=_0xb85c77['length']>0x0?_0xb85c77[0x0]['toLowerCase']()!=='false':!![]):_0x4611da=_0x1cf147[_0x12fc69(0x95)]()||'Task\x20completed',{'actions':[{'action':_0x12fc69(0xa9),'summary':_0x4611da,'success':_0x5c8032,'details':_0x51dc0e||undefined}]};}catch(_0x24dd53){return{'actions':[{'action':_0x12fc69(0xa9),'summary':_0x1cf147[_0x12fc69(0x95)]()||_0x12fc69(0x88),'success':!![]}]};}}[a0_0x14138e(0xac)](){const _0x50208d=a0_0x14138e;return{'type':'object','properties':{'actions':{'type':'array','items':{'type':'object','properties':{'action':{'type':_0x50208d(0x7f),'enum':['complete'],'description':'Mark\x20task\x20as\x20complete\x20-\x20always\x20use\x20\x22complete\x22'},'summary':{'type':_0x50208d(0x7f),'description':_0x50208d(0xa7)},'success':{'type':_0x50208d(0xa5),'default':!![],'description':'Set\x20to\x20true\x20if\x20task\x20completed\x20successfully,\x20false\x20if\x20stuck/failed\x20or\x20partial\x20completion'},'details':{'type':_0x50208d(0x7f),'description':_0x50208d(0x81)}},'required':[_0x50208d(0x86),'summary'],'additionalProperties':![]},'minItems':0x1,'maxItems':0x1}},'required':[_0x50208d(0x85)],'additionalProperties':![]};}async[a0_0x14138e(0x7d)](_0x290a8a,_0x1326ce={}){const _0x64f2b8=a0_0x14138e;try{const {actions:_0xce9e67}=_0x290a8a;if(!_0xce9e67||!Array[_0x64f2b8(0xb3)](_0xce9e67)||_0xce9e67['length']===0x0)throw new Error(_0x64f2b8(0x84));const _0x68d392=_0xce9e67[0x0];if(_0x68d392[_0x64f2b8(0x86)]!=='complete')throw new Error('Invalid\x20action.\x20Only\x20\x22complete\x22\x20is\x20supported');if(!_0x68d392[_0x64f2b8(0xa8)])throw new Error('Completion\x20summary\x20is\x20required');const _0x1b125b=_0x1326ce['agentId'];let _0x206fe0='';if(_0x1b125b&&_0x1326ce[_0x64f2b8(0xa1)])try{if(this['agentPool']){const _0x206146=await this['agentPool']['getAgent'](_0x1b125b);_0x206146&&(_0x206fe0='\x20by\x20agent\x20\x22'+_0x206146['name']+'\x22');}}catch(_0x5d84a2){}const _0x479161='βœ…\x20Task\x20completed'+_0x206fe0+(_0x68d392['success']!==![]?_0x64f2b8(0x90):_0x64f2b8(0xb2))+_0x64f2b8(0x82)+_0x68d392['summary']+(_0x68d392[_0x64f2b8(0x89)]?'\x0a\x0a**Details:**\x20'+_0x68d392[_0x64f2b8(0x89)]:'')+'\x0a\x0a*Autonomous\x20mode\x20will\x20now\x20exit.*';if(_0x1b125b&&this['agentPool'])try{const _0x224e37=await this['agentPool']['getAgent'](_0x1b125b);if(_0x224e37){const _0x264b55=_0x224e37[_0x64f2b8(0x7c)];_0x224e37['mode']=_0x64f2b8(0x8f),_0x224e37['modeState']='idle',_0x224e37[_0x64f2b8(0xa2)]=!![],_0x224e37['lastCompletionSummary']=_0x68d392['summary'],await this[_0x64f2b8(0xaf)][_0x64f2b8(0x8c)](_0x1b125b),this[_0x64f2b8(0x9d)]?.['info']('JobDone:\x20Agent\x20'+_0x1b125b+'\x20switched\x20to\x20CHAT\x20mode',{'summary':_0x68d392['summary'],'success':_0x68d392[_0x64f2b8(0xae)]!==![]}),this[_0x64f2b8(0x87)]&&_0x264b55&&this[_0x64f2b8(0x87)][_0x64f2b8(0x9c)](_0x264b55,{'type':'agent_mode_changed','data':{'agentId':_0x1b125b,'mode':'chat','modeState':_0x64f2b8(0xab),'reason':'jobdone','timestamp':new Date()[_0x64f2b8(0x80)]()}});}}catch(_0x1c420e){this[_0x64f2b8(0x9d)]?.['warn'](_0x64f2b8(0x7e),{'error':_0x1c420e[_0x64f2b8(0xad)]});}return{'success':!![],'output':_0x479161,'taskComplete':!![],'exitAutonomousMode':!![],'summary':_0x68d392['summary'],'details':_0x68d392['details']||null,'successfulCompletion':_0x68d392['success']!==![],'metadata':{'toolId':this['id'],'agentId':_0x1b125b||'unknown','completedAt':new Date()['toISOString'](),'action':_0x68d392['action']}};}catch(_0x165796){return{'success':![],'error':_0x165796['message'],'output':_0x64f2b8(0x94)+_0x165796['message'],'taskComplete':![]};}}['setAgentPool'](_0x5e9b54){this['agentPool']=_0x5e9b54;}[a0_0x14138e(0xaa)](_0x19b2e5){this['webSocketManager']=_0x19b2e5;}[a0_0x14138e(0x8e)](){const _0x536993=a0_0x14138e;return{'id':this['id'],'name':this[_0x536993(0x9a)],'description':this['description'],'version':this[_0x536993(0x8d)],'capabilities':this['capabilities'],'requiresProject':this['requiresProject'],'async':this['async'],'enabled':!![],'schema':this['getSchema']()};}}export default JobDoneTool;