@loxia-labs/loxia-autopilot-one 1.0.14 → 1.0.16

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 (123) hide show
  1. package/README.md +2 -2
  2. package/bin/cli.js +1 -1
  3. package/bin/loxia-terminal-v2.js +1 -1
  4. package/bin/loxia-terminal.js +1 -1
  5. package/bin/start-with-terminal.js +1 -1
  6. package/package.json +1 -1
  7. package/scripts/install-scanners.js +1 -1
  8. package/src/analyzers/CSSAnalyzer.js +1 -1
  9. package/src/analyzers/ConfigValidator.js +1 -1
  10. package/src/analyzers/ESLintAnalyzer.js +1 -1
  11. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  12. package/src/analyzers/PrettierFormatter.js +1 -1
  13. package/src/analyzers/PythonAnalyzer.js +1 -1
  14. package/src/analyzers/SecurityAnalyzer.js +1 -1
  15. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  17. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  18. package/src/analyzers/codeCloneDetector/index.js +1 -1
  19. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  20. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  21. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  22. package/src/core/agentPool.js +1 -1
  23. package/src/core/agentScheduler.js +1 -1
  24. package/src/core/contextManager.js +1 -1
  25. package/src/core/messageProcessor.js +1 -1
  26. package/src/core/orchestrator.js +1 -1
  27. package/src/core/stateManager.js +1 -1
  28. package/src/index.js +1 -1
  29. package/src/interfaces/cli.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  38. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  39. package/src/interfaces/terminal/api/apiClient.js +1 -1
  40. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  41. package/src/interfaces/terminal/api/session.js +1 -1
  42. package/src/interfaces/terminal/api/websocket.js +1 -1
  43. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  44. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  45. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  47. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  48. package/src/interfaces/terminal/components/Header.js +1 -1
  49. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  50. package/src/interfaces/terminal/components/InputBox.js +1 -1
  51. package/src/interfaces/terminal/components/Layout.js +1 -1
  52. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  53. package/src/interfaces/terminal/components/MessageList.js +1 -1
  54. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  55. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  56. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  57. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  58. package/src/interfaces/terminal/components/TextInput.js +1 -1
  59. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  60. package/src/interfaces/terminal/config/constants.js +1 -1
  61. package/src/interfaces/terminal/index.js +1 -1
  62. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  63. package/src/interfaces/terminal/state/useAgents.js +1 -1
  64. package/src/interfaces/terminal/state/useConnection.js +1 -1
  65. package/src/interfaces/terminal/state/useMessages.js +1 -1
  66. package/src/interfaces/terminal/state/useTools.js +1 -1
  67. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  68. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  69. package/src/interfaces/terminal/utils/theme.js +1 -1
  70. package/src/interfaces/webServer.js +1 -1
  71. package/src/modules/fileExplorer/controller.js +1 -1
  72. package/src/modules/fileExplorer/index.js +1 -1
  73. package/src/modules/fileExplorer/middleware.js +1 -1
  74. package/src/modules/fileExplorer/routes.js +1 -1
  75. package/src/services/agentActivityService.js +1 -1
  76. package/src/services/aiService.js +1 -1
  77. package/src/services/apiKeyManager.js +1 -1
  78. package/src/services/benchmarkService.js +1 -1
  79. package/src/services/budgetService.js +1 -1
  80. package/src/services/contextInjectionService.js +1 -1
  81. package/src/services/conversationCompactionService.js +1 -1
  82. package/src/services/errorHandler.js +1 -1
  83. package/src/services/fileAttachmentService.js +1 -1
  84. package/src/services/modelRouterService.js +1 -1
  85. package/src/services/modelsService.js +1 -1
  86. package/src/services/qualityInspector.js +1 -1
  87. package/src/services/tokenCountingService.js +1 -1
  88. package/src/tools/agentCommunicationTool.js +1 -1
  89. package/src/tools/agentDelayTool.js +1 -1
  90. package/src/tools/asyncToolManager.js +1 -1
  91. package/src/tools/baseTool.js +1 -1
  92. package/src/tools/browserTool.js +1 -1
  93. package/src/tools/cloneDetectionTool.js +1 -1
  94. package/src/tools/dependencyResolverTool.js +1 -1
  95. package/src/tools/fileContentReplaceTool.js +1 -1
  96. package/src/tools/fileSystemTool.js +1 -1
  97. package/src/tools/fileTreeTool.js +1 -1
  98. package/src/tools/imageTool.js +1 -1
  99. package/src/tools/importAnalyzerTool.js +1 -1
  100. package/src/tools/jobDoneTool.js +1 -1
  101. package/src/tools/seekTool.js +1 -1
  102. package/src/tools/staticAnalysisTool.js +1 -1
  103. package/src/tools/taskManagerTool.js +1 -1
  104. package/src/tools/terminalTool.js +1 -1
  105. package/src/tools/webTool.js +1 -1
  106. package/src/types/agent.js +1 -1
  107. package/src/types/contextReference.js +1 -1
  108. package/src/types/conversation.js +1 -1
  109. package/src/types/toolCommand.js +1 -1
  110. package/src/utilities/attachmentValidator.js +1 -1
  111. package/src/utilities/configManager.js +1 -1
  112. package/src/utilities/constants.js +1 -1
  113. package/src/utilities/directoryAccessManager.js +1 -1
  114. package/src/utilities/fileProcessor.js +1 -1
  115. package/src/utilities/logger.js +1 -1
  116. package/src/utilities/tagParser.js +1 -1
  117. package/src/utilities/toolConstants.js +1 -1
  118. package/src/utilities/userDataDir.js +1 -1
  119. package/web-ui/build/index.html +2 -2
  120. package/web-ui/build/static/index-DFmFvOoy.css +1 -0
  121. package/web-ui/build/static/index-DOk0l6Kf.js +348 -0
  122. package/web-ui/build/static/index-DXN850Y2.js +0 -400
  123. package/web-ui/build/static/index-an-YRzUX.css +0 -1
@@ -1 +1 @@
1
- function a0_0x16c2(_0x181bac,_0x245f1c){_0x181bac=_0x181bac-0xb8;const _0x3db94f=a0_0x3db9();let _0x16c257=_0x3db94f[_0x181bac];if(a0_0x16c2['DtKzbp']===undefined){var _0x121c22=function(_0x583ef8){const _0x2e5389='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x818870='',_0x3e7cca='';for(let _0x17bca1=0x0,_0x5938c5,_0x234afc,_0x5c20f3=0x0;_0x234afc=_0x583ef8['charAt'](_0x5c20f3++);~_0x234afc&&(_0x5938c5=_0x17bca1%0x4?_0x5938c5*0x40+_0x234afc:_0x234afc,_0x17bca1++%0x4)?_0x818870+=String['fromCharCode'](0xff&_0x5938c5>>(-0x2*_0x17bca1&0x6)):0x0){_0x234afc=_0x2e5389['indexOf'](_0x234afc);}for(let _0x3610b9=0x0,_0x17b479=_0x818870['length'];_0x3610b9<_0x17b479;_0x3610b9++){_0x3e7cca+='%'+('00'+_0x818870['charCodeAt'](_0x3610b9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3e7cca);};a0_0x16c2['rXesRQ']=_0x121c22,a0_0x16c2['VgZLWQ']={},a0_0x16c2['DtKzbp']=!![];}const _0x5dca33=_0x3db94f[0x0],_0x820db=_0x181bac+_0x5dca33,_0x4c34de=a0_0x16c2['VgZLWQ'][_0x820db];return!_0x4c34de?(_0x16c257=a0_0x16c2['rXesRQ'](_0x16c257),a0_0x16c2['VgZLWQ'][_0x820db]=_0x16c257):_0x16c257=_0x4c34de,_0x16c257;}const a0_0x2112e5=a0_0x16c2;(function(_0x148483,_0x4d4b41){const _0xf43031=a0_0x16c2,_0x4fc47a=_0x148483();while(!![]){try{const _0x4c1f68=parseInt(_0xf43031(0x115))/0x1*(parseInt(_0xf43031(0xb9))/0x2)+parseInt(_0xf43031(0xbd))/0x3+parseInt(_0xf43031(0xfb))/0x4+parseInt(_0xf43031(0xda))/0x5*(-parseInt(_0xf43031(0xc1))/0x6)+-parseInt(_0xf43031(0x125))/0x7+parseInt(_0xf43031(0x11b))/0x8+-parseInt(_0xf43031(0x10d))/0x9*(parseInt(_0xf43031(0x118))/0xa);if(_0x4c1f68===_0x4d4b41)break;else _0x4fc47a['push'](_0x4fc47a['shift']());}catch(_0x51bac2){_0x4fc47a['push'](_0x4fc47a['shift']());}}}(a0_0x3db9,0x8a776));import{BaseTool}from'./baseTool.js';import{promises as a0_0x818870}from'fs';import a0_0x3e7cca 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_0x2112e5(0x120),'LAST_BRANCH':a0_0x2112e5(0xe1),'VERTICAL':a0_0x2112e5(0x121),'INDENT':a0_0x2112e5(0xe6)}},DEFAULT_IGNORE_DIRECTORIES=['node_modules',a0_0x2112e5(0x122),'dist',a0_0x2112e5(0x10e),a0_0x2112e5(0xcc),a0_0x2112e5(0x116),'.nuxt',a0_0x2112e5(0xe8),'out',a0_0x2112e5(0xe9),'vendor','bower_components','.vscode','.idea','.vs','__pycache__','venv','env','.env',a0_0x2112e5(0x124),a0_0x2112e5(0xd5),'eggs',a0_0x2112e5(0xeb),'lib','lib64','parts','sdist','wheels','.tox',a0_0x2112e5(0x10c),'htmlcov','.hypothesis',a0_0x2112e5(0xce),a0_0x2112e5(0x107),a0_0x2112e5(0x111),'.temp'],DEFAULT_IGNORE_EXTENSIONS=['.map','.min.js',a0_0x2112e5(0xbb),'.lock','.log','.tmp','.temp','.pyc',a0_0x2112e5(0x103),'.pyd','.so',a0_0x2112e5(0xba),a0_0x2112e5(0xf4),'.exe','.obj','.o','.a',a0_0x2112e5(0x113),a0_0x2112e5(0xed),'.war'],BINARY_EXTENSIONS=['.png',a0_0x2112e5(0xc5),'.jpeg',a0_0x2112e5(0xbe),a0_0x2112e5(0xf5),a0_0x2112e5(0xc0),'.svg','.pdf',a0_0x2112e5(0x102),a0_0x2112e5(0xe0),'.gz',a0_0x2112e5(0xf9),'.7z',a0_0x2112e5(0x11c),'.mp4',a0_0x2112e5(0xf6),'.mov',a0_0x2112e5(0x100),'.woff',a0_0x2112e5(0xc2),a0_0x2112e5(0x11f),'.eot',a0_0x2112e5(0xdf),'.dat',a0_0x2112e5(0xfd),a0_0x2112e5(0xe4)];class FileTreeTool extends BaseTool{constructor(_0x17bca1={},_0x5938c5=null){const _0x581dd9=a0_0x2112e5;super(_0x17bca1,_0x5938c5),this['id']='file-tree',this[_0x581dd9(0x128)]=!![],this[_0x581dd9(0xbc)]=!![],this['timeout']=_0x17bca1[_0x581dd9(0xf0)]||0x1d4c0,this[_0x581dd9(0x10b)]={...TREE_CONFIG,..._0x17bca1['treeConfig']},this[_0x581dd9(0xd9)]={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};}[a0_0x2112e5(0xd3)](){const _0x8cee83=a0_0x2112e5;return _0x8cee83(0xd0)+TREE_CONFIG['DEFAULT_MAX_DEPTH']+')\x0a\x20\x20-\x20Range:\x201-'+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['MAX_FILES_IN_TREE']+'\x0a-\x20Maximum\x20directories:\x20'+TREE_CONFIG['MAX_DIRECTORIES']+'\x0a-\x20Binary\x20files\x20can\x20be\x20filtered\x20with\x20ignoreBinaryFiles\x20option\x0a\x20\x20\x20\x20';}['parseParameters'](_0x234afc){const _0x2b9b6d=a0_0x2112e5;try{if(_0x234afc['trim']()['startsWith']('{')){const _0x32c320=JSON['parse'](_0x234afc);return{'directory':_0x32c320['directory']||'.','maxDepth':_0x32c320['maxDepth']||TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':_0x32c320['includeExtensions']||[],'excludeExtensions':_0x32c320['excludeExtensions']||[],'excludeDirectories':_0x32c320[_0x2b9b6d(0xee)]||[],'showFiles':_0x32c320['showFiles']!==![],'showHidden':_0x32c320['showHidden']===!![],'showSizes':_0x32c320['showSizes']===!![],'ignoreBinaryFiles':_0x32c320['ignoreBinaryFiles']===!![]};}const _0x5c20f3={'directory':'.','maxDepth':TREE_CONFIG[_0x2b9b6d(0x127)],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![]},_0x3610b9=/<directory>(.*?)<\/directory>/i,_0x17b479=_0x3610b9[_0x2b9b6d(0x11a)](_0x234afc);_0x17b479&&(_0x5c20f3[_0x2b9b6d(0x11d)]=_0x17b479[0x1][_0x2b9b6d(0xf3)]());const _0x1a6826=/<max-depth>(\d+)<\/max-depth>/i,_0x401578=_0x1a6826['exec'](_0x234afc);_0x401578&&(_0x5c20f3['maxDepth']=parseInt(_0x401578[0x1],0xa));const _0x16960f=/<include-extensions>(.*?)<\/include-extensions>/i,_0x246cd3=_0x16960f[_0x2b9b6d(0x11a)](_0x234afc);_0x246cd3&&(_0x5c20f3[_0x2b9b6d(0x106)]=_0x246cd3[0x1][_0x2b9b6d(0xc4)](',')[_0x2b9b6d(0xea)](_0x2b6855=>_0x2b6855['trim']())['filter'](_0x312fcb=>_0x312fcb[_0x2b9b6d(0xd2)]>0x0));const _0x96d17c=/<exclude-extensions>(.*?)<\/exclude-extensions>/i,_0x1f3bde=_0x96d17c[_0x2b9b6d(0x11a)](_0x234afc);_0x1f3bde&&(_0x5c20f3['excludeExtensions']=_0x1f3bde[0x1][_0x2b9b6d(0xc4)](',')[_0x2b9b6d(0xea)](_0xcf237e=>_0xcf237e['trim']())['filter'](_0x22590e=>_0x22590e['length']>0x0));const _0x46ef58=/<exclude-directories>(.*?)<\/exclude-directories>/i,_0x5f5368=_0x46ef58[_0x2b9b6d(0x11a)](_0x234afc);_0x5f5368&&(_0x5c20f3['excludeDirectories']=_0x5f5368[0x1]['split'](',')[_0x2b9b6d(0xea)](_0x206d39=>_0x206d39[_0x2b9b6d(0xf3)]())[_0x2b9b6d(0xff)](_0x23c725=>_0x23c725[_0x2b9b6d(0xd2)]>0x0));const _0x13a0f4=/<show-files>(.*?)<\/show-files>/i,_0xbc3243=_0x13a0f4[_0x2b9b6d(0x11a)](_0x234afc);_0xbc3243&&(_0x5c20f3['showFiles']=_0xbc3243[0x1][_0x2b9b6d(0xf3)]()[_0x2b9b6d(0x101)]()!=='false');const _0x5caceb=/<show-hidden>(.*?)<\/show-hidden>/i,_0x5ce18d=_0x5caceb['exec'](_0x234afc);_0x5ce18d&&(_0x5c20f3['showHidden']=_0x5ce18d[0x1]['trim']()[_0x2b9b6d(0x101)]()===_0x2b9b6d(0xf1));const _0xa1938d=/<show-sizes>(.*?)<\/show-sizes>/i,_0x18af0c=_0xa1938d[_0x2b9b6d(0x11a)](_0x234afc);_0x18af0c&&(_0x5c20f3['showSizes']=_0x18af0c[0x1]['trim']()['toLowerCase']()==='true');const _0x3e71cd=/<ignore-binary-files>(.*?)<\/ignore-binary-files>/i,_0x2ab7ad=_0x3e71cd[_0x2b9b6d(0x11a)](_0x234afc);return _0x2ab7ad&&(_0x5c20f3['ignoreBinaryFiles']=_0x2ab7ad[0x1]['trim']()[_0x2b9b6d(0x101)]()===_0x2b9b6d(0xf1)),_0x5c20f3;}catch(_0x4c0715){return this['logger']?.[_0x2b9b6d(0xf2)](_0x2b9b6d(0x123),{'error':_0x4c0715['message']}),{'directory':'.','maxDepth':TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![],'parseError':_0x4c0715['message']};}}['getRequiredParameters'](){return[];}['customValidateParameters'](_0x15e3b9){const _0x2eda14=a0_0x2112e5,_0x18c123=[];if(_0x15e3b9[_0x2eda14(0xcd)]!==undefined){if(typeof _0x15e3b9['maxDepth']!==_0x2eda14(0x105)||_0x15e3b9[_0x2eda14(0xcd)]<0x1)_0x18c123['push'](_0x2eda14(0xde));else _0x15e3b9['maxDepth']>this['treeConfig']['MAX_DEPTH_LIMIT']&&_0x18c123[_0x2eda14(0xc9)]('max-depth\x20cannot\x20exceed\x20'+this[_0x2eda14(0x10b)]['MAX_DEPTH_LIMIT']);}_0x15e3b9[_0x2eda14(0x11d)]&&_0x15e3b9['directory'][_0x2eda14(0xbf)]('..')&&_0x18c123['push'](_0x2eda14(0xca));if(_0x15e3b9[_0x2eda14(0x106)]!==undefined&&_0x15e3b9['includeExtensions']!==null){if(!Array[_0x2eda14(0xfe)](_0x15e3b9[_0x2eda14(0x106)]))_0x18c123[_0x2eda14(0xc9)](_0x2eda14(0xf7));else for(const _0x2d7da6 of _0x15e3b9[_0x2eda14(0x106)]){!_0x2d7da6['startsWith']('.')&&_0x18c123[_0x2eda14(0xc9)](_0x2eda14(0xe7)+_0x2d7da6+'\x22\x20must\x20start\x20with\x20a\x20dot\x20(e.g.,\x20\x22.js\x22)');}}if(_0x15e3b9[_0x2eda14(0xdb)]!==undefined&&_0x15e3b9['excludeExtensions']!==null){if(!Array[_0x2eda14(0xfe)](_0x15e3b9[_0x2eda14(0xdb)]))_0x18c123[_0x2eda14(0xc9)]('excludeExtensions\x20must\x20be\x20an\x20array');else for(const _0x1402ce of _0x15e3b9['excludeExtensions']){!_0x1402ce['startsWith']('.')&&_0x18c123['push']('Extension\x20\x22'+_0x1402ce+'\x22\x20must\x20start\x20with\x20a\x20dot\x20(e.g.,\x20\x22.js\x22)');}}_0x15e3b9[_0x2eda14(0xee)]!==undefined&&_0x15e3b9['excludeDirectories']!==null&&(!Array[_0x2eda14(0xfe)](_0x15e3b9['excludeDirectories'])&&_0x18c123['push']('excludeDirectories\x20must\x20be\x20an\x20array'));if(_0x18c123[_0x2eda14(0xd2)]>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x18c123['join'](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x2112e5(0x117)](_0x3f0857,_0x270c02){const _0x9f71d8=a0_0x2112e5,{directory:directory='.',maxDepth:maxDepth=TREE_CONFIG[_0x9f71d8(0x127)],includeExtensions:includeExtensions=[],excludeExtensions:excludeExtensions=[],excludeDirectories:excludeDirectories=[],showFiles:showFiles=!![],showHidden:showHidden=![],showSizes:showSizes=![],ignoreBinaryFiles:ignoreBinaryFiles=![]}=_0x3f0857,{projectDir:_0x3e1f91,agentId:_0x2b0b49,directoryAccess:_0x36cfc3}=_0x270c02;let _0xf0336d=_0x3e1f91||process['cwd']();_0x36cfc3&&_0x36cfc3[_0x9f71d8(0x10a)]&&(_0xf0336d=_0x36cfc3[_0x9f71d8(0x10a)],this[_0x9f71d8(0x11e)]?.[_0x9f71d8(0xdd)]('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x36cfc3[_0x9f71d8(0x10a)],'agentId':_0x2b0b49}));const _0x3a8a39=a0_0x3e7cca[_0x9f71d8(0xe2)](directory)?directory:a0_0x3e7cca['resolve'](_0xf0336d,directory);try{const _0x558a43=await a0_0x818870['stat'](_0x3a8a39);if(!_0x558a43[_0x9f71d8(0x109)]())throw new Error(_0x9f71d8(0xf8));}catch(_0x133b4d){throw new Error('Directory\x20does\x20not\x20exist\x20or\x20is\x20inaccessible:\x20'+directory);}this[_0x9f71d8(0x11e)]?.['info']('Generating\x20file\x20tree',{'directory':directory,'targetDir':_0x3a8a39,'maxDepth':maxDepth,'includeExtensions':includeExtensions?.[_0x9f71d8(0xd2)]||0x0,'excludeExtensions':excludeExtensions?.[_0x9f71d8(0xd2)]||0x0,'agentId':_0x2b0b49}),this['stats']={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};const _0x5ed20a=[...DEFAULT_IGNORE_DIRECTORIES,...excludeDirectories||[]],_0x30a4b1=[...DEFAULT_IGNORE_EXTENSIONS];ignoreBinaryFiles&&_0x30a4b1[_0x9f71d8(0xc9)](...BINARY_EXTENSIONS);const _0x44567b=await this[_0x9f71d8(0x126)](_0x3a8a39,_0x3a8a39,0x0,maxDepth,_0x5ed20a,includeExtensions||[],[...excludeExtensions||[],..._0x30a4b1],showFiles,showHidden,showSizes),_0x5b6062=this['formatTree'](_0x44567b),_0x1f7775=this['generateSummary'](directory,this[_0x9f71d8(0xd9)],maxDepth);return{'success':!![],'directory':_0x3a8a39,'tree':_0x5b6062,'summary':_0x1f7775,'maxDepth':maxDepth,'totalFiles':this['stats'][_0x9f71d8(0x104)],'totalDirectories':this['stats']['directoriesCount'],'skippedCount':this[_0x9f71d8(0xd9)]['skippedCount'],'statistics':{...this['stats']},'toolUsed':_0x9f71d8(0x112)};}async[a0_0x2112e5(0x126)](_0x40f73e,_0x2de12b,_0x32169c,_0x4d0e2c,_0x1f47e6,_0x35d341,_0x3cae8b,_0x270387,_0x475b78,_0x98f20){const _0x39c362=a0_0x2112e5;if(_0x32169c>_0x4d0e2c)return null;if(this[_0x39c362(0xd9)]['directoriesCount']>=this['treeConfig'][_0x39c362(0xcb)])return this[_0x39c362(0x11e)]?.['warn']('Maximum\x20directory\x20count\x20reached',{'maxDirectories':this['treeConfig'][_0x39c362(0xcb)]}),null;try{const _0x18cddf=await a0_0x818870['readdir'](_0x2de12b,{'withFileTypes':!![]}),_0x2d0cb6={'name':_0x32169c===0x0?a0_0x3e7cca[_0x39c362(0x10f)](_0x2de12b)+'/':a0_0x3e7cca[_0x39c362(0x10f)](_0x2de12b),'path':a0_0x3e7cca[_0x39c362(0xd1)](_0x40f73e,_0x2de12b),'type':'directory','children':[]};this[_0x39c362(0xd9)]['directoriesCount']++;for(const _0x4569bf of _0x18cddf){if(this['stats'][_0x39c362(0x104)]>=this['treeConfig'][_0x39c362(0xc8)]){this['logger']?.[_0x39c362(0xb8)]('Maximum\x20file\x20count\x20reached',{'maxFiles':this[_0x39c362(0x10b)]['MAX_FILES_IN_TREE']});break;}if(!_0x475b78&&_0x4569bf[_0x39c362(0xd4)]['startsWith']('.')){this['stats'][_0x39c362(0xd7)]++;continue;}const _0x3d56a0=a0_0x3e7cca[_0x39c362(0xfc)](_0x2de12b,_0x4569bf['name']);if(_0x4569bf[_0x39c362(0x109)]()){if(_0x1f47e6[_0x39c362(0xbf)](_0x4569bf[_0x39c362(0xd4)])){this['stats']['skippedCount']++;continue;}const _0x3d1ebd=await this[_0x39c362(0x126)](_0x40f73e,_0x3d56a0,_0x32169c+0x1,_0x4d0e2c,_0x1f47e6,_0x35d341,_0x3cae8b,_0x270387,_0x475b78,_0x98f20);_0x3d1ebd&&(_0x3d1ebd[_0x39c362(0xc6)][_0x39c362(0xd2)]>0x0||_0x32169c===0x0)&&_0x2d0cb6['children']['push'](_0x3d1ebd);}else{if(_0x4569bf['isFile']()&&_0x270387){if(_0x32169c+0x1>_0x4d0e2c)continue;const _0x376f34=a0_0x3e7cca[_0x39c362(0xd8)](_0x4569bf[_0x39c362(0xd4)]);if(_0x35d341['length']>0x0){if(!_0x35d341['includes'](_0x376f34)){this['stats'][_0x39c362(0xd7)]++;continue;}}else{if(_0x3cae8b['includes'](_0x376f34)){this[_0x39c362(0xd9)][_0x39c362(0xd7)]++;continue;}}let _0x3eb0e1='';if(_0x98f20)try{const _0x46fb14=await a0_0x818870['stat'](_0x3d56a0);_0x3eb0e1='\x20('+this['formatFileSize'](_0x46fb14[_0x39c362(0xdc)])+')';}catch(_0x5b27a7){}_0x2d0cb6['children'][_0x39c362(0xc9)]({'name':_0x4569bf['name']+_0x3eb0e1,'path':a0_0x3e7cca['relative'](_0x40f73e,_0x3d56a0),'type':'file','ext':_0x376f34}),this[_0x39c362(0xd9)][_0x39c362(0x104)]++;}}}return _0x2d0cb6['children'][_0x39c362(0xe5)]((_0x1d8f40,_0xc1418b)=>{const _0x15f9f6=_0x39c362;if(_0x1d8f40[_0x15f9f6(0xe3)]===_0xc1418b[_0x15f9f6(0xe3)])return _0x1d8f40[_0x15f9f6(0xd4)][_0x15f9f6(0x129)](_0xc1418b[_0x15f9f6(0xd4)]);return _0x1d8f40['type']===_0x15f9f6(0x11d)?-0x1:0x1;}),_0x2d0cb6;}catch(_0x1822df){return this[_0x39c362(0x11e)]?.['error']('Error\x20building\x20tree',{'currentPath':_0x2de12b,'error':_0x1822df['message']}),{'name':a0_0x3e7cca['basename'](_0x2de12b),'path':a0_0x3e7cca['relative'](_0x40f73e,_0x2de12b),'type':'directory','error':_0x1822df[_0x39c362(0x119)],'children':[]};}}[a0_0x2112e5(0x110)](_0x7c4799,_0x1c1318='',_0xc2848c=!![],_0x3cec20=!![]){const _0x442124=a0_0x2112e5;if(!_0x7c4799)return'';const _0x3fc772=this['treeConfig']['SYMBOLS'];let _0x39f945='';_0x3cec20?_0x39f945=_0x7c4799['name']+'\x0a':_0x39f945=''+_0x1c1318+(_0xc2848c?_0x3fc772['LAST_BRANCH']:_0x3fc772['BRANCH'])+_0x7c4799['name']+'\x0a';if(_0x7c4799['children']&&_0x7c4799[_0x442124(0xc6)][_0x442124(0xd2)]>0x0){const _0x24700c=_0x3cec20?'':_0x1c1318+(_0xc2848c?_0x3fc772[_0x442124(0xc7)]:_0x3fc772['VERTICAL']);_0x7c4799['children'][_0x442124(0xec)]((_0x19ff57,_0x1bc9bc)=>{const _0x5e04a7=_0x442124,_0xe77e78=_0x1bc9bc===_0x7c4799[_0x5e04a7(0xc6)]['length']-0x1;_0x39f945+=this['formatTree'](_0x19ff57,_0x24700c,_0xe77e78,![]);});}return _0x39f945;}[a0_0x2112e5(0xc3)](_0x20ec4d){const _0xa3bba9=a0_0x2112e5,_0x26bbdb=0x400,_0x10decf=_0x26bbdb*0x400,_0x160492=_0x10decf*0x400;if(_0x20ec4d>=_0x160492)return(_0x20ec4d/_0x160492)['toFixed'](0x2)+_0xa3bba9(0x108);else{if(_0x20ec4d>=_0x10decf)return(_0x20ec4d/_0x10decf)['toFixed'](0x2)+'\x20MB';else return _0x20ec4d>=_0x26bbdb?(_0x20ec4d/_0x26bbdb)['toFixed'](0x2)+'\x20KB':_0x20ec4d+'\x20B';}}['generateSummary'](_0x7eaa1e,_0x5ad1c0,_0x3b913a){const _0xb3fd69=a0_0x2112e5;return(_0xb3fd69(0xfa)+_0x7eaa1e+_0xb3fd69(0xef)+_0x3b913a+'\x0aFiles:\x20'+_0x5ad1c0[_0xb3fd69(0x104)]+_0xb3fd69(0x114)+_0x5ad1c0[_0xb3fd69(0xd6)]+'\x0aSkipped:\x20'+_0x5ad1c0['skippedCount']+'\x0a\x20\x20\x20\x20')['trim']();}async[a0_0x2112e5(0xcf)](_0x7ae920){const _0x36bea2=a0_0x2112e5;this[_0x36bea2(0x11e)]?.[_0x36bea2(0xdd)]('File\x20tree\x20tool\x20cleanup\x20completed',{'operationId':_0x7ae920});}}export default FileTreeTool;function a0_0x3db9(){const _0x27cb9c=['ugf0AcbPCYbUB3qGysbKAxjLy3rVCNK','lNjHCG','cKrPCMvJDg9YEtOG','mZy2oty4ngjkALrKua','AM9PBG','lMrI','AxnbCNjHEq','zMLSDgvY','lNDTDG','Dg9mB3DLCKnHC2u','lNPPCa','lNb5BW','zMLSzxndB3vUDa','BNvTyMvY','Aw5JBhvKzuv4DgvUC2LVBNm','DgvTCa','ieDc','AxneAxjLy3rVCNK','D29YA2LUz0rPCMvJDg9YEq','DhjLzunVBMzPzW','lM5VEa','ote3mtGXwvr5swXu','yNvPBgq','yMfZzw5HBwu','zM9YBwf0vhjLzq','lNrTCa','zMLSzs10CMvL','lMnSyxnZ','cKrPCMvJDg9YAwvZoIa','mZHtyuvLBuG','lM5LEhq','zxHLy3v0zq','mtKWse11rfvy','BwvZC2fNzq','zxHLyW','odKYnteZnKn0t2ncsq','lM1WmW','zgLYzwn0B3j5','Bg9Nz2vY','lNr0zG','4PsC4Psa4Psaia','4PscicaG','lMDPDa','rMfPBgvKihrVihbHCNnLigzPBguTDhjLzsbWyxjHBwv0zxjZ','lNb5DgvZDf9JywnOzq','ody1mZy4sKDRt0rU','yNvPBgruCMvL','revgqvvmvf9nqvHFrevqveG','CMvXDwLYzxnqCM9Qzwn0','Bg9JywXLq29TCgfYzq','D2fYBG','mJiYmJzUthL4v1y','lMrSBa','lM1PBI5JC3m','AxnbC3LUyW','mJm1mJG5muHSAhfqCq','lMDPzG','Aw5JBhvKzxm','lMLJBW','nJzgrwj6wNq','lNDVzMyY','zM9YBwf0rMLSzvnPEMu','C3bSAxq','lMPWzW','y2HPBgrYzw4','su5eru5u','tufyx0zjtevtx0Lox1rsruu','ChvZAa','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK','tufyx0rjuKvdve9ssuvt','y292zxjHz2u','Bwf4rgvWDgG','Dg1W','y2XLyw51Ca','cKzPBguGvhjLzsbuB29SoIbhzw5LCMf0zsbOAwvYyxjJAgLJywWGDhjLzsbYzxbYzxnLBNrHDgLVBIbVzIbWCM9Qzwn0igrPCMvJDg9YEsbZDhj1y3r1CMuUcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLlxrYzwuIlaOGicjKAxjLy3rVCNKIoIaIC3jJiIWkicaIBwf4rgvWDgGIoIa0laOGicjPBMnSDwrLrxH0zw5ZAw9UCYi6ifSIlMPZiIWGiI5QC3GIlcaIlNrZiIWGiI50C3GIxsWkicaIzxHJBhvKzuv4DgvUC2LVBNmIoIbBiI50zxn0lMPZiIWGiI5ZCgvJlMPZiL0ScIaGiNnOB3DgAwXLCYi6ihrYDwuScIaGiNnOB3DiAwrKzw4IoIbMywXZzqP9cMbGyaOkuefsqu1fvevsuZOkcMrPCMvJDg9YEsaOB3b0Aw9UywWPoGOGic0GrgLYzwn0B3j5ihrVihnJyw4GkgrLzMf1Bhq6ihDVCMTPBMCGzgLYzwn0B3j5kqOGic0Gq2fUigjLihjLBgf0AxzLig9YigfIC29SDxrLihbHDgGkicaTiev4yw1WBgvZoIaIC3jJiIWGiNnYyY9JB21WB25LBNrZiIWGiI9OB21Ll3vZzxiVChjVAMvJDcikcM1HEerLChrOicHVChrPB25HBcK6cIaGlsbnyxHPBxvTigrLChrOihrVihnJyw4GkgrLzMf1Bhq6ia','CMvSyxrPDMu','BgvUz3rO','z2v0rgvZy3jPChrPB24','BMfTzq','lM15ChLFy2fJAgu','zgLYzwn0B3jPzxndB3vUDa','C2TPChbLzenVDw50','zxH0BMfTzq','C3rHDhm','mJC4ndu1yKrpBfnZ','zxHJBhvKzuv4DgvUC2LVBNm','C2L6zq','Aw5MBW','Bwf4lwrLChrOig11C3qGyMuGysbWB3nPDgL2zsbUDw1Izxi','lMjPBG','lNrHCG','4Psu4Psa4Psaia','AxnbyNnVBhv0zq','DhLWzq','lNnXBgL0zq','C29YDa','icaGia','rxH0zw5ZAw9Uici','lMnHy2HL','DgfYz2v0','BwfW','lMvNz3m','zM9YrwfJAa','lMPHCG','zxHJBhvKzurPCMvJDg9YAwvZ','cK1HEcbezxb0AdOG','DgLTzw91Da','Dhj1zq','zxjYB3i','DhjPBq','lMr5BgLI','lMjTCa','lMf2Aq','Aw5JBhvKzuv4DgvUC2LVBNmGBxvZDcbIzsbHBIbHCNjHEq'];a0_0x3db9=function(){return _0x27cb9c;};return a0_0x3db9();}
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 +1 @@
1
- function a0_0x8235(_0x5ce4e7,_0x5775ed){_0x5ce4e7=_0x5ce4e7-0x8c;const _0xb0f53d=a0_0xb0f5();let _0x8235d6=_0xb0f53d[_0x5ce4e7];if(a0_0x8235['VlJRQL']===undefined){var _0x44bce9=function(_0x12295f){const _0x117839='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x31adb9='',_0x349a58='';for(let _0x272c7f=0x0,_0x145b63,_0x1574b4,_0x10e1db=0x0;_0x1574b4=_0x12295f['charAt'](_0x10e1db++);~_0x1574b4&&(_0x145b63=_0x272c7f%0x4?_0x145b63*0x40+_0x1574b4:_0x1574b4,_0x272c7f++%0x4)?_0x31adb9+=String['fromCharCode'](0xff&_0x145b63>>(-0x2*_0x272c7f&0x6)):0x0){_0x1574b4=_0x117839['indexOf'](_0x1574b4);}for(let _0x2a8162=0x0,_0x2ae99f=_0x31adb9['length'];_0x2a8162<_0x2ae99f;_0x2a8162++){_0x349a58+='%'+('00'+_0x31adb9['charCodeAt'](_0x2a8162)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x349a58);};a0_0x8235['NKFuQI']=_0x44bce9,a0_0x8235['evlNUV']={},a0_0x8235['VlJRQL']=!![];}const _0x1bf069=_0xb0f53d[0x0],_0x1960bf=_0x5ce4e7+_0x1bf069,_0x2a437f=a0_0x8235['evlNUV'][_0x1960bf];return!_0x2a437f?(_0x8235d6=a0_0x8235['NKFuQI'](_0x8235d6),a0_0x8235['evlNUV'][_0x1960bf]=_0x8235d6):_0x8235d6=_0x2a437f,_0x8235d6;}const a0_0x245888=a0_0x8235;(function(_0x2249ab,_0x550f34){const _0x22db52=a0_0x8235,_0x408826=_0x2249ab();while(!![]){try{const _0x15e30c=parseInt(_0x22db52(0xab))/0x1*(-parseInt(_0x22db52(0xc5))/0x2)+-parseInt(_0x22db52(0xd6))/0x3*(parseInt(_0x22db52(0xe0))/0x4)+parseInt(_0x22db52(0x99))/0x5*(parseInt(_0x22db52(0xea))/0x6)+-parseInt(_0x22db52(0xf4))/0x7*(parseInt(_0x22db52(0xc6))/0x8)+-parseInt(_0x22db52(0x97))/0x9*(-parseInt(_0x22db52(0x11a))/0xa)+parseInt(_0x22db52(0x9f))/0xb+parseInt(_0x22db52(0xf8))/0xc;if(_0x15e30c===_0x550f34)break;else _0x408826['push'](_0x408826['shift']());}catch(_0x56b11f){_0x408826['push'](_0x408826['shift']());}}}(a0_0xb0f5,0x95041));import a0_0x31adb9 from'path';import a0_0x349a58 from'os';function a0_0xb0f5(){const _0x40c4c1=['Aw1Hz2uTz2vU','lNbUzW','CgfYyw1LDgvYCW','mZe2nZmWsNPnueDs','Aw1Hz2vZl2DLBMvYyxrLzc0','quKGu2vYDMLJzsbZzxqGzM9YieLTywDLvg9VBa','DxjS','zNvSBa','igLTywDLCYbPBIbXDwv1zq','BgfZDefJDgL2Axr5','Aw1Hz2vZ','BgfZDfvWzgf0zwq','y29TCgXLDgvK','Dg9tDhjPBMC','C3rYAw5N','Bg9Nz2vY','C3rHBMrHCMq','zxHLyW','Aw1Nlq','vhLWzuvYCM9Y','z2v0sM9Iu3rHDhvZ','CxvLDwvK','zMfPBgvK','DMfSDwvZ','C2f2zwruB0rPC2S','x2DLBMvYyxrLsw1Hz2u','mc4WlJaUma','vg9VBdOGsw1Hz2uGr2vUzxjHDg9Yic0Gr2vUzxjHDguGAw1Hz2vZihvZAw5Niefjig1VzgvSCWOkkIPqDxjWB3nLoIOQieDLBMvYyxrLigLTywDLCYbMCM9TihrLEhqGzgvZy3jPChrPB25ZihvZAw5NierbteWTrsaZlIbjBwfNzxmGyxjLihnHDMvKihrVigzPBgvZigfUzcbKAxnWBgf5zwqGAw4Gy2HHDc4kcIOQq1jjveLdquW6ief1Dg9TyxrPyYbfEgvJDxrPB24QkGOTiefowsbGygbQC29UigjSB2nRihDPDgGGiNrVB2Xjzci6icjPBwfNzs1Nzw4IihDPBgWGyMuGrvHfq1vuruqGsu1nrurjqvrftfKklsbkDxn0ig91Dhb1Dcb0AguGy29TBwfUzcb3AgvUihLVDsb3yw50ihrVigDLBMvYyxrLigfUigLTywDLcI0GswyGz2vUzxjHDgLVBIbMywLSCYWGB3v0Chv0igeGtKvxignVBw1HBMqGD2L0AcbJB3jYzwn0Aw9UCWOkkIPvu0fhrtOQkGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMLTywDLlwDLBIiScIaGiNbHCMfTzxrLCNmIoIb7cIaGicaIChjVBxb0iJOGiKrLDgfPBgvKigrLC2nYAxb0Aw9Uig9MihrOzsbPBwfNzsiScIaGicaIB3v0Chv0ugf0Aci6icjPBwfNzxmVzMLSzw5HBwuUCg5NiIWkicaGicjTB2rLBci6icjHENvYzs1VCgvUywKTzgfSBguZiIWkicaGicjZAxPLiJOGiJeWmJr4mtaYncikicb9cN0kygbGcGOQkLbHCMfTzxrLCNm6kIOklsaQkNbYB21WDcOQicHYzxf1AxjLzcK6ierLDgfPBgvKigrLC2nYAxb0Aw9Uig9MigLTywDLihrVigDLBMvYyxrLcI0GkIPVDxrWDxrqyxrOkIOGkg9WDgLVBMfSktOGugf0Acb0BYbZyxzLigLTywDLicHWzxjTyw5LBNqPlIbpBwL0igzVCIb0zw1WigzPBguUcI0GkIPTB2rLBcOQicHVChrPB25HBcK6icjHENvYzs1VCgvUywKTzgfSBguZiIaOzgvMyxvSDcKklsaQkNnPEMuQkIaOB3b0Aw9UywWPoIaYntz4mJu2lca1mtj4nteYlcaXmdi0EdeWmJqSideWmJr4mtC5mIWGmtC5mNGXmdi0icHKzwzHDwX0oIaXmdi0EdeWmJqPcI0GkIPXDwfSAxr5kIOGkg9WDgLVBMfSktOGiNn0yw5KyxjKiIbVCIaIAgqIicHKzwzHDwX0oIbZDgfUzgfYzcKkcIOQrvHbtvbmrtOQkGPvC2vYoIaIy3jLyxrLigeGC3vUC2v0igLTywDLiGPzB3uGB3v0Chv0oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMLTywDLlwDLBIiScIaGiNbHCMfTzxrLCNmIoIb7cIaGicaIChjVBxb0iJOGiKeGyMvHDxrPzNvSihn1BNnLDcbVDMvYihrOzsbVy2vHBIb3AxrOihzPyNjHBNqGB3jHBMDLigfUzcbWAw5RignVBg9YCYbYzwzSzwn0Aw5Nig9UignHBg0GD2f0zxjZiIWkicaGicjVDxrWDxrqyxrOiJOGiMLTywDLCY9ZDw5ZzxqUCg5NiIWkicaGicjZAxPLiJOGiJeWmJr4mtaYncikicb9cN0kygbGcGOQkK5VDgvZoIOQcI0Gsw1Hz2vZihrHA2uGmtuTmZaGC2vJB25KCYb0BYbNzw5LCMf0zqOTiejLigrLC2nYAxb0AxzLigLUihbYB21WDhmGzM9YigjLDhrLCIbYzxn1BhrZcI0Gtwf4ia','C3rHDhvZ','ntrer3P4Euy','FJmWihnLy29Uzhm','mJi0nvDwDK1qtq','CgfYC2vqyxjHBwv0zxjZ','CMvZB2X2zwrpDxrWDxrqyxrO','ChjVy2vZC2LUzW','x2vZDgLTyxrLv2fPDfrPBwu','4P2mieLTywDLigDLBMvYyxrPB24GzMfPBgvKoIa','odaZote1mLrdrwTVBa','B2jQzwn0','CxvLDwu','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq','CMfUzg9T','AxnbyNnVBhv0zq','Aw1NlxjLC3vSDc0','vgLTzw91DevYCM9Y','sw1Hz2uGz2vUzxjHDgLVBIbLCNjVCJO','zgLYBMfTzq','x3bYB2nLC3nrDwv1zq','DgvTCg9Yyxj5vxjS','mvz0yMfmBq','y2XLyw51CfrPBwvYCW','zMXVB3i','yMfZzw5HBwu','nteYEduXmG','DgvTCerPCG','yNjVywrJyxn0vg9tzxnZAw9U','B3v0Chv0ugf0Aa','y3vYCMvUDe1VzgvS','ChvZAa','cGOQkLbYB21WDdOQkIa','z2vUzxjHDgvKlq','DgLTzw91Da','Bw9KzwW','ChjVAMvJDerPCG','AM9Iswq','x3bHCNnLsLnptLbHCMfTCW','uvvfvuvFteLnsvq','CxvHBgL0Eq','x2DLBMvYyxrLsM9Iswq','zMLUza','y29UDMvYC2f0Aw9UCW','DhjPBq','y29TCgXLDgvKsM9ICW','yxjYyxLcDwzMzxi','tufyx1bst01qvf9mru5hveG','mtG5mJeXmhnJuejutG','ntiWoeP2AfLRAq','BM93','Bg94Awfxzwjtzxj2zxi','C2v0','Dg1WzgLY','zgvIDwC','uhjVBxb0ihrVBYbSB25NicHTyxGG','BM9YBwfSAxPL','z2v0rgvZy3jPChrPB24','tM8GDMfSAwqGAw1Hz2uGCgfYyw1LDgvYCYbMB3vUza','re9xtKXpqurFveLnru9vva','Dg9ju09tDhjPBMC','C2L6zq','qwDLBNrqB29SihnLDcbMB3iGsw1Hz2vuB29S','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLlIbjBwfNzsbNzw5LCMf0Aw9UihjLCxvPCMvZiefjihnLCNzPy2uU','y3vYCMvUDePVyG','mJy0oda0BxDKrKXl','mtaYnhGXnZKY','sw1Hz2uGz2vUzxjHDgLVBIbQB2iGCxvLDwvKoIa','zxjYB3i','AxnbCNjHEq','sw52ywXPzcbMB3jTyxq6ia','ChjVBxb0','x3jLC29SDMvpDxrWDxrqyxrO','uxvLDwuGBgLTAxqGCMvHy2HLzcaO','rMfPBgvKihrVihnHDMuGAw1Hz2uGzxjYB3iGDg8Gy29UDMvYC2f0Aw9UigHPC3rVCNK','mtzeBeLcwvC','x3zHBgLKyxrLugfYyw1LDgvYCW','tMv0D29YAYbLCNjVCJOG','yMf0y2G','Aw1Hz2vhzw5LCMf0zwq','lI4U','y29TCgXLDgvKqxq','BgvUz3rO','mtaYnhGXmdi0','C2vZC2LVBKLK','nJC4rwXctMPZ','C3rHCNrZv2L0Aa','cIOQrxjYB3i6kIOG','CgvYC2LZDefNzw50u3rHDgu','ywLtzxj2AwnL','zxH0BMfTzq','x2nVBNzLCNruB1DLyLvYBa','x2rVD25SB2fKsw1Hz2u','CMvZDwX0','pIHBxhnCu10QpYK8xc8','nte4shbNsuTv','qwnJzxnZigrLBMLLzdOGCgf0AcbVDxrZAwrLihbYB2PLy3qGzgLYzwn0B3j5','Ag9ZDa','zg93BMXVywrfCNjVCG','mte4mZi3ntzruezev2q','sw1Hz2uGz2vUzxjHDgLVBIbLCNjVCIbICM9HzgnHC3qGC2vUDa','x3nJAgvKDwXLq2XLyw51Ca','AM9PBG','yxP1CMuTB3bLBMfPlwrHBgXLmW','revgqvvmvf9nt0rfta','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0','BwvZC2fNzxm','Aw1Hz2uTCMvZDwX0','Aw5MBW','sw1Hz2uGzg93BMXVywqGDgLTzw91Da','igLTywDLCYKUifbSzwfZzsb3ywL0igzVCIbJDxjYzw50igPVyNmGDg8Gy29TCgXLDguU','ywDLBNrqB29S','revgqvvmvf9tsvPf','sw1Hz2uGCMvZDwX0ihnHDMvKihrVignVBNzLCNnHDgLVBIbOAxn0B3j5','C2HPzNq','x3bHCNnLwe1msw1Hz2u','C2f2zvrVuhjVAMvJDa','sw1Hz2uGz2vUzxjHDgLVBIbJB21WBgv0zwq6ia','ywDLBNrjza','Bg9JywXOB3n0','BMfTzq','BwvZC2fNzq','y2XLyxi','u2H1DhrPBMCGzg93BIbjBwfNzvrVB2W','x3bHCNnLsw1Hz2vqyxjHBxm','Aw5JBhvKzxm','sw1Hz2vuB29SoIboB3jTywXPEMLUzYbVyMPLy3qGCgfYyw1LDgvYCW','x3bHCNnLwe1mugfYyw1Z','D3jPDgvgAwXL','vKfmsurFrK9stufuuW'];a0_0xb0f5=function(){return _0x40c4c1;};return a0_0xb0f5();}import{promises as a0_0x272c7f}from'fs';import{BaseTool}from'./baseTool.js';const IMAGE_CONFIG={'DEFAULT_MODEL':a0_0x245888(0xfc),'DEFAULT_SIZE':'1024x1024','DEFAULT_QUALITY':a0_0x245888(0x127),'VALID_SIZES':['256x256',a0_0x245888(0xaf),a0_0x245888(0xe8),a0_0x245888(0xd7),'1792x1024'],'VALID_FORMATS':['png','jpg','jpeg','webp'],'MAX_CONCURRENT':0x3,'QUEUE_LIMIT':0xa,'TEMP_CLEANUP_MS':0x36ee80,'MAX_PROMPT_LENGTH':0xfa0,'DOWNLOAD_TIMEOUT':0xea60};export class ImageTool extends BaseTool{constructor(_0x145b63={},_0x1574b4=null){const _0x3e43e3=a0_0x245888;super(_0x145b63,_0x1574b4),this['id']=_0x3e43e3(0x117),this[_0x3e43e3(0xa1)]=[],this[_0x3e43e3(0xd5)]=null,this[_0x3e43e3(0xc2)]=new Map(),this['isProcessing']=![],this[_0x3e43e3(0xee)]=null,this[_0x3e43e3(0x104)]=null,this[_0x3e43e3(0xb0)]=a0_0x31adb9['join'](a0_0x349a58[_0x3e43e3(0xca)](),'loxia-images'),this['cleanupTimers']=new Map();}['setAIService'](_0x10e1db){const _0x4552d3=a0_0x245888;this['aiService']=_0x10e1db,this['logger']?.['info'](_0x4552d3(0x11c));}['setAgentPool'](_0x2a8162){const _0x43e2da=a0_0x245888;this['agentPool']=_0x2a8162,this[_0x43e2da(0x126)]?.[_0x43e2da(0x101)](_0x43e2da(0xd3));}[a0_0x245888(0xce)](){const _0x215eaf=a0_0x245888;return _0x215eaf(0x95)+IMAGE_CONFIG['QUEUE_LIMIT']+_0x215eaf(0x11f);}['parseParameters'](_0x2ae99f){const _0x585cb1=a0_0x245888;if(typeof _0x2ae99f==='object'&&_0x2ae99f!==null)return this['_parseJSONParams'](_0x2ae99f);if(typeof _0x2ae99f===_0x585cb1(0x125)){const _0x1a4c00=_0x2ae99f['trim']();if(_0x1a4c00['startsWith']('{')||_0x1a4c00[_0x585cb1(0xeb)]('['))try{const _0x406827=JSON['parse'](_0x1a4c00);return this[_0x585cb1(0xbb)](_0x406827);}catch(_0x4acf08){}return this[_0x585cb1(0x114)](_0x2ae99f);}throw new Error(_0x585cb1(0xfe));}['_parseJSONParams'](_0x526d73){const _0x4c9307=a0_0x245888;_0x526d73['parameters']&&(_0x526d73=_0x526d73[_0x4c9307(0x119)]);if(_0x526d73['batch']&&Array[_0x4c9307(0xda)](_0x526d73[_0x4c9307(0xe3)]))return{'batch':!![],'images':_0x526d73[_0x4c9307(0xe3)]['map'](_0x15c555=>this[_0x4c9307(0x111)](_0x15c555))};return{'batch':![],'images':[this[_0x4c9307(0x111)](_0x526d73)]};}['_parseXMLParams'](_0x5ca4c4){const _0x2a4ada=a0_0x245888,_0x23711a={'batch':![],'images':[]},_0xe0e021=/<batch>([\s\S]*?)<\/batch>/i[_0x2a4ada(0x128)](_0x5ca4c4);if(_0xe0e021){_0x23711a['batch']=!![];const _0x519e04=_0xe0e021[0x1],_0x1a253b=/<image>([\s\S]*?)<\/image>/gi;let _0x2fb9a1;while((_0x2fb9a1=_0x1a253b[_0x2a4ada(0x128)](_0x519e04))!==null){_0x23711a['images'][_0x2a4ada(0xb4)](this['_parseXMLImage'](_0x2fb9a1[0x1]));}}else _0x23711a[_0x2a4ada(0x121)][_0x2a4ada(0xb4)](this[_0x2a4ada(0x108)](_0x5ca4c4));if(_0x23711a['images'][_0x2a4ada(0xe7)]===0x0)throw new Error(_0x2a4ada(0xcf));return _0x23711a;}[a0_0x245888(0x111)](_0xde2d2c){const _0x55de53=a0_0x245888,_0x45bfd7=_0xde2d2c[_0x55de53(0xb2)]||_0xde2d2c['output-path']||null;return{'prompt':_0xde2d2c['prompt']||'','outputPath':_0x45bfd7,'saveToProject':_0x45bfd7!==null,'model':_0xde2d2c['model']||IMAGE_CONFIG[_0x55de53(0xfd)],'size':_0xde2d2c['size']||IMAGE_CONFIG['DEFAULT_SIZE'],'quality':_0xde2d2c[_0x55de53(0xbd)]||IMAGE_CONFIG['DEFAULT_QUALITY']};}[a0_0x245888(0x108)](_0x1fbe01){const _0x5e7e3f=a0_0x245888,_0x5b980c=_0x14fce7=>{const _0x1fb7a7=a0_0x8235,_0x4f764b=new RegExp('<'+_0x14fce7+_0x1fb7a7(0xf3)+_0x14fce7+'>','i'),_0x46fa0c=_0x4f764b['exec'](_0x1fbe01);return _0x46fa0c?_0x46fa0c[0x1][_0x1fb7a7(0xc1)]():null;},_0x434fb1=_0x5b980c('output-path')||null;return{'prompt':_0x5b980c(_0x5e7e3f(0xdc))||'','outputPath':_0x434fb1,'saveToProject':_0x434fb1!==null,'model':_0x5b980c(_0x5e7e3f(0xb8))||IMAGE_CONFIG[_0x5e7e3f(0xfd)],'size':_0x5b980c(_0x5e7e3f(0xd2))||IMAGE_CONFIG[_0x5e7e3f(0x105)],'quality':_0x5b980c(_0x5e7e3f(0xbd))||IMAGE_CONFIG['DEFAULT_QUALITY']};}async['execute'](_0xca9dc6,_0xc7617d={}){const _0x4a6ad3=a0_0x245888;try{const {agentId:_0x5a7735,projectDir:_0x5bfe97,directoryAccess:_0x325989,sessionId:_0x3138a6}=_0xc7617d;if(typeof _0xca9dc6==='string')this['logger']?.['info']('ImageTool:\x20Auto-parsing\x20string\x20parameters'),_0xca9dc6=this[_0x4a6ad3(0x9a)](_0xca9dc6);else typeof _0xca9dc6===_0x4a6ad3(0xa0)&&_0xca9dc6!==null&&!_0xca9dc6[_0x4a6ad3(0x121)]&&(this['logger']?.[_0x4a6ad3(0x101)](_0x4a6ad3(0x113)),_0xca9dc6=this[_0x4a6ad3(0x9a)](_0xca9dc6));this[_0x4a6ad3(0xe1)](_0xca9dc6);const _0x3cfe31=[];for(const _0xa6d507 of _0xca9dc6[_0x4a6ad3(0x121)]){const _0x175f2c=this[_0x4a6ad3(0xbe)](),_0x53f92f={'jobId':_0x175f2c,'agentId':_0x5a7735,'sessionId':_0x3138a6,'prompt':_0xa6d507[_0x4a6ad3(0xdc)],'outputPath':_0xa6d507[_0x4a6ad3(0xb2)],'saveToProject':_0xa6d507['saveToProject'],'model':_0xa6d507[_0x4a6ad3(0xb8)],'size':_0xa6d507[_0x4a6ad3(0xd2)],'quality':_0xa6d507[_0x4a6ad3(0xbd)],'projectDir':_0x5bfe97||process['cwd'](),'directoryAccess':_0x325989,'status':_0x4a6ad3(0x8f),'createdAt':new Date()[_0x4a6ad3(0xd1)]()};if(this[_0x4a6ad3(0xa1)]['length']>=IMAGE_CONFIG['QUEUE_LIMIT'])return{'success':![],'error':_0x4a6ad3(0xde)+IMAGE_CONFIG[_0x4a6ad3(0xbc)]+_0x4a6ad3(0x103),'queueLength':this['queue'][_0x4a6ad3(0xe7)]};this['queue'][_0x4a6ad3(0xb4)](_0x53f92f),_0x3cfe31['push'](_0x175f2c),this['logger']?.[_0x4a6ad3(0x101)](_0x4a6ad3(0xd8)+_0x175f2c,{'prompt':_0xa6d507['prompt']['substring'](0x0,0x32)+_0x4a6ad3(0xe5),'queuePosition':this[_0x4a6ad3(0xa1)]['length']});}return!this['isProcessing']&&this[_0x4a6ad3(0xa9)]()['catch'](_0xb65b12=>{const _0x5ac304=_0x4a6ad3;this['logger']?.[_0x5ac304(0xd9)]('Queue\x20processing\x20error:',_0xb65b12);}),{'success':!![],'jobIds':_0x3cfe31,'queueLength':this[_0x4a6ad3(0xa1)]['length'],'message':_0xca9dc6['batch']?_0x3cfe31['length']+'\x20images\x20queued\x20for\x20generation':'Image\x20queued\x20for\x20generation','estimatedWaitTime':this[_0x4a6ad3(0x9d)]()};}catch(_0x306138){return this['logger']?.[_0x4a6ad3(0xd9)](_0x4a6ad3(0xa7),_0x306138),{'success':![],'error':_0x306138['message']};}}[a0_0x245888(0xe1)](_0x1cf36f){const _0x45c618=a0_0x245888;if(!_0x1cf36f[_0x45c618(0x121)]||_0x1cf36f[_0x45c618(0x121)]['length']===0x0)throw new Error('No\x20images\x20specified');for(const _0x494d4b of _0x1cf36f[_0x45c618(0x121)]){if(!_0x494d4b['prompt']||_0x494d4b[_0x45c618(0xdc)]['trim']()[_0x45c618(0xe7)]===0x0)throw new Error('Image\x20prompt\x20is\x20required');if(_0x494d4b[_0x45c618(0xdc)][_0x45c618(0xe7)]>IMAGE_CONFIG[_0x45c618(0xc4)])throw new Error(_0x45c618(0xcc)+IMAGE_CONFIG[_0x45c618(0xc4)]+'\x20characters)');if(_0x494d4b[_0x45c618(0xd2)]&&!IMAGE_CONFIG['VALID_SIZES']['includes'](_0x494d4b[_0x45c618(0xd2)]))throw new Error('Invalid\x20size:\x20'+_0x494d4b['size']+'.\x20Valid\x20sizes:\x20'+IMAGE_CONFIG['VALID_SIZES']['join'](',\x20'));if(_0x494d4b[_0x45c618(0xb2)]){const _0x4c8b05=a0_0x31adb9[_0x45c618(0xef)](_0x494d4b['outputPath'])['toLowerCase']()['replace']('.','');if(_0x4c8b05&&!IMAGE_CONFIG[_0x45c618(0x116)][_0x45c618(0x112)](_0x4c8b05))throw new Error(_0x45c618(0xdb)+_0x4c8b05+'.\x20Valid\x20formats:\x20'+IMAGE_CONFIG[_0x45c618(0x116)][_0x45c618(0xfb)](',\x20'));}}}async['_processQueue'](){const _0x4f548f=a0_0x245888;if(this['isProcessing'])return;this['isProcessing']=!![];while(this['queue'][_0x4f548f(0xe7)]>0x0){const _0x108290=this[_0x4f548f(0xa1)][_0x4f548f(0x107)]();this[_0x4f548f(0xd5)]=_0x108290,this[_0x4f548f(0x126)]?.[_0x4f548f(0x101)]('Processing\x20image\x20generation\x20job:\x20'+_0x108290[_0x4f548f(0xba)]);try{_0x108290[_0x4f548f(0x96)]=_0x4f548f(0x9c);const _0x38d549=await this[_0x4f548f(0x93)](_0x108290);_0x108290[_0x4f548f(0x96)]=_0x4f548f(0x123),_0x108290[_0x4f548f(0xf2)]=_0x38d549,_0x108290[_0x4f548f(0xe6)]=new Date()[_0x4f548f(0xd1)](),this[_0x4f548f(0xc2)]['set'](_0x108290['jobId'],_0x108290);if(global[_0x4f548f(0xc8)]&&_0x108290['sessionId']){let _0x56b38b,_0x1fc206=![];if(_0x38d549[_0x4f548f(0x92)]&&_0x38d549['resolvedOutputPath'])_0x56b38b=this['_convertToWebUrl'](_0x38d549[_0x4f548f(0x9b)],_0x108290[_0x4f548f(0xe9)]);else _0x38d549[_0x4f548f(0xaa)]&&(_0x56b38b=_0x38d549[_0x4f548f(0xaa)],_0x1fc206=!![]);global['loxiaWebServer'][_0x4f548f(0xb1)](_0x108290['sessionId'],{'type':_0x4f548f(0xe4),'agentId':_0x108290[_0x4f548f(0x10b)],'jobId':_0x108290[_0x4f548f(0xba)],'imageUrl':_0x56b38b,'localPath':_0x38d549['resolvedOutputPath'],'prompt':_0x108290[_0x4f548f(0xdc)],'success':!![],'isTemporary':_0x1fc206,'savedToDisk':_0x38d549[_0x4f548f(0x92)],'downloadError':_0x38d549['downloadError'],'timestamp':_0x108290['completedAt']}),this['logger']?.[_0x4f548f(0x101)]('Image\x20generation\x20broadcast\x20sent',{'jobId':_0x108290['jobId'],'imageUrl':_0x56b38b,'localPath':_0x38d549[_0x4f548f(0x9b)],'savedToDisk':_0x38d549[_0x4f548f(0x92)],'isTemporary':_0x1fc206});if(this[_0x4f548f(0x104)]&&_0x108290[_0x4f548f(0x10b)])try{const _0x549dd3=await this['agentPool']['getAgent'](_0x108290['agentId']);if(_0x549dd3){let _0x2384cb='Image\x20generated:\x20'+_0x108290['prompt'];_0x1fc206&&(_0x2384cb+='\x0a\x0a⚠️\x20**Warning:**\x20Image\x20is\x20using\x20a\x20temporary\x20URL\x20(expires\x20in\x20~1\x20hour).\x20Failed\x20to\x20save\x20to\x20disk.',_0x38d549['downloadError']&&(_0x2384cb+=_0x4f548f(0xec)+_0x38d549[_0x4f548f(0xf7)]));const _0x23e472={'id':_0x4f548f(0xa5)+_0x108290['jobId'],'role':'assistant','content':_0x2384cb,'timestamp':_0x108290[_0x4f548f(0xe6)],'imageUrl':_0x56b38b,'type':_0x4f548f(0x100),'toolId':_0x4f548f(0x117),'status':_0x4f548f(0x123),'isTemporary':_0x1fc206||![],'savedToDisk':_0x38d549[_0x4f548f(0x92)]!==![]};_0x549dd3['conversations'][_0x4f548f(0x11e)][_0x4f548f(0xff)]['push'](_0x23e472),_0x549dd3['conversations']['full'][_0x4f548f(0x122)]=_0x108290['completedAt'],_0x549dd3[_0x4f548f(0xb3)]&&_0x549dd3['conversations'][_0x549dd3[_0x4f548f(0xb3)]]&&(_0x549dd3['conversations'][_0x549dd3[_0x4f548f(0xb3)]]['messages'][_0x4f548f(0xb4)](_0x23e472),_0x549dd3['conversations'][_0x549dd3['currentModel']]['lastUpdated']=_0x108290['completedAt']),_0x549dd3[_0x4f548f(0x120)]=_0x108290[_0x4f548f(0xe6)],await this[_0x4f548f(0x104)][_0x4f548f(0xed)](_0x108290['agentId']),this['logger']?.[_0x4f548f(0x101)](_0x4f548f(0x106),{'agentId':_0x108290[_0x4f548f(0x10b)],'jobId':_0x108290[_0x4f548f(0xba)],'messageId':_0x23e472['id']});}}catch(_0x134093){this[_0x4f548f(0x126)]?.[_0x4f548f(0xd9)]('Failed\x20to\x20save\x20image\x20result\x20to\x20conversation\x20history',{'error':_0x134093[_0x4f548f(0x10e)],'agentId':_0x108290['agentId'],'jobId':_0x108290[_0x4f548f(0xba)]});}}this[_0x4f548f(0x126)]?.[_0x4f548f(0x101)](_0x4f548f(0x10a)+_0x108290['jobId'],{'outputPath':_0x38d549['resolvedOutputPath']});}catch(_0x2a8aca){this['logger']?.[_0x4f548f(0xd9)]('Image\x20generation\x20failed:\x20'+_0x108290[_0x4f548f(0xba)],_0x2a8aca),_0x108290['status']=_0x4f548f(0x90),_0x108290['error']=_0x2a8aca['message'],_0x108290[_0x4f548f(0xe6)]=new Date()[_0x4f548f(0xd1)](),this[_0x4f548f(0xc2)][_0x4f548f(0xc9)](_0x108290['jobId'],_0x108290);global['loxiaWebServer']&&_0x108290[_0x4f548f(0xe9)]&&(global['loxiaWebServer'][_0x4f548f(0xb1)](_0x108290['sessionId'],{'type':'imageGenerated','jobId':_0x108290[_0x4f548f(0xba)],'agentId':_0x108290['agentId'],'prompt':_0x108290['prompt'],'success':![],'error':_0x2a8aca[_0x4f548f(0x10e)],'timestamp':_0x108290[_0x4f548f(0xe6)]}),this['logger']?.[_0x4f548f(0x101)](_0x4f548f(0xf9),{'jobId':_0x108290[_0x4f548f(0xba)],'sessionId':_0x108290['sessionId'],'error':_0x2a8aca[_0x4f548f(0x10e)]}));if(this['agentPool']&&_0x108290[_0x4f548f(0x10b)])try{const _0x5318fc=await this[_0x4f548f(0x104)]['getAgent'](_0x108290[_0x4f548f(0x10b)]);if(_0x5318fc){const _0x3634e3={'id':'img-error-'+_0x108290[_0x4f548f(0xba)],'role':'system','content':_0x4f548f(0x9e)+_0x2a8aca[_0x4f548f(0x10e)]+_0x4f548f(0xb5)+_0x108290[_0x4f548f(0xdc)],'timestamp':_0x108290[_0x4f548f(0xe6)],'type':'error','toolId':'image-gen','status':_0x4f548f(0x90),'jobId':_0x108290['jobId']};_0x5318fc[_0x4f548f(0xc0)]['full']['messages']['push'](_0x3634e3),_0x5318fc[_0x4f548f(0xc0)]['full'][_0x4f548f(0x122)]=_0x108290['completedAt'],_0x5318fc['currentModel']&&_0x5318fc[_0x4f548f(0xc0)][_0x5318fc[_0x4f548f(0xb3)]]&&(_0x5318fc[_0x4f548f(0xc0)][_0x5318fc['currentModel']][_0x4f548f(0xff)][_0x4f548f(0xb4)](_0x3634e3),_0x5318fc[_0x4f548f(0xc0)][_0x5318fc[_0x4f548f(0xb3)]][_0x4f548f(0x122)]=_0x108290['completedAt']),_0x5318fc['lastActivity']=_0x108290['completedAt'],await this['agentPool']['persistAgentState'](_0x108290['agentId']),this['logger']?.['info']('Image\x20error\x20saved\x20to\x20conversation\x20history',{'agentId':_0x108290[_0x4f548f(0x10b)],'jobId':_0x108290[_0x4f548f(0xba)],'error':_0x2a8aca['message']});}}catch(_0x3a4857){this['logger']?.[_0x4f548f(0xd9)](_0x4f548f(0xdf),{'error':_0x3a4857[_0x4f548f(0x10e)],'agentId':_0x108290['agentId'],'jobId':_0x108290[_0x4f548f(0xba)]});}}}this['isProcessing']=![],this[_0x4f548f(0xd5)]=null;}async['_generateImage'](_0x2dd929){const _0x114953=a0_0x245888;if(!this[_0x114953(0xee)])throw new Error(_0x114953(0xd4));const _0x27b4bc=await this[_0x114953(0xdd)](_0x2dd929),_0x434678=a0_0x31adb9[_0x114953(0xa8)](_0x27b4bc);await a0_0x272c7f['mkdir'](_0x434678,{'recursive':!![]}),this['logger']?.['info']('Generating\x20image\x20with\x20'+_0x2dd929[_0x114953(0xb8)],{'size':_0x2dd929[_0x114953(0xd2)],'quality':_0x2dd929['quality']});const _0x3388e5={'model':_0x2dd929['model'],'size':_0x2dd929[_0x114953(0xd2)],'quality':_0x2dd929[_0x114953(0xbd)],'responseFormat':'url','sessionId':_0x2dd929['sessionId']},_0x3116d4=await this[_0x114953(0xee)]['generateImage'](_0x2dd929['prompt'],_0x3388e5),_0x2f23ca=_0x3116d4?.[_0x114953(0x11d)]||_0x3116d4?.['imageUrl'];if(!_0x2f23ca)throw new Error('No image URL received from AI service');this[_0x114953(0x126)]?.[_0x114953(0x101)]('Image\x20URL\x20received:\x20'+_0x2f23ca['substring'](0x0,0x32)+_0x114953(0xe5));let _0x318414=![],_0x1189d8=null;try{await this['_downloadImage'](_0x2f23ca,_0x27b4bc),_0x318414=!![],!_0x2dd929[_0x114953(0x109)]&&this['_scheduleCleanup'](_0x27b4bc,_0x2dd929['jobId']);}catch(_0x3f40e1){_0x1189d8=_0x3f40e1['message'],this[_0x114953(0x126)]?.['warn']('Failed\x20to\x20save\x20image\x20to\x20disk,\x20will\x20use\x20temporary\x20URL:\x20'+_0x3f40e1['message']);}return{'jobId':_0x2dd929['jobId'],'prompt':_0x2dd929[_0x114953(0xdc)],'outputPath':_0x2dd929['outputPath'],'resolvedOutputPath':_0x318414?_0x27b4bc:null,'temporaryUrl':_0x2f23ca,'savedToDisk':_0x318414,'downloadError':_0x1189d8,'success':!![],'model':_0x3116d4[_0x114953(0xb8)]||_0x2dd929['model'],'size':_0x2dd929['size'],'usage':_0x3116d4['usage']};}async['_resolveOutputPath'](_0x152994){const _0x83e748=a0_0x245888;if(_0x152994['saveToProject']){const _0x17fd05=_0x152994[_0x83e748(0xb9)]||process['cwd']();let _0x39e902=_0x152994[_0x83e748(0xb2)];if(!_0x39e902){const _0x43f9a3=Date[_0x83e748(0xc7)]();_0x39e902=_0x83e748(0x11b)+_0x43f9a3+'.png';}const _0x2d2163=a0_0x31adb9[_0x83e748(0xa4)](_0x39e902)?a0_0x31adb9[_0x83e748(0xcd)](_0x39e902):a0_0x31adb9['normalize'](a0_0x31adb9[_0x83e748(0xfb)](_0x17fd05,_0x39e902));if(!_0x2d2163[_0x83e748(0xeb)](a0_0x31adb9['normalize'](_0x17fd05)))throw new Error(_0x83e748(0xa2));if(_0x152994['directoryAccess']){const _0x373792=a0_0x31adb9['relative'](_0x17fd05,_0x2d2163);if(_0x373792[_0x83e748(0xeb)]('..'))throw new Error(_0x83e748(0xf5));}return _0x2d2163;}else{await a0_0x272c7f['mkdir'](this['tempDir'],{'recursive':!![]});let _0x2df4b0=_0x152994['outputPath']?a0_0x31adb9['basename'](_0x152994[_0x83e748(0xb2)]):_0x83e748(0xb6)+_0x152994[_0x83e748(0xba)]+_0x83e748(0x118);return a0_0x31adb9['join'](this['tempDir'],_0x2df4b0);}}async[a0_0x245888(0xf1)](_0x2d3a93,_0x4942d5){const _0x1e4865=a0_0x245888;try{const _0x134843=await fetch(_0x2d3a93,{'signal':AbortSignal[_0x1e4865(0xb7)](IMAGE_CONFIG[_0x1e4865(0xd0)])});if(!_0x134843['ok'])throw new Error('Failed\x20to\x20download\x20image:\x20HTTP\x20'+_0x134843['status']);const _0x26504=Buffer['from'](await _0x134843[_0x1e4865(0xc3)]());await a0_0x272c7f[_0x1e4865(0x115)](_0x4942d5,_0x26504),this[_0x1e4865(0x126)]?.[_0x1e4865(0x101)]('Image\x20saved\x20to:\x20'+_0x4942d5);}catch(_0x5180e2){if(_0x5180e2[_0x1e4865(0x10d)]===_0x1e4865(0xa6))throw new Error(_0x1e4865(0x102));else{if(_0x5180e2[_0x1e4865(0x10d)]===_0x1e4865(0x8d))throw new Error(_0x1e4865(0xe2)+_0x5180e2[_0x1e4865(0x10e)]);else throw new Error('Download\x20failed:\x20'+_0x5180e2['message']);}}}[a0_0x245888(0xfa)](_0x22dd56,_0xa08d54){const _0xcfe90d=setTimeout(async()=>{const _0x14f672=a0_0x8235;try{await a0_0x272c7f['unlink'](_0x22dd56),this['logger']?.[_0x14f672(0xcb)]('Cleaned\x20up\x20temp\x20image:\x20'+_0x22dd56),this[_0x14f672(0xac)]['delete'](_0xa08d54);}catch(_0x4a6010){}},IMAGE_CONFIG['TEMP_CLEANUP_MS']);this['cleanupTimers']['set'](_0xa08d54,_0xcfe90d);}[a0_0x245888(0xf0)](_0x58d557,_0x420097){const _0xe5fe8c=a0_0x245888,_0x4f678e=a0_0x31adb9[_0xe5fe8c(0xae)](_0x58d557),_0x527a1d=global[_0xe5fe8c(0xc8)]?.['port']||0x1f90;let _0x403c35=global[_0xe5fe8c(0xc8)]?.[_0xe5fe8c(0xf6)]||_0xe5fe8c(0x10c);return _0x403c35===_0xe5fe8c(0x94)&&(_0x403c35='localhost'),'http://'+_0x403c35+':'+_0x527a1d+'/api/images/'+_0x420097+'/'+_0x4f678e;}[a0_0x245888(0x9d)](){const _0x5f3a02=a0_0x245888,_0x288289=0x1e,_0x44c6f5=this['queue'][_0x5f3a02(0xe7)];if(_0x44c6f5===0x0)return _0x5f3a02(0x98);const _0x1753f8=_0x44c6f5*_0x288289,_0x144706=Math[_0x5f3a02(0xad)](_0x1753f8/0x3c),_0x1654ac=_0x1753f8%0x3c;if(_0x144706>0x0)return'~'+_0x144706+'m\x20'+_0x1654ac+'s';return'~'+_0x1654ac+'s';}[a0_0x245888(0xbe)](){const _0x4dccc2=a0_0x245888;return _0x4dccc2(0x8c)+Date['now']()+'-'+Math[_0x4dccc2(0xa3)]()[_0x4dccc2(0x124)](0x24)['substring'](0x2,0x9);}[a0_0x245888(0x8e)](_0x5cb1c3){const _0x1a504f=a0_0x245888;if(this['completedJobs']['has'](_0x5cb1c3))return this['completedJobs']['get'](_0x5cb1c3);if(this[_0x1a504f(0xd5)]&&this[_0x1a504f(0xd5)][_0x1a504f(0xba)]===_0x5cb1c3)return this['currentJob'];const _0x593758=this[_0x1a504f(0xa1)][_0x1a504f(0xbf)](_0x59b629=>_0x59b629[_0x1a504f(0xba)]===_0x5cb1c3);if(_0x593758)return _0x593758;return{'jobId':_0x5cb1c3,'status':'not_found'};}async['cleanup'](){const _0x235a14=a0_0x245888;this[_0x235a14(0x126)]?.['info'](_0x235a14(0x110));for(const _0x738ca1 of this['cleanupTimers'][_0x235a14(0x91)]()){clearTimeout(_0x738ca1);}this[_0x235a14(0xac)][_0x235a14(0x10f)]();for(const _0x3b25d3 of this['queue']){_0x3b25d3['status']='cancelled';}this['queue']=[];}}export default ImageTool;
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 +1 @@
1
- const a0_0x335cdc=a0_0x5b26;(function(_0xe134d5,_0x1b84b3){const _0x390d5e=a0_0x5b26,_0x5cb018=_0xe134d5();while(!![]){try{const _0x5b7cce=parseInt(_0x390d5e(0x13d))/0x1+-parseInt(_0x390d5e(0x174))/0x2*(parseInt(_0x390d5e(0x15b))/0x3)+parseInt(_0x390d5e(0x1a2))/0x4+parseInt(_0x390d5e(0x13b))/0x5*(-parseInt(_0x390d5e(0x146))/0x6)+parseInt(_0x390d5e(0x160))/0x7*(parseInt(_0x390d5e(0x112))/0x8)+-parseInt(_0x390d5e(0x181))/0x9+parseInt(_0x390d5e(0x197))/0xa;if(_0x5b7cce===_0x1b84b3)break;else _0x5cb018['push'](_0x5cb018['shift']());}catch(_0x2d2e97){_0x5cb018['push'](_0x5cb018['shift']());}}}(a0_0x2211,0xb237e));import{promises as a0_0x3c9c93}from'fs';import a0_0x2f562d from'path';import{BaseTool}from'./baseTool.js';function a0_0x5b26(_0x5b0ab9,_0x2d3c10){_0x5b0ab9=_0x5b0ab9-0x10c;const _0x22111b=a0_0x2211();let _0x5b2627=_0x22111b[_0x5b0ab9];if(a0_0x5b26['XyqfxV']===undefined){var _0x2395bc=function(_0x228762){const _0x2719c0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c9c93='',_0x2f562d='';for(let _0x21e836=0x0,_0x4740ef,_0x20ec1b,_0x17e657=0x0;_0x20ec1b=_0x228762['charAt'](_0x17e657++);~_0x20ec1b&&(_0x4740ef=_0x21e836%0x4?_0x4740ef*0x40+_0x20ec1b:_0x20ec1b,_0x21e836++%0x4)?_0x3c9c93+=String['fromCharCode'](0xff&_0x4740ef>>(-0x2*_0x21e836&0x6)):0x0){_0x20ec1b=_0x2719c0['indexOf'](_0x20ec1b);}for(let _0x52cc85=0x0,_0x40dda4=_0x3c9c93['length'];_0x52cc85<_0x40dda4;_0x52cc85++){_0x2f562d+='%'+('00'+_0x3c9c93['charCodeAt'](_0x52cc85)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2f562d);};a0_0x5b26['pPKtwg']=_0x2395bc,a0_0x5b26['KZfAUr']={},a0_0x5b26['XyqfxV']=!![];}const _0x464aa9=_0x22111b[0x0],_0x2bca6d=_0x5b0ab9+_0x464aa9,_0x27d955=a0_0x5b26['KZfAUr'][_0x2bca6d];return!_0x27d955?(_0x5b2627=a0_0x5b26['pPKtwg'](_0x5b2627),a0_0x5b26['KZfAUr'][_0x2bca6d]=_0x5b2627):_0x5b2627=_0x27d955,_0x5b2627;}import a0_0x21e836 from'../utilities/tagParser.js';const ANALYZER_CONFIG={'DEFAULT_MODE':a0_0x335cdc(0x11f),'VALID_MODES':['full','quick',a0_0x335cdc(0x17c)],'DEFAULT_OUTPUT':'summary','VALID_OUTPUTS':[a0_0x335cdc(0x1a5),a0_0x335cdc(0x11e),'json'],'DEFAULT_IGNORE_FILE':a0_0x335cdc(0x1ad),'MAX_FILES':0x2710,'SUPPORTED_EXTENSIONS':['.js',a0_0x335cdc(0x14b),'.ts',a0_0x335cdc(0x1b4),'.tsx'],'DEFAULT_IGNORE_PATTERNS':['node_modules','.git','dist',a0_0x335cdc(0x1ab),a0_0x335cdc(0x176)],'FILE_READ_TIMEOUT':0x1388};export class ImportAnalyzerTool extends BaseTool{constructor(_0x4740ef={},_0x20ec1b=null){super(_0x4740ef,_0x20ec1b),this['id']='import-analyzer';}['getDescription'](){const _0x2354f4=a0_0x335cdc;return _0x2354f4(0x119);}['parseParameters'](_0x17e657){const _0x540414=a0_0x335cdc;if(typeof _0x17e657===_0x540414(0x1aa)&&_0x17e657!==null)return{'path':_0x17e657[_0x540414(0x18b)]||'.','mode':_0x17e657['mode']||ANALYZER_CONFIG[_0x540414(0x1a1)],'output':_0x17e657['output']||ANALYZER_CONFIG[_0x540414(0x178)],'ignoreFile':_0x17e657['ignoreFile']||ANALYZER_CONFIG[_0x540414(0x171)]};if(typeof _0x17e657==='string'){const _0x52cc85=/<import-analyzer([^>]*)>([\s\S]*?)<\/import-analyzer>/i,_0x40dda4=_0x52cc85['exec'](_0x17e657);if(_0x40dda4){const _0x2dbd33=_0x40dda4[0x1],_0x10439f=_0x40dda4[0x2],_0x634443=/path=["']([^"']*)["']/i[_0x540414(0x186)](_0x2dbd33),_0x56e373=/mode=["']([^"']*)["']/i['exec'](_0x2dbd33),_0x2caba7=/output=["']([^"']*)["']/i[_0x540414(0x186)](_0x2dbd33),_0x478433=/ignore-file=["']([^"']*)["']/i['exec'](_0x2dbd33),_0x1f5047=/<path>(.*?)<\/path>/i,_0x497838=_0x1f5047['exec'](_0x10439f),_0x4728ee=/<mode>(.*?)<\/mode>/i,_0x20e306=_0x4728ee[_0x540414(0x186)](_0x10439f),_0xaff877=/<output>(.*?)<\/output>/i,_0x3fc256=_0xaff877['exec'](_0x10439f),_0x49f56a=/<ignore-file>(.*?)<\/ignore-file>/i,_0x10d2b=_0x49f56a[_0x540414(0x186)](_0x10439f),_0x3747c7=(_0x497838?_0x497838[0x1]['trim']():null)||(_0x634443?_0x634443[0x1]:'.'),_0x4b3b5a=(_0x20e306?_0x20e306[0x1][_0x540414(0x12e)]():null)||(_0x56e373?_0x56e373[0x1]:ANALYZER_CONFIG['DEFAULT_MODE']),_0x1d6e9f=(_0x3fc256?_0x3fc256[0x1][_0x540414(0x12e)]():null)||(_0x2caba7?_0x2caba7[0x1]:ANALYZER_CONFIG[_0x540414(0x178)]),_0x37c7be=(_0x10d2b?_0x10d2b[0x1]['trim']():null)||(_0x478433?_0x478433[0x1]:ANALYZER_CONFIG['DEFAULT_IGNORE_FILE']);return{'path':_0x3747c7,'mode':_0x4b3b5a,'output':_0x1d6e9f,'ignoreFile':_0x37c7be};}try{const _0xa02f8a=a0_0x21e836[_0x540414(0x116)](_0x17e657,'analyze');if(_0xa02f8a&&_0xa02f8a[_0x540414(0x17e)]>0x0){const _0x53e24f=_0xa02f8a[0x0];return{'path':_0x53e24f[_0x540414(0x173)][_0x540414(0x18b)]||'.','mode':_0x53e24f[_0x540414(0x173)][_0x540414(0x19e)]||ANALYZER_CONFIG[_0x540414(0x1a1)],'output':_0x53e24f[_0x540414(0x173)][_0x540414(0x128)]||ANALYZER_CONFIG['DEFAULT_OUTPUT'],'ignoreFile':_0x53e24f[_0x540414(0x173)][_0x540414(0x120)]||ANALYZER_CONFIG['DEFAULT_IGNORE_FILE']};}}catch(_0x122aaf){}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_0x335cdc(0x165)](_0x509db6){const _0x53d520=a0_0x335cdc;if(!_0x509db6||typeof _0x509db6!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x509db6[_0x53d520(0x18b)]&&typeof _0x509db6['path']!=='string')throw new Error(_0x53d520(0x19c));if(_0x509db6[_0x53d520(0x19e)]&&!ANALYZER_CONFIG['VALID_MODES'][_0x53d520(0x15e)](_0x509db6['mode']))throw new Error('Invalid\x20mode:\x20'+_0x509db6['mode']+_0x53d520(0x18c)+ANALYZER_CONFIG['VALID_MODES'][_0x53d520(0x129)](',\x20'));if(_0x509db6[_0x53d520(0x128)]&&!ANALYZER_CONFIG[_0x53d520(0x10d)][_0x53d520(0x15e)](_0x509db6[_0x53d520(0x128)]))throw new Error('Invalid\x20output:\x20'+_0x509db6['output']+'.\x20Must\x20be\x20one\x20of:\x20'+ANALYZER_CONFIG[_0x53d520(0x10d)][_0x53d520(0x129)](',\x20'));if(_0x509db6['ignoreFile']&&typeof _0x509db6[_0x53d520(0x14c)]!=='string')throw new Error(_0x53d520(0x192));}[a0_0x335cdc(0x17f)](_0x26848f,_0x5f1e94){const _0x30530d=a0_0x335cdc,{projectDir:_0x5e760b,directoryAccess:_0x30465a}=_0x5f1e94;let _0x52937c=_0x5e760b||process[_0x30530d(0x182)]();_0x30465a&&_0x30465a['workingDirectory']&&(_0x52937c=_0x30465a[_0x30530d(0x134)]);const _0x41bcae=a0_0x2f562d['isAbsolute'](_0x26848f)?a0_0x2f562d[_0x30530d(0x1b0)](_0x26848f):a0_0x2f562d['normalize'](a0_0x2f562d['join'](_0x52937c,_0x26848f)),_0x4d8031=a0_0x2f562d[_0x30530d(0x1b0)](_0x52937c);if(!_0x41bcae[_0x30530d(0x172)](_0x4d8031))throw new Error(_0x30530d(0x149)+_0x26848f+_0x30530d(0x16d));return _0x41bcae;}async[a0_0x335cdc(0x11c)](_0x17b2cf,_0x32fb19={}){const _0x4b82b7=a0_0x335cdc;try{this['_validateParameters'](_0x17b2cf);const {path:_0x522dae,mode:_0x277268,output:_0x3e0c9e,ignoreFile:_0x22fe07}=_0x17b2cf,{projectDir:_0x6e6a10,agentId:_0x52d5d2,directoryAccess:_0x52516d}=_0x32fb19,_0x56d354=this[_0x4b82b7(0x17f)](_0x522dae,_0x32fb19);this['logger']?.[_0x4b82b7(0x147)]('Import\x20analyzer\x20executing',{'mode':_0x277268,'resolvedPath':_0x56d354,'output':_0x3e0c9e,'agentId':_0x52d5d2});const _0x11f802=[];_0x11f802['push']('🔍\x20Analyzing\x20imports\x20in:\x20'+_0x56d354),_0x11f802['push']('Mode:\x20'+_0x277268),_0x11f802[_0x4b82b7(0x18a)]('Output:\x20'+_0x3e0c9e+'\x0a');try{await a0_0x3c9c93[_0x4b82b7(0x157)](_0x56d354);}catch{return{'success':![],'error':_0x4b82b7(0x177)+_0x56d354,'output':_0x11f802[_0x4b82b7(0x129)]('\x0a')};}const _0x1a8b67=new ImportExportAnalyzer(_0x56d354,_0x22fe07,this['logger']),_0x3a6da5=await _0x1a8b67['analyze'](_0x277268);let _0x2f4add;switch(_0x3e0c9e){case _0x4b82b7(0x13f):_0x2f4add=JSON['stringify'](_0x3a6da5,null,0x2);break;case'detailed':_0x2f4add=this['_formatDetailedOutput'](_0x3a6da5),_0x11f802[_0x4b82b7(0x18a)](_0x2f4add);break;case _0x4b82b7(0x1a5):default:_0x2f4add=this['_formatSummaryOutput'](_0x3a6da5),_0x11f802[_0x4b82b7(0x18a)](_0x2f4add);break;}return{'success':!![],'mode':_0x277268,'message':'Import\x20analysis\x20completed','statistics':{'totalFiles':_0x3a6da5['summary']['totalFiles'],'totalImports':_0x3a6da5['summary'][_0x4b82b7(0x1ac)],'totalExports':_0x3a6da5[_0x4b82b7(0x1a5)][_0x4b82b7(0x180)],'issuesFound':_0x3a6da5[_0x4b82b7(0x163)]['length']+Object['values'](_0x3a6da5[_0x4b82b7(0x15c)])['reduce']((_0x556211,_0xe34443)=>_0x556211+_0xe34443[_0x4b82b7(0x17e)],0x0)},'output':_0x3e0c9e==='json'?_0x2f4add:_0x11f802[_0x4b82b7(0x129)]('\x0a'),'results':_0x3a6da5};}catch(_0x4108f5){return this[_0x4b82b7(0x135)]?.[_0x4b82b7(0x17b)](_0x4b82b7(0x179),_0x4108f5),{'success':![],'error':_0x4108f5[_0x4b82b7(0x1a7)],'output':_0x4108f5[_0x4b82b7(0x1a7)]};}}['_formatSummaryOutput'](_0x346f90){const _0x4fdaa4=a0_0x335cdc,_0x34bdb0=[];_0x34bdb0[_0x4fdaa4(0x18a)]('📊\x20Import/Export\x20Analysis\x20Summary'),_0x34bdb0[_0x4fdaa4(0x18a)](_0x4fdaa4(0x131)),_0x34bdb0['push'](_0x4fdaa4(0x1a6)+_0x346f90['summary'][_0x4fdaa4(0x117)]),_0x34bdb0[_0x4fdaa4(0x18a)]('📥\x20Total\x20imports:\x20'+_0x346f90['summary'][_0x4fdaa4(0x1ac)]),_0x34bdb0[_0x4fdaa4(0x18a)](_0x4fdaa4(0x132)+_0x346f90[_0x4fdaa4(0x1a5)][_0x4fdaa4(0x180)]+'\x0a');const _0xc5959e=_0x346f90[_0x4fdaa4(0x163)][_0x4fdaa4(0x17e)],_0x4b1828=Object[_0x4fdaa4(0x190)](_0x346f90[_0x4fdaa4(0x15c)])[_0x4fdaa4(0x12f)]((_0x9eae88,_0x372169)=>_0x9eae88+_0x372169[_0x4fdaa4(0x17e)],0x0),_0x552984=_0x346f90['circularDependencies']?_0x346f90[_0x4fdaa4(0x110)]['length']:0x0;return _0xc5959e>0x0&&_0x34bdb0['push']('❌\x20Missing\x20files:\x20'+_0xc5959e+'\x20imports\x20pointing\x20to\x20non-existent\x20files'),_0x4b1828>0x0&&_0x34bdb0[_0x4fdaa4(0x18a)]('⚠️\x20\x20Missing\x20exports:\x20'+_0x4b1828+'\x20symbols\x20not\x20exported\x20from\x20their\x20sources'),_0x552984>0x0&&_0x34bdb0['push']('🔄\x20Circular\x20dependencies:\x20'+_0x552984+_0x4fdaa4(0x122)),_0xc5959e===0x0&&_0x4b1828===0x0&&_0x552984===0x0?_0x34bdb0[_0x4fdaa4(0x18a)]('\u2705 No import/export issues detected!'):(_0x34bdb0[_0x4fdaa4(0x18a)](_0x4fdaa4(0x145)),Object[_0x4fdaa4(0x115)](_0x346f90['missingFiles']||{})[_0x4fdaa4(0x17e)]>0x0&&(_0x34bdb0['push']('\x0a\x20\x20Missing\x20Files:'),Object[_0x4fdaa4(0x188)](_0x346f90[_0x4fdaa4(0x150)])['slice'](0x0,0x3)['forEach'](([_0x4c5965,_0x5d651d])=>{const _0x3455d4=_0x4fdaa4;_0x34bdb0['push'](_0x3455d4(0x136)+_0x4c5965+'\x20has\x20'+_0x5d651d[_0x3455d4(0x17e)]+_0x3455d4(0x169));})),Object[_0x4fdaa4(0x115)](_0x346f90['missingExports'])['length']>0x0&&(_0x34bdb0['push'](_0x4fdaa4(0x12d)),Object[_0x4fdaa4(0x188)](_0x346f90['missingExports'])['slice'](0x0,0x3)['forEach'](([_0xe41203,_0xdf014])=>{const _0x3773dd=_0x4fdaa4;_0x34bdb0['push'](_0x3773dd(0x136)+_0xe41203+'\x20imports\x20'+_0xdf014['length']+_0x3773dd(0x14e));})),_0x34bdb0['push']('\x0a💡\x20Run\x20with\x20output=\x22detailed\x22\x20for\x20complete\x20analysis\x20and\x20fix\x20suggestions')),_0x34bdb0[_0x4fdaa4(0x129)]('\x0a');}[a0_0x335cdc(0x17a)](_0x78fe82){const _0x102b5c=a0_0x335cdc,_0x43496b=[];_0x43496b['push'](_0x102b5c(0x10e)),_0x43496b[_0x102b5c(0x18a)](_0x102b5c(0x113)),_0x43496b['push']('📈\x20Statistics:'),_0x43496b['push'](_0x102b5c(0x185)+_0x78fe82['summary']['totalFiles']),_0x43496b['push'](_0x102b5c(0x191)+_0x78fe82[_0x102b5c(0x1a5)]['totalImports']),_0x43496b[_0x102b5c(0x18a)]('\x20\x20•\x20Total\x20exports:\x20'+_0x78fe82[_0x102b5c(0x1a5)][_0x102b5c(0x180)]+'\x0a');if(_0x78fe82['fileNotFoundImports']['length']>0x0){_0x43496b[_0x102b5c(0x18a)](_0x102b5c(0x15a)),_0x43496b['push'](_0x102b5c(0x18d));const _0x256451={};_0x78fe82[_0x102b5c(0x163)]['forEach'](_0x53d70b=>{const _0x1efd29=_0x102b5c;!_0x256451[_0x53d70b['importingFile']]&&(_0x256451[_0x53d70b['importingFile']]=[]),_0x256451[_0x53d70b[_0x1efd29(0x167)]][_0x1efd29(0x18a)](_0x53d70b);}),Object[_0x102b5c(0x188)](_0x256451)['forEach'](([_0x402b67,imports])=>{const _0x3701e4=_0x102b5c;_0x43496b[_0x3701e4(0x18a)](_0x3701e4(0x1a3)+_0x402b67+':'),imports['forEach'](_0x313f39=>{const _0x421b24=_0x3701e4,importType=_0x313f39[_0x421b24(0x166)]?'default':_0x313f39['isNamespace']?_0x421b24(0x121):_0x421b24(0x118);_0x43496b['push'](_0x421b24(0x144)+_0x313f39[_0x421b24(0x19a)]),_0x43496b['push'](_0x421b24(0x152)+_0x313f39['importedSymbol']+'\x20('+importType+')'),_0x43496b['push']('\x20\x20\x20\x20\x20\x20💡\x20Fix:\x20Check\x20if\x20file\x20exists\x20or\x20correct\x20the\x20import\x20path');});});}Object['keys'](_0x78fe82['missingExports'])['length']>0x0&&(_0x43496b['push'](_0x102b5c(0x13a)),_0x43496b['push'](_0x102b5c(0x1a9)),Object[_0x102b5c(0x188)](_0x78fe82[_0x102b5c(0x15c)])[_0x102b5c(0x153)](([_0x1d321c,_0x15a11b])=>{const _0x668248=_0x102b5c;_0x43496b['push']('\x0a📄\x20'+_0x1d321c+':'),_0x15a11b[_0x668248(0x153)](_0x167695=>{const _0x5d4e08=_0x668248,importType=_0x167695['isDefault']?'default':_0x167695[_0x5d4e08(0x1a4)]?'namespace':_0x5d4e08(0x118);_0x43496b[_0x5d4e08(0x18a)](_0x5d4e08(0x16a)+_0x167695['importedSymbol']+'\x22\x20('+importType+')'),_0x43496b['push'](_0x5d4e08(0x126)+_0x167695['importedFromFile']);if(_0x167695[_0x5d4e08(0x1a8)]['length']>0x0){_0x43496b[_0x5d4e08(0x18a)]('\x20\x20\x20\x20\x20\x20📤\x20Available\x20exports:\x20'+_0x167695['availableExports']['join'](',\x20'));if(_0x167695[_0x5d4e08(0x166)]&&_0x167695['availableExports'][_0x5d4e08(0x15e)]('default'))_0x43496b[_0x5d4e08(0x18a)](_0x5d4e08(0x187));else{if(_0x167695[_0x5d4e08(0x166)]&&!_0x167695[_0x5d4e08(0x1a8)]['includes']('default'))_0x43496b['push'](_0x5d4e08(0x15f)+(_0x167695['availableExports'][0x0]||'symbolName')+'\x20}');else{const _0x2a2515=_0x167695['availableExports']['find'](_0x60f43c=>_0x60f43c['toLowerCase']()===_0x167695['importedSymbol'][_0x5d4e08(0x199)]());_0x2a2515?_0x43496b[_0x5d4e08(0x18a)](_0x5d4e08(0x168)+_0x2a2515+_0x5d4e08(0x155)):_0x43496b[_0x5d4e08(0x18a)](_0x5d4e08(0x12a)+_0x167695[_0x5d4e08(0x143)]+'\x22\x20or\x20use\x20one\x20of\x20the\x20available\x20exports');}}}else _0x43496b[_0x5d4e08(0x18a)](_0x5d4e08(0x133)),_0x43496b['push'](_0x5d4e08(0x10c)+_0x167695['importedFromFile']+_0x5d4e08(0x140));});}));_0x78fe82[_0x102b5c(0x110)]&&_0x78fe82['circularDependencies'][_0x102b5c(0x17e)]>0x0&&(_0x43496b[_0x102b5c(0x18a)](_0x102b5c(0x159)),_0x43496b[_0x102b5c(0x18a)](_0x102b5c(0x170)),_0x78fe82[_0x102b5c(0x110)][_0x102b5c(0x153)]((_0x79c95c,_0x5b4581)=>{const _0x127911=_0x102b5c;_0x43496b['push']('\x0a\x20\x20Cycle\x20'+(_0x5b4581+0x1)+':'),_0x79c95c['forEach']((_0x1e8cd2,_0x27639b)=>{const _0x31f801=a0_0x5b26;_0x27639b<_0x79c95c[_0x31f801(0x17e)]-0x1&&_0x43496b[_0x31f801(0x18a)]('\x20\x20\x20\x20'+_0x1e8cd2+_0x31f801(0x175)+_0x79c95c[_0x27639b+0x1]);}),_0x43496b[_0x127911(0x18a)]('\x20\x20\x20\x20💡\x20Fix:\x20Refactor\x20to\x20break\x20the\x20circular\x20dependency');}));_0x78fe82[_0x102b5c(0x156)]&&Object[_0x102b5c(0x115)](_0x78fe82['unusedExports'])[_0x102b5c(0x17e)]>0x0&&(_0x43496b['push']('\x0a🗑️\x20\x20POTENTIALLY\x20UNUSED\x20EXPORTS'),_0x43496b[_0x102b5c(0x18a)]('──────────────────────────────'),Object['entries'](_0x78fe82[_0x102b5c(0x156)])['slice'](0x0,0xa)[_0x102b5c(0x153)](([_0x16abf1,exports])=>{const _0x109cc7=_0x102b5c;_0x43496b['push']('\x0a📄\x20'+_0x16abf1+':'),_0x43496b['push']('\x20\x20\x20Unused:\x20'+exports[_0x109cc7(0x129)](',\x20'));}),_0x43496b[_0x102b5c(0x18a)]('\n \uD83D\uDCA1 Note: These exports are not imported within this project'),_0x43496b[_0x102b5c(0x18a)]('\x20\x20\x20\x20\x20\x20They\x20might\x20be\x20used\x20by\x20external\x20packages\x20or\x20could\x20be\x20removed'));_0x43496b['push']('\x0a📋\x20RECOMMENDATIONS'),_0x43496b['push']('──────────────────');const _0x25d0f4=_0x78fe82[_0x102b5c(0x163)][_0x102b5c(0x17e)]+Object[_0x102b5c(0x190)](_0x78fe82[_0x102b5c(0x15c)])[_0x102b5c(0x12f)]((_0x16fa8f,_0x123a72)=>_0x16fa8f+_0x123a72['length'],0x0);return _0x25d0f4===0x0?_0x43496b['push']('\u2705 Your import/export structure looks good!'):(_0x43496b[_0x102b5c(0x18a)]('Found\x20'+_0x25d0f4+'\x20issue(s)\x20that\x20need\x20attention:'),_0x78fe82['fileNotFoundImports']['length']>0x0&&_0x43496b[_0x102b5c(0x18a)](_0x102b5c(0x16e)+_0x78fe82['fileNotFoundImports'][_0x102b5c(0x17e)]+'\x20missing\x20file\x20reference(s)'),Object[_0x102b5c(0x115)](_0x78fe82[_0x102b5c(0x15c)])['length']>0x0&&_0x43496b[_0x102b5c(0x18a)](_0x102b5c(0x162)+Object['values'](_0x78fe82['missingExports'])['reduce']((_0x57a2a6,_0x56019b)=>_0x57a2a6+_0x56019b[_0x102b5c(0x17e)],0x0)+_0x102b5c(0x137)),_0x78fe82['circularDependencies']&&_0x78fe82[_0x102b5c(0x110)][_0x102b5c(0x17e)]>0x0&&_0x43496b[_0x102b5c(0x18a)]('\x20\x203.\x20Refactor\x20'+_0x78fe82[_0x102b5c(0x110)][_0x102b5c(0x17e)]+_0x102b5c(0x130))),_0x43496b['join']('\x0a');}}class ImportExportAnalyzer{constructor(_0x16f814,_0x4e96aa=a0_0x335cdc(0x1ad),_0x35af75=null){const _0xa2f7e2=a0_0x335cdc;this['rootDir']=a0_0x2f562d[_0xa2f7e2(0x19f)](_0x16f814),this['ignoreFile']=_0x4e96aa,this[_0xa2f7e2(0x135)]=_0x35af75,this['ignorePatterns']=[...ANALYZER_CONFIG[_0xa2f7e2(0x114)]],this['imports']=[],this[_0xa2f7e2(0x198)]=new Map(),this['dependencies']=new Map();}async['loadIgnoreFile'](){const _0x4854bf=a0_0x335cdc;try{const _0x5a1a68=a0_0x2f562d['join'](this[_0x4854bf(0x19b)],this['ignoreFile']),_0x5eec48=await a0_0x3c9c93[_0x4854bf(0x1b3)](_0x5a1a68,_0x4854bf(0x196)),_0x5a49d8=_0x5eec48['split']('\x0a')['map'](_0x1da7ca=>_0x1da7ca['trim']())[_0x4854bf(0x164)](_0x500e0f=>_0x500e0f&&!_0x500e0f['startsWith']('#'));this[_0x4854bf(0x13e)]['push'](..._0x5a49d8),this[_0x4854bf(0x135)]?.[_0x4854bf(0x183)]('Loaded\x20ignore\x20patterns',{'count':_0x5a49d8[_0x4854bf(0x17e)]});}catch{this['logger']?.[_0x4854bf(0x183)]('No ignore file found, using defaults');}}['shouldIgnoreFile'](_0x1e35f0){const _0x2afdeb=a0_0x335cdc,_0x28c102=a0_0x2f562d[_0x2afdeb(0x154)](this[_0x2afdeb(0x19b)],_0x1e35f0);return this[_0x2afdeb(0x13e)][_0x2afdeb(0x189)](_0x332875=>{const _0x13d228=_0x2afdeb;if(_0x332875['includes']('*')){const _0x4a3af6=new RegExp(_0x332875['replace'](/\*/g,'.*'));return _0x4a3af6[_0x13d228(0x194)](_0x28c102)||_0x4a3af6[_0x13d228(0x194)](a0_0x2f562d[_0x13d228(0x1b1)](_0x1e35f0));}return _0x28c102['includes'](_0x332875)||a0_0x2f562d['basename'](_0x1e35f0)===_0x332875;});}async[a0_0x335cdc(0x17d)](_0x38b4d6){const _0x3eec6b=a0_0x335cdc,_0x5e3adb=[],_0x57dabc=async _0x12ca18=>{const _0x6829b7=a0_0x5b26;try{const _0x16c63a=await a0_0x3c9c93['readdir'](_0x12ca18,{'withFileTypes':!![]});for(const _0xd32083 of _0x16c63a){const _0x33001d=a0_0x2f562d[_0x6829b7(0x129)](_0x12ca18,_0xd32083[_0x6829b7(0x13c)]);if(this['shouldIgnoreFile'](_0x33001d))continue;if(_0xd32083[_0x6829b7(0x1af)]())await _0x57dabc(_0x33001d);else{if(_0xd32083[_0x6829b7(0x123)]()){const _0x211bd1=a0_0x2f562d[_0x6829b7(0x148)](_0xd32083['name']);ANALYZER_CONFIG[_0x6829b7(0x1a0)]['includes'](_0x211bd1)&&_0x5e3adb[_0x6829b7(0x18a)](_0x33001d);}}}}catch(_0x16118f){this['logger']?.[_0x6829b7(0x111)]('Cannot\x20read\x20directory',{'dir':_0x12ca18,'error':_0x16118f[_0x6829b7(0x1a7)]});}};await _0x57dabc(_0x38b4d6);if(_0x5e3adb[_0x3eec6b(0x17e)]>ANALYZER_CONFIG['MAX_FILES']){this['logger']?.['warn']('File\x20count\x20exceeds\x20limit:\x20'+_0x5e3adb[_0x3eec6b(0x17e)]+_0x3eec6b(0x10f)+ANALYZER_CONFIG['MAX_FILES']);throw new Error(_0x3eec6b(0x14f)+_0x5e3adb[_0x3eec6b(0x17e)]+'\x20(max:\x20'+ANALYZER_CONFIG[_0x3eec6b(0x151)]+')');}return _0x5e3adb;}async['parseImports'](_0x2ee29a,_0x38da14){const _0x1b391b=a0_0x335cdc,imports=[],_0x2e5a60=_0x2ee29a['split']('\x0a'),_0x2fa3d5=this['getRelativePath'](_0x38da14);!this['dependencies']['has'](_0x2fa3d5)&&this[_0x1b391b(0x1ae)][_0x1b391b(0x138)](_0x2fa3d5,new Set());for(let _0x69c362=0x0;_0x69c362<_0x2e5a60[_0x1b391b(0x17e)];_0x69c362++){const _0x1a2309=_0x2e5a60[_0x69c362]['trim']();if(_0x1a2309['startsWith']('//')||_0x1a2309['startsWith']('/*'))continue;let _0x2008aa=_0x1a2309,_0x108197=_0x69c362;while(!_0x2008aa['includes'](';')&&!_0x2008aa['match'](/from\s+['"`][^'"`]+['"`]/)&&_0x108197<_0x2e5a60['length']-0x1){_0x108197++;const _0x572f51=_0x2e5a60[_0x108197][_0x1b391b(0x12e)]();if(_0x572f51['startsWith']('//')||_0x572f51['startsWith']('/*'))continue;_0x2008aa+='\x20'+_0x572f51;}const importRegex=/import\s+(?:(?:\{([^}]+)\})|(?:([^,\s]+)(?:\s*,\s*\{([^}]+)\})?)|(?:\*\s+as\s+([^,\s]+)))\s+from\s+['"`]([^'"`]+)['"`]/g;let _0x5de893;while((_0x5de893=importRegex['exec'](_0x2008aa))!==null){const [,_0x1456af,defaultImport,_0x5a8b4f,_0x5e349e,_0x2c2ba3]=_0x5de893,_0x49292a=await this[_0x1b391b(0x12b)](_0x2c2ba3,_0x38da14);!_0x49292a[_0x1b391b(0x158)]&&_0x49292a[_0x1b391b(0x184)]&&this['dependencies'][_0x1b391b(0x18e)](_0x2fa3d5)['add'](_0x49292a['path']);defaultImport&&imports[_0x1b391b(0x18a)]({'importingFile':_0x2fa3d5,'importedSymbol':defaultImport['trim'](),'importedFromFile':_0x49292a[_0x1b391b(0x18b)],'fileExists':_0x49292a['exists'],'isExternal':_0x49292a[_0x1b391b(0x158)]||![],'isDefault':!![]});_0x5e349e&&imports['push']({'importingFile':_0x2fa3d5,'importedSymbol':_0x5e349e[_0x1b391b(0x12e)](),'importedFromFile':_0x49292a['path'],'fileExists':_0x49292a['exists'],'isExternal':_0x49292a['isExternal']||![],'isNamespace':!![]});const _0x1ec766=[_0x1456af,_0x5a8b4f]['filter'](Boolean)['join'](',');if(_0x1ec766){const _0xb2560c=_0x1ec766[_0x1b391b(0x125)](',')[_0x1b391b(0x14d)](_0x4e7abf=>{const _0x57b224=_0x1b391b,_0x16cdfd=_0x4e7abf[_0x57b224(0x12e)]()['split'](/\s+as\s+/);return _0x16cdfd[0x0][_0x57b224(0x12e)]();});_0xb2560c[_0x1b391b(0x153)](_0x3e72d3=>{const _0x42c077=_0x1b391b;_0x3e72d3&&imports[_0x42c077(0x18a)]({'importingFile':_0x2fa3d5,'importedSymbol':_0x3e72d3,'importedFromFile':_0x49292a['path'],'fileExists':_0x49292a['exists'],'isExternal':_0x49292a[_0x42c077(0x158)]||![],'isDefault':![]});});}}const requireRegex=/(?:const|let|var)\s+(?:\{([^}]+)\}|([^=\s]+))\s*=\s*require\(['"`]([^'"`]+)['"`]\)/g;while((_0x5de893=requireRegex[_0x1b391b(0x186)](_0x2008aa))!==null){const [,_0x197933,_0x55161d,_0x3a2f29]=_0x5de893,_0x5439d3=await this[_0x1b391b(0x12b)](_0x3a2f29,_0x38da14);!_0x5439d3[_0x1b391b(0x158)]&&_0x5439d3[_0x1b391b(0x184)]&&this[_0x1b391b(0x1ae)][_0x1b391b(0x18e)](_0x2fa3d5)['add'](_0x5439d3['path']);if(_0x197933){const _0xa8e89d=_0x197933['split'](',')['map'](_0x3616de=>_0x3616de[_0x1b391b(0x12e)]()[_0x1b391b(0x125)](':')[0x0]['trim']());_0xa8e89d['forEach'](_0x35ffe1=>{const _0x15095b=_0x1b391b;_0x35ffe1&&imports[_0x15095b(0x18a)]({'importingFile':_0x2fa3d5,'importedSymbol':_0x35ffe1,'importedFromFile':_0x5439d3[_0x15095b(0x18b)],'fileExists':_0x5439d3[_0x15095b(0x184)],'isExternal':_0x5439d3[_0x15095b(0x158)]||![],'isDefault':![]});});}else _0x55161d&&imports['push']({'importingFile':_0x2fa3d5,'importedSymbol':_0x55161d[_0x1b391b(0x12e)](),'importedFromFile':_0x5439d3[_0x1b391b(0x18b)],'fileExists':_0x5439d3[_0x1b391b(0x184)],'isExternal':_0x5439d3[_0x1b391b(0x158)]||![],'isDefault':!![]});}_0x69c362=_0x108197;}return imports;}['parseExports'](_0x566fae){const _0x5703fb=a0_0x335cdc,exports=new Set(),_0x4f2687=_0x566fae['split']('\x0a');for(const _0x4a6049 of _0x4f2687){const _0x15b931=_0x4a6049['trim']();if(_0x15b931[_0x5703fb(0x172)]('//')||_0x15b931['startsWith']('/*'))continue;/export\s+default\s+/['test'](_0x15b931)&&exports['add']('default');const _0x54671f=_0x15b931['match'](/export\s+\{([^}]+)\}/);if(_0x54671f){const _0x54574c=_0x54671f[0x1][_0x5703fb(0x125)](',')[_0x5703fb(0x14d)](_0x19f8f8=>{const _0x3955dc=_0x5703fb,_0x43754f=_0x19f8f8[_0x3955dc(0x12e)]()['split'](/\s+as\s+/);return _0x43754f[_0x43754f['length']-0x1][_0x3955dc(0x12e)]();});_0x54574c[_0x5703fb(0x153)](_0x2cd32f=>exports[_0x5703fb(0x12c)](_0x2cd32f));}const _0x4111cf=_0x15b931['match'](/export\s+(?:const|let|var|function|class|async\s+function)\s+([^=\s(]+)/);_0x4111cf&&exports['add'](_0x4111cf[0x1]);const exportFromMatch=_0x15b931[_0x5703fb(0x19d)](/export\s+\{([^}]+)\}\s+from/);if(exportFromMatch){const _0x5c384e=exportFromMatch[0x1][_0x5703fb(0x125)](',')['map'](_0x46b917=>{const _0x40ffcf=_0x5703fb,_0x1c6e4b=_0x46b917[_0x40ffcf(0x12e)]()[_0x40ffcf(0x125)](/\s+as\s+/);return _0x1c6e4b[_0x1c6e4b['length']-0x1][_0x40ffcf(0x12e)]();});_0x5c384e[_0x5703fb(0x153)](_0x1633e4=>exports[_0x5703fb(0x12c)](_0x1633e4));}/export\s+\*\s+from/['test'](_0x15b931)&&exports['add']('*');const moduleExportsMatch=_0x15b931[_0x5703fb(0x19d)](/module\.exports\s*=\s*\{([^}]+)\}/);if(moduleExportsMatch){const _0x8a2a0e=moduleExportsMatch[0x1]['split'](',')[_0x5703fb(0x14d)](_0x2bb6ae=>{const _0x31070e=_0x5703fb,_0x435408=_0x2bb6ae[_0x31070e(0x12e)]()['split'](':');return _0x435408[0x0][_0x31070e(0x12e)]();});_0x8a2a0e[_0x5703fb(0x153)](_0x58408a=>exports['add'](_0x58408a));}/module\.exports\s*=\s*[^{]/['test'](_0x15b931)&&exports['add']('default');const moduleExportsPropMatch=_0x15b931[_0x5703fb(0x19d)](/module\.exports\.([^=\s]+)\s*=/);moduleExportsPropMatch&&exports[_0x5703fb(0x12c)](moduleExportsPropMatch[0x1]);const exportsPropMatch=_0x15b931['match'](/exports\.([^=\s]+)\s*=/);exportsPropMatch&&exports[_0x5703fb(0x12c)](exportsPropMatch[0x1]);}return exports;}async['resolveImportPath'](importPath,_0x58913f){const _0x164f26=a0_0x335cdc;if(importPath[_0x164f26(0x172)]('.')){const _0x1476ef=a0_0x2f562d[_0x164f26(0x193)](_0x58913f),_0x4bfc59=a0_0x2f562d['resolve'](_0x1476ef,importPath);if(a0_0x2f562d['extname'](importPath))try{const _0x2bafa9=await a0_0x3c9c93['stat'](_0x4bfc59);if(_0x2bafa9['isFile']())return{'path':this['getRelativePath'](_0x4bfc59),'exists':!![]};}catch{}const _0x4d8b3f=['','.js','.mjs','.ts','.jsx',_0x164f26(0x16c),'/index.js',_0x164f26(0x11b),'/index.jsx','/index.tsx'];for(const _0x468e16 of _0x4d8b3f){const _0x4d78aa=_0x4bfc59+_0x468e16;try{const _0x53c402=await a0_0x3c9c93[_0x164f26(0x16b)](_0x4d78aa);if(_0x53c402[_0x164f26(0x123)]())return{'path':this['getRelativePath'](_0x4d78aa),'exists':!![]};}catch{}}return{'path':this['getRelativePath'](_0x4bfc59),'exists':![]};}return{'path':importPath,'exists':!![],'isExternal':!![]};}[a0_0x335cdc(0x11a)](_0x3918f9){const _0x59dc74=a0_0x335cdc;return a0_0x2f562d['relative'](this[_0x59dc74(0x19b)],_0x3918f9)[_0x59dc74(0x161)](/\\/g,'/');}['findCircularDependencies'](){const _0x1f06b5=a0_0x335cdc,_0x1a86e3=[],_0x44c540=new Set(),_0x14642d=new Set(),_0x392978=(_0x35fc08,_0x485c4b=[])=>{const _0x546894=a0_0x5b26;if(_0x14642d['has'](_0x35fc08)){const _0x556f46=_0x485c4b['indexOf'](_0x35fc08);_0x556f46!==-0x1&&_0x1a86e3[_0x546894(0x18a)]([..._0x485c4b[_0x546894(0x16f)](_0x556f46),_0x35fc08]);return;}if(_0x44c540[_0x546894(0x1b2)](_0x35fc08))return;_0x44c540['add'](_0x35fc08),_0x14642d[_0x546894(0x12c)](_0x35fc08),_0x485c4b['push'](_0x35fc08);const _0x50fbc8=this[_0x546894(0x1ae)]['get'](_0x35fc08)||new Set();for(const _0x23789c of _0x50fbc8){_0x392978(_0x23789c,[..._0x485c4b]);}_0x14642d[_0x546894(0x124)](_0x35fc08);};for(const _0xcde765 of this['dependencies'][_0x1f06b5(0x115)]()){!_0x44c540[_0x1f06b5(0x1b2)](_0xcde765)&&_0x392978(_0xcde765);}return _0x1a86e3;}[a0_0x335cdc(0x142)](){const _0x10e279=a0_0x335cdc,_0x57e41b=new Map();for(const _0x1e7846 of this['imports']){!_0x1e7846[_0x10e279(0x158)]&&(!_0x57e41b['has'](_0x1e7846['importedFromFile'])&&_0x57e41b[_0x10e279(0x138)](_0x1e7846['importedFromFile'],new Set()),_0x57e41b['get'](_0x1e7846['importedFromFile'])[_0x10e279(0x12c)](_0x1e7846['importedSymbol']));}const _0x4a0f30={};for(const [_0x5c8dc8,exports]of this[_0x10e279(0x198)][_0x10e279(0x188)]()){const _0x412800=_0x57e41b[_0x10e279(0x18e)](_0x5c8dc8)||new Set(),_0x3588b3=Array[_0x10e279(0x14a)](exports)[_0x10e279(0x164)](_0x48398e=>!_0x412800['has'](_0x48398e)&&_0x48398e!=='*');_0x3588b3['length']>0x0&&(_0x4a0f30[_0x5c8dc8]=_0x3588b3);}return _0x4a0f30;}async[a0_0x335cdc(0x141)](_0x223852='full'){const _0x5c763e=a0_0x335cdc;this['logger']?.[_0x5c763e(0x147)]('Starting import analysis',{'mode':_0x223852,'rootDir':this[_0x5c763e(0x19b)]}),await this['loadIgnoreFile']();const _0x26d5a8=await this[_0x5c763e(0x17d)](this['rootDir']);this['logger']?.['info'](_0x5c763e(0x139),{'count':_0x26d5a8['length']});for(const _0x567576 of _0x26d5a8){try{const _0xad0445=await a0_0x3c9c93['readFile'](_0x567576,'utf-8'),_0x4d9bc4=this['getRelativePath'](_0x567576),_0x4bb552=await this['parseImports'](_0xad0445,_0x567576);this['imports'][_0x5c763e(0x18a)](..._0x4bb552);const _0x4cc34a=this['parseExports'](_0xad0445);this[_0x5c763e(0x198)]['set'](_0x4d9bc4,_0x4cc34a);}catch(_0x4ebbee){this['logger']?.['warn']('Error\x20parsing\x20file',{'file':_0x567576,'error':_0x4ebbee['message']});}}this['logger']?.[_0x5c763e(0x147)](_0x5c763e(0x127),{'imports':this['imports']['length'],'exports':this['exports'][_0x5c763e(0x18f)]});const _0x2da9ed={'summary':{'totalFiles':_0x26d5a8[_0x5c763e(0x17e)],'totalImports':this['imports']['length'],'totalExports':Array['from'](this[_0x5c763e(0x198)]['values']())['reduce']((_0x26e3ee,exports)=>_0x26e3ee+exports['size'],0x0)},'missingExports':{},'missingFiles':{},'fileNotFoundImports':[]};for(const importEntry of this[_0x5c763e(0x11d)]){const {importingFile:importingFile,importedSymbol:importedSymbol,importedFromFile:importedFromFile,isDefault:_0x11802d,isNamespace:_0x21f2be,fileExists:_0x446514,isExternal:_0x8a6c7c}=importEntry;if(!_0x446514&&!_0x8a6c7c){_0x2da9ed['fileNotFoundImports']['push']({'importingFile':importingFile,'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'isDefault':_0x11802d||![],'isNamespace':_0x21f2be||![]});!_0x2da9ed[_0x5c763e(0x150)][importingFile]&&(_0x2da9ed['missingFiles'][importingFile]=[]);_0x2da9ed['missingFiles'][importingFile]['push']({'missingFile':importedFromFile,'importedSymbol':importedSymbol,'isDefault':_0x11802d||![],'isNamespace':_0x21f2be||![]});continue;}if(_0x8a6c7c)continue;const exportingFileExports=this[_0x5c763e(0x198)]['get'](importedFromFile);let _0x17b658=![];if(exportingFileExports){if(_0x21f2be)_0x17b658=exportingFileExports['size']>0x0;else _0x11802d?_0x17b658=exportingFileExports[_0x5c763e(0x1b2)]('default'):_0x17b658=exportingFileExports['has'](importedSymbol)||exportingFileExports['has']('*');}!_0x17b658&&(!_0x2da9ed[_0x5c763e(0x15c)][importingFile]&&(_0x2da9ed[_0x5c763e(0x15c)][importingFile]=[]),_0x2da9ed[_0x5c763e(0x15c)][importingFile][_0x5c763e(0x18a)]({'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'availableExports':exportingFileExports?Array['from'](exportingFileExports):[],'isDefault':_0x11802d||![],'isNamespace':_0x21f2be||![]}));}return(_0x223852===_0x5c763e(0x11f)||_0x223852===_0x5c763e(0x17c))&&(this['logger']?.[_0x5c763e(0x147)](_0x5c763e(0x15d)),_0x2da9ed['circularDependencies']=this[_0x5c763e(0x195)](),_0x2da9ed['unusedExports']=this[_0x5c763e(0x142)]()),this[_0x5c763e(0x135)]?.['info']('Analysis\x20complete',{'missingFiles':_0x2da9ed['fileNotFoundImports']['length'],'missingExports':Object['keys'](_0x2da9ed[_0x5c763e(0x15c)])['length']}),_0x2da9ed;}}function a0_0x2211(){const _0x507a0f=['CgfYC2vuywDZ','Dg90ywXgAwXLCW','BMfTzwq','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','z2v0uMvSyxrPDMvqyxrO','l2LUzgv4lNrZ','zxHLy3v0zq','Aw1WB3j0CW','zgv0ywLSzwq','zNvSBa','AwDUB3jLlwzPBgu','BMfTzxnWywnL','ignPCMn1BgfYigrLCgvUzgvUy3KGy2HHAw5ZigrLDgvJDgvK','AxngAwXL','zgvSzxrL','C3bSAxq','icaGicaGrNjVBsbMAwXLoIa','ugfYC2vKigfSBcbMAwXLCW','B3v0Chv0','AM9PBG','icaGicaG8j+sOsbgAxG6iefKzcbLEhbVCNqGzM9Yici','CMvZB2X2zuLTCg9YDfbHDgG','ywrK','cIaGtwLZC2LUzYbfEhbVCNrZoG','DhjPBq','CMvKDwnL','ignPCMn1BgfYigrLCgvUzgvUy3KGy2HHAw4OCYK','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0k','8j+tPcbuB3rHBcbLEhbVCNrZoIa','icaGicaG8j+tPcboBYbLEhbVCNrZigzVDw5KigLUihrHCMDLDcbMAwXL','D29YA2LUz0rPCMvJDg9YEq','Bg9Nz2vY','icaGiokaOIa','ig1PC3nPBMCGzxHWB3j0khmP','C2v0','rM91BMqGzMLSzxm','cUkAOo+4JYaGtuLtu0LorYbfwfbpuLrt','mJCYotm1C2zAvKPQ','BMfTzq','nJa2mtaZAu5My09K','AwDUB3jLugf0DgvYBNm','ANnVBG','ig9YignOzwnRigLMigL0j3mGDgHLignVCNjLy3qGzMLSzq','yw5HBhL6zq','zMLUzfvUDxnLzev4Cg9YDhm','Aw1WB3j0zwrtEw1IB2W','icaG4PQG77Ipicbdyw5UB3qGzMLUzcbMAwXLoIa','cVcFLi0Gvg9WieLZC3vLCYb0BYbgAxG6','mtm4qMDrzePK','Aw5MBW','zxH0BMfTzq','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','zNjVBq','lM1QCW','AwDUB3jLrMLSzq','BwfW','ig5VBI1LEgLZDgvUDcbZEw1IB2WOCYK','vg9Vig1HBNKGzMLSzxmGDg8Gyw5HBhL6ztOG','BwLZC2LUz0zPBgvZ','tufyx0zjtevt','icaGicaGvhj5Aw5NihrVigLTCg9YDdOG','zM9YrwfJAa','CMvSyxrPDMu','iJ8GkgnHC2uGBwLZBwf0y2GP','Dw51C2vKrxHWB3j0CW','ywnJzxnZ','AxnfEhrLCM5HBa','cVcFLiqGq0Lsq1vmqviGrevqru5eru5dsuvt','4P2mie1ju1njtKCGrKLmrvm','m0HPEMLfta','BwLZC2LUz0v4Cg9YDhm','uNvUBMLUzYbMDwXSigfUywX5C2LZ','Aw5JBhvKzxm','icaGicaG8j+sOsbgAxG6ie5VigrLzMf1BhqGzxHWB3j0lIbvC2uGBMfTzwqGAw1WB3j0oIb7ia','ndu4mdC3oxHfu0D1EG','CMvWBgfJzq','icaYlIbszxnVBhzLia','zMLSzu5VDezVDw5Ksw1WB3j0CW','zMLSDgvY','x3zHBgLKyxrLugfYyw1LDgvYCW','AxnezwzHDwX0','Aw1WB3j0Aw5NrMLSzq','icaGicaG8j+sOsbgAxG6ierPzcb5B3uGBwvHBIaI','igjYB2TLBIbPBxbVCNqOCYK','icaG4P2mifn5BwjVBcbUB3qGzxHWB3j0zwq6ici','C3rHDa','lNrZEa','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','icaXlIbgAxGG','C2XPy2u','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','revgqvvmvf9jr05puKvFrKLmrq','C3rHCNrZv2L0Aa','yxr0CMLIDxrLCW','nZaWndm4q0HNB3Ht','iokgKIa','y292zxjHz2u','ugf0AcbKB2vZig5VDcbLEgLZDdOG','revgqvvmvf9pvvrqvvq','sw1WB3j0igfUywX5EMvYigvYCM9YoG','x2zVCM1HDerLDgfPBgvKt3v0Chv0','zxjYB3i','zML4','z2v0qwXSrMLSzxm','BgvUz3rO','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','Dg90ywXfEhbVCNrZ','odmWotaXnLv3sNvHvW','y3DK','zgvIDwC','zxHPC3rZ','icdIGkiGrMLSzxmGyw5HBhL6zwq6ia','zxHLyW','icaGicaG8j+sOsbgAxG6ierLzMf1BhqGzxHWB3j0igv4Axn0CYWGy2HLy2SGAw1WB3j0ihn5BNrHEa','zw50CMLLCW','C29Tzq','ChvZAa','Cgf0Aa','lIbnDxn0igjLig9UzsbVzJOG','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','z2v0','C2L6zq','DMfSDwvZ','icdIGkiGvg90ywWGAw1WB3j0CZOG','AwDUB3jLrMLSzsbTDxn0igjLigeGC3rYAw5N','zgLYBMfTzq','DgvZDa','zMLUzenPCMn1BgfYrgvWzw5Kzw5JAwvZ','DxrMltG','ndGZndm1mhDmCKTrAq','zxHWB3j0CW','Dg9mB3DLCKnHC2u','Aw1WB3j0zwrgCM9TrMLSzq','CM9VDerPCG','Cgf0AcbTDxn0igjLigeGC3rYAw5N','Bwf0y2G','Bw9Kzq','CMvZB2X2zq','u1vque9svevex0vyvevou0LptLm','revgqvvmvf9nt0rf','mZq0mJm3nMXoz3PsyW','cVcFK4qG','Axnoyw1LC3bHy2u','C3vTBwfYEq','8j+tGsbgAwXLCYbHBMfSExPLzdOG','BwvZC2fNzq','yxzHAwXHyMXLrxHWB3j0CW','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','B2jQzwn0','yNvPBgq','Dg90ywXjBxbVCNrZ','lMDPDgLNBM9Yzq','zgvWzw5Kzw5JAwvZ','AxneAxjLy3rVCNK','BM9YBwfSAxPL','yMfZzw5HBwu','AgfZ','CMvHzezPBgu','lMPZEa','icaGicaG8j+sOsbgAxG6iefKzcbLEhbVCNrZihrVia','vKfmsurFt1vuufvuuW','8j+tIIbezxrHAwXLzcbjBxbVCNqVrxHWB3j0iefUywX5C2LZifjLCg9YDa','id4G','y2LYy3vSyxjezxbLBMrLBMnPzxm','D2fYBG','mtzYwgnSv2y','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0k','revgqvvmvf9jr05puKvFuefuvevstLm','A2v5CW'];a0_0x2211=function(){return _0x507a0f;};return a0_0x2211();}export default ImportAnalyzerTool;
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 +1 @@
1
- const a0_0x3734a2=a0_0x42fc;(function(_0x35b8ef,_0x4afe09){const _0x531057=a0_0x42fc,_0x3339f4=_0x35b8ef();while(!![]){try{const _0x31dd0b=-parseInt(_0x531057(0x115))/0x1*(parseInt(_0x531057(0x123))/0x2)+-parseInt(_0x531057(0x135))/0x3*(parseInt(_0x531057(0x128))/0x4)+parseInt(_0x531057(0x137))/0x5*(-parseInt(_0x531057(0x117))/0x6)+parseInt(_0x531057(0x112))/0x7+-parseInt(_0x531057(0x124))/0x8+-parseInt(_0x531057(0x127))/0x9+parseInt(_0x531057(0x116))/0xa*(parseInt(_0x531057(0x109))/0xb);if(_0x31dd0b===_0x4afe09)break;else _0x3339f4['push'](_0x3339f4['shift']());}catch(_0x4cb0bf){_0x3339f4['push'](_0x3339f4['shift']());}}}(a0_0x4590,0x37b15));import{BaseTool}from'./baseTool.js';import a0_0x5d340c from'../utilities/tagParser.js';function a0_0x42fc(_0x1465d7,_0x57bf92){_0x1465d7=_0x1465d7-0x106;const _0x45904e=a0_0x4590();let _0x42fcae=_0x45904e[_0x1465d7];if(a0_0x42fc['uNQlyI']===undefined){var _0x1e6f55=function(_0x5bd913){const _0x177daf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5d340c='',_0x52f70b='';for(let _0x2cf9fe=0x0,_0xcf5e71,_0x13df12,_0x381aaf=0x0;_0x13df12=_0x5bd913['charAt'](_0x381aaf++);~_0x13df12&&(_0xcf5e71=_0x2cf9fe%0x4?_0xcf5e71*0x40+_0x13df12:_0x13df12,_0x2cf9fe++%0x4)?_0x5d340c+=String['fromCharCode'](0xff&_0xcf5e71>>(-0x2*_0x2cf9fe&0x6)):0x0){_0x13df12=_0x177daf['indexOf'](_0x13df12);}for(let _0x2fb0b7=0x0,_0x27babc=_0x5d340c['length'];_0x2fb0b7<_0x27babc;_0x2fb0b7++){_0x52f70b+='%'+('00'+_0x5d340c['charCodeAt'](_0x2fb0b7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x52f70b);};a0_0x42fc['JSkqoA']=_0x1e6f55,a0_0x42fc['mEAInR']={},a0_0x42fc['uNQlyI']=!![];}const _0x45ad5a=_0x45904e[0x0],_0x291798=_0x1465d7+_0x45ad5a,_0x33b211=a0_0x42fc['mEAInR'][_0x291798];return!_0x33b211?(_0x42fcae=a0_0x42fc['JSkqoA'](_0x42fcae),a0_0x42fc['mEAInR'][_0x291798]=_0x42fcae):_0x42fcae=_0x33b211,_0x42fcae;}class JobDoneTool extends BaseTool{constructor(){const _0x5ca592=a0_0x42fc;super(),this['id']=_0x5ca592(0x12f),this['name']='Job\x20Done',this[_0x5ca592(0x11c)]=_0x5ca592(0x107),this[_0x5ca592(0x12a)]='1.0.0',this[_0x5ca592(0x134)]=[_0x5ca592(0x126),'mode-control'],this['requiresProject']=![],this[_0x5ca592(0x125)]=![];}['getDescription'](){const _0x2e4631=a0_0x42fc;return _0x2e4631(0x119)['trim']();}[a0_0x3734a2(0x12d)](_0x52f70b){const _0x54538a=a0_0x3734a2;try{const _0x2cf9fe=a0_0x5d340c[_0x54538a(0x111)](_0x52f70b,'summary'),_0xcf5e71=a0_0x5d340c[_0x54538a(0x111)](_0x52f70b,'details'),_0x13df12=a0_0x5d340c['extractContent'](_0x52f70b,_0x54538a(0x13a));let _0x381aaf='',_0x2fb0b7='',_0x27babc=!![];return _0x2cf9fe[_0x54538a(0x10c)]>0x0?(_0x381aaf=_0x2cf9fe[0x0][_0x54538a(0x118)](),_0x2fb0b7=_0xcf5e71[_0x54538a(0x10c)]>0x0?_0xcf5e71[0x0][_0x54538a(0x118)]():'',_0x27babc=_0x13df12[_0x54538a(0x10c)]>0x0?_0x13df12[0x0][_0x54538a(0x133)]()!=='false':!![]):_0x381aaf=_0x52f70b['trim']()||'Task\x20completed',{'actions':[{'action':'complete','summary':_0x381aaf,'success':_0x27babc,'details':_0x2fb0b7||undefined}]};}catch(_0x30f347){return{'actions':[{'action':'complete','summary':_0x52f70b[_0x54538a(0x118)]()||'Task\x20completed','success':!![]}]};}}['getSchema'](){const _0x59fe5d=a0_0x3734a2;return{'type':_0x59fe5d(0x122),'properties':{'actions':{'type':_0x59fe5d(0x114),'items':{'type':_0x59fe5d(0x122),'properties':{'action':{'type':'string','enum':[_0x59fe5d(0x121)],'description':_0x59fe5d(0x113)},'summary':{'type':_0x59fe5d(0x130),'description':_0x59fe5d(0x10a)},'success':{'type':'boolean','default':!![],'description':'Set\x20to\x20true\x20if\x20task\x20completed\x20successfully,\x20false\x20if\x20stuck/failed\x20or\x20partial\x20completion'},'details':{'type':_0x59fe5d(0x130),'description':'Optional:\x20Additional\x20details\x20about\x20what\x20was\x20done,\x20what\x20failed,\x20any\x20files\x20created,\x20or\x20next\x20steps\x20for\x20the\x20user'}},'required':[_0x59fe5d(0x11e),_0x59fe5d(0x12c)],'additionalProperties':![]},'minItems':0x1,'maxItems':0x1}},'required':['actions'],'additionalProperties':![]};}async[a0_0x3734a2(0x131)](_0x22a738,_0x1008ed={}){const _0x37b24c=a0_0x3734a2;try{const {actions:_0x3961dc}=_0x22a738;if(!_0x3961dc||!Array['isArray'](_0x3961dc)||_0x3961dc[_0x37b24c(0x10c)]===0x0)throw new Error('Actions\x20array\x20is\x20required');const _0x33ca34=_0x3961dc[0x0];if(_0x33ca34[_0x37b24c(0x11e)]!==_0x37b24c(0x121))throw new Error('Invalid\x20action.\x20Only\x20\x22complete\x22\x20is\x20supported');if(!_0x33ca34['summary'])throw new Error('Completion\x20summary\x20is\x20required');const _0x5c67f6=_0x1008ed['agentId'];let _0x3ee8e6='';if(_0x5c67f6&&_0x1008ed[_0x37b24c(0x10e)])try{if(this['agentPool']){const _0x47dda7=await this[_0x37b24c(0x10b)][_0x37b24c(0x11f)](_0x5c67f6);_0x47dda7&&(_0x3ee8e6=_0x37b24c(0x139)+_0x47dda7['name']+'\x22');}}catch(_0x3cab98){}const _0x177a7c=_0x37b24c(0x12b)+_0x3ee8e6+(_0x33ca34['success']!==![]?_0x37b24c(0x138):'\x20with\x20issues')+_0x37b24c(0x132)+_0x33ca34['summary']+(_0x33ca34[_0x37b24c(0x10f)]?_0x37b24c(0x129)+_0x33ca34['details']:'')+_0x37b24c(0x108);if(_0x5c67f6&&this[_0x37b24c(0x10b)])try{const _0x27bed0=await this[_0x37b24c(0x10b)]['getAgent'](_0x5c67f6);_0x27bed0&&(_0x27bed0[_0x37b24c(0x11a)]=_0x37b24c(0x11d),_0x27bed0[_0x37b24c(0x12e)]=_0x37b24c(0x10d),_0x27bed0['autonomousWorkComplete']=!![],_0x27bed0['lastCompletionSummary']=_0x33ca34[_0x37b24c(0x12c)],await this['agentPool']['persistAgentState'](_0x5c67f6),this[_0x37b24c(0x110)]?.['info']('JobDone:\x20Agent\x20'+_0x5c67f6+'\x20switched\x20to\x20CHAT\x20mode',{'summary':_0x33ca34[_0x37b24c(0x12c)],'success':_0x33ca34[_0x37b24c(0x13a)]!==![]}));}catch(_0x5606aa){this[_0x37b24c(0x110)]?.['warn'](_0x37b24c(0x136),{'error':_0x5606aa['message']});}return{'success':!![],'output':_0x177a7c,'taskComplete':!![],'exitAutonomousMode':!![],'summary':_0x33ca34[_0x37b24c(0x12c)],'details':_0x33ca34['details']||null,'successfulCompletion':_0x33ca34[_0x37b24c(0x13a)]!==![],'metadata':{'toolId':this['id'],'agentId':_0x5c67f6||'unknown','completedAt':new Date()['toISOString'](),'action':_0x33ca34['action']}};}catch(_0x188274){return{'success':![],'error':_0x188274[_0x37b24c(0x120)],'output':'Failed\x20to\x20mark\x20task\x20as\x20complete:\x20'+_0x188274['message'],'taskComplete':![]};}}[a0_0x3734a2(0x11b)](_0x12af87){this['agentPool']=_0x12af87;}['getCapabilities'](){const _0x426155=a0_0x3734a2;return{'id':this['id'],'name':this['name'],'description':this['description'],'version':this[_0x426155(0x12a)],'capabilities':this[_0x426155(0x134)],'requiresProject':this['requiresProject'],'async':this['async'],'enabled':!![],'schema':this[_0x426155(0x106)]()};}}function a0_0x4590(){const _0x176cff=['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','Bw9Kzq','C2v0qwDLBNrqB29S','zgvZy3jPChrPB24','y2HHDa','ywn0Aw9U','z2v0qwDLBNq','BwvZC2fNzq','y29TCgXLDgu','B2jQzwn0','mNzZCvfTyW','mtq3mti0og1fy2XvCW','yxn5BMm','DgfZAY1JB21WBgv0Aw9U','mtG1nteYnxDyCxvTAW','nde2ogrOrM5ssa','cGOQkKrLDgfPBhm6kIOG','DMvYC2LVBG','4PYfifrHC2SGy29TCgXLDgvK','C3vTBwfYEq','CgfYC2vqyxjHBwv0zxjZ','Bw9Kzvn0yxrL','AM9Izg9Uzq','C3rYAw5N','zxHLy3v0zq','cGOQkLn1Bw1HCNK6kIOG','Dg9mB3DLCKnHC2u','y2fWywjPBgL0AwvZ','mtqXsvHJtM50','sM9Irg9UztOGrMfPBgvKihrVihn3AxrJAcbHz2vUDcbTB2rL','mtvNC0fNrM8','ihn1y2nLC3nMDwXSEq','igj5igfNzw50ici','C3vJy2vZCW','z2v0u2nOzw1H','q2fSBcb0AgLZihrVB2WGD2HLBIb5B3uGAgf2zsbZDwnJzxnZzNvSBhKGy29TCgXLDgvKihrOzsbHC3nPz25Lzcb0yxnRlcbpuIbPzIb5B3uGyxjLihn0DwnRl3vUywjSzsb0BYbWCM9JzwvKigfMDgvYig11BhrPCgXLigzHAwXLzcbHDhrLBxb0CY4GuhjVDMLKzsbHihn1Bw1HCNKGB2yGD2HHDcb3yxmGywnJB21WBgLZAgvKig9YihDOyxqGChjLDMvUDgvKignVBxbSzxrPB24UifrOAxmGD2LSBcbLEgL0igf1Dg9UB21VDxmGBw9KzsbHBMqGCMv0DxjUignVBNrYB2WGDg8GDgHLihvZzxiU','cGOQqxv0B25VBw91CYbTB2rLihDPBgWGBM93igv4AxqUkG','mZaXmty2ogHqqM1iCW','q2XLyxiGC3vTBwfYEsbVzIb3Agf0ihLVDsbHy2nVBxbSAxnOzwqGt1iGD2HHDcbWCMv2zw50zwqGy29TCgXLDgLVBIaOzs5NlIWGiKnYzwf0zwqGnsbZB25NigzPBgvZihn1y2nLC3nMDwXSEsiSicjvBMfIBguGDg8GChjVy2vLzdOGBwLZC2LUzYbbueKGy3jLzgvUDgLHBhmIlcaIu3r1y2SGywz0zxiGmYbMywLSzwqGy29TCgLSyxrPB24Gyxr0zw1WDhmIkq','ywDLBNrqB29S','BgvUz3rO','AwrSzq','Dg9VBhnszwDPC3rYEq','zgv0ywLSCW','Bg9Nz2vY','zxH0CMfJDenVBNrLBNq','mta1mJC5m3zZyurhEq','twfYAYb0yxnRigfZignVBxbSzxrLic0GywX3yxLZihvZzsaIy29TCgXLDguI','yxjYyxK','mti1nJa3y2vPB0zW','mZblyLzAueW','mZu4mdy4yLndAgLy','DhjPBq'];a0_0x4590=function(){return _0x176cff;};return a0_0x4590();}export default JobDoneTool;
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;