@loxia-labs/loxia-autopilot-one 1.0.3 → 1.0.4

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 (115) hide show
  1. package/bin/cli.js +1 -1
  2. package/bin/loxia-terminal-v2.js +1 -1
  3. package/bin/loxia-terminal.js +1 -1
  4. package/bin/start-with-terminal.js +1 -1
  5. package/package.json +2 -1
  6. package/scripts/install-scanners.js +1 -1
  7. package/src/analyzers/CSSAnalyzer.js +1 -1
  8. package/src/analyzers/ConfigValidator.js +1 -1
  9. package/src/analyzers/ESLintAnalyzer.js +1 -1
  10. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  11. package/src/analyzers/PrettierFormatter.js +1 -1
  12. package/src/analyzers/PythonAnalyzer.js +1 -1
  13. package/src/analyzers/SecurityAnalyzer.js +1 -1
  14. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  15. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  17. package/src/analyzers/codeCloneDetector/index.js +1 -1
  18. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  19. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  20. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  21. package/src/core/agentPool.js +1 -1
  22. package/src/core/agentScheduler.js +1 -1
  23. package/src/core/contextManager.js +1 -1
  24. package/src/core/messageProcessor.js +1 -1
  25. package/src/core/orchestrator.js +1 -1
  26. package/src/core/stateManager.js +1 -1
  27. package/src/index.js +1 -1
  28. package/src/interfaces/cli.js +1 -1
  29. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  38. package/src/interfaces/terminal/api/apiClient.js +1 -1
  39. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  40. package/src/interfaces/terminal/api/session.js +1 -1
  41. package/src/interfaces/terminal/api/websocket.js +1 -1
  42. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  43. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  44. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  45. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  47. package/src/interfaces/terminal/components/Header.js +1 -1
  48. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  49. package/src/interfaces/terminal/components/InputBox.js +1 -1
  50. package/src/interfaces/terminal/components/Layout.js +1 -1
  51. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  52. package/src/interfaces/terminal/components/MessageList.js +1 -1
  53. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  54. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  55. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  56. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  57. package/src/interfaces/terminal/components/TextInput.js +1 -1
  58. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  59. package/src/interfaces/terminal/config/constants.js +1 -1
  60. package/src/interfaces/terminal/index.js +1 -1
  61. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  62. package/src/interfaces/terminal/state/useAgents.js +1 -1
  63. package/src/interfaces/terminal/state/useConnection.js +1 -1
  64. package/src/interfaces/terminal/state/useMessages.js +1 -1
  65. package/src/interfaces/terminal/state/useTools.js +1 -1
  66. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  67. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  68. package/src/interfaces/terminal/utils/theme.js +1 -1
  69. package/src/interfaces/webServer.js +1 -1
  70. package/src/modules/fileExplorer/controller.js +1 -1
  71. package/src/modules/fileExplorer/index.js +1 -1
  72. package/src/modules/fileExplorer/middleware.js +1 -1
  73. package/src/modules/fileExplorer/routes.js +1 -1
  74. package/src/services/aiService.js +1 -1
  75. package/src/services/apiKeyManager.js +1 -1
  76. package/src/services/benchmarkService.js +1 -1
  77. package/src/services/budgetService.js +1 -1
  78. package/src/services/contextInjectionService.js +1 -1
  79. package/src/services/conversationCompactionService.js +1 -1
  80. package/src/services/errorHandler.js +1 -1
  81. package/src/services/fileAttachmentService.js +1 -1
  82. package/src/services/modelRouterService.js +1 -1
  83. package/src/services/modelsService.js +1 -1
  84. package/src/services/qualityInspector.js +1 -1
  85. package/src/services/tokenCountingService.js +1 -1
  86. package/src/tools/agentCommunicationTool.js +1 -1
  87. package/src/tools/agentDelayTool.js +1 -1
  88. package/src/tools/asyncToolManager.js +1 -1
  89. package/src/tools/baseTool.js +1 -1
  90. package/src/tools/browserTool.js +1 -1
  91. package/src/tools/cloneDetectionTool.js +1 -1
  92. package/src/tools/dependencyResolverTool.js +1 -1
  93. package/src/tools/fileContentReplaceTool.js +1 -1
  94. package/src/tools/fileSystemTool.js +1 -1
  95. package/src/tools/fileTreeTool.js +1 -1
  96. package/src/tools/imageTool.js +1 -1
  97. package/src/tools/importAnalyzerTool.js +1 -1
  98. package/src/tools/jobDoneTool.js +1 -1
  99. package/src/tools/seekTool.js +1 -1
  100. package/src/tools/staticAnalysisTool.js +1 -1
  101. package/src/tools/taskManagerTool.js +1 -1
  102. package/src/tools/terminalTool.js +1 -1
  103. package/src/tools/webTool.js +1 -1
  104. package/src/types/agent.js +1 -1
  105. package/src/types/contextReference.js +1 -1
  106. package/src/types/conversation.js +1 -1
  107. package/src/types/toolCommand.js +1 -1
  108. package/src/utilities/attachmentValidator.js +1 -1
  109. package/src/utilities/configManager.js +1 -1
  110. package/src/utilities/constants.js +1 -1
  111. package/src/utilities/directoryAccessManager.js +1 -1
  112. package/src/utilities/fileProcessor.js +1 -1
  113. package/src/utilities/logger.js +1 -1
  114. package/src/utilities/tagParser.js +1 -1
  115. package/src/utilities/toolConstants.js +1 -1
@@ -1 +1 @@
1
- const a0_0x425ea5=a0_0xa249;(function(_0x4226de,_0xe54998){const _0x265593=a0_0xa249,_0x7448d4=_0x4226de();while(!![]){try{const _0xc78747=-parseInt(_0x265593(0x130))/0x1*(-parseInt(_0x265593(0x166))/0x2)+-parseInt(_0x265593(0x17c))/0x3*(-parseInt(_0x265593(0x13f))/0x4)+-parseInt(_0x265593(0x167))/0x5*(parseInt(_0x265593(0x139))/0x6)+parseInt(_0x265593(0x169))/0x7+parseInt(_0x265593(0x149))/0x8*(-parseInt(_0x265593(0x126))/0x9)+parseInt(_0x265593(0x15f))/0xa*(-parseInt(_0x265593(0x17e))/0xb)+parseInt(_0x265593(0x15c))/0xc;if(_0xc78747===_0xe54998)break;else _0x7448d4['push'](_0x7448d4['shift']());}catch(_0x33e2d8){_0x7448d4['push'](_0x7448d4['shift']());}}}(a0_0x9252,0x65472));import{BaseTool}from'./baseTool.js';function a0_0xa249(_0x49dda3,_0x16d430){_0x49dda3=_0x49dda3-0x11c;const _0x925281=a0_0x9252();let _0xa2497c=_0x925281[_0x49dda3];if(a0_0xa249['junlxP']===undefined){var _0x1a3964=function(_0x47b371){const _0x3c4b01='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xf730f6='',_0x50cfc0='';for(let _0x3648b7=0x0,_0x59378d,_0x1e3878,_0x154cd9=0x0;_0x1e3878=_0x47b371['charAt'](_0x154cd9++);~_0x1e3878&&(_0x59378d=_0x3648b7%0x4?_0x59378d*0x40+_0x1e3878:_0x1e3878,_0x3648b7++%0x4)?_0xf730f6+=String['fromCharCode'](0xff&_0x59378d>>(-0x2*_0x3648b7&0x6)):0x0){_0x1e3878=_0x3c4b01['indexOf'](_0x1e3878);}for(let _0x8d5a52=0x0,_0x47ab82=_0xf730f6['length'];_0x8d5a52<_0x47ab82;_0x8d5a52++){_0x50cfc0+='%'+('00'+_0xf730f6['charCodeAt'](_0x8d5a52)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x50cfc0);};a0_0xa249['aoYrZJ']=_0x1a3964,a0_0xa249['DXFTpH']={},a0_0xa249['junlxP']=!![];}const _0x363199=_0x925281[0x0],_0x4d770b=_0x49dda3+_0x363199,_0x4ebad6=a0_0xa249['DXFTpH'][_0x4d770b];return!_0x4ebad6?(_0xa2497c=a0_0xa249['aoYrZJ'](_0xa2497c),a0_0xa249['DXFTpH'][_0x4d770b]=_0xa2497c):_0xa2497c=_0x4ebad6,_0xa2497c;}import{promises as a0_0xf730f6}from'fs';function a0_0x9252(){const _0x2ce180=['revgqvvmvf9nqvHFrevqveG','lMDPzG','rxjYB3iGyNvPBgrPBMCGDhjLzq','Dg1W','lNb5DgvZDf9JywnOzq','kqOGic0GuMfUz2u6ideT','tufyx0zjtevtx0Lox1rsruu','Aw5JBhvKzxm','zxHJBhvKzuv4DgvUC2LVBNmGBxvZDcbIzsbHBIbHCNjHEq','Dhj1zq','BNvTyMvY','zgLYzwn0B3jPzxndB3vUDa','D2HLzwXZ','C3rHCNrZv2L0Aa','lMf2Aq','zMLSDgvY','lM1WmW','zM9YBwf0vhjLzq','lMnSyxnZ','CgfYC2vqyxjHBwv0zxjZ','DgfYz2v0','lNbUzW','lNzZ','yM93zxjFy29TCg9Uzw50CW','Bwf4rgvWDgG','Bg9JywXLq29TCgfYzq','lNDTDG','y2HPBgrYzw4','zMLSzq','cI0Gtwf4Aw11BsbMAwXLCZOG','CMvHzgrPCG','Dg9mB3DLCKnHC2u','lMvNz3m','lNPPCa','iIbTDxn0ihn0yxj0ihDPDgGGysbKB3qGkguUzY4SiciUANmIkq','lNnV','C2HVD0zPBgvZ','mZyWndK1qw1fz0T4','AxneAxjLy3rVCNK','yNvPBgruCMvL','Bg9Nz2vY','zgLZDa','y292zxjHz2u','CMvXDwLYzxnqCM9Qzwn0','zxHLyW','C2TPChbLzenVDw50','DhjLzunVBMzPzW','ntmXnJi1r1Lzy0Xl','CMvSyxrPDMu','AM9PBG','BgvUz3rO','DhjPBq','DMvUzg9Y','lM1Wna','Dg9gAxHLza','zM9YBwf0rMLSzvnPEMu','nduYmJjfwNvVENi','lMrI','zxHJBhvKzurPCMvJDg9YAwvZig11C3qGyMuGyw4GyxjYyxK','ChvZAa','D2fYBG','zxHJBhvKzuv4DgvUC2LVBNm','nZq2ohHZv1rYDq','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','lM5LEhq','C3rHDhm','Aw5MBW','lM1HCa','lMH5Cg90AgvZAxm','lM1PBI5JC3m','zMLSzxndB3vUDa','lMrSBa','mtm2wLLSq2zo','Aw5JBhvKzuv4DgvUC2LVBNmGBxvZDcbIzsbHBIbHCNjHEq','lMvUDG','lMvVDa','zxHLy3v0zq','lNrLBxa','BwfW','lM1PBI5QCW','cKrPCMvJDg9YAwvZoIa','C2HVD1nPEMvZ','DgLTzw91Da','lJD6','CgfYC2u','D29YA2LUz0rPCMvJDg9YEq','twf4Aw11BsbMAwXLignVDw50ihjLywnOzwq','rMLSzsb0CMvLihrVB2WGy2XLyw51CcbJB21WBgv0zwq','lNzZy29Kzq','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','AxngAwXL','ndqZmteYmhvKsNvPta','zwDNCW','qLjbtKni','mtq0mhHcrNryrW','lNr0zG','lMjTCa','ieTc','AxnbC3LUyW','lNrHCG','z2v0rgvZy3jPChrPB24','mMPMwePQtG','mtG1A0vtsuPP','Aw5JBhvKzuv4DgvUC2LVBNm','ndG2mtu3mer6sgTZwq','yNvPBgq','zMLSzs10CMvL','lNrTCa','tufyx0rfufrix0XjtuLu','AwDUB3jLqMLUyxj5rMLSzxm','cKzPBgvZoIa','lNn2zW','lNb5BW','C3rHDa','CMvZB2X2zq','BgLI','BwvZC2fNzq','C3bSAxq','lMrHDa','lMv4zq','lMPWzW','lNb5yW','lNb5za','m29Trw1KqW','zM9YrwfJAa','mtCWmdzKq3PkDK0','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','cKrPCMvJDg9YEtOG','BMfTzq','vxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEq','rgLYzwn0B3j5igrVzxmGBM90igv4Axn0ig9YigLZigLUywnJzxnZAwjSztOG','zgLYzwn0B3j5'];a0_0x9252=function(){return _0x2ce180;};return a0_0x9252();}import a0_0x50cfc0 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':'├──\x20','LAST_BRANCH':'└──\x20','VERTICAL':'│\x20\x20\x20','INDENT':'\x20\x20\x20\x20'}},DEFAULT_IGNORE_DIRECTORIES=['node_modules','.git',a0_0x425ea5(0x12a),a0_0x425ea5(0x16a),a0_0x425ea5(0x12b),a0_0x425ea5(0x141),'.nuxt','.cache','out',a0_0x425ea5(0x199),a0_0x425ea5(0x135),a0_0x425ea5(0x19c),a0_0x425ea5(0x159),'.idea',a0_0x425ea5(0x19b),'__pycache__','venv','env',a0_0x425ea5(0x14b),a0_0x425ea5(0x189),'.mypy_cache',a0_0x425ea5(0x15d),a0_0x425ea5(0x121),a0_0x425ea5(0x174),'lib64','parts','sdist',a0_0x425ea5(0x191),'.tox','.nox','htmlcov',a0_0x425ea5(0x145),a0_0x425ea5(0x188),'temp',a0_0x425ea5(0x16c),a0_0x425ea5(0x14e)],DEFAULT_IGNORE_EXTENSIONS=[a0_0x425ea5(0x144),a0_0x425ea5(0x150),a0_0x425ea5(0x146),'.lock','.log',a0_0x425ea5(0x16c),'.temp',a0_0x425ea5(0x17a),a0_0x425ea5(0x171),a0_0x425ea5(0x17b),a0_0x425ea5(0x124),a0_0x425ea5(0x148),'.dylib',a0_0x425ea5(0x178),'.obj','.o','.a',a0_0x425ea5(0x197),'.jar','.war'],BINARY_EXTENSIONS=[a0_0x425ea5(0x19a),a0_0x425ea5(0x179),'.jpeg',a0_0x425ea5(0x186),a0_0x425ea5(0x161),'.ico',a0_0x425ea5(0x170),'.pdf',a0_0x425ea5(0x122),a0_0x425ea5(0x164),'.gz','.rar',a0_0x425ea5(0x154),a0_0x425ea5(0x195),a0_0x425ea5(0x136),a0_0x425ea5(0x193),'.mov',a0_0x425ea5(0x19f),'.woff','.woff2',a0_0x425ea5(0x160),a0_0x425ea5(0x14c),'.bin',a0_0x425ea5(0x177),a0_0x425ea5(0x13a),'.sqlite'];class FileTreeTool extends BaseTool{constructor(_0x3648b7={},_0x59378d=null){const _0x54f417=a0_0x425ea5;super(_0x3648b7,_0x59378d),this[_0x54f417(0x12c)]=!![],this[_0x54f417(0x163)]=!![],this[_0x54f417(0x153)]=_0x3648b7[_0x54f417(0x153)]||0x1d4c0,this[_0x54f417(0x12f)]={...TREE_CONFIG,..._0x3648b7['treeConfig']},this[_0x54f417(0x142)]={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};}[a0_0x425ea5(0x165)](){const _0x520739=a0_0x425ea5;return'\x0aFile\x20Tree\x20Tool:\x20Generate\x20hierarchical\x20tree\x20representation\x20of\x20project\x20directory\x20structure.\x0a\x0aXML\x20USAGE:\x0a<file-tree>\x0a\x20\x20<directory>src</directory>\x0a\x20\x20<max-depth>4</max-depth>\x0a\x20\x20<include-extensions>.js,.jsx,.ts,.tsx</include-extensions>\x0a\x20\x20<exclude-extensions>.test.js,.spec.js</exclude-extensions>\x0a\x20\x20<show-files>true</show-files>\x0a\x20\x20<show-hidden>false</show-hidden>\x0a</file-tree>\x0a\x0aJSON\x20USAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22file-tree\x22,\x0a\x20\x20\x22directory\x22:\x20\x22src\x22,\x0a\x20\x20\x22maxDepth\x22:\x204,\x0a\x20\x20\x22includeExtensions\x22:\x20[\x22.js\x22,\x20\x22.jsx\x22,\x20\x22.ts\x22,\x20\x22.tsx\x22],\x0a\x20\x20\x22excludeExtensions\x22:\x20[\x22.test.js\x22,\x20\x22.spec.js\x22],\x0a\x20\x20\x22showFiles\x22:\x20true,\x0a\x20\x20\x22showHidden\x22:\x20false\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a\x0adirectory\x20(optional):\x0a\x20\x20-\x20Directory\x20to\x20scan\x20(default:\x20working\x20directory)\x0a\x20\x20-\x20Can\x20be\x20relative\x20or\x20absolute\x20path\x0a\x20\x20-\x20Examples:\x20\x22src\x22,\x20\x22src/components\x22,\x20\x22/home/user/project\x22\x0a\x0amaxDepth\x20(optional):\x0a\x20\x20-\x20Maximum\x20depth\x20to\x20scan\x20(default:\x20'+TREE_CONFIG[_0x520739(0x185)]+_0x520739(0x18a)+TREE_CONFIG['MAX_DEPTH_LIMIT']+_0x520739(0x140)+TREE_CONFIG[_0x520739(0x16d)]+_0x520739(0x11e)+TREE_CONFIG[_0x520739(0x18b)]+'\x0a-\x20Maximum\x20directories:\x20'+TREE_CONFIG['MAX_DIRECTORIES']+'\x0a-\x20Binary\x20files\x20can\x20be\x20filtered\x20with\x20ignoreBinaryFiles\x20option\x0a\x0aMULTI-DIRECTORY\x20SUPPORT:\x0aWorks\x20with\x20agent\x27s\x20configured\x20accessible\x20directories.\x0aValidates\x20paths\x20against\x20directoryAccess\x20configuration.\x0a\x20\x20\x20\x20';}[a0_0x425ea5(0x198)](_0x1e3878){const _0x325cea=a0_0x425ea5;try{if(_0x1e3878[_0x325cea(0x134)]()[_0x325cea(0x192)]('{')){const _0x14a04e=JSON[_0x325cea(0x155)](_0x1e3878);return{'directory':_0x14a04e['directory']||'.','maxDepth':_0x14a04e[_0x325cea(0x19d)]||TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':_0x14a04e[_0x325cea(0x168)]||[],'excludeExtensions':_0x14a04e['excludeExtensions']||[],'excludeDirectories':_0x14a04e['excludeDirectories']||[],'showFiles':_0x14a04e[_0x325cea(0x125)]!==![],'showHidden':_0x14a04e['showHidden']===!![],'showSizes':_0x14a04e[_0x325cea(0x152)]===!![],'ignoreBinaryFiles':_0x14a04e[_0x325cea(0x16e)]===!![]};}const _0x154cd9={'directory':'.','maxDepth':TREE_CONFIG[_0x325cea(0x185)],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![]},_0x8d5a52=/<directory>(.*?)<\/directory>/i,_0x47ab82=_0x8d5a52[_0x325cea(0x12d)](_0x1e3878);_0x47ab82&&(_0x154cd9[_0x325cea(0x184)]=_0x47ab82[0x1]['trim']());const _0x3f8b1f=/<max-depth>(\d+)<\/max-depth>/i,_0xd8cab1=_0x3f8b1f[_0x325cea(0x12d)](_0x1e3878);_0xd8cab1&&(_0x154cd9[_0x325cea(0x19d)]=parseInt(_0xd8cab1[0x1],0xa));const _0x4230e8=/<include-extensions>(.*?)<\/include-extensions>/i,_0x4007b6=_0x4230e8[_0x325cea(0x12d)](_0x1e3878);_0x4007b6&&(_0x154cd9['includeExtensions']=_0x4007b6[0x1]['split'](',')['map'](_0x3f7e51=>_0x3f7e51['trim']())[_0x325cea(0x194)](_0x1871ac=>_0x1871ac[_0x325cea(0x133)]>0x0));const _0x359f52=/<exclude-extensions>(.*?)<\/exclude-extensions>/i,_0x47f3bb=_0x359f52[_0x325cea(0x12d)](_0x1e3878);_0x47f3bb&&(_0x154cd9['excludeExtensions']=_0x47f3bb[0x1]['split'](',')[_0x325cea(0x14f)](_0x2398fb=>_0x2398fb[_0x325cea(0x134)]())[_0x325cea(0x194)](_0x35120e=>_0x35120e[_0x325cea(0x133)]>0x0));const _0x50aec0=/<exclude-directories>(.*?)<\/exclude-directories>/i,_0xcf2720=_0x50aec0[_0x325cea(0x12d)](_0x1e3878);_0xcf2720&&(_0x154cd9['excludeDirectories']=_0xcf2720[0x1][_0x325cea(0x176)](',')[_0x325cea(0x14f)](_0x40f292=>_0x40f292['trim']())[_0x325cea(0x194)](_0x34bce5=>_0x34bce5[_0x325cea(0x133)]>0x0));const _0x6d13a5=/<show-files>(.*?)<\/show-files>/i,_0x5300b7=_0x6d13a5['exec'](_0x1e3878);_0x5300b7&&(_0x154cd9['showFiles']=_0x5300b7[0x1]['trim']()[_0x325cea(0x120)]()!=='false');const _0x4e39d1=/<show-hidden>(.*?)<\/show-hidden>/i,_0xc8af56=_0x4e39d1[_0x325cea(0x12d)](_0x1e3878);_0xc8af56&&(_0x154cd9['showHidden']=_0xc8af56[0x1][_0x325cea(0x134)]()[_0x325cea(0x120)]()===_0x325cea(0x18e));const _0x161835=/<show-sizes>(.*?)<\/show-sizes>/i,_0x1dd3f6=_0x161835[_0x325cea(0x12d)](_0x1e3878);_0x1dd3f6&&(_0x154cd9['showSizes']=_0x1dd3f6[0x1]['trim']()['toLowerCase']()===_0x325cea(0x18e));const _0x4ff1cf=/<ignore-binary-files>(.*?)<\/ignore-binary-files>/i,_0x9e1760=_0x4ff1cf[_0x325cea(0x12d)](_0x1e3878);return _0x9e1760&&(_0x154cd9['ignoreBinaryFiles']=_0x9e1760[0x1][_0x325cea(0x134)]()[_0x325cea(0x120)]()===_0x325cea(0x18e)),_0x154cd9;}catch(_0x2206cb){return this['logger']?.['error']('Failed\x20to\x20parse\x20file-tree\x20parameters',{'error':_0x2206cb['message']}),{'directory':'.','maxDepth':TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![],'parseError':_0x2206cb[_0x325cea(0x175)]};}}[a0_0x425ea5(0x17f)](){return[];}['customValidateParameters'](_0x589739){const _0x4bae45=a0_0x425ea5,_0x49595e=[];if(_0x589739['maxDepth']!==undefined){if(typeof _0x589739[_0x4bae45(0x19d)]!==_0x4bae45(0x18f)||_0x589739[_0x4bae45(0x19d)]<0x1)_0x49595e[_0x4bae45(0x13c)]('max-depth\x20must\x20be\x20a\x20positive\x20number');else _0x589739[_0x4bae45(0x19d)]>this['treeConfig'][_0x4bae45(0x16d)]&&_0x49595e['push']('max-depth\x20cannot\x20exceed\x20'+this['treeConfig'][_0x4bae45(0x16d)]);}_0x589739['directory']&&_0x589739[_0x4bae45(0x184)]['includes']('..')&&_0x49595e['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security');if(_0x589739[_0x4bae45(0x168)]!==undefined&&_0x589739[_0x4bae45(0x168)]!==null){if(!Array['isArray'](_0x589739[_0x4bae45(0x168)]))_0x49595e['push'](_0x4bae45(0x14a));else for(const _0x1f1a7a of _0x589739[_0x4bae45(0x168)]){!_0x1f1a7a[_0x4bae45(0x192)]('.')&&_0x49595e['push']('Extension\x20\x22'+_0x1f1a7a+_0x4bae45(0x123));}}if(_0x589739[_0x4bae45(0x13e)]!==undefined&&_0x589739['excludeExtensions']!==null){if(!Array['isArray'](_0x589739[_0x4bae45(0x13e)]))_0x49595e['push'](_0x4bae45(0x18d));else for(const _0x2ba391 of _0x589739[_0x4bae45(0x13e)]){!_0x2ba391[_0x4bae45(0x192)]('.')&&_0x49595e[_0x4bae45(0x13c)]('Extension\x20\x22'+_0x2ba391+'\x22\x20must\x20start\x20with\x20a\x20dot\x20(e.g.,\x20\x22.js\x22)');}}_0x589739['excludeDirectories']!==undefined&&_0x589739['excludeDirectories']!==null&&(!Array['isArray'](_0x589739['excludeDirectories'])&&_0x49595e['push'](_0x4bae45(0x13b)));if(_0x49595e[_0x4bae45(0x133)]>0x0)throw new Error(_0x4bae45(0x15a)+_0x49595e[_0x4bae45(0x132)](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x425ea5(0x14d)](_0x351b2a,_0x19589b){const _0x597d05=a0_0x425ea5,{directory:directory='.',maxDepth:maxDepth=TREE_CONFIG[_0x597d05(0x185)],includeExtensions:includeExtensions=[],excludeExtensions:excludeExtensions=[],excludeDirectories:excludeDirectories=[],showFiles:showFiles=!![],showHidden:showHidden=![],showSizes:showSizes=![],ignoreBinaryFiles:ignoreBinaryFiles=![]}=_0x351b2a,{projectDir:_0xd3acb,agentId:_0x3c4899,directoryAccess:_0x39ce05}=_0x19589b;let _0x477d5c=_0xd3acb||process['cwd']();_0x39ce05&&_0x39ce05['workingDirectory']&&(_0x477d5c=_0x39ce05[_0x597d05(0x156)],this['logger']?.['info'](_0x597d05(0x182),{'workingDirectory':_0x39ce05['workingDirectory'],'agentId':_0x3c4899}));const _0x1dd971=a0_0x50cfc0['isAbsolute'](directory)?directory:a0_0x50cfc0[_0x597d05(0x173)](_0x477d5c,directory);try{const _0xa2fca=await a0_0xf730f6['stat'](_0x1dd971);if(!_0xa2fca[_0x597d05(0x127)]())throw new Error('Path\x20is\x20not\x20a\x20directory');}catch(_0x25de71){throw new Error(_0x597d05(0x183)+directory);}this[_0x597d05(0x129)]?.[_0x597d05(0x143)]('Generating\x20file\x20tree',{'directory':directory,'targetDir':_0x1dd971,'maxDepth':maxDepth,'includeExtensions':includeExtensions?.[_0x597d05(0x133)]||0x0,'excludeExtensions':excludeExtensions?.[_0x597d05(0x133)]||0x0,'agentId':_0x3c4899}),this[_0x597d05(0x142)]={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};const _0x288139=[...DEFAULT_IGNORE_DIRECTORIES,...excludeDirectories||[]],_0x533bbb=[...DEFAULT_IGNORE_EXTENSIONS];ignoreBinaryFiles&&_0x533bbb['push'](...BINARY_EXTENSIONS);const _0xe1baab=await this['buildTree'](_0x1dd971,_0x1dd971,0x0,maxDepth,_0x288139,includeExtensions||[],[...excludeExtensions||[],..._0x533bbb],showFiles,showHidden,showSizes),_0x399b58=this[_0x597d05(0x196)](_0xe1baab),_0x3c69a7=this['generateSummary'](directory,this['stats'],maxDepth);return{'success':!![],'directory':_0x1dd971,'tree':_0x399b58,'summary':_0x3c69a7,'maxDepth':maxDepth,'totalFiles':this[_0x597d05(0x142)]['filesCount'],'totalDirectories':this['stats'][_0x597d05(0x190)],'skippedCount':this['stats'][_0x597d05(0x12e)],'statistics':{...this[_0x597d05(0x142)]},'toolUsed':_0x597d05(0x16b)};}async[a0_0x425ea5(0x128)](_0x58be78,_0x336911,_0xd58fd,_0x329cc7,_0x3baa08,_0x296af3,_0x694397,_0x206308,_0xaf9a18,_0x5a2631){const _0x3753b3=a0_0x425ea5;if(_0xd58fd>_0x329cc7)return null;if(this['stats']['directoriesCount']>=this[_0x3753b3(0x12f)]['MAX_DIRECTORIES'])return this[_0x3753b3(0x129)]?.['warn']('Maximum\x20directory\x20count\x20reached',{'maxDirectories':this['treeConfig']['MAX_DIRECTORIES']}),null;try{const _0x19f720=await a0_0xf730f6[_0x3753b3(0x11f)](_0x336911,{'withFileTypes':!![]}),_0x4373ca={'name':_0xd58fd===0x0?a0_0x50cfc0['basename'](_0x336911)+'/':a0_0x50cfc0['basename'](_0x336911),'path':a0_0x50cfc0[_0x3753b3(0x131)](_0x58be78,_0x336911),'type':'directory','children':[]};this[_0x3753b3(0x142)][_0x3753b3(0x190)]++;for(const _0x3cdd6c of _0x19f720){if(this[_0x3753b3(0x142)]['filesCount']>=this['treeConfig'][_0x3753b3(0x18b)]){this[_0x3753b3(0x129)]?.[_0x3753b3(0x13d)](_0x3753b3(0x157),{'maxFiles':this[_0x3753b3(0x12f)]['MAX_FILES_IN_TREE']});break;}if(!_0xaf9a18&&_0x3cdd6c['name']['startsWith']('.')){this[_0x3753b3(0x142)][_0x3753b3(0x12e)]++;continue;}const _0x4dad13=a0_0x50cfc0[_0x3753b3(0x132)](_0x336911,_0x3cdd6c[_0x3753b3(0x181)]);if(_0x3cdd6c['isDirectory']()){if(_0x3baa08[_0x3753b3(0x18c)](_0x3cdd6c[_0x3753b3(0x181)])){this['stats']['skippedCount']++;continue;}const _0x1a9473=await this['buildTree'](_0x58be78,_0x4dad13,_0xd58fd+0x1,_0x329cc7,_0x3baa08,_0x296af3,_0x694397,_0x206308,_0xaf9a18,_0x5a2631);_0x1a9473&&(_0x1a9473['children']['length']>0x0||_0xd58fd===0x0)&&_0x4373ca[_0x3753b3(0x11c)]['push'](_0x1a9473);}else{if(_0x3cdd6c[_0x3753b3(0x15b)]()&&_0x206308){if(_0xd58fd+0x1>_0x329cc7)continue;const _0x31dc10=a0_0x50cfc0['extname'](_0x3cdd6c[_0x3753b3(0x181)]);if(_0x296af3['length']>0x0){if(!_0x296af3[_0x3753b3(0x18c)](_0x31dc10)){this[_0x3753b3(0x142)][_0x3753b3(0x12e)]++;continue;}}else{if(_0x694397[_0x3753b3(0x18c)](_0x31dc10)){this['stats']['skippedCount']++;continue;}}let _0x4427f7='';if(_0x5a2631)try{const _0x3136a1=await a0_0xf730f6[_0x3753b3(0x172)](_0x4dad13);_0x4427f7='\x20('+this[_0x3753b3(0x138)](_0x3136a1['size'])+')';}catch(_0x1ecb2b){}_0x4373ca['children'][_0x3753b3(0x13c)]({'name':_0x3cdd6c['name']+_0x4427f7,'path':a0_0x50cfc0['relative'](_0x58be78,_0x4dad13),'type':_0x3753b3(0x11d),'ext':_0x31dc10}),this[_0x3753b3(0x142)][_0x3753b3(0x147)]++;}}}return _0x4373ca['children']['sort']((_0x219501,_0xc6e32a)=>{const _0x52d835=_0x3753b3;if(_0x219501['type']===_0xc6e32a['type'])return _0x219501['name'][_0x52d835(0x19e)](_0xc6e32a[_0x52d835(0x181)]);return _0x219501['type']===_0x52d835(0x184)?-0x1:0x1;}),_0x4373ca;}catch(_0xc348a1){return this[_0x3753b3(0x129)]?.['error'](_0x3753b3(0x187),{'currentPath':_0x336911,'error':_0xc348a1['message']}),{'name':a0_0x50cfc0['basename'](_0x336911),'path':a0_0x50cfc0[_0x3753b3(0x131)](_0x58be78,_0x336911),'type':'directory','error':_0xc348a1['message'],'children':[]};}}['formatTree'](_0x400059,_0x25ccd1='',_0x414c0b=!![],_0xc29eaf=!![]){const _0x3aaf18=a0_0x425ea5;if(!_0x400059)return'';const _0x2568a1=this[_0x3aaf18(0x12f)]['SYMBOLS'];let _0x2249f7='';_0xc29eaf?_0x2249f7=_0x400059['name']+'\x0a':_0x2249f7=''+_0x25ccd1+(_0x414c0b?_0x2568a1['LAST_BRANCH']:_0x2568a1[_0x3aaf18(0x15e)])+_0x400059['name']+'\x0a';if(_0x400059['children']&&_0x400059[_0x3aaf18(0x11c)]['length']>0x0){const _0xa1126d=_0xc29eaf?'':_0x25ccd1+(_0x414c0b?_0x2568a1['INDENT']:_0x2568a1['VERTICAL']);_0x400059['children'][_0x3aaf18(0x17d)]((_0x456f16,_0x4aad95)=>{const _0x1820fb=_0x3aaf18,_0x5dc699=_0x4aad95===_0x400059[_0x1820fb(0x11c)][_0x1820fb(0x133)]-0x1;_0x2249f7+=this[_0x1820fb(0x196)](_0x456f16,_0xa1126d,_0x5dc699,![]);});}return _0x2249f7;}[a0_0x425ea5(0x138)](_0x238508){const _0x384d56=a0_0x425ea5,_0x769cc3=0x400,_0x15b91f=_0x769cc3*0x400,_0x3d4b9c=_0x15b91f*0x400;if(_0x238508>=_0x3d4b9c)return(_0x238508/_0x3d4b9c)['toFixed'](0x2)+'\x20GB';else{if(_0x238508>=_0x15b91f)return(_0x238508/_0x15b91f)['toFixed'](0x2)+'\x20MB';else return _0x238508>=_0x769cc3?(_0x238508/_0x769cc3)[_0x384d56(0x137)](0x2)+_0x384d56(0x162):_0x238508+'\x20B';}}['generateSummary'](_0x5c45de,_0x54ae45,_0x18cff2){const _0x359a21=a0_0x425ea5;return(_0x359a21(0x180)+_0x5c45de+'\x0aMax\x20Depth:\x20'+_0x18cff2+_0x359a21(0x16f)+_0x54ae45[_0x359a21(0x147)]+_0x359a21(0x151)+_0x54ae45[_0x359a21(0x190)]+'\x0aSkipped:\x20'+_0x54ae45[_0x359a21(0x12e)]+'\x0a\x20\x20\x20\x20')[_0x359a21(0x134)]();}async['cleanup'](_0xb157d4){const _0x460948=a0_0x425ea5;this[_0x460948(0x129)]?.[_0x460948(0x143)](_0x460948(0x158),{'operationId':_0xb157d4});}}export default FileTreeTool;
1
+ const a0_0x4eea01=a0_0x163d;(function(_0x5917bf,_0x1a731a){const _0x1f6e9e=a0_0x163d,_0x135c88=_0x5917bf();while(!![]){try{const _0x42ff5d=parseInt(_0x1f6e9e(0x17e))/0x1+-parseInt(_0x1f6e9e(0x1e6))/0x2+parseInt(_0x1f6e9e(0x175))/0x3+-parseInt(_0x1f6e9e(0x1e2))/0x4*(-parseInt(_0x1f6e9e(0x177))/0x5)+-parseInt(_0x1f6e9e(0x1d9))/0x6+parseInt(_0x1f6e9e(0x187))/0x7+parseInt(_0x1f6e9e(0x1a3))/0x8;if(_0x42ff5d===_0x1a731a)break;else _0x135c88['push'](_0x135c88['shift']());}catch(_0x20a653){_0x135c88['push'](_0x135c88['shift']());}}}(a0_0x28b5,0x27595));import{BaseTool}from'./baseTool.js';function a0_0x163d(_0xe5ab87,_0x496ac8){_0xe5ab87=_0xe5ab87-0x172;const _0x28b502=a0_0x28b5();let _0x163d66=_0x28b502[_0xe5ab87];if(a0_0x163d['onBZyc']===undefined){var _0x4ae33e=function(_0x47fc98){const _0x4a57cd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x583ad6='',_0x231dc1='';for(let _0x3f54f2=0x0,_0xaaec32,_0x5dd7f8,_0x39abc6=0x0;_0x5dd7f8=_0x47fc98['charAt'](_0x39abc6++);~_0x5dd7f8&&(_0xaaec32=_0x3f54f2%0x4?_0xaaec32*0x40+_0x5dd7f8:_0x5dd7f8,_0x3f54f2++%0x4)?_0x583ad6+=String['fromCharCode'](0xff&_0xaaec32>>(-0x2*_0x3f54f2&0x6)):0x0){_0x5dd7f8=_0x4a57cd['indexOf'](_0x5dd7f8);}for(let _0x2d6e1d=0x0,_0x175c8d=_0x583ad6['length'];_0x2d6e1d<_0x175c8d;_0x2d6e1d++){_0x231dc1+='%'+('00'+_0x583ad6['charCodeAt'](_0x2d6e1d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x231dc1);};a0_0x163d['XNSSsB']=_0x4ae33e,a0_0x163d['bvRJkz']={},a0_0x163d['onBZyc']=!![];}const _0x4c46ab=_0x28b502[0x0],_0x4484d4=_0xe5ab87+_0x4c46ab,_0x551637=a0_0x163d['bvRJkz'][_0x4484d4];return!_0x551637?(_0x163d66=a0_0x163d['XNSSsB'](_0x163d66),a0_0x163d['bvRJkz'][_0x4484d4]=_0x163d66):_0x163d66=_0x551637,_0x163d66;}import{promises as a0_0x583ad6}from'fs';function a0_0x28b5(){const _0x3fd650=['CMvXDwLYzxnqCM9Qzwn0','ugf0AcbPCYbUB3qGysbKAxjLy3rVCNK','lMrI','lNrLBxa','lMDPDa','Bwf4rgvWDgG','AM9PBG','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','rxH0zw5ZAw9Uici','revgqvvmvf9nqvHFrevqveG','BwfW','y3DK','otGXntq2refyz3Lu','vKvsveLdquW','yMfZzw5HBwu','cK1HEcbezxb0AdOG','CMvSyxrPDMu','cIaGica','AxnbCNjHEq','AhrTBgnVDG','twf4Aw11BsbKAxjLy3rVCNKGy291BNqGCMvHy2HLza','ngjTwML5Ea','DhjPBq','qLjbtKni','lMnSyxnZ','nte3ntm2AunpDNzg','C3bSAxq','zxjYB3i','lM51Ehq','cLnRAxbWzwq6ia','mZCZodeYzMrmqK54','BwvZC2fNzq','mZy4mJC1ufDxu09f','zxHLyW','lMXVy2S','DhjLzunVBMzPzW','D29YA2LUz0rPCMvJDg9YEq','CgfYDhm','Aw5JBhvKzxm','nJC1mtnlwgz2BwO','cKzPBguGvhjLzsbuB29SoIbhzw5LCMf0zsbOAwvYyxjJAgLJywWGDhjLzsbYzxbYzxnLBNrHDgLVBIbVzIbWCM9Qzwn0igrPCMvJDg9YEsbZDhj1y3r1CMuUcGPytuWGvvnbr0u6cJXMAwXLlxrYzwu+cIaGpgrPCMvJDg9YEt5ZCMm8l2rPCMvJDg9YEt4kica8Bwf4lwrLChrOpJq8l21HEc1Kzxb0Ad4kica8Aw5JBhvKzs1LEhrLBNnPB25ZpI5QCYWUANn4lc50CYWUDhn4pc9PBMnSDwrLlwv4DgvUC2LVBNm+cIaGpgv4y2X1zguTzxH0zw5ZAw9UCZ4UDgvZDc5QCYWUC3bLyY5QCZWVzxHJBhvKzs1LEhrLBNnPB25ZpGOGidXZAg93lwzPBgvZpNrYDwu8l3nOB3CTzMLSzxm+cIaGphnOB3CTAgLKzgvUpMzHBhnLpc9ZAg93lwHPzgrLBJ4kpc9MAwXLlxrYzwu+cGPku09oifvtquDfoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTDhjLzsiScIaGiMrPCMvJDg9YEsi6icjZCMmIlaOGicjTyxHezxb0Aci6idqScIaGiMLUy2X1zgvfEhrLBNnPB25ZiJOGwYiUANmIlcaIlMPZEciSiciUDhmIlcaIlNrZEcjDlaOGicjLEgnSDwrLrxH0zw5ZAw9UCYi6ifSIlNrLC3qUANmIlcaIlNnWzwmUANmIxsWkicaIC2HVD0zPBgvZiJOGDhj1zsWkicaIC2HVD0HPzgrLBIi6igzHBhnLcN0kygbGcGPqqvjbtuvurvjtoGOkzgLYzwn0B3j5icHVChrPB25HBcK6cIaGlsbeAxjLy3rVCNKGDg8GC2nHBIaOzgvMyxvSDdOGD29YA2LUzYbKAxjLy3rVCNKPcIaGlsbdyw4GyMuGCMvSyxrPDMuGB3iGywjZB2X1DguGCgf0AaOGic0GrxHHBxbSzxm6icjZCMmIlcaIC3jJl2nVBxbVBMvUDhmIlcaIl2HVBwuVDxnLCI9WCM9Qzwn0iGOkBwf4rgvWDgGGkg9WDgLVBMfSktOkicaTie1HEgLTDw0GzgvWDgGGDg8GC2nHBIaOzgvMyxvSDdOG','cI0Gtwf4Aw11BsbMAwXLCZOG','DhLWzq','lMPWzwC','lMvNz3m','4PsC4Psa4Psaia','Aw5JBhvKzuv4DgvUC2LVBNmGBxvZDcbIzsbHBIbHCNjHEq','lNzZ','nZC1mJCXBhDRt2LJ','BNvTyMvY','Bwf4lwrLChrOignHBM5VDcbLEgnLzwqG','lNnV','lNrTCa','B3v0','zgLZDa','zxHJBhvKzuv4DgvUC2LVBNm','Bg9Nz2vY','lMLKzwe','lNzZy29Kzq','lMDPzG','icaGia','Aw5JBhvKzuv4DgvUC2LVBNm','DgLTzw91Da','zMLSzq','lMLJBW','4PscicaG','lMD6','BgvUz3rO','lNn2zW','zMLSzs10CMvL','Dg9mB3DLCKnHC2u','DMvUzg9Y','BMfTzq','z2vUzxjHDgvtDw1Tyxj5','zgLYzwn0B3j5','lNDHCG','mty1nJa1nLzUDMn6Ea','zgLYzwn0B3jPzxndB3vUDa','C2HVD0zPBgvZ','lM15ChLFy2fJAgu','zMfSC2u','DgfYz2v0','rxjYB3iGyNvPBgrPBMCGDhjLzq','CMvZB2X2zq','lMPWzW','yM93zxjFy29TCg9Uzw50CW','AxngAwXL','CgfYC2u','lMrHDa','tufyx0rfufrix0XjtuLu','lNrVEa','lM1VDG','lM5LEhq','C2rPC3q','iIbTDxn0ihn0yxj0ihDPDgGGysbKB3qGkguUzY4SiciUANmIkq','zMLSzxndB3vUDa','zwDNCW','Dg9gAxHLza','Dhj1zq','D2fYBG','su5eru5u','zMLSDgvY','ChvZAa','tufyx0zjtevtx0Lox1rsruu','zxH0BMfTzq','cKrPCMvJDg9YAwvZoIa','zw52','C2TPChbLzenVDw50','tufyx0rjuKvdve9ssuvt','lMjTCa','4Psu4Psa4Psaia','C3rHDhm','CMvHzgrPCG','x19WEwnHy2HLx18','zM9YrwfJAa','lM1WmW','yNvPBgq','y2HPBgrYzw4'];a0_0x28b5=function(){return _0x3fd650;};return a0_0x28b5();}import a0_0x231dc1 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_0x4eea01(0x184),'LAST_BRANCH':a0_0x4eea01(0x1c5),'VERTICAL':a0_0x4eea01(0x198),'INDENT':a0_0x4eea01(0x193)}},DEFAULT_IGNORE_DIRECTORIES=['node_modules',a0_0x4eea01(0x1d1),a0_0x4eea01(0x18d),a0_0x4eea01(0x1cb),'coverage',a0_0x4eea01(0x1b3),a0_0x4eea01(0x173),'.cache',a0_0x4eea01(0x18c),a0_0x4eea01(0x1a8),a0_0x4eea01(0x19e),a0_0x4eea01(0x1ac),a0_0x4eea01(0x191),a0_0x4eea01(0x190),a0_0x4eea01(0x186),a0_0x4eea01(0x1c8),'venv',a0_0x4eea01(0x1c1),'.env','.pytest_cache',a0_0x4eea01(0x1a6),a0_0x4eea01(0x1b7),a0_0x4eea01(0x183),'lib','lib64',a0_0x4eea01(0x17c),a0_0x4eea01(0x1b4),'wheels',a0_0x4eea01(0x1b1),'.nox',a0_0x4eea01(0x1e0),'.hypothesis','tmp','temp','.tmp','.temp'],DEFAULT_IGNORE_EXTENSIONS=['.map','.min.js','.min.css',a0_0x4eea01(0x179),'.log',a0_0x4eea01(0x18b),a0_0x4eea01(0x1d0),'.pyc','.pyo','.pyd',a0_0x4eea01(0x18a),'.dll','.dylib','.exe','.obj','.o','.a',a0_0x4eea01(0x1e5),'.jar',a0_0x4eea01(0x1a2)],BINARY_EXTENSIONS=['.png',a0_0x4eea01(0x1ab),a0_0x4eea01(0x182),a0_0x4eea01(0x192),a0_0x4eea01(0x1c4),a0_0x4eea01(0x197),a0_0x4eea01(0x19b),'.pdf','.zip','.tar',a0_0x4eea01(0x199),'.rar','.7z',a0_0x4eea01(0x1ca),'.mp4','.avi',a0_0x4eea01(0x1b2),'.wmv','.woff','.woff2','.ttf','.eot','.bin',a0_0x4eea01(0x1af),a0_0x4eea01(0x1cf),'.sqlite'];class FileTreeTool extends BaseTool{constructor(_0x3f54f2={},_0xaaec32=null){const _0x11dca2=a0_0x4eea01;super(_0x3f54f2,_0xaaec32),this[_0x11dca2(0x1cd)]=!![],this['isAsync']=!![],this[_0x11dca2(0x195)]=_0x3f54f2['timeout']||0x1d4c0,this['treeConfig']={...TREE_CONFIG,..._0x3f54f2[_0x11dca2(0x17a)]},this['stats']={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};}['getDescription'](){const _0x142b90=a0_0x4eea01;return _0x142b90(0x17f)+TREE_CONFIG[_0x142b90(0x1d6)]+')\x0a\x20\x20-\x20Range:\x201-'+TREE_CONFIG[_0x142b90(0x1b0)]+'\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-\x20Comma-separated\x20list\x0a\x20\x20-\x20Examples:\x20\x22.js,.jsx,.ts,.tsx\x22\x20or\x20\x22.py,.pyw\x22\x0a\x20\x20-\x20Takes\x20precedence\x20over\x20excludeExtensions\x0a\x0aexcludeExtensions\x20(optional\x20-\x20BLACKLIST):\x0a\x20\x20-\x20Exclude\x20these\x20file\x20extensions\x0a\x20\x20-\x20Comma-separated\x20list\x0a\x20\x20-\x20Examples:\x20\x22.test.js,.spec.js,.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,fixtures,mocks\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\x0aFILTERING\x20STRATEGIES:\x0a\x0aStrategy\x201:\x20WHITELIST\x20(Include\x20Only)\x0a<file-tree>\x0a\x20\x20<directory>src</directory>\x0a\x20\x20<include-extensions>.js,.jsx</include-extensions>\x0a</file-tree>\x0aResult:\x20Shows\x20ONLY\x20.js\x20and\x20.jsx\x20files\x0a\x0aStrategy\x202:\x20BLACKLIST\x20(Exclude)\x0a<file-tree>\x0a\x20\x20<directory>src</directory>\x0a\x20\x20<exclude-extensions>.test.js,.spec.js</exclude-extensions>\x0a</file-tree>\x0aResult:\x20Shows\x20all\x20files\x20EXCEPT\x20.test.js\x20and\x20.spec.js\x0a\x0aStrategy\x203:\x20COMBINED\x0a<file-tree>\x0a\x20\x20<directory>src</directory>\x0a\x20\x20<include-extensions>.js,.jsx,.ts,.tsx</include-extensions>\x0a\x20\x20<exclude-extensions>.test.js,.spec.ts</exclude-extensions>\x0a</file-tree>\x0aResult:\x20Shows\x20JS/JSX/TS/TSX\x20files,\x20but\x20excludes\x20test\x20files\x0a\x0aEXAMPLES:\x0a\x0aExample\x201\x20-\x20Basic\x20tree:\x0a<file-tree>\x0a\x20\x20<directory>.</directory>\x0a</file-tree>\x0a\x0aExample\x202\x20-\x20JavaScript/TypeScript\x20only:\x0a<file-tree>\x0a\x20\x20<directory>src</directory>\x0a\x20\x20<include-extensions>.js,.jsx,.ts,.tsx</include-extensions>\x0a\x20\x20<max-depth>5</max-depth>\x0a</file-tree>\x0a\x0aExample\x203\x20-\x20Python\x20project\x20structure:\x0a<file-tree>\x0a\x20\x20<directory>.</directory>\x0a\x20\x20<include-extensions>.py</include-extensions>\x0a\x20\x20<exclude-extensions>.pyc</exclude-extensions>\x0a\x20\x20<show-files>true</show-files>\x0a</file-tree>\x0a\x0aExample\x204\x20-\x20Directory\x20structure\x20only:\x0a<file-tree>\x0a\x20\x20<directory>src</directory>\x0a\x20\x20<show-files>false</show-files>\x0a\x20\x20<max-depth>3</max-depth>\x0a</file-tree>\x0a\x0aExample\x205\x20-\x20Exclude\x20test\x20files:\x0a<file-tree>\x0a\x20\x20<directory>src</directory>\x0a\x20\x20<exclude-extensions>.test.js,.spec.js,.test.ts,.spec.ts</exclude-extensions>\x0a\x20\x20<exclude-directories>__tests__,tests,specs</exclude-directories>\x0a</file-tree>\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\x0aAnd\x20more\x20(see\x20full\x20list\x20in\x20DEFAULT_IGNORE_DIRECTORIES)\x0a\x0aLIMITATIONS:\x0a-\x20Maximum\x20depth:\x20'+TREE_CONFIG['MAX_DEPTH_LIMIT']+_0x142b90(0x180)+TREE_CONFIG['MAX_FILES_IN_TREE']+'\x0a-\x20Maximum\x20directories:\x20'+TREE_CONFIG[_0x142b90(0x1c3)]+'\x0a-\x20Binary\x20files\x20can\x20be\x20filtered\x20with\x20ignoreBinaryFiles\x20option\x0a\x0aMULTI-DIRECTORY\x20SUPPORT:\x0aWorks\x20with\x20agent\x27s\x20configured\x20accessible\x20directories.\x0aValidates\x20paths\x20against\x20directoryAccess\x20configuration.\x0a\x20\x20\x20\x20';}['parseParameters'](_0x5dd7f8){const _0x43b361=a0_0x4eea01;try{if(_0x5dd7f8[_0x43b361(0x1e3)]()['startsWith']('{')){const _0x1e8e9b=JSON[_0x43b361(0x1ae)](_0x5dd7f8);return{'directory':_0x1e8e9b[_0x43b361(0x1a1)]||'.','maxDepth':_0x1e8e9b['maxDepth']||TREE_CONFIG[_0x43b361(0x1d6)],'includeExtensions':_0x1e8e9b[_0x43b361(0x194)]||[],'excludeExtensions':_0x1e8e9b[_0x43b361(0x18e)]||[],'excludeDirectories':_0x1e8e9b['excludeDirectories']||[],'showFiles':_0x1e8e9b['showFiles']!==![],'showHidden':_0x1e8e9b['showHidden']===!![],'showSizes':_0x1e8e9b['showSizes']===!![],'ignoreBinaryFiles':_0x1e8e9b['ignoreBinaryFiles']===!![]};}const _0x39abc6={'directory':'.','maxDepth':TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![]},_0x2d6e1d=/<directory>(.*?)<\/directory>/i,_0x175c8d=_0x2d6e1d[_0x43b361(0x178)](_0x5dd7f8);_0x175c8d&&(_0x39abc6['directory']=_0x175c8d[0x1]['trim']());const _0x2b7e55=/<max-depth>(\d+)<\/max-depth>/i,_0x5647b8=_0x2b7e55[_0x43b361(0x178)](_0x5dd7f8);_0x5647b8&&(_0x39abc6[_0x43b361(0x1d2)]=parseInt(_0x5647b8[0x1],0xa));const _0x1ebe20=/<include-extensions>(.*?)<\/include-extensions>/i,_0x8877f7=_0x1ebe20[_0x43b361(0x178)](_0x5dd7f8);_0x8877f7&&(_0x39abc6['includeExtensions']=_0x8877f7[0x1]['split'](',')['map'](_0x56431a=>_0x56431a[_0x43b361(0x1e3)]())[_0x43b361(0x1bc)](_0xfec3=>_0xfec3[_0x43b361(0x19a)]>0x0));const _0x20de7c=/<exclude-extensions>(.*?)<\/exclude-extensions>/i,_0x50b56b=_0x20de7c['exec'](_0x5dd7f8);_0x50b56b&&(_0x39abc6['excludeExtensions']=_0x50b56b[0x1]['split'](',')[_0x43b361(0x1d7)](_0xf247d1=>_0xf247d1[_0x43b361(0x1e3)]())['filter'](_0x28c9b2=>_0x28c9b2['length']>0x0));const _0x43c102=/<exclude-directories>(.*?)<\/exclude-directories>/i,_0x46ee23=_0x43c102[_0x43b361(0x178)](_0x5dd7f8);_0x46ee23&&(_0x39abc6['excludeDirectories']=_0x46ee23[0x1][_0x43b361(0x1e7)](',')['map'](_0x4f1d60=>_0x4f1d60[_0x43b361(0x1e3)]())[_0x43b361(0x1bc)](_0x1638d3=>_0x1638d3['length']>0x0));const _0x38f2a8=/<show-files>(.*?)<\/show-files>/i,_0x239a4d=_0x38f2a8[_0x43b361(0x178)](_0x5dd7f8);_0x239a4d&&(_0x39abc6[_0x43b361(0x1a5)]=_0x239a4d[0x1]['trim']()[_0x43b361(0x19d)]()!==_0x43b361(0x1a7));const _0x2c4421=/<show-hidden>(.*?)<\/show-hidden>/i,_0xb3b041=_0x2c4421['exec'](_0x5dd7f8);_0xb3b041&&(_0x39abc6['showHidden']=_0xb3b041[0x1]['trim']()[_0x43b361(0x19d)]()===_0x43b361(0x1b9));const _0xf26d5=/<show-sizes>(.*?)<\/show-sizes>/i,_0x239101=_0xf26d5['exec'](_0x5dd7f8);_0x239101&&(_0x39abc6['showSizes']=_0x239101[0x1][_0x43b361(0x1e3)]()['toLowerCase']()===_0x43b361(0x1b9));const _0x1a2fc0=/<ignore-binary-files>(.*?)<\/ignore-binary-files>/i,_0x26bc74=_0x1a2fc0[_0x43b361(0x178)](_0x5dd7f8);return _0x26bc74&&(_0x39abc6['ignoreBinaryFiles']=_0x26bc74[0x1]['trim']()['toLowerCase']()===_0x43b361(0x1b9)),_0x39abc6;}catch(_0x2351a5){return this['logger']?.[_0x43b361(0x172)]('Failed\x20to\x20parse\x20file-tree\x20parameters',{'error':_0x2351a5['message']}),{'directory':'.','maxDepth':TREE_CONFIG[_0x43b361(0x1d6)],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![],'parseError':_0x2351a5['message']};}}['getRequiredParameters'](){return[];}[a0_0x4eea01(0x1d4)](_0x4fe3a6){const _0x40e1f1=a0_0x4eea01,_0x5b859f=[];if(_0x4fe3a6[_0x40e1f1(0x1d2)]!==undefined){if(typeof _0x4fe3a6[_0x40e1f1(0x1d2)]!==_0x40e1f1(0x188)||_0x4fe3a6[_0x40e1f1(0x1d2)]<0x1)_0x5b859f[_0x40e1f1(0x1bd)]('max-depth\x20must\x20be\x20a\x20positive\x20number');else _0x4fe3a6[_0x40e1f1(0x1d2)]>this['treeConfig']['MAX_DEPTH_LIMIT']&&_0x5b859f['push'](_0x40e1f1(0x189)+this[_0x40e1f1(0x17a)][_0x40e1f1(0x1b0)]);}_0x4fe3a6['directory']&&_0x4fe3a6['directory']['includes']('..')&&_0x5b859f['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security');if(_0x4fe3a6[_0x40e1f1(0x194)]!==undefined&&_0x4fe3a6[_0x40e1f1(0x194)]!==null){if(!Array[_0x40e1f1(0x1df)](_0x4fe3a6[_0x40e1f1(0x194)]))_0x5b859f[_0x40e1f1(0x1bd)](_0x40e1f1(0x185));else for(const _0x38de78 of _0x4fe3a6['includeExtensions']){!_0x38de78['startsWith']('.')&&_0x5b859f[_0x40e1f1(0x1bd)](_0x40e1f1(0x1d5)+_0x38de78+_0x40e1f1(0x1b5));}}if(_0x4fe3a6['excludeExtensions']!==undefined&&_0x4fe3a6[_0x40e1f1(0x18e)]!==null){if(!Array[_0x40e1f1(0x1df)](_0x4fe3a6[_0x40e1f1(0x18e)]))_0x5b859f[_0x40e1f1(0x1bd)]('excludeExtensions\x20must\x20be\x20an\x20array');else for(const _0x11174b of _0x4fe3a6['excludeExtensions']){!_0x11174b['startsWith']('.')&&_0x5b859f[_0x40e1f1(0x1bd)]('Extension\x20\x22'+_0x11174b+'\x22\x20must\x20start\x20with\x20a\x20dot\x20(e.g.,\x20\x22.js\x22)');}}_0x4fe3a6['excludeDirectories']!==undefined&&_0x4fe3a6['excludeDirectories']!==null&&(!Array['isArray'](_0x4fe3a6['excludeDirectories'])&&_0x5b859f[_0x40e1f1(0x1bd)]('excludeDirectories\x20must\x20be\x20an\x20array'));if(_0x5b859f[_0x40e1f1(0x19a)]>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x5b859f[_0x40e1f1(0x1d3)](',\x20'));return{'valid':!![],'errors':[]};}async['execute'](_0x2af5fa,_0x2271ad){const _0x45413b=a0_0x4eea01,{directory:directory='.',maxDepth:maxDepth=TREE_CONFIG[_0x45413b(0x1d6)],includeExtensions:includeExtensions=[],excludeExtensions:excludeExtensions=[],excludeDirectories:excludeDirectories=[],showFiles:showFiles=!![],showHidden:showHidden=![],showSizes:showSizes=![],ignoreBinaryFiles:ignoreBinaryFiles=![]}=_0x2af5fa,{projectDir:_0x190a02,agentId:_0x1d0f86,directoryAccess:_0x31f0d6}=_0x2271ad;let _0x10cf5e=_0x190a02||process[_0x45413b(0x1d8)]();_0x31f0d6&&_0x31f0d6[_0x45413b(0x17b)]&&(_0x10cf5e=_0x31f0d6[_0x45413b(0x17b)],this[_0x45413b(0x18f)]?.['info']('Using\x20agent\x20configured\x20working\x20directory',{'workingDirectory':_0x31f0d6[_0x45413b(0x17b)],'agentId':_0x1d0f86}));const _0x57e985=a0_0x231dc1['isAbsolute'](directory)?directory:a0_0x231dc1[_0x45413b(0x1aa)](_0x10cf5e,directory);try{const _0x3441d7=await a0_0x583ad6['stat'](_0x57e985);if(!_0x3441d7['isDirectory']())throw new Error(_0x45413b(0x1ce));}catch(_0x103ad3){throw new Error('Directory\x20does\x20not\x20exist\x20or\x20is\x20inaccessible:\x20'+directory);}this['logger']?.['info']('Generating\x20file\x20tree',{'directory':directory,'targetDir':_0x57e985,'maxDepth':maxDepth,'includeExtensions':includeExtensions?.[_0x45413b(0x19a)]||0x0,'excludeExtensions':excludeExtensions?.['length']||0x0,'agentId':_0x1d0f86}),this[_0x45413b(0x1c6)]={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};const _0x236a3f=[...DEFAULT_IGNORE_DIRECTORIES,...excludeDirectories||[]],_0x11cb0f=[...DEFAULT_IGNORE_EXTENSIONS];ignoreBinaryFiles&&_0x11cb0f['push'](...BINARY_EXTENSIONS);const _0x24caa7=await this['buildTree'](_0x57e985,_0x57e985,0x0,maxDepth,_0x236a3f,includeExtensions||[],[...excludeExtensions||[],..._0x11cb0f],showFiles,showHidden,showSizes),_0x1c8b4a=this['formatTree'](_0x24caa7),_0x2c2d03=this['generateSummary'](directory,this[_0x45413b(0x1c6)],maxDepth);return{'success':!![],'directory':_0x57e985,'tree':_0x1c8b4a,'summary':_0x2c2d03,'maxDepth':maxDepth,'totalFiles':this[_0x45413b(0x1c6)]['filesCount'],'totalDirectories':this[_0x45413b(0x1c6)][_0x45413b(0x1a4)],'skippedCount':this[_0x45413b(0x1c6)][_0x45413b(0x1c2)],'statistics':{...this['stats']},'toolUsed':_0x45413b(0x19c)};}async['buildTree'](_0xc8bf83,_0x2df1dc,_0x204750,_0x1c3316,_0x70794d,_0x35fb33,_0x2c1407,_0x353c99,_0x4c55ac,_0x211cee){const _0x526e23=a0_0x4eea01;if(_0x204750>_0x1c3316)return null;if(this[_0x526e23(0x1c6)][_0x526e23(0x1a4)]>=this[_0x526e23(0x17a)][_0x526e23(0x1c3)])return this['logger']?.[_0x526e23(0x1ba)](_0x526e23(0x1e1),{'maxDirectories':this[_0x526e23(0x17a)]['MAX_DIRECTORIES']}),null;try{const _0x4386f5=await a0_0x583ad6[_0x526e23(0x1c7)](_0x2df1dc,{'withFileTypes':!![]}),_0x575680={'name':_0x204750===0x0?a0_0x231dc1['basename'](_0x2df1dc)+'/':a0_0x231dc1['basename'](_0x2df1dc),'path':a0_0x231dc1['relative'](_0xc8bf83,_0x2df1dc),'type':'directory','children':[]};this['stats'][_0x526e23(0x1a4)]++;for(const _0x49a112 of _0x4386f5){if(this['stats']['filesCount']>=this[_0x526e23(0x17a)][_0x526e23(0x1be)]){this['logger']?.['warn']('Maximum\x20file\x20count\x20reached',{'maxFiles':this['treeConfig']['MAX_FILES_IN_TREE']});break;}if(!_0x4c55ac&&_0x49a112['name']['startsWith']('.')){this['stats']['skippedCount']++;continue;}const _0xc570d4=a0_0x231dc1[_0x526e23(0x1d3)](_0x2df1dc,_0x49a112['name']);if(_0x49a112['isDirectory']()){if(_0x70794d['includes'](_0x49a112['name'])){this['stats'][_0x526e23(0x1c2)]++;continue;}const _0x5489b2=await this['buildTree'](_0xc8bf83,_0xc570d4,_0x204750+0x1,_0x1c3316,_0x70794d,_0x35fb33,_0x2c1407,_0x353c99,_0x4c55ac,_0x211cee);_0x5489b2&&(_0x5489b2['children'][_0x526e23(0x19a)]>0x0||_0x204750===0x0)&&_0x575680[_0x526e23(0x1cc)][_0x526e23(0x1bd)](_0x5489b2);}else{if(_0x49a112[_0x526e23(0x1ad)]()&&_0x353c99){if(_0x204750+0x1>_0x1c3316)continue;const _0x546973=a0_0x231dc1[_0x526e23(0x1bf)](_0x49a112[_0x526e23(0x19f)]);if(_0x35fb33[_0x526e23(0x19a)]>0x0){if(!_0x35fb33['includes'](_0x546973)){this['stats'][_0x526e23(0x1c2)]++;continue;}}else{if(_0x2c1407[_0x526e23(0x17d)](_0x546973)){this[_0x526e23(0x1c6)][_0x526e23(0x1c2)]++;continue;}}let _0x259a54='';if(_0x211cee)try{const _0x462027=await a0_0x583ad6['stat'](_0xc570d4);_0x259a54='\x20('+this['formatFileSize'](_0x462027['size'])+')';}catch(_0x5aca5f){}_0x575680['children'][_0x526e23(0x1bd)]({'name':_0x49a112[_0x526e23(0x19f)]+_0x259a54,'path':a0_0x231dc1[_0x526e23(0x1dd)](_0xc8bf83,_0xc570d4),'type':_0x526e23(0x196),'ext':_0x546973}),this['stats'][_0x526e23(0x1b6)]++;}}}return _0x575680['children']['sort']((_0x5c946a,_0x254943)=>{const _0x103b33=_0x526e23;if(_0x5c946a[_0x103b33(0x181)]===_0x254943[_0x103b33(0x181)])return _0x5c946a['name']['localeCompare'](_0x254943[_0x103b33(0x19f)]);return _0x5c946a['type']==='directory'?-0x1:0x1;}),_0x575680;}catch(_0x2b3bf4){return this['logger']?.['error'](_0x526e23(0x1a9),{'currentPath':_0x2df1dc,'error':_0x2b3bf4[_0x526e23(0x176)]}),{'name':a0_0x231dc1[_0x526e23(0x1db)](_0x2df1dc),'path':a0_0x231dc1['relative'](_0xc8bf83,_0x2df1dc),'type':'directory','error':_0x2b3bf4['message'],'children':[]};}}['formatTree'](_0x166725,_0xed6ee4='',_0x4aa9aa=!![],_0x23a84e=!![]){const _0xf2e437=a0_0x4eea01;if(!_0x166725)return'';const _0x460529=this['treeConfig']['SYMBOLS'];let _0x565363='';_0x23a84e?_0x565363=_0x166725[_0xf2e437(0x19f)]+'\x0a':_0x565363=''+_0xed6ee4+(_0x4aa9aa?_0x460529['LAST_BRANCH']:_0x460529[_0xf2e437(0x1e4)])+_0x166725[_0xf2e437(0x19f)]+'\x0a';if(_0x166725[_0xf2e437(0x1cc)]&&_0x166725['children'][_0xf2e437(0x19a)]>0x0){const _0x307429=_0x23a84e?'':_0xed6ee4+(_0x4aa9aa?_0x460529[_0xf2e437(0x1bb)]:_0x460529[_0xf2e437(0x1da)]);_0x166725['children'][_0xf2e437(0x1c9)]((_0x4206d6,_0x4ed375)=>{const _0x30fadf=_0xf2e437,_0x8a21e8=_0x4ed375===_0x166725[_0x30fadf(0x1cc)]['length']-0x1;_0x565363+=this['formatTree'](_0x4206d6,_0x307429,_0x8a21e8,![]);});}return _0x565363;}['formatFileSize'](_0x46f6d8){const _0x176f86=a0_0x4eea01,_0x37f851=0x400,_0x53b020=_0x37f851*0x400,_0x395ecd=_0x53b020*0x400;if(_0x46f6d8>=_0x395ecd)return(_0x46f6d8/_0x395ecd)[_0x176f86(0x1b8)](0x2)+'\x20GB';else{if(_0x46f6d8>=_0x53b020)return(_0x46f6d8/_0x53b020)[_0x176f86(0x1b8)](0x2)+'\x20MB';else return _0x46f6d8>=_0x37f851?(_0x46f6d8/_0x37f851)['toFixed'](0x2)+'\x20KB':_0x46f6d8+'\x20B';}}[a0_0x4eea01(0x1a0)](_0x1f5672,_0x4b0478,_0x581d35){const _0x2bf3dd=a0_0x4eea01;return('\x0aDirectory:\x20'+_0x1f5672+_0x2bf3dd(0x1dc)+_0x581d35+'\x0aFiles:\x20'+_0x4b0478[_0x2bf3dd(0x1b6)]+_0x2bf3dd(0x1c0)+_0x4b0478[_0x2bf3dd(0x1a4)]+_0x2bf3dd(0x174)+_0x4b0478['skippedCount']+_0x2bf3dd(0x1de))[_0x2bf3dd(0x1e3)]();}async['cleanup'](_0x3deee7){const _0x31b666=a0_0x4eea01;this[_0x31b666(0x18f)]?.['info']('File\x20tree\x20tool\x20cleanup\x20completed',{'operationId':_0x3deee7});}}export default FileTreeTool;
@@ -1 +1 @@
1
- function a0_0x158f(){const _0x150768=['mvnmEunbsG','mtqZodi1odHmBxH0BeS','x2DLBMvYyxrLsw1Hz2u','uhjVy2vZC2LUzYbPBwfNzsbNzw5LCMf0Aw9UigPVyJOG','mc4WlJaUma','cIOQrxjYB3i6kIOG','zgvIDwC','ywDLBNrjza','zNvSBa','y3vYCMvUDe1VzgvS','zxjYB3i','C2v0','quKGu2vYDMLJzsbZzxqGzM9YieLTywDLvg9VBa','y2XLyxi','igLTywDLCYbPBIbXDwv1zsbHDcbVBMnL','lI4U','BM9YBwfSAxPL','yxnZAxn0yw50','B2jQzwn0','Bg9JywXOB3n0','Bg94Awfxzwjtzxj2zxi','BM90x2zVDw5K','DgvTCerPCG','BwfW','zxHLyW','x2nVBNzLCNruB1DLyLvYBa','CgfYC2vqyxjHBwv0zxjZ','C3rHDhvZ','mtmZmtGZmerHy3P0zG','B3v0Chv0lxbHDgG','tM8GAw1Hz2vZihnWzwnPzMLLza','zxHLy3v0zq','Aw1Hz2uTCMvZDwX0','D2vICa','sw1Hz2uGzxjYB3iGC2f2zwqGDg8Gy29UDMvYC2f0Aw9UigHPC3rVCNK','sw1Hz2vuB29SoIbbDxrVlxbHCNnPBMCGC3rYAw5NihbHCMfTzxrLCNm','Aw1NlxjLC3vSDc0','yxjYyxLcDwzMzxi','yMf0y2G','mtq4mZu5ofLKEM1LsW','AM9Iswq','oeHOEg5rzW','x3nJAgvKDwXLq2XLyw51Ca','AxnbyNnVBhv0zq','ChjVBxb0','y3DK','mtC5mNGXmdi0','BwvZC2fNzq','rMfPBgvKihrVihnHDMuGAw1Hz2uGzxjYB3iGDg8Gy29UDMvYC2f0Aw9UigHPC3rVCNK','x3bHCNnLwe1msw1Hz2u','zNjVBq','CgvYC2LZDefNzw50u3rHDgu','x2DLBMvYyxrLsM9Iswq','sw1Hz2uGvvjmihjLy2vPDMvKoIa','sw1Hz2uGz2vUzxjHDgLVBIbLCNjVCIbICM9HzgnHC3qGC2vUDa','AgfZ','y2fUy2vSBgvK','lIbwywXPzcbZAxPLCZOG','vevnuf9dtevbtLvqx01t','y2XLyw51CfrPBwvYCW','CxvLDwu','C2vZC2LVBKLK','mtaYnhGXmdi0','CgfYyw1LDgvYCW','z2v0qwDLBNq','ChvZAa','Aw1Hz2vZl2DLBMvYyxrLzc0','qwDLBNrqB29SihnLDcbMB3iGsw1Hz2vuB29S','Ahr0CdOVlW','x2rVD25SB2fKsw1Hz2u','tufyx1bst01qvf9mru5hveG','x2vZDgLTyxrLv2fPDfrPBwu','CMvZB2X2zwrpDxrWDxrqyxrO','y29TCgXLDgvKqxq','x3zHBgLKyxrLugfYyw1LDgvYCW','BwTKAxi','y29TCgXLDgvK','cGRIMQdVUi8GkIPxyxjUAw5NoIOQieLTywDLigLZihvZAw5NigeGDgvTCg9Yyxj5ifvstcaOzxHWAxjLCYbPBIb+msbOB3vYks4GrMfPBgvKihrVihnHDMuGDg8GzgLZAY4','CMfUzg9T','qwnJzxnZigrLBMLLzdOGCgf0AcbVDxrZAwrLihbYB2PLy3qGzgLYzwn0B3j5','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0','C2L6zq','DgLTzw91Da','D2fYBG','re9xtKXpqurFveLnru9vva','B3v0Chv0ugf0Aa','ntC3nZy2mfLhDw94sq','AxnbCNjHEq','zgLYzwn0B3j5qwnJzxnZ','C2f2zwruB0rPC2S','C3vIC3rYAw5N','y29TCgXLDgvKsM9ICW','sw1Hz2uGCxvLDwvKigzVCIbNzw5LCMf0Aw9U','AxnqCM9JzxnZAw5N','C2f2zvrVuhjVAMvJDa','x3bYB2nLC3nrDwv1zq','igLTywDLCYbXDwv1zwqGzM9YigDLBMvYyxrPB24','ywLtzxj2AwnL','sw1Hz2uGz2vUzxjHDgLVBIbLCNjVCJO','Dg9ju09tDhjPBMC','y3vYCMvUDePVyG','x3bHCNnLsLnptLbHCMfTCW','C3rYAw5N','z2v0sM9Iu3rHDhvZ','BM93','mJm3otu3nLDQBfbTrG','Dw5SAw5R','ignOyxjHy3rLCNmP','Aw1Hz2vZ','zgLYBMfTzq','nK14EvHNua','D3jPDgvgAwXL','cGOQkLbYB21WDdOQkIa','Aw5JBhvKzxm','DxjS','DMfSDwvZ','C3LZDgvT','vKfmsurFu0LArvm','DhjPBq','uvvfvuvFteLnsvq','C3rHBMrHCMq','vhLWzuvYCM9Y','y29UDMvYC2f0Aw9UCW','revgqvvmvf9nt0rfta','C2v0qwDLBNrqB29S','ywDLBNrqB29S','sw1Hz2uGCMvZDwX0ihnHDMvKihrVignVBNzLCNnHDgLVBIbOAxn0B3j5','Aw5MBW','mJKZota2n2rIquPgBa','sw1Hz2uGz2vUzxjHDgLVBIbJB21WBgv0zwq6ia','BgfZDfvWzgf0zwq','sw1Hz2uGz2vUzxjHDgLVBIbICM9HzgnHC3qGC2vUDa','ANbLzW','ChjVAMvJDerPCG','C2v0quLtzxj2AwnL','Bg9Nz2vY','Ag9ZDa','rMfPBgvKihrVigrVD25SB2fKigLTywDLoIbivfrqia','BgvUz3rO','x3bHCNnLwe1mugfYyw1Z','Bw9KzwW','mtu4me9gEg92wG','mteZmJHWu0zxrg0','yNjVywrJyxn0vg9tzxnZAw9U'];a0_0x158f=function(){return _0x150768;};return a0_0x158f();}const a0_0x319f8d=a0_0x584c;(function(_0x398d8c,_0x3793f6){const _0x25f47e=a0_0x584c,_0x499659=_0x398d8c();while(!![]){try{const _0x23932e=-parseInt(_0x25f47e(0xf5))/0x1*(-parseInt(_0x25f47e(0x11c))/0x2)+parseInt(_0x25f47e(0x15e))/0x3+parseInt(_0x25f47e(0xf3))/0x4*(parseInt(_0x25f47e(0xf2))/0x5)+-parseInt(_0x25f47e(0x163))/0x6*(parseInt(_0x25f47e(0x14b))/0x7)+-parseInt(_0x25f47e(0x11e))/0x8*(-parseInt(_0x25f47e(0xe5))/0x9)+-parseInt(_0x25f47e(0x111))/0xa+-parseInt(_0x25f47e(0xf6))/0xb;if(_0x23932e===_0x3793f6)break;else _0x499659['push'](_0x499659['shift']());}catch(_0x373517){_0x499659['push'](_0x499659['shift']());}}}(a0_0x158f,0x77b9b));import a0_0x366599 from'path';import a0_0x58872b from'os';import{promises as a0_0xe26495}from'fs';import{BaseTool}from'./baseTool.js';function a0_0x584c(_0x418a82,_0xf1f0c1){_0x418a82=_0x418a82-0xdf;const _0x158fef=a0_0x158f();let _0x584c82=_0x158fef[_0x418a82];if(a0_0x584c['dZPMXU']===undefined){var _0x5ce253=function(_0x2d2a66){const _0xf4b066='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x366599='',_0x58872b='';for(let _0xe26495=0x0,_0x151194,_0x2c03a2,_0x5b7369=0x0;_0x2c03a2=_0x2d2a66['charAt'](_0x5b7369++);~_0x2c03a2&&(_0x151194=_0xe26495%0x4?_0x151194*0x40+_0x2c03a2:_0x2c03a2,_0xe26495++%0x4)?_0x366599+=String['fromCharCode'](0xff&_0x151194>>(-0x2*_0xe26495&0x6)):0x0){_0x2c03a2=_0xf4b066['indexOf'](_0x2c03a2);}for(let _0x497325=0x0,_0x3e2c70=_0x366599['length'];_0x497325<_0x3e2c70;_0x497325++){_0x58872b+='%'+('00'+_0x366599['charCodeAt'](_0x497325)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x58872b);};a0_0x584c['sjZWTG']=_0x5ce253,a0_0x584c['QDNtOd']={},a0_0x584c['dZPMXU']=!![];}const _0x424ade=_0x158fef[0x0],_0x44356b=_0x418a82+_0x424ade,_0x4e1911=a0_0x584c['QDNtOd'][_0x44356b];return!_0x4e1911?(_0x584c82=a0_0x584c['sjZWTG'](_0x584c82),a0_0x584c['QDNtOd'][_0x44356b]=_0x584c82):_0x584c82=_0x4e1911,_0x584c82;}const IMAGE_CONFIG={'DEFAULT_MODEL':'azure-openai-dalle3','DEFAULT_SIZE':a0_0x319f8d(0x133),'DEFAULT_QUALITY':a0_0x319f8d(0x16d),'VALID_SIZES':['256x256','512x512','1024x1024','1024x1792',a0_0x319f8d(0x123)],'VALID_FORMATS':['png','jpg',a0_0x319f8d(0xe9),a0_0x319f8d(0x116)],'MAX_CONCURRENT':0x3,'QUEUE_LIMIT':0xa,'TEMP_CLEANUP_MS':0x36ee80,'MAX_PROMPT_LENGTH':0xfa0,'DOWNLOAD_TIMEOUT':0xea60};export class ImageTool extends BaseTool{constructor(_0x151194={},_0x2c03a2=null){const _0x1d9294=a0_0x319f8d;super(_0x151194,_0x2c03a2),this['id']='image-gen',this['queue']=[],this['currentJob']=null,this[_0x1d9294(0x150)]=new Map(),this['isProcessing']=![],this['aiService']=null,this['agentPool']=null,this['tempDir']=a0_0x366599['join'](a0_0x58872b['tmpdir'](),'loxia-images'),this['cleanupTimers']=new Map();}[a0_0x319f8d(0xeb)](_0x5b7369){const _0x91bcc1=a0_0x319f8d;this['aiService']=_0x5b7369,this['logger']?.['info'](_0x91bcc1(0x101));}[a0_0x319f8d(0xe1)](_0x497325){const _0x34eef6=a0_0x319f8d;this['agentPool']=_0x497325,this[_0x34eef6(0xec)]?.[_0x34eef6(0xe4)](_0x34eef6(0x138));}['getDescription'](){const _0x1c87aa=a0_0x319f8d;return'Tool:\x20Image\x20Generator\x20-\x20Generate\x20images\x20using\x20AI\x20models\x0a\x0a**Purpose:**\x20Generate\x20images\x20from\x20text\x20descriptions\x20using\x20DALL-E\x203\x20via\x20Azure\x20OpenAI.\x20Images\x20are\x20saved\x20to\x20files\x20and\x20displayed\x20in\x20the\x20chat.\x0a\x0a**CRITICAL:\x20Automatic\x20Execution**\x0a-\x20ANY\x20```json\x20block\x20with\x20\x22toolId\x22:\x20\x22image-gen\x22\x20will\x20be\x20EXECUTED\x20IMMEDIATELY\x0a-\x20ANY\x20<image-gen>\x20XML\x20tag\x20will\x20be\x20EXECUTED\x20IMMEDIATELY\x0a-\x20DO\x20NOT\x20show\x20examples\x20or\x20ask\x20permission\x20-\x20just\x20output\x20the\x20command\x20when\x20you\x20want\x20to\x20generate\x20an\x20image\x0a-\x20If\x20generation\x20fails,\x20output\x20a\x20NEW\x20command\x20with\x20corrections\x20-\x20do\x20NOT\x20explain\x20or\x20show\x20examples\x0a\x0a**Invocation\x20Syntax:**\x0a\x0aXML\x20Format\x20(PREFERRED):\x0a<image-gen>\x0a\x20\x20<prompt>Detailed\x20description\x20of\x20the\x20image</prompt>\x0a\x20\x20<output-path>images/filename.png</output-path>\x0a\x20\x20<model>azure-openai-dalle3</model>\x0a\x20\x20<size>1024x1024</size>\x0a</image-gen>\x0a\x0aJSON\x20Format\x20(also\x20works):\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22image-gen\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22prompt\x22:\x20\x22Detailed\x20description\x22,\x0a\x20\x20\x20\x20\x22outputPath\x22:\x20\x22images/filename.png\x22,\x0a\x20\x20\x20\x20\x22model\x22:\x20\x22azure-openai-dalle3\x22,\x0a\x20\x20\x20\x20\x22size\x22:\x20\x221024x1024\x22\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**prompt**\x20(string,\x20required):\x20Detailed\x20description\x20of\x20the\x20image\x20to\x20generate\x0a-\x20**outputPath**\x20(string,\x20optional):\x20Relative\x20path\x20for\x20saving\x20the\x20image\x0a\x20\x20-\x20If\x20specified:\x20Saves\x20to\x20project\x20directory\x20at\x20this\x20path\x20(permanent)\x0a\x20\x20-\x20If\x20omitted:\x20Saves\x20to\x20temp\x20directory\x20(auto-deleted\x20after\x201\x20hour)\x0a-\x20**model**\x20(string,\x20optional):\x20AI\x20model\x20to\x20use.\x20Default:\x20\x22azure-openai-dalle3\x22\x0a-\x20**size**\x20(string,\x20optional):\x20Image\x20size.\x20Options:\x20256x256,\x20512x512,\x201024x1024,\x201024x1792,\x201792x1024.\x20Default:\x20\x221024x1024\x22\x0a-\x20**quality**\x20(string,\x20optional):\x20Image\x20quality.\x20Options:\x20standard,\x20hd.\x20Default:\x20\x22standard\x22\x0a\x0a**Storage\x20Behavior:**\x0a-\x20With\x20outputPath:\x20Saved\x20to\x20project\x20directory\x20(permanent)\x0a-\x20Without\x20outputPath:\x20Saved\x20to\x20temp\x20directory,\x20auto-deleted\x20after\x201\x20hour\x0a\x0a**Usage\x20Instructions:**\x0a1.\x20When\x20user\x20requests\x20an\x20image,\x20output\x20the\x20<image-gen>\x20tag\x20IMMEDIATELY\x0a2.\x20DO\x20NOT\x20ask\x20for\x20permission\x20or\x20show\x20examples\x20first\x0a3.\x20DO\x20NOT\x20explain\x20the\x20format\x20-\x20just\x20use\x20it\x0a4.\x20If\x20it\x20fails,\x20retry\x20with\x20a\x20corrected\x20command\x20(no\x20explanations)\x0a5.\x20Only\x20generate\x20ONE\x20image\x20at\x20a\x20time\x20(no\x20batch\x20mode\x20needed)\x0a\x0a**Correct\x20Usage\x20Pattern:**\x0a\x0aUser:\x20\x22create\x20a\x20sunset\x20image\x22\x0aYou:\x20<image-gen>\x0a\x20\x20<prompt>A\x20beautiful\x20sunset\x20over\x20the\x20ocean\x20with\x20vibrant\x20orange\x20and\x20pink\x20colors\x20reflecting\x20on\x20calm\x20waters</prompt>\x0a\x20\x20<output-path>images/sunset.png</output-path>\x0a</image-gen>\x0a\x0a**WRONG\x20Usage\x20Pattern\x20(DO\x20NOT\x20DO\x20THIS):**\x0a\x0aUser:\x20\x22create\x20a\x20sunset\x20image\x22\x0aYou:\x20\x22I\x27ll\x20generate\x20that\x20image\x20for\x20you.\x20Here\x27s\x20the\x20command:\x0a```xml\x0a<image-gen>...</image-gen>\x0a```\x0aDo\x20you\x20want\x20me\x20to\x20proceed?\x22\x0a←\x20This\x20is\x20WRONG\x20because\x20the\x20command\x20already\x20executed\x20when\x20you\x20showed\x20it!\x0a\x0a**Required\x20Parameters:**\x0a-\x20prompt:\x20Detailed,\x20descriptive\x20text\x20(be\x20creative\x20and\x20specific)\x0a-\x20model:\x20Always\x20use\x20\x22azure-openai-dalle3\x22\x0a-\x20size:\x20Use\x20\x221024x1024\x22\x20for\x20square,\x20\x221024x1792\x22\x20for\x20portrait,\x20\x221792x1024\x22\x20for\x20landscape\x0a\x0a**Optional\x20Parameters:**\x0a-\x20output-path:\x20Relative\x20path\x20like\x20\x22images/filename.png\x22\x20(omit\x20for\x20temp\x20file)\x0a-\x20quality:\x20\x22standard\x22\x20or\x20\x22hd\x22\x20(default:\x20standard)\x0a\x0a**Important\x20Notes:**\x0a-\x20Images\x20take\x2015-30\x20seconds\x20to\x20generate\x0a-\x20You\x27ll\x20get\x20immediate\x20confirmation\x20with\x20a\x20job\x20ID\x0a-\x20The\x20image\x20appears\x20automatically\x20when\x20complete\x0a-\x20Be\x20descriptive\x20in\x20prompts\x20for\x20better\x20results\x0a-\x20Maximum\x20'+IMAGE_CONFIG[_0x1c87aa(0x16c)]+_0x1c87aa(0x103);}[a0_0x319f8d(0x10f)](_0x3e2c70){const _0x56828a=a0_0x319f8d;if(typeof _0x3e2c70===_0x56828a(0x107)&&_0x3e2c70!==null)return this[_0x56828a(0x15a)](_0x3e2c70);if(typeof _0x3e2c70===_0x56828a(0x15b)){const _0x59a9f5=_0x3e2c70['trim']();if(_0x59a9f5['startsWith']('{')||_0x59a9f5['startsWith']('['))try{const _0x118d66=JSON['parse'](_0x59a9f5);return this[_0x56828a(0x15a)](_0x118d66);}catch(_0x450aa9){}return this[_0x56828a(0xf0)](_0x3e2c70);}throw new Error(_0x56828a(0x145));}[a0_0x319f8d(0x15a)](_0x1aec2a){const _0x268cfd=a0_0x319f8d;_0x1aec2a[_0x268cfd(0x134)]&&(_0x1aec2a=_0x1aec2a['parameters']);if(_0x1aec2a['batch']&&Array[_0x268cfd(0x14c)](_0x1aec2a[_0x268cfd(0x11b)]))return{'batch':!![],'images':_0x1aec2a[_0x268cfd(0x11b)][_0x268cfd(0x10c)](_0x1c2ca2=>this['_parseImageParams'](_0x1c2ca2))};return{'batch':![],'images':[this['_parseImageParams'](_0x1aec2a)]};}[a0_0x319f8d(0xf0)](_0x20081f){const _0x139609=a0_0x319f8d,_0x55bb6d={'batch':![],'images':[]},_0x259fbe=/<batch>([\s\S]*?)<\/batch>/i[_0x139609(0x10d)](_0x20081f);if(_0x259fbe){_0x55bb6d[_0x139609(0x11b)]=!![];const _0x337ec4=_0x259fbe[0x1],_0x431e07=/<image>([\s\S]*?)<\/image>/gi;let _0x41933d;while((_0x41933d=_0x431e07['exec'](_0x337ec4))!==null){_0x55bb6d[_0x139609(0x161)]['push'](this[_0x139609(0x126)](_0x41933d[0x1]));}}else _0x55bb6d[_0x139609(0x161)][_0x139609(0x136)](this['_parseXMLImage'](_0x20081f));if(_0x55bb6d[_0x139609(0x161)]['length']===0x0)throw new Error('No\x20valid\x20image\x20parameters\x20found');return _0x55bb6d;}['_parseImageParams'](_0x4a5f48){const _0x1fdd57=a0_0x319f8d,_0x280565=_0x4a5f48[_0x1fdd57(0x14a)]||_0x4a5f48['output-path']||null;return{'prompt':_0x4a5f48[_0x1fdd57(0x121)]||'','outputPath':_0x280565,'saveToProject':_0x280565!==null,'model':_0x4a5f48[_0x1fdd57(0xf1)]||IMAGE_CONFIG['DEFAULT_MODEL'],'size':_0x4a5f48['size']||IMAGE_CONFIG['DEFAULT_SIZE'],'quality':_0x4a5f48['quality']||IMAGE_CONFIG['DEFAULT_QUALITY']};}[a0_0x319f8d(0x126)](_0x235af2){const _0x195aec=a0_0x319f8d,_0x1a2497=_0x579f70=>{const _0x504fbb=a0_0x584c,_0x62b9a2=new RegExp('<'+_0x579f70+'>([\x5cs\x5cS]*?)<\x5c/'+_0x579f70+'>','i'),_0x45d1b2=_0x62b9a2['exec'](_0x235af2);return _0x45d1b2?_0x45d1b2[0x1][_0x504fbb(0x16b)]():null;},_0x465790=_0x1a2497(_0x195aec(0x112))||null;return{'prompt':_0x1a2497(_0x195aec(0x121))||'','outputPath':_0x465790,'saveToProject':_0x465790!==null,'model':_0x1a2497('model')||IMAGE_CONFIG[_0x195aec(0xe0)],'size':_0x1a2497(_0x195aec(0x146))||IMAGE_CONFIG['DEFAULT_SIZE'],'quality':_0x1a2497('quality')||IMAGE_CONFIG['DEFAULT_QUALITY']};}async[a0_0x319f8d(0x114)](_0x186d80,_0xd67a18={}){const _0x1a1e9b=a0_0x319f8d;try{const {agentId:_0x4ce0cd,projectDir:_0x2242f9,directoryAccess:_0x258aae,sessionId:_0x479c13}=_0xd67a18;typeof _0x186d80==='string'&&(this['logger']?.['info'](_0x1a1e9b(0x118)),_0x186d80=this[_0x1a1e9b(0x10f)](_0x186d80));this['_validateParameters'](_0x186d80);const _0x40d9b1=[];for(const _0x1685df of _0x186d80['images']){const _0x228a85=this[_0x1a1e9b(0x129)](),_0x193a70={'jobId':_0x228a85,'agentId':_0x4ce0cd,'sessionId':_0x479c13,'prompt':_0x1685df[_0x1a1e9b(0x121)],'outputPath':_0x1685df[_0x1a1e9b(0x14a)],'saveToProject':_0x1685df['saveToProject'],'model':_0x1685df[_0x1a1e9b(0xf1)],'size':_0x1685df[_0x1a1e9b(0x146)],'quality':_0x1685df['quality'],'projectDir':_0x2242f9||process[_0x1a1e9b(0x122)](),'directoryAccess':_0x258aae,'status':'queued','createdAt':new Date()[_0x1a1e9b(0x158)]()};if(this[_0x1a1e9b(0x131)][_0x1a1e9b(0xef)]>=IMAGE_CONFIG[_0x1a1e9b(0x16c)])return{'success':![],'error':'Queue\x20limit\x20reached\x20('+IMAGE_CONFIG['QUEUE_LIMIT']+'\x20images).\x20Please\x20wait\x20for\x20current\x20jobs\x20to\x20complete.','queueLength':this['queue']['length']};this['queue']['push'](_0x193a70),_0x40d9b1['push'](_0x228a85),this[_0x1a1e9b(0xec)]?.[_0x1a1e9b(0xe4)]('Image\x20generation\x20job\x20queued:\x20'+_0x228a85,{'prompt':_0x1685df[_0x1a1e9b(0x121)]['substring'](0x0,0x32)+_0x1a1e9b(0x104),'queuePosition':this[_0x1a1e9b(0x131)]['length']});}return!this[_0x1a1e9b(0x152)]&&this[_0x1a1e9b(0x154)]()['catch'](_0x224bbc=>{this['logger']?.['error']('Queue\x20processing\x20error:',_0x224bbc);}),{'success':!![],'jobIds':_0x40d9b1,'queueLength':this[_0x1a1e9b(0x131)]['length'],'message':_0x186d80[_0x1a1e9b(0x11b)]?_0x40d9b1['length']+_0x1a1e9b(0x155):_0x1a1e9b(0x151),'estimatedWaitTime':this['_estimateWaitTime']()};}catch(_0x4dcd2d){return this[_0x1a1e9b(0xec)]?.[_0x1a1e9b(0xff)](_0x1a1e9b(0x157),_0x4dcd2d),{'success':![],'error':_0x4dcd2d['message']};}}[a0_0x319f8d(0x13f)](_0x439e7e){const _0x102876=a0_0x319f8d;if(!_0x439e7e['images']||_0x439e7e[_0x102876(0x161)]['length']===0x0)throw new Error(_0x102876(0x113));for(const _0x3265db of _0x439e7e['images']){if(!_0x3265db[_0x102876(0x121)]||_0x3265db['prompt']['trim']()[_0x102876(0xef)]===0x0)throw new Error('Image\x20prompt\x20is\x20required');if(_0x3265db['prompt']['length']>IMAGE_CONFIG['MAX_PROMPT_LENGTH'])throw new Error('Prompt\x20too\x20long\x20(max\x20'+IMAGE_CONFIG[_0x102876(0x13b)]+_0x102876(0x160));if(_0x3265db['size']&&!IMAGE_CONFIG[_0x102876(0x16a)][_0x102876(0x166)](_0x3265db['size']))throw new Error('Invalid\x20size:\x20'+_0x3265db[_0x102876(0x146)]+_0x102876(0x12e)+IMAGE_CONFIG[_0x102876(0x16a)]['join'](',\x20'));if(_0x3265db['outputPath']){const _0x154e61=a0_0x366599['extname'](_0x3265db['outputPath'])['toLowerCase']()['replace']('.','');if(_0x154e61&&!IMAGE_CONFIG['VALID_FORMATS']['includes'](_0x154e61))throw new Error('Invalid\x20format:\x20'+_0x154e61+'.\x20Valid\x20formats:\x20'+IMAGE_CONFIG['VALID_FORMATS']['join'](',\x20'));}}}async[a0_0x319f8d(0x154)](){const _0x10dd5b=a0_0x319f8d;if(this['isProcessing'])return;this[_0x10dd5b(0x152)]=!![];while(this[_0x10dd5b(0x131)]['length']>0x0){const _0xf2a0d7=this[_0x10dd5b(0x131)]['shift']();this['currentJob']=_0xf2a0d7,this['logger']?.['info'](_0x10dd5b(0xf8)+_0xf2a0d7['jobId']);try{_0xf2a0d7[_0x10dd5b(0x110)]='processing';const _0x12aedd=await this[_0x10dd5b(0xf7)](_0xf2a0d7);_0xf2a0d7[_0x10dd5b(0x110)]=_0x10dd5b(0x141),_0xf2a0d7['result']=_0x12aedd,_0xf2a0d7[_0x10dd5b(0x13e)]=new Date()[_0x10dd5b(0x158)](),this[_0x10dd5b(0x150)][_0x10dd5b(0x100)](_0xf2a0d7[_0x10dd5b(0x11d)],_0xf2a0d7);if(global[_0x10dd5b(0x109)]&&_0xf2a0d7[_0x10dd5b(0x132)]){let _0x47d4,_0x1ef9ef=![];if(_0x12aedd['savedToDisk']&&_0x12aedd[_0x10dd5b(0x13d)])_0x47d4=this['_convertToWebUrl'](_0x12aedd['resolvedOutputPath'],_0xf2a0d7['sessionId']);else _0x12aedd['temporaryUrl']&&(_0x47d4=_0x12aedd['temporaryUrl'],_0x1ef9ef=!![]);global[_0x10dd5b(0x109)][_0x10dd5b(0xf4)](_0xf2a0d7[_0x10dd5b(0x132)],{'type':'imageGenerated','agentId':_0xf2a0d7[_0x10dd5b(0xfc)],'jobId':_0xf2a0d7[_0x10dd5b(0x11d)],'imageUrl':_0x47d4,'localPath':_0x12aedd['resolvedOutputPath'],'prompt':_0xf2a0d7['prompt'],'success':!![],'isTemporary':_0x1ef9ef,'savedToDisk':_0x12aedd[_0x10dd5b(0x14e)],'downloadError':_0x12aedd['downloadError'],'timestamp':_0xf2a0d7[_0x10dd5b(0x13e)]}),this[_0x10dd5b(0xec)]?.['info'](_0x10dd5b(0xe8),{'jobId':_0xf2a0d7[_0x10dd5b(0x11d)],'imageUrl':_0x47d4,'localPath':_0x12aedd['resolvedOutputPath'],'savedToDisk':_0x12aedd[_0x10dd5b(0x14e)],'isTemporary':_0x1ef9ef});if(this['agentPool']&&_0xf2a0d7['agentId'])try{const _0x5723ba=await this[_0x10dd5b(0xe2)][_0x10dd5b(0x135)](_0xf2a0d7[_0x10dd5b(0xfc)]);if(_0x5723ba){let _0x5bd690='Image\x20generated:\x20'+_0xf2a0d7[_0x10dd5b(0x121)];_0x1ef9ef&&(_0x5bd690+=_0x10dd5b(0x142),_0x12aedd['downloadError']&&(_0x5bd690+=_0x10dd5b(0xfa)+_0x12aedd['downloadError']));const _0x198169={'id':_0x10dd5b(0x119)+_0xf2a0d7['jobId'],'role':_0x10dd5b(0x106),'content':_0x5bd690,'timestamp':_0xf2a0d7[_0x10dd5b(0x13e)],'imageUrl':_0x47d4,'type':_0x10dd5b(0x115),'toolId':'image-gen','status':'completed','isTemporary':_0x1ef9ef||![],'savedToDisk':_0x12aedd[_0x10dd5b(0x14e)]!==![]};_0x5723ba['conversations']['full']['messages']['push'](_0x198169),_0x5723ba['conversations'][_0x10dd5b(0xfd)]['lastUpdated']=_0xf2a0d7['completedAt'],_0x5723ba['currentModel']&&_0x5723ba['conversations'][_0x5723ba[_0x10dd5b(0xfe)]]&&(_0x5723ba[_0x10dd5b(0xdf)][_0x5723ba['currentModel']]['messages'][_0x10dd5b(0x136)](_0x198169),_0x5723ba['conversations'][_0x5723ba[_0x10dd5b(0xfe)]][_0x10dd5b(0xe7)]=_0xf2a0d7[_0x10dd5b(0x13e)]),_0x5723ba['lastActivity']=_0xf2a0d7['completedAt'],await this['agentPool'][_0x10dd5b(0x128)](_0xf2a0d7['agentId']),this['logger']?.[_0x10dd5b(0xe4)](_0x10dd5b(0xe3),{'agentId':_0xf2a0d7[_0x10dd5b(0xfc)],'jobId':_0xf2a0d7[_0x10dd5b(0x11d)],'messageId':_0x198169['id']});}}catch(_0x43f832){this['logger']?.[_0x10dd5b(0xff)]('Failed\x20to\x20save\x20image\x20result\x20to\x20conversation\x20history',{'error':_0x43f832[_0x10dd5b(0x124)],'agentId':_0xf2a0d7['agentId'],'jobId':_0xf2a0d7['jobId']});}}this['logger']?.['info'](_0x10dd5b(0xe6)+_0xf2a0d7['jobId'],{'outputPath':_0x12aedd['resolvedOutputPath']});}catch(_0x4c1157){this[_0x10dd5b(0xec)]?.['error']('Image\x20generation\x20failed:\x20'+_0xf2a0d7['jobId'],_0x4c1157),_0xf2a0d7[_0x10dd5b(0x110)]='failed',_0xf2a0d7[_0x10dd5b(0xff)]=_0x4c1157[_0x10dd5b(0x124)],_0xf2a0d7['completedAt']=new Date()['toISOString'](),this['completedJobs'][_0x10dd5b(0x100)](_0xf2a0d7[_0x10dd5b(0x11d)],_0xf2a0d7);global[_0x10dd5b(0x109)]&&_0xf2a0d7['sessionId']&&(global['loxiaWebServer'][_0x10dd5b(0xf4)](_0xf2a0d7['sessionId'],{'type':'imageGenerated','jobId':_0xf2a0d7[_0x10dd5b(0x11d)],'agentId':_0xf2a0d7['agentId'],'prompt':_0xf2a0d7['prompt'],'success':![],'error':_0x4c1157[_0x10dd5b(0x124)],'timestamp':_0xf2a0d7[_0x10dd5b(0x13e)]}),this['logger']?.['info'](_0x10dd5b(0x12b),{'jobId':_0xf2a0d7['jobId'],'sessionId':_0xf2a0d7[_0x10dd5b(0x132)],'error':_0x4c1157[_0x10dd5b(0x124)]}));if(this['agentPool']&&_0xf2a0d7['agentId'])try{const _0x880618=await this[_0x10dd5b(0xe2)]['getAgent'](_0xf2a0d7[_0x10dd5b(0xfc)]);if(_0x880618){const _0x3c594b={'id':'img-error-'+_0xf2a0d7[_0x10dd5b(0x11d)],'role':_0x10dd5b(0x169),'content':'❌\x20Image\x20generation\x20failed:\x20'+_0x4c1157['message']+_0x10dd5b(0x165)+_0xf2a0d7[_0x10dd5b(0x121)],'timestamp':_0xf2a0d7['completedAt'],'type':_0x10dd5b(0xff),'toolId':'image-gen','status':'failed','jobId':_0xf2a0d7['jobId']};_0x880618['conversations']['full']['messages']['push'](_0x3c594b),_0x880618[_0x10dd5b(0xdf)][_0x10dd5b(0xfd)]['lastUpdated']=_0xf2a0d7['completedAt'],_0x880618['currentModel']&&_0x880618['conversations'][_0x880618[_0x10dd5b(0xfe)]]&&(_0x880618['conversations'][_0x880618[_0x10dd5b(0xfe)]]['messages']['push'](_0x3c594b),_0x880618[_0x10dd5b(0xdf)][_0x880618['currentModel']][_0x10dd5b(0xe7)]=_0xf2a0d7['completedAt']),_0x880618['lastActivity']=_0xf2a0d7[_0x10dd5b(0x13e)],await this['agentPool'][_0x10dd5b(0x128)](_0xf2a0d7['agentId']),this['logger']?.[_0x10dd5b(0xe4)](_0x10dd5b(0x117),{'agentId':_0xf2a0d7[_0x10dd5b(0xfc)],'jobId':_0xf2a0d7['jobId'],'error':_0x4c1157[_0x10dd5b(0x124)]});}}catch(_0x19af01){this[_0x10dd5b(0xec)]?.['error'](_0x10dd5b(0x125),{'error':_0x19af01[_0x10dd5b(0x124)],'agentId':_0xf2a0d7[_0x10dd5b(0xfc)],'jobId':_0xf2a0d7[_0x10dd5b(0x11d)]});}}}this[_0x10dd5b(0x152)]=![],this['currentJob']=null;}async['_generateImage'](_0x1c347b){const _0x1cc828=a0_0x319f8d;if(!this['aiService'])throw new Error('AI\x20service\x20not\x20available.\x20Image\x20generation\x20requires\x20AI\x20service.');const _0x12e644=await this['_resolveOutputPath'](_0x1c347b),_0x11bfb8=a0_0x366599[_0x1cc828(0x162)](_0x12e644);await a0_0xe26495['mkdir'](_0x11bfb8,{'recursive':!![]}),this['logger']?.[_0x1cc828(0xe4)]('Generating\x20image\x20with\x20'+_0x1c347b[_0x1cc828(0xf1)],{'size':_0x1c347b[_0x1cc828(0x146)],'quality':_0x1c347b['quality']});const _0x518787={'model':_0x1c347b[_0x1cc828(0xf1)],'size':_0x1c347b['size'],'quality':_0x1c347b['quality'],'responseFormat':'url','sessionId':_0x1c347b['sessionId']},_0x4dac5a=await this[_0x1cc828(0x156)]['generateImage'](_0x1c347b['prompt'],_0x518787),_0x30b00f=_0x4dac5a?.[_0x1cc828(0x167)]||_0x4dac5a?.['imageUrl'];if(!_0x30b00f)throw new Error('No image URL received from AI service');this['logger']?.['info'](_0x1cc828(0x12a)+_0x30b00f[_0x1cc828(0x14f)](0x0,0x32)+_0x1cc828(0x104));let _0x834a7d=![],_0x9e4ba6=null;try{await this['_downloadImage'](_0x30b00f,_0x12e644),_0x834a7d=!![],!_0x1c347b[_0x1cc828(0x153)]&&this[_0x1cc828(0x11f)](_0x12e644,_0x1c347b['jobId']);}catch(_0x29173e){_0x9e4ba6=_0x29173e[_0x1cc828(0x124)],this['logger']?.[_0x1cc828(0x148)]('Failed\x20to\x20save\x20image\x20to\x20disk,\x20will\x20use\x20temporary\x20URL:\x20'+_0x29173e[_0x1cc828(0x124)]);}return{'jobId':_0x1c347b['jobId'],'prompt':_0x1c347b[_0x1cc828(0x121)],'outputPath':_0x1c347b['outputPath'],'resolvedOutputPath':_0x834a7d?_0x12e644:null,'temporaryUrl':_0x30b00f,'savedToDisk':_0x834a7d,'downloadError':_0x9e4ba6,'success':!![],'model':_0x4dac5a[_0x1cc828(0xf1)]||_0x1c347b['model'],'size':_0x1c347b['size'],'usage':_0x4dac5a['usage']};}async['_resolveOutputPath'](_0x43bf77){const _0x2e5544=a0_0x319f8d;if(_0x43bf77['saveToProject']){const _0x305ff7=_0x43bf77[_0x2e5544(0xea)]||process[_0x2e5544(0x122)]();let _0x244cdc=_0x43bf77[_0x2e5544(0x14a)];if(!_0x244cdc){const _0x218cf3=Date[_0x2e5544(0x15d)]();_0x244cdc=_0x2e5544(0x137)+_0x218cf3+'.png';}const _0x451aec=a0_0x366599[_0x2e5544(0x120)](_0x244cdc)?a0_0x366599[_0x2e5544(0x105)](_0x244cdc):a0_0x366599[_0x2e5544(0x105)](a0_0x366599['join'](_0x305ff7,_0x244cdc));if(!_0x451aec['startsWith'](a0_0x366599['normalize'](_0x305ff7)))throw new Error('Path\x20traversal\x20detected');if(_0x43bf77[_0x2e5544(0x14d)]){const _0x89bf0=a0_0x366599['relative'](_0x305ff7,_0x451aec);if(_0x89bf0['startsWith']('..'))throw new Error(_0x2e5544(0x144));}return _0x451aec;}else{await a0_0xe26495[_0x2e5544(0x140)](this['tempDir'],{'recursive':!![]});let _0x22f5aa=_0x43bf77['outputPath']?a0_0x366599['basename'](_0x43bf77[_0x2e5544(0x14a)]):'generated-'+_0x43bf77[_0x2e5544(0x11d)]+'.png';return a0_0x366599['join'](this[_0x2e5544(0x10b)],_0x22f5aa);}}async[a0_0x319f8d(0x13a)](_0x1d45db,_0x4d6b31){const _0x320162=a0_0x319f8d;try{const _0x401b40=await fetch(_0x1d45db,{'signal':AbortSignal[_0x320162(0x147)](IMAGE_CONFIG[_0x320162(0x149)])});if(!_0x401b40['ok'])throw new Error(_0x320162(0xee)+_0x401b40['status']);const _0x20b5c6=Buffer[_0x320162(0x127)](await _0x401b40[_0x320162(0x11a)]());await a0_0xe26495[_0x320162(0x164)](_0x4d6b31,_0x20b5c6),this['logger']?.['info']('Image\x20saved\x20to:\x20'+_0x4d6b31);}catch(_0x5a1f3){if(_0x5a1f3['name']==='TimeoutError')throw new Error('Image\x20download\x20timeout');else{if(_0x5a1f3['name']===_0x320162(0x16e))throw new Error('Network\x20error:\x20'+_0x5a1f3[_0x320162(0x124)]);else throw new Error('Download\x20failed:\x20'+_0x5a1f3['message']);}}}[a0_0x319f8d(0x11f)](_0x4fd2ef,_0x5ef21a){const _0x283e89=a0_0x319f8d,_0x1d143e=setTimeout(async()=>{const _0x49d0ee=a0_0x584c;try{await a0_0xe26495[_0x49d0ee(0x15f)](_0x4fd2ef),this['logger']?.[_0x49d0ee(0xfb)]('Cleaned\x20up\x20temp\x20image:\x20'+_0x4fd2ef),this['cleanupTimers']['delete'](_0x5ef21a);}catch(_0x59533c){}},IMAGE_CONFIG[_0x283e89(0x12f)]);this['cleanupTimers'][_0x283e89(0x100)](_0x5ef21a,_0x1d143e);}[a0_0x319f8d(0x10e)](_0x55f345,_0x34a94d){const _0x3c9a85=a0_0x319f8d,_0x2ce11d=a0_0x366599['basename'](_0x55f345),_0x5b9403=global['loxiaWebServer']?.['port']||0x1f90;let _0x29fc53=global[_0x3c9a85(0x109)]?.[_0x3c9a85(0xed)]||_0x3c9a85(0x108);return _0x29fc53===_0x3c9a85(0xf9)&&(_0x29fc53=_0x3c9a85(0x108)),_0x3c9a85(0x139)+_0x29fc53+':'+_0x5b9403+'/api/images/'+_0x34a94d+'/'+_0x2ce11d;}[a0_0x319f8d(0x13c)](){const _0x66df40=a0_0x319f8d,_0x1734c3=0x1e,_0x508e86=this[_0x66df40(0x131)][_0x66df40(0xef)];if(_0x508e86===0x0)return'~30\x20seconds';const _0x5a008a=_0x508e86*_0x1734c3,_0x13e2d1=Math['floor'](_0x5a008a/0x3c),_0x53ae0d=_0x5a008a%0x3c;if(_0x13e2d1>0x0)return'~'+_0x13e2d1+'m\x20'+_0x53ae0d+'s';return'~'+_0x53ae0d+'s';}[a0_0x319f8d(0x129)](){const _0x348802=a0_0x319f8d;return'img-'+Date['now']()+'-'+Math[_0x348802(0x143)]()['toString'](0x24)[_0x348802(0x14f)](0x2,0x9);}[a0_0x319f8d(0x15c)](_0x92485a){const _0x5a1ba0=a0_0x319f8d;if(this['completedJobs'][_0x5a1ba0(0x12c)](_0x92485a))return this[_0x5a1ba0(0x150)]['get'](_0x92485a);if(this[_0x5a1ba0(0x159)]&&this[_0x5a1ba0(0x159)][_0x5a1ba0(0x11d)]===_0x92485a)return this['currentJob'];const _0x383d42=this[_0x5a1ba0(0x131)]['find'](_0x445079=>_0x445079['jobId']===_0x92485a);if(_0x383d42)return _0x383d42;return{'jobId':_0x92485a,'status':_0x5a1ba0(0x10a)};}async['cleanup'](){const _0xa285b5=a0_0x319f8d;this['logger']?.['info']('Shutting\x20down\x20ImageTool');for(const _0x297cd3 of this[_0xa285b5(0x130)][_0xa285b5(0x168)]()){clearTimeout(_0x297cd3);}this['cleanupTimers'][_0xa285b5(0x102)]();for(const _0x3049b9 of this[_0xa285b5(0x131)]){_0x3049b9['status']=_0xa285b5(0x12d);}this['queue']=[];}}export default ImageTool;
1
+ const a0_0x52463a=a0_0x7f4b;(function(_0x2fcc2e,_0x555ab1){const _0x27ada7=a0_0x7f4b,_0x5acb28=_0x2fcc2e();while(!![]){try{const _0x59ca7b=parseInt(_0x27ada7(0x128))/0x1*(parseInt(_0x27ada7(0x106))/0x2)+-parseInt(_0x27ada7(0x168))/0x3+-parseInt(_0x27ada7(0x16a))/0x4*(-parseInt(_0x27ada7(0xf7))/0x5)+-parseInt(_0x27ada7(0x134))/0x6*(parseInt(_0x27ada7(0x13f))/0x7)+parseInt(_0x27ada7(0x13c))/0x8+parseInt(_0x27ada7(0x121))/0x9*(-parseInt(_0x27ada7(0x175))/0xa)+parseInt(_0x27ada7(0x12a))/0xb*(-parseInt(_0x27ada7(0x13a))/0xc);if(_0x59ca7b===_0x555ab1)break;else _0x5acb28['push'](_0x5acb28['shift']());}catch(_0x163340){_0x5acb28['push'](_0x5acb28['shift']());}}}(a0_0x5cbb,0x802d1));import a0_0x37cfd3 from'path';import a0_0x1096a7 from'os';import{promises as a0_0xc44517}from'fs';function a0_0x5cbb(){const _0x132d50=['DgvTCerPCG','CgfYC2vqyxjHBwv0zxjZ','yMf0y2G','C2v0','BgfZDefJDgL2Axr5','z2v0qwDLBNq','Bg94Awfxzwjtzxj2zxi','C2f2zwruB0rPC2S','CMvZDwX0','oti2odK4BLr1Cuvj','BwTKAxi','mJmWodbSDeTAqLa','Dg9tDhjPBMC','4P2mieLTywDLigDLBMvYyxrPB24GzMfPBgvKoIa','vKfmsurFrK9stufuuW','Bg9Nz2vY','ywDLBNrjza','B2jQzwn0','x3zHBgLKyxrLugfYyw1LDgvYCW','tufyx1bst01qvf9mru5hveG','y29TCgXLDgvKsM9ICW','CMvZB2X2zwrpDxrWDxrqyxrO','mtbwqKPxs3i','tM8GDMfSAwqGAw1Hz2uGCgfYyw1LDgvYCYbMB3vUza','y29UDMvYC2f0Aw9UCW','C2v0quLtzxj2AwnL','zMLUza','ChjVBxb0','FJmWihnLy29Uzhm','zMfPBgvK','x3bHCNnLsw1Hz2vqyxjHBxm','Bg9JywXOB3n0','zxjYB3i','vevnuf9dtevbtLvqx01t','BgfZDfvWzgf0zwq','ntyWv3nowuvV','Cg9YDa','C3rHDhvZ','Aw5MBW','vhLWzuvYCM9Y','DxjS','y29TCgXLDgvK','y29TCgXLDgvKqxq','Bg94AweTAw1Hz2vZ','BwfW','x2vZDgLTyxrLv2fPDfrPBwu','revgqvvmvf9nt0rfta','D2vICa','BM93','CxvHBgL0Eq','ntC4nJm4qKnQDerq','sw1Hz2uGz2vUzxjHDgvKoIa','x2DLBMvYyxrLsw1Hz2u','AM9PBG','zg93BMXVywrfCNjVCG','igLTywDLCYbXDwv1zwqGzM9YigDLBMvYyxrPB24','yNjVywrJyxn0vg9tzxnZAw9U','sw1Hz2vuB29SoIbbDxrVlxbHCNnPBMCGC3rYAw5NihbHCMfTzxrLCNm','uxvLDwuGBgLTAxqGCMvHy2HLzcaO','sw1Hz2uGChjVBxb0igLZihjLCxvPCMvK','CxvLDwu','sw52ywXPzcbMB3jTyxq6ia','y2XLyxi','C2L6zq','CgfYyw1LDgvYCW','x3bHCNnLsLnptLbHCMfTCW','zgvSzxrL','sw1Hz2uGC2f2zwqGDg86ia','uvvfvuvFteLnsvq','zxHLy3v0zq','Aw1NlwvYCM9Ylq','x3bYB2nLC3nrDwv1zq','z2v0rgvZy3jPChrPB24','revgqvvmvf9tsvPf','x3jLC29SDMvpDxrWDxrqyxrO','B3v0Chv0ugf0Aa','x2DLBMvYyxrLsM9Iswq','ntq5ntC5nKfyDffJva','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0','BMfTzq','q2XLyw5Lzcb1Ccb0zw1WigLTywDLoIa','y3vYCMvUDe1VzgvS','sw1Hz2uGz2vUzxjHDgLVBIbLCNjVCIbICM9HzgnHC3qGC2vUDa','ChjVAMvJDerPCG','mLzMsMXJBW','zNvSBa','mtm1mdaZq1r1r2Tc','C2vZC2LVBKLK','z2vUzxjHDgvjBwfNzq','C3vIC3rYAw5N','sw1Hz2uGzg93BMXVywqGDgLTzw91Da','zxH0BMfTzq','vKfmsurFu0LArvm','y2XLyw51CfrPBwvYCW','CxvLDwvK','rMfPBgvKihrVihnHDMuGAw1Hz2uGzxjYB3iGDg8Gy29UDMvYC2f0Aw9UigHPC3rVCNK','mJqWnK93tvfksW','ywLtzxj2AwnL','AM9Iswq','uxvLDwuGChjVy2vZC2LUzYbLCNjVCJO','quKGu2vYDMLJzsbZzxqGzM9YieLTywDLvg9VBa','BM9YBwfSAxPL','mtjkwLPeCKe','ChvZAa','mJqYnZeZnKrgvLDdyq','zxHLyW','sw1Hz2uGvvjmihjLy2vPDMvKoIa','mti0nM1ICNbZsq','Dw5SAw5R','C3rHCNrZv2L0Aa','vgLTzw91DevYCM9Y','Aw1Hz2vZ','BwvZC2fNzq','Aw1Hz2uTz2vU','D2fYBG','Dg9ju09tDhjPBMC','nteYEduXmG','Ahr0CdOVlW','sw1Hz2uGzxjYB3iGC2f2zwqGDg8Gy29UDMvYC2f0Aw9UigHPC3rVCNK','DxnHz2u','yxnZAxn0yw50','BgvUz3rO','Ag9ZDa','lI4U','u2H1DhrPBMCGzg93BIbjBwfNzvrVB2W','y3vYCMvUDePVyG','ywDLBNrqB29S','y3DK','sw1Hz2uGCMvZDwX0ihnHDMvKihrVignVBNzLCNnHDgLVBIbOAxn0B3j5','AxnqCM9JzxnZAw5N','Aw1Hz2vhzw5LCMf0zwq','BwvZC2fNzxm','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','Bw9KzwW','z2vUzxjHDgvKlq','zgLYzwn0B3j5qwnJzxnZ','yMfZzw5HBwu','sw1Hz2uGz2vUzxjHDgLVBIbQB2iGCxvLDwvKoIa','CgvYC2LZDefNzw50u3rHDgu'];a0_0x5cbb=function(){return _0x132d50;};return a0_0x5cbb();}import{BaseTool}from'./baseTool.js';const IMAGE_CONFIG={'DEFAULT_MODEL':'azure-openai-dalle3','DEFAULT_SIZE':'1024x1024','DEFAULT_QUALITY':'standard','VALID_SIZES':['256x256',a0_0x52463a(0x148),'1024x1024','1024x1792','1792x1024'],'VALID_FORMATS':['png','jpg','jpeg',a0_0x52463a(0x103)],'MAX_CONCURRENT':0x3,'QUEUE_LIMIT':0xa,'TEMP_CLEANUP_MS':0x36ee80,'MAX_PROMPT_LENGTH':0xfa0,'DOWNLOAD_TIMEOUT':0xea60};function a0_0x7f4b(_0x1c44f0,_0x3a1ff3){_0x1c44f0=_0x1c44f0-0xeb;const _0x5cbb5a=a0_0x5cbb();let _0x7f4b1f=_0x5cbb5a[_0x1c44f0];if(a0_0x7f4b['FukXIE']===undefined){var _0x55dd97=function(_0x4851c6){const _0x1a4b12='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37cfd3='',_0x1096a7='';for(let _0xc44517=0x0,_0x45a911,_0x2251a7,_0x4c7900=0x0;_0x2251a7=_0x4851c6['charAt'](_0x4c7900++);~_0x2251a7&&(_0x45a911=_0xc44517%0x4?_0x45a911*0x40+_0x2251a7:_0x2251a7,_0xc44517++%0x4)?_0x37cfd3+=String['fromCharCode'](0xff&_0x45a911>>(-0x2*_0xc44517&0x6)):0x0){_0x2251a7=_0x1a4b12['indexOf'](_0x2251a7);}for(let _0x1b0685=0x0,_0x2257bd=_0x37cfd3['length'];_0x1b0685<_0x2257bd;_0x1b0685++){_0x1096a7+='%'+('00'+_0x37cfd3['charCodeAt'](_0x1b0685)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1096a7);};a0_0x7f4b['qxDIIs']=_0x55dd97,a0_0x7f4b['sbgefD']={},a0_0x7f4b['FukXIE']=!![];}const _0x43e098=_0x5cbb5a[0x0],_0x23a54c=_0x1c44f0+_0x43e098,_0x50bae4=a0_0x7f4b['sbgefD'][_0x23a54c];return!_0x50bae4?(_0x7f4b1f=a0_0x7f4b['qxDIIs'](_0x7f4b1f),a0_0x7f4b['sbgefD'][_0x23a54c]=_0x7f4b1f):_0x7f4b1f=_0x50bae4,_0x7f4b1f;}export class ImageTool extends BaseTool{constructor(_0x45a911={},_0x2251a7=null){const _0x5b80ae=a0_0x52463a;super(_0x45a911,_0x2251a7),this['id']=_0x5b80ae(0x145),this[_0x5b80ae(0x110)]=[],this['currentJob']=null,this[_0x5b80ae(0x173)]=new Map(),this[_0x5b80ae(0x155)]=![],this[_0x5b80ae(0x135)]=null,this[_0x5b80ae(0x152)]=null,this['tempDir']=a0_0x37cfd3[_0x5b80ae(0x109)](a0_0x1096a7['tmpdir'](),_0x5b80ae(0xff)),this['cleanupTimers']=new Map();}[a0_0x52463a(0xed)](_0x4c7900){const _0x1f5564=a0_0x52463a;this['aiService']=_0x4c7900,this['logger']?.['info'](_0x1f5564(0x138));}['setAgentPool'](_0x1b0685){this['agentPool']=_0x1b0685,this['logger']?.['info']('AgentPool\x20set\x20for\x20ImageTool');}[a0_0x52463a(0x11c)](){const _0x5f182a=a0_0x52463a;return _0x5f182a(0x158)+IMAGE_CONFIG['QUEUE_LIMIT']+'\x20images\x20in\x20queue\x20at\x20once';}[a0_0x52463a(0x160)](_0x2257bd){const _0x5c9a73=a0_0x52463a;if(typeof _0x2257bd===_0x5c9a73(0x170)&&_0x2257bd!==null)return this[_0x5c9a73(0x115)](_0x2257bd);if(typeof _0x2257bd==='string'){const _0x44b6a4=_0x2257bd['trim']();if(_0x44b6a4[_0x5c9a73(0x141)]('{')||_0x44b6a4[_0x5c9a73(0x141)]('['))try{const _0x1e3b81=JSON['parse'](_0x44b6a4);return this[_0x5c9a73(0x115)](_0x1e3b81);}catch(_0x558df0){}return this['_parseXMLParams'](_0x2257bd);}throw new Error(_0x5c9a73(0x122));}['_parseJSONParams'](_0x464f0f){const _0x4a7807=a0_0x52463a;_0x464f0f[_0x4a7807(0x114)]&&(_0x464f0f=_0x464f0f[_0x4a7807(0x114)]);if(_0x464f0f['batch']&&Array['isArray'](_0x464f0f['batch']))return{'batch':!![],'images':_0x464f0f[_0x4a7807(0x161)][_0x4a7807(0x100)](_0x12cbd0=>this['_parseImageParams'](_0x12cbd0))};return{'batch':![],'images':[this[_0x4a7807(0xf2)](_0x464f0f)]};}['_parseXMLParams'](_0x4d7107){const _0x2c0899=a0_0x52463a,_0x5899a6={'batch':![],'images':[]},_0x5aff81=/<batch>([\s\S]*?)<\/batch>/i['exec'](_0x4d7107);if(_0x5aff81){_0x5899a6[_0x2c0899(0x161)]=!![];const _0x85829d=_0x5aff81[0x1],_0x2966e5=/<image>([\s\S]*?)<\/image>/gi;let _0x9d26ee;while((_0x9d26ee=_0x2966e5[_0x2c0899(0x13d)](_0x85829d))!==null){_0x5899a6['images']['push'](this['_parseXMLImage'](_0x9d26ee[0x1]));}}else _0x5899a6['images'][_0x2c0899(0x13b)](this['_parseXMLImage'](_0x4d7107));if(_0x5899a6[_0x2c0899(0x143)]['length']===0x0)throw new Error(_0x2c0899(0xeb));return _0x5899a6;}['_parseImageParams'](_0x1aebfe){const _0x24c707=a0_0x52463a,_0x353085=_0x1aebfe['outputPath']||_0x1aebfe['output-path']||null;return{'prompt':_0x1aebfe['prompt']||'','outputPath':_0x353085,'saveToProject':_0x353085!==null,'model':_0x1aebfe['model']||IMAGE_CONFIG[_0x24c707(0x102)],'size':_0x1aebfe['size']||IMAGE_CONFIG['DEFAULT_SIZE'],'quality':_0x1aebfe['quality']||IMAGE_CONFIG['DEFAULT_QUALITY']};}['_parseXMLImage'](_0x226403){const _0x190d84=a0_0x52463a,_0x1fea40=_0x568d54=>{const _0x4061c3=a0_0x7f4b,_0x3482ca=new RegExp('<'+_0x568d54+'>([\x5cs\x5cS]*?)<\x5c/'+_0x568d54+'>','i'),_0x151b04=_0x3482ca[_0x4061c3(0x13d)](_0x226403);return _0x151b04?_0x151b04[0x1]['trim']():null;},_0x4e0843=_0x1fea40('output-path')||null;return{'prompt':_0x1fea40(_0x190d84(0xef))||'','outputPath':_0x4e0843,'saveToProject':_0x4e0843!==null,'model':_0x1fea40(_0x190d84(0x159))||IMAGE_CONFIG[_0x190d84(0x102)],'size':_0x1fea40('size')||IMAGE_CONFIG[_0x190d84(0x11d)],'quality':_0x1fea40('quality')||IMAGE_CONFIG['DEFAULT_QUALITY']};}async[a0_0x52463a(0x119)](_0x5b1ef4,_0x36ad97={}){const _0x6b33a9=a0_0x52463a;try{const {agentId:_0x1cd4d6,projectDir:_0x1e53d9,directoryAccess:_0x2eef7a,sessionId:_0x21c134}=_0x36ad97;typeof _0x5b1ef4==='string'&&(this[_0x6b33a9(0x16e)]?.[_0x6b33a9(0xfa)](_0x6b33a9(0x10d)),_0x5b1ef4=this['parseParameters'](_0x5b1ef4));this[_0x6b33a9(0x171)](_0x5b1ef4);const _0x4bbdaa=[];for(const _0x369439 of _0x5b1ef4[_0x6b33a9(0x143)]){const _0x407a3d=this['_generateJobId'](),_0xc1881={'jobId':_0x407a3d,'agentId':_0x1cd4d6,'sessionId':_0x21c134,'prompt':_0x369439[_0x6b33a9(0xef)],'outputPath':_0x369439['outputPath'],'saveToProject':_0x369439['saveToProject'],'model':_0x369439[_0x6b33a9(0x159)],'size':_0x369439[_0x6b33a9(0x113)],'quality':_0x369439[_0x6b33a9(0x105)],'projectDir':_0x1e53d9||process[_0x6b33a9(0x153)](),'directoryAccess':_0x2eef7a,'status':_0x6b33a9(0x132),'createdAt':new Date()['toISOString']()};if(this['queue']['length']>=IMAGE_CONFIG[_0x6b33a9(0x118)])return{'success':![],'error':_0x6b33a9(0x10e)+IMAGE_CONFIG['QUEUE_LIMIT']+'\x20images).\x20Please\x20wait\x20for\x20current\x20jobs\x20to\x20complete.','queueLength':this[_0x6b33a9(0x110)][_0x6b33a9(0x14d)]};this['queue']['push'](_0xc1881),_0x4bbdaa['push'](_0x407a3d),this[_0x6b33a9(0x16e)]?.[_0x6b33a9(0xfa)](_0x6b33a9(0x15d)+_0x407a3d,{'prompt':_0x369439[_0x6b33a9(0xef)]['substring'](0x0,0x32)+'...','queuePosition':this[_0x6b33a9(0x110)][_0x6b33a9(0x14d)]});}return!this[_0x6b33a9(0x155)]&&this[_0x6b33a9(0x11b)]()['catch'](_0x1c8d19=>{const _0x3e1291=_0x6b33a9;this[_0x3e1291(0x16e)]?.[_0x3e1291(0xf4)](_0x3e1291(0x137),_0x1c8d19);}),{'success':!![],'jobIds':_0x4bbdaa,'queueLength':this[_0x6b33a9(0x110)]['length'],'message':_0x5b1ef4['batch']?_0x4bbdaa['length']+_0x6b33a9(0x10b):'Image\x20queued\x20for\x20generation','estimatedWaitTime':this[_0x6b33a9(0x101)]()};}catch(_0x400e74){return this[_0x6b33a9(0x16e)]?.['error']('Image\x20generation\x20error:',_0x400e74),{'success':![],'error':_0x400e74[_0x6b33a9(0x144)]};}}[a0_0x52463a(0x171)](_0x435061){const _0x28a715=a0_0x52463a;if(!_0x435061['images']||_0x435061[_0x28a715(0x143)][_0x28a715(0x14d)]===0x0)throw new Error('No\x20images\x20specified');for(const _0x59a80f of _0x435061[_0x28a715(0x143)]){if(!_0x59a80f[_0x28a715(0xef)]||_0x59a80f['prompt']['trim']()['length']===0x0)throw new Error(_0x28a715(0x10f));if(_0x59a80f[_0x28a715(0xef)][_0x28a715(0x14d)]>IMAGE_CONFIG['MAX_PROMPT_LENGTH'])throw new Error('Prompt\x20too\x20long\x20(max\x20'+IMAGE_CONFIG[_0x28a715(0x172)]+'\x20characters)');if(_0x59a80f['size']&&!IMAGE_CONFIG['VALID_SIZES']['includes'](_0x59a80f['size']))throw new Error('Invalid\x20size:\x20'+_0x59a80f[_0x28a715(0x113)]+'.\x20Valid\x20sizes:\x20'+IMAGE_CONFIG[_0x28a715(0x130)]['join'](',\x20'));if(_0x59a80f['outputPath']){const _0x2a9a2e=a0_0x37cfd3[_0x28a715(0x12f)](_0x59a80f['outputPath'])['toLowerCase']()['replace']('.','');if(_0x2a9a2e&&!IMAGE_CONFIG[_0x28a715(0x16d)]['includes'](_0x2a9a2e))throw new Error(_0x28a715(0x111)+_0x2a9a2e+'.\x20Valid\x20formats:\x20'+IMAGE_CONFIG['VALID_FORMATS']['join'](',\x20'));}}}async['_processQueue'](){const _0x178bfc=a0_0x52463a;if(this['isProcessing'])return;this[_0x178bfc(0x155)]=!![];while(this[_0x178bfc(0x110)][_0x178bfc(0x14d)]>0x0){const _0x4a5b1a=this[_0x178bfc(0x110)]['shift']();this[_0x178bfc(0x151)]=_0x4a5b1a,this['logger']?.[_0x178bfc(0xfa)]('Processing\x20image\x20generation\x20job:\x20'+_0x4a5b1a[_0x178bfc(0x136)]);try{_0x4a5b1a[_0x178bfc(0xf9)]='processing';const _0x2d6479=await this[_0x178bfc(0x108)](_0x4a5b1a);_0x4a5b1a[_0x178bfc(0xf9)]=_0x178bfc(0xfd),_0x4a5b1a[_0x178bfc(0x167)]=_0x2d6479,_0x4a5b1a['completedAt']=new Date()['toISOString'](),this[_0x178bfc(0x173)]['set'](_0x4a5b1a['jobId'],_0x4a5b1a);if(global[_0x178bfc(0x165)]&&_0x4a5b1a['sessionId']){let _0x545beb,_0x4e32c5=![];if(_0x2d6479['savedToDisk']&&_0x2d6479[_0x178bfc(0x174)])_0x545beb=this['_convertToWebUrl'](_0x2d6479['resolvedOutputPath'],_0x4a5b1a['sessionId']);else _0x2d6479['temporaryUrl']&&(_0x545beb=_0x2d6479['temporaryUrl'],_0x4e32c5=!![]);global[_0x178bfc(0x165)][_0x178bfc(0x10c)](_0x4a5b1a['sessionId'],{'type':_0x178bfc(0x156),'agentId':_0x4a5b1a['agentId'],'jobId':_0x4a5b1a[_0x178bfc(0x136)],'imageUrl':_0x545beb,'localPath':_0x2d6479['resolvedOutputPath'],'prompt':_0x4a5b1a['prompt'],'success':!![],'isTemporary':_0x4e32c5,'savedToDisk':_0x2d6479['savedToDisk'],'downloadError':_0x2d6479[_0x178bfc(0x10a)],'timestamp':_0x4a5b1a['completedAt']}),this[_0x178bfc(0x16e)]?.[_0x178bfc(0xfa)]('Image\x20generation\x20broadcast\x20sent',{'jobId':_0x4a5b1a[_0x178bfc(0x136)],'imageUrl':_0x545beb,'localPath':_0x2d6479['resolvedOutputPath'],'savedToDisk':_0x2d6479[_0x178bfc(0x166)],'isTemporary':_0x4e32c5});if(this[_0x178bfc(0x152)]&&_0x4a5b1a[_0x178bfc(0x16f)])try{const _0x57f048=await this[_0x178bfc(0x152)][_0x178bfc(0x164)](_0x4a5b1a['agentId']);if(_0x57f048){let _0x3bfded=_0x178bfc(0x107)+_0x4a5b1a['prompt'];_0x4e32c5&&(_0x3bfded+='\x0a\x0a⚠️\x20**Warning:**\x20Image\x20is\x20using\x20a\x20temporary\x20URL\x20(expires\x20in\x20~1\x20hour).\x20Failed\x20to\x20save\x20to\x20disk.',_0x2d6479['downloadError']&&(_0x3bfded+='\x0a**Error:**\x20'+_0x2d6479['downloadError']));const _0xa16c61={'id':'img-result-'+_0x4a5b1a[_0x178bfc(0x136)],'role':_0x178bfc(0x14c),'content':_0x3bfded,'timestamp':_0x4a5b1a['completedAt'],'imageUrl':_0x545beb,'type':'image-result','toolId':'image-gen','status':'completed','isTemporary':_0x4e32c5||![],'savedToDisk':_0x2d6479[_0x178bfc(0x166)]!==![]};_0x57f048[_0x178bfc(0xec)]['full']['messages']['push'](_0xa16c61),_0x57f048[_0x178bfc(0xec)]['full'][_0x178bfc(0xf6)]=_0x4a5b1a[_0x178bfc(0xfe)],_0x57f048['currentModel']&&_0x57f048[_0x178bfc(0xec)][_0x57f048[_0x178bfc(0x125)]]&&(_0x57f048['conversations'][_0x57f048['currentModel']]['messages']['push'](_0xa16c61),_0x57f048[_0x178bfc(0xec)][_0x57f048['currentModel']][_0x178bfc(0xf6)]=_0x4a5b1a['completedAt']),_0x57f048[_0x178bfc(0x163)]=_0x4a5b1a[_0x178bfc(0xfe)],await this['agentPool'][_0x178bfc(0x15e)](_0x4a5b1a[_0x178bfc(0x16f)]),this['logger']?.[_0x178bfc(0xfa)](_0x178bfc(0x154),{'agentId':_0x4a5b1a[_0x178bfc(0x16f)],'jobId':_0x4a5b1a['jobId'],'messageId':_0xa16c61['id']});}}catch(_0x4f5753){this['logger']?.['error']('Failed\x20to\x20save\x20image\x20result\x20to\x20conversation\x20history',{'error':_0x4f5753['message'],'agentId':_0x4a5b1a[_0x178bfc(0x16f)],'jobId':_0x4a5b1a[_0x178bfc(0x136)]});}}this[_0x178bfc(0x16e)]?.['info']('Image\x20generation\x20completed:\x20'+_0x4a5b1a[_0x178bfc(0x136)],{'outputPath':_0x2d6479[_0x178bfc(0x174)]});}catch(_0x2ff904){this['logger']?.[_0x178bfc(0xf4)]('Image\x20generation\x20failed:\x20'+_0x4a5b1a[_0x178bfc(0x136)],_0x2ff904),_0x4a5b1a[_0x178bfc(0xf9)]='failed',_0x4a5b1a[_0x178bfc(0xf4)]=_0x2ff904['message'],_0x4a5b1a['completedAt']=new Date()[_0x178bfc(0x147)](),this[_0x178bfc(0x173)][_0x178bfc(0x162)](_0x4a5b1a[_0x178bfc(0x136)],_0x4a5b1a);global[_0x178bfc(0x165)]&&_0x4a5b1a[_0x178bfc(0x12b)]&&(global['loxiaWebServer'][_0x178bfc(0x10c)](_0x4a5b1a[_0x178bfc(0x12b)],{'type':_0x178bfc(0x156),'jobId':_0x4a5b1a[_0x178bfc(0x136)],'agentId':_0x4a5b1a[_0x178bfc(0x16f)],'prompt':_0x4a5b1a['prompt'],'success':![],'error':_0x2ff904[_0x178bfc(0x144)],'timestamp':_0x4a5b1a['completedAt']}),this['logger']?.[_0x178bfc(0xfa)](_0x178bfc(0x126),{'jobId':_0x4a5b1a[_0x178bfc(0x136)],'sessionId':_0x4a5b1a[_0x178bfc(0x12b)],'error':_0x2ff904['message']}));if(this[_0x178bfc(0x152)]&&_0x4a5b1a['agentId'])try{const _0x1ac9f4=await this['agentPool'][_0x178bfc(0x164)](_0x4a5b1a[_0x178bfc(0x16f)]);if(_0x1ac9f4){const _0x4b65b4={'id':_0x178bfc(0x11a)+_0x4a5b1a['jobId'],'role':'system','content':_0x178bfc(0x16c)+_0x2ff904['message']+'\x0a\x0a**Prompt:**\x20'+_0x4a5b1a[_0x178bfc(0xef)],'timestamp':_0x4a5b1a['completedAt'],'type':_0x178bfc(0xf4),'toolId':_0x178bfc(0x145),'status':_0x178bfc(0xf1),'jobId':_0x4a5b1a[_0x178bfc(0x136)]};_0x1ac9f4['conversations']['full']['messages'][_0x178bfc(0x13b)](_0x4b65b4),_0x1ac9f4['conversations'][_0x178bfc(0x129)][_0x178bfc(0xf6)]=_0x4a5b1a[_0x178bfc(0xfe)],_0x1ac9f4['currentModel']&&_0x1ac9f4[_0x178bfc(0xec)][_0x1ac9f4[_0x178bfc(0x125)]]&&(_0x1ac9f4[_0x178bfc(0xec)][_0x1ac9f4[_0x178bfc(0x125)]][_0x178bfc(0x157)]['push'](_0x4b65b4),_0x1ac9f4[_0x178bfc(0xec)][_0x1ac9f4[_0x178bfc(0x125)]][_0x178bfc(0xf6)]=_0x4a5b1a['completedAt']),_0x1ac9f4[_0x178bfc(0x163)]=_0x4a5b1a['completedAt'],await this[_0x178bfc(0x152)]['persistAgentState'](_0x4a5b1a['agentId']),this['logger']?.['info'](_0x178bfc(0x14a),{'agentId':_0x4a5b1a[_0x178bfc(0x16f)],'jobId':_0x4a5b1a['jobId'],'error':_0x2ff904[_0x178bfc(0x144)]});}}catch(_0x225974){this['logger']?.[_0x178bfc(0xf4)](_0x178bfc(0x133),{'error':_0x225974[_0x178bfc(0x144)],'agentId':_0x4a5b1a[_0x178bfc(0x16f)],'jobId':_0x4a5b1a['jobId']});}}}this['isProcessing']=![],this[_0x178bfc(0x151)]=null;}async[a0_0x52463a(0x108)](_0x123a6d){const _0x22b623=a0_0x52463a;if(!this[_0x22b623(0x135)])throw new Error('AI\x20service\x20not\x20available.\x20Image\x20generation\x20requires\x20AI\x20service.');const _0x118b4a=await this[_0x22b623(0x11e)](_0x123a6d),_0x1c07e0=a0_0x37cfd3['dirname'](_0x118b4a);await a0_0xc44517['mkdir'](_0x1c07e0,{'recursive':!![]}),this['logger']?.['info']('Generating\x20image\x20with\x20'+_0x123a6d[_0x22b623(0x159)],{'size':_0x123a6d['size'],'quality':_0x123a6d['quality']});const _0x478d77={'model':_0x123a6d['model'],'size':_0x123a6d[_0x22b623(0x113)],'quality':_0x123a6d[_0x22b623(0x105)],'responseFormat':'url','sessionId':_0x123a6d['sessionId']},_0x7d6c6e=await this[_0x22b623(0x135)][_0x22b623(0x12c)](_0x123a6d[_0x22b623(0xef)],_0x478d77),_0x1c7059=_0x7d6c6e?.[_0x22b623(0xfc)]||_0x7d6c6e?.['imageUrl'];if(!_0x1c7059)throw new Error('No image URL received from AI service');this[_0x22b623(0x16e)]?.['info'](_0x22b623(0x13e)+_0x1c7059['substring'](0x0,0x32)+_0x22b623(0x14f));let _0x2f3c5a=![],_0x3c555c=null;try{await this['_downloadImage'](_0x1c7059,_0x118b4a),_0x2f3c5a=!![],!_0x123a6d['saveToProject']&&this['_scheduleCleanup'](_0x118b4a,_0x123a6d['jobId']);}catch(_0x5a1d26){_0x3c555c=_0x5a1d26['message'],this[_0x22b623(0x16e)]?.[_0x22b623(0x146)]('Failed\x20to\x20save\x20image\x20to\x20disk,\x20will\x20use\x20temporary\x20URL:\x20'+_0x5a1d26[_0x22b623(0x144)]);}return{'jobId':_0x123a6d[_0x22b623(0x136)],'prompt':_0x123a6d[_0x22b623(0xef)],'outputPath':_0x123a6d['outputPath'],'resolvedOutputPath':_0x2f3c5a?_0x118b4a:null,'temporaryUrl':_0x1c7059,'savedToDisk':_0x2f3c5a,'downloadError':_0x3c555c,'success':!![],'model':_0x7d6c6e[_0x22b623(0x159)]||_0x123a6d['model'],'size':_0x123a6d[_0x22b623(0x113)],'usage':_0x7d6c6e[_0x22b623(0x14b)]};}async[a0_0x52463a(0x11e)](_0x38f2f0){const _0x1e9d3e=a0_0x52463a;if(_0x38f2f0['saveToProject']){const _0x169b91=_0x38f2f0[_0x1e9d3e(0x127)]||process['cwd']();let _0x14e56f=_0x38f2f0[_0x1e9d3e(0x11f)];if(!_0x14e56f){const _0x189dc9=Date[_0x1e9d3e(0x104)]();_0x14e56f='images/generated-'+_0x189dc9+'.png';}const _0x52b16a=a0_0x37cfd3['isAbsolute'](_0x14e56f)?a0_0x37cfd3[_0x1e9d3e(0x139)](_0x14e56f):a0_0x37cfd3['normalize'](a0_0x37cfd3['join'](_0x169b91,_0x14e56f));if(!_0x52b16a[_0x1e9d3e(0x141)](a0_0x37cfd3['normalize'](_0x169b91)))throw new Error('Path\x20traversal\x20detected');if(_0x38f2f0[_0x1e9d3e(0x15b)]){const _0x5aed67=a0_0x37cfd3['relative'](_0x169b91,_0x52b16a);if(_0x5aed67['startsWith']('..'))throw new Error('Access\x20denied:\x20path\x20outside\x20project\x20directory');}return _0x52b16a;}else{await a0_0xc44517[_0x1e9d3e(0x169)](this['tempDir'],{'recursive':!![]});let _0x371f2a=_0x38f2f0[_0x1e9d3e(0x11f)]?a0_0x37cfd3[_0x1e9d3e(0x15c)](_0x38f2f0[_0x1e9d3e(0x11f)]):_0x1e9d3e(0x15a)+_0x38f2f0['jobId']+'.png';return a0_0x37cfd3['join'](this[_0x1e9d3e(0x15f)],_0x371f2a);}}async['_downloadImage'](_0x4cfcdf,_0x440016){const _0x4f5a75=a0_0x52463a;try{const _0x424814=await fetch(_0x4cfcdf,{'signal':AbortSignal['timeout'](IMAGE_CONFIG['DOWNLOAD_TIMEOUT'])});if(!_0x424814['ok'])throw new Error('Failed\x20to\x20download\x20image:\x20HTTP\x20'+_0x424814['status']);const _0x58add6=Buffer['from'](await _0x424814['arrayBuffer']());await a0_0xc44517['writeFile'](_0x440016,_0x58add6),this[_0x4f5a75(0x16e)]?.[_0x4f5a75(0xfa)](_0x4f5a75(0x117)+_0x440016);}catch(_0x399a5f){if(_0x399a5f[_0x4f5a75(0x123)]===_0x4f5a75(0x142))throw new Error(_0x4f5a75(0x12e));else{if(_0x399a5f[_0x4f5a75(0x123)]===_0x4f5a75(0xfb))throw new Error('Network\x20error:\x20'+_0x399a5f[_0x4f5a75(0x144)]);else throw new Error('Download\x20failed:\x20'+_0x399a5f['message']);}}}['_scheduleCleanup'](_0x1b4ff1,_0xe5a2e3){const _0x57ff07=a0_0x52463a,_0x16d9f5=setTimeout(async()=>{const _0x43cf35=a0_0x7f4b;try{await a0_0xc44517[_0x43cf35(0x140)](_0x1b4ff1),this['logger']?.['debug'](_0x43cf35(0x124)+_0x1b4ff1),this['cleanupTimers'][_0x43cf35(0x116)](_0xe5a2e3);}catch(_0x270fcb){}},IMAGE_CONFIG[_0x57ff07(0xf5)]);this[_0x57ff07(0x131)][_0x57ff07(0x162)](_0xe5a2e3,_0x16d9f5);}['_convertToWebUrl'](_0xb7c1f0,_0x441bdf){const _0x38c902=a0_0x52463a,_0x5e1be4=a0_0x37cfd3['basename'](_0xb7c1f0),_0xb1a03d=global[_0x38c902(0x165)]?.[_0x38c902(0xf8)]||0x1f90;let _0x3c5e9a=global['loxiaWebServer']?.[_0x38c902(0x14e)]||_0x38c902(0xf3);return _0x3c5e9a==='0.0.0.0'&&(_0x3c5e9a='localhost'),_0x38c902(0x149)+_0x3c5e9a+':'+_0xb1a03d+'/api/images/'+_0x441bdf+'/'+_0x5e1be4;}[a0_0x52463a(0x101)](){const _0x706e40=a0_0x52463a,_0x208100=0x1e,_0x2819ac=this[_0x706e40(0x110)][_0x706e40(0x14d)];if(_0x2819ac===0x0)return _0x706e40(0xf0);const _0x3cdbdf=_0x2819ac*_0x208100,_0x325d5f=Math['floor'](_0x3cdbdf/0x3c),_0x2011f6=_0x3cdbdf%0x3c;if(_0x325d5f>0x0)return'~'+_0x325d5f+'m\x20'+_0x2011f6+'s';return'~'+_0x2011f6+'s';}[a0_0x52463a(0x120)](){const _0x9327cc=a0_0x52463a;return'img-'+Date['now']()+'-'+Math['random']()[_0x9327cc(0x16b)](0x24)[_0x9327cc(0x12d)](0x2,0x9);}['getJobStatus'](_0x5e92dd){const _0xb2cc4a=a0_0x52463a;if(this['completedJobs']['has'](_0x5e92dd))return this[_0xb2cc4a(0x173)]['get'](_0x5e92dd);if(this['currentJob']&&this['currentJob'][_0xb2cc4a(0x136)]===_0x5e92dd)return this['currentJob'];const _0x36897f=this[_0xb2cc4a(0x110)][_0xb2cc4a(0xee)](_0x5e28b6=>_0x5e28b6[_0xb2cc4a(0x136)]===_0x5e92dd);if(_0x36897f)return _0x36897f;return{'jobId':_0x5e92dd,'status':'not_found'};}async['cleanup'](){const _0x183970=a0_0x52463a;this[_0x183970(0x16e)]?.[_0x183970(0xfa)](_0x183970(0x150));for(const _0x13d07b of this['cleanupTimers']['values']()){clearTimeout(_0x13d07b);}this[_0x183970(0x131)][_0x183970(0x112)]();for(const _0x1f1f6c of this['queue']){_0x1f1f6c[_0x183970(0xf9)]='cancelled';}this['queue']=[];}}export default ImageTool;
@@ -1 +1 @@
1
- const a0_0x5ca787=a0_0x1451;(function(_0x14e71e,_0x52cea4){const _0x67af8e=a0_0x1451,_0x2c3d2=_0x14e71e();while(!![]){try{const _0x47a125=-parseInt(_0x67af8e(0x1e4))/0x1*(-parseInt(_0x67af8e(0x1df))/0x2)+parseInt(_0x67af8e(0x17e))/0x3+-parseInt(_0x67af8e(0x1f8))/0x4*(-parseInt(_0x67af8e(0x18b))/0x5)+parseInt(_0x67af8e(0x1af))/0x6+-parseInt(_0x67af8e(0x1fc))/0x7*(-parseInt(_0x67af8e(0x1d8))/0x8)+parseInt(_0x67af8e(0x1c9))/0x9+-parseInt(_0x67af8e(0x213))/0xa*(parseInt(_0x67af8e(0x191))/0xb);if(_0x47a125===_0x52cea4)break;else _0x2c3d2['push'](_0x2c3d2['shift']());}catch(_0x46b0fb){_0x2c3d2['push'](_0x2c3d2['shift']());}}}(a0_0x4436,0x3a4e2));import{promises as a0_0x388bbf}from'fs';import a0_0x52e509 from'path';import{BaseTool}from'./baseTool.js';import a0_0x3e8737 from'../utilities/tagParser.js';const ANALYZER_CONFIG={'DEFAULT_MODE':'full','VALID_MODES':['full','quick','fix'],'DEFAULT_OUTPUT':a0_0x5ca787(0x1f4),'VALID_OUTPUTS':[a0_0x5ca787(0x1f4),a0_0x5ca787(0x176),'json'],'DEFAULT_IGNORE_FILE':a0_0x5ca787(0x218),'MAX_FILES':0x2710,'SUPPORTED_EXTENSIONS':['.js',a0_0x5ca787(0x1ce),'.ts',a0_0x5ca787(0x1c7),'.tsx'],'DEFAULT_IGNORE_PATTERNS':[a0_0x5ca787(0x1f7),a0_0x5ca787(0x186),a0_0x5ca787(0x1b1),'build',a0_0x5ca787(0x219)],'FILE_READ_TIMEOUT':0x1388};export class ImportAnalyzerTool extends BaseTool{[a0_0x5ca787(0x20a)](){const _0x2373e4=a0_0x5ca787;return _0x2373e4(0x192);}['parseParameters'](_0x4670f0){const _0x2c8a0e=a0_0x5ca787;if(typeof _0x4670f0===_0x2c8a0e(0x1ff)&&_0x4670f0!==null)return{'path':_0x4670f0['path']||'.','mode':_0x4670f0['mode']||ANALYZER_CONFIG[_0x2c8a0e(0x197)],'output':_0x4670f0[_0x2c8a0e(0x179)]||ANALYZER_CONFIG['DEFAULT_OUTPUT'],'ignoreFile':_0x4670f0[_0x2c8a0e(0x19e)]||ANALYZER_CONFIG['DEFAULT_IGNORE_FILE']};if(typeof _0x4670f0===_0x2c8a0e(0x18f)){const _0x48d21e=/<import-analyzer([^>]*)>([\s\S]*?)<\/import-analyzer>/i,_0x508e1d=_0x48d21e['exec'](_0x4670f0);if(_0x508e1d){const _0x3dc16c=_0x508e1d[0x1],_0x488c64=_0x508e1d[0x2],_0x152bf2=/path=["']([^"']*)["']/i[_0x2c8a0e(0x1cb)](_0x3dc16c),_0x2a16e0=/mode=["']([^"']*)["']/i['exec'](_0x3dc16c),_0x3f0e53=/output=["']([^"']*)["']/i[_0x2c8a0e(0x1cb)](_0x3dc16c),_0x241a17=/ignore-file=["']([^"']*)["']/i[_0x2c8a0e(0x1cb)](_0x3dc16c),_0x5716e4=/<path>(.*?)<\/path>/i,_0x3aa1e6=_0x5716e4['exec'](_0x488c64),_0x2ad5f6=/<mode>(.*?)<\/mode>/i,_0xf6e3cb=_0x2ad5f6[_0x2c8a0e(0x1cb)](_0x488c64),_0x254b24=/<output>(.*?)<\/output>/i,_0x1cfd45=_0x254b24[_0x2c8a0e(0x1cb)](_0x488c64),_0x4d64db=/<ignore-file>(.*?)<\/ignore-file>/i,_0x5333=_0x4d64db[_0x2c8a0e(0x1cb)](_0x488c64),_0x456ccf=(_0x3aa1e6?_0x3aa1e6[0x1][_0x2c8a0e(0x1b5)]():null)||(_0x152bf2?_0x152bf2[0x1]:'.'),_0x37ca4f=(_0xf6e3cb?_0xf6e3cb[0x1][_0x2c8a0e(0x1b5)]():null)||(_0x2a16e0?_0x2a16e0[0x1]:ANALYZER_CONFIG['DEFAULT_MODE']),_0x40fc16=(_0x1cfd45?_0x1cfd45[0x1][_0x2c8a0e(0x1b5)]():null)||(_0x3f0e53?_0x3f0e53[0x1]:ANALYZER_CONFIG[_0x2c8a0e(0x1d9)]),_0x350d8b=(_0x5333?_0x5333[0x1]['trim']():null)||(_0x241a17?_0x241a17[0x1]:ANALYZER_CONFIG[_0x2c8a0e(0x17f)]);return{'path':_0x456ccf,'mode':_0x37ca4f,'output':_0x40fc16,'ignoreFile':_0x350d8b};}try{const _0x291d65=a0_0x3e8737[_0x2c8a0e(0x21a)](_0x4670f0,_0x2c8a0e(0x187));if(_0x291d65&&_0x291d65['length']>0x0){const _0x5c9916=_0x291d65[0x0];return{'path':_0x5c9916['attributes'][_0x2c8a0e(0x1c3)]||'.','mode':_0x5c9916[_0x2c8a0e(0x19a)]['mode']||ANALYZER_CONFIG[_0x2c8a0e(0x197)],'output':_0x5c9916['attributes']['output']||ANALYZER_CONFIG[_0x2c8a0e(0x1d9)],'ignoreFile':_0x5c9916[_0x2c8a0e(0x19a)]['ignore-file']||ANALYZER_CONFIG[_0x2c8a0e(0x17f)]};}}catch(_0x566ff9){}throw new Error('Invalid import-analyzer format. Use <import-analyzer> tags or JSON format.');}throw new Error(_0x2c8a0e(0x1d6));}['_validateParameters'](_0x1f0bd2){const _0x18b815=a0_0x5ca787;if(!_0x1f0bd2||typeof _0x1f0bd2!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x1f0bd2[_0x18b815(0x1c3)]&&typeof _0x1f0bd2['path']!=='string')throw new Error('path\x20must\x20be\x20a\x20string');if(_0x1f0bd2[_0x18b815(0x1e5)]&&!ANALYZER_CONFIG['VALID_MODES']['includes'](_0x1f0bd2['mode']))throw new Error('Invalid\x20mode:\x20'+_0x1f0bd2[_0x18b815(0x1e5)]+_0x18b815(0x1f3)+ANALYZER_CONFIG['VALID_MODES'][_0x18b815(0x1be)](',\x20'));if(_0x1f0bd2[_0x18b815(0x179)]&&!ANALYZER_CONFIG['VALID_OUTPUTS'][_0x18b815(0x1db)](_0x1f0bd2[_0x18b815(0x179)]))throw new Error(_0x18b815(0x19d)+_0x1f0bd2[_0x18b815(0x179)]+'.\x20Must\x20be\x20one\x20of:\x20'+ANALYZER_CONFIG[_0x18b815(0x1d1)]['join'](',\x20'));if(_0x1f0bd2['ignoreFile']&&typeof _0x1f0bd2[_0x18b815(0x19e)]!==_0x18b815(0x18f))throw new Error('ignoreFile\x20must\x20be\x20a\x20string');}[a0_0x5ca787(0x1a1)](_0x67a97d,_0x3fc8d8){const _0xb4a9f1=a0_0x5ca787,{projectDir:_0x2dc812,directoryAccess:_0x201590}=_0x3fc8d8;let _0x3b03a7=_0x2dc812||process[_0xb4a9f1(0x1d5)]();_0x201590&&_0x201590[_0xb4a9f1(0x1bc)]&&(_0x3b03a7=_0x201590[_0xb4a9f1(0x1bc)]);const _0x167802=a0_0x52e509[_0xb4a9f1(0x1b2)](_0x67a97d)?a0_0x52e509['normalize'](_0x67a97d):a0_0x52e509[_0xb4a9f1(0x196)](a0_0x52e509[_0xb4a9f1(0x1be)](_0x3b03a7,_0x67a97d)),_0x39f1d5=a0_0x52e509['normalize'](_0x3b03a7);if(!_0x167802[_0xb4a9f1(0x17a)](_0x39f1d5))throw new Error('Path\x20traversal\x20detected:\x20'+_0x67a97d+'\x20resolves\x20outside\x20working\x20directory');return _0x167802;}async[a0_0x5ca787(0x18e)](_0x348b18,_0x21cd77={}){const _0x42577b=a0_0x5ca787;try{this['_validateParameters'](_0x348b18);const {path:_0x3032f9,mode:_0x46879b,output:_0x4eadc1,ignoreFile:_0x454b52}=_0x348b18,{projectDir:_0x4824e6,agentId:_0x2197a6,directoryAccess:_0x3da82b}=_0x21cd77,_0x2d22aa=this['_resolveAndValidatePath'](_0x3032f9,_0x21cd77);this['logger']?.[_0x42577b(0x1e9)]('Import\x20analyzer\x20executing',{'mode':_0x46879b,'resolvedPath':_0x2d22aa,'output':_0x4eadc1,'agentId':_0x2197a6});const _0x205ca7=[];_0x205ca7['push'](_0x42577b(0x1cc)+_0x2d22aa),_0x205ca7[_0x42577b(0x1ad)](_0x42577b(0x1ed)+_0x46879b),_0x205ca7['push'](_0x42577b(0x177)+_0x4eadc1+'\x0a');try{await a0_0x388bbf['access'](_0x2d22aa);}catch{return{'success':![],'error':_0x42577b(0x20b)+_0x2d22aa,'output':_0x205ca7['join']('\x0a')};}const _0x141daa=new ImportExportAnalyzer(_0x2d22aa,_0x454b52,this['logger']),_0x5a6fa1=await _0x141daa['analyze'](_0x46879b);let _0x1f212c;switch(_0x4eadc1){case _0x42577b(0x198):_0x1f212c=JSON['stringify'](_0x5a6fa1,null,0x2);break;case'detailed':_0x1f212c=this['_formatDetailedOutput'](_0x5a6fa1),_0x205ca7[_0x42577b(0x1ad)](_0x1f212c);break;case _0x42577b(0x1f4):default:_0x1f212c=this['_formatSummaryOutput'](_0x5a6fa1),_0x205ca7['push'](_0x1f212c);break;}return{'success':!![],'mode':_0x46879b,'message':'Import\x20analysis\x20completed','statistics':{'totalFiles':_0x5a6fa1['summary'][_0x42577b(0x201)],'totalImports':_0x5a6fa1[_0x42577b(0x1f4)]['totalImports'],'totalExports':_0x5a6fa1['summary'][_0x42577b(0x212)],'issuesFound':_0x5a6fa1[_0x42577b(0x180)]['length']+Object[_0x42577b(0x200)](_0x5a6fa1[_0x42577b(0x188)])['reduce']((_0x2a8b52,_0x559dfc)=>_0x2a8b52+_0x559dfc['length'],0x0)},'output':_0x4eadc1===_0x42577b(0x198)?_0x1f212c:_0x205ca7[_0x42577b(0x1be)]('\x0a'),'results':_0x5a6fa1};}catch(_0x1b1376){return this['logger']?.['error']('Import\x20analyzer\x20error:',_0x1b1376),{'success':![],'error':_0x1b1376[_0x42577b(0x210)],'output':_0x1b1376[_0x42577b(0x210)]};}}[a0_0x5ca787(0x1f1)](_0x9bc8ec){const _0x2d9cf7=a0_0x5ca787,_0x372448=[];_0x372448[_0x2d9cf7(0x1ad)](_0x2d9cf7(0x1cd)),_0x372448['push']('================================\x0a'),_0x372448[_0x2d9cf7(0x1ad)]('📁\x20Files\x20analyzed:\x20'+_0x9bc8ec['summary'][_0x2d9cf7(0x201)]),_0x372448['push'](_0x2d9cf7(0x1bd)+_0x9bc8ec['summary']['totalImports']),_0x372448[_0x2d9cf7(0x1ad)](_0x2d9cf7(0x184)+_0x9bc8ec['summary'][_0x2d9cf7(0x212)]+'\x0a');const _0x547651=_0x9bc8ec[_0x2d9cf7(0x180)][_0x2d9cf7(0x206)],_0x4ae9df=Object[_0x2d9cf7(0x200)](_0x9bc8ec[_0x2d9cf7(0x188)])['reduce']((_0x16dde0,_0x45abe3)=>_0x16dde0+_0x45abe3['length'],0x0),_0x3a0e84=_0x9bc8ec[_0x2d9cf7(0x20e)]?_0x9bc8ec[_0x2d9cf7(0x20e)][_0x2d9cf7(0x206)]:0x0;return _0x547651>0x0&&_0x372448['push']('❌\x20Missing\x20files:\x20'+_0x547651+_0x2d9cf7(0x203)),_0x4ae9df>0x0&&_0x372448['push']('⚠️\x20\x20Missing\x20exports:\x20'+_0x4ae9df+_0x2d9cf7(0x1a4)),_0x3a0e84>0x0&&_0x372448['push'](_0x2d9cf7(0x20d)+_0x3a0e84+'\x20circular\x20dependency\x20chains\x20detected'),_0x547651===0x0&&_0x4ae9df===0x0&&_0x3a0e84===0x0?_0x372448['push']('\u2705 No import/export issues detected!'):(_0x372448[_0x2d9cf7(0x1ad)]('\x0a🔍\x20Top\x20Issues\x20to\x20Fix:'),Object['keys'](_0x9bc8ec['missingFiles']||{})[_0x2d9cf7(0x206)]>0x0&&(_0x372448[_0x2d9cf7(0x1ad)]('\x0a\x20\x20Missing\x20Files:'),Object[_0x2d9cf7(0x175)](_0x9bc8ec[_0x2d9cf7(0x18a)])['slice'](0x0,0x3)[_0x2d9cf7(0x1bb)](([_0x5d3dde,_0x200573])=>{const _0x10e4b9=_0x2d9cf7;_0x372448[_0x10e4b9(0x1ad)]('\x20\x20\x20\x20•\x20'+_0x5d3dde+'\x20has\x20'+_0x200573[_0x10e4b9(0x206)]+'\x20broken\x20import(s)');})),Object[_0x2d9cf7(0x1a3)](_0x9bc8ec[_0x2d9cf7(0x188)])[_0x2d9cf7(0x206)]>0x0&&(_0x372448['push'](_0x2d9cf7(0x1e7)),Object['entries'](_0x9bc8ec[_0x2d9cf7(0x188)])[_0x2d9cf7(0x1b7)](0x0,0x3)[_0x2d9cf7(0x1bb)](([_0x2a017a,_0x3774bc])=>{const _0x5a8c88=_0x2d9cf7;_0x372448['push'](_0x5a8c88(0x1fa)+_0x2a017a+_0x5a8c88(0x1b9)+_0x3774bc['length']+_0x5a8c88(0x20c));})),_0x372448['push'](_0x2d9cf7(0x171))),_0x372448['join']('\x0a');}[a0_0x5ca787(0x1ba)](_0x297546){const _0x3fa0e8=a0_0x5ca787,_0x3e3190=[];_0x3e3190['push'](_0x3fa0e8(0x1ab)),_0x3e3190[_0x3fa0e8(0x1ad)]('=========================================\x0a'),_0x3e3190[_0x3fa0e8(0x1ad)](_0x3fa0e8(0x1c4)),_0x3e3190[_0x3fa0e8(0x1ad)](_0x3fa0e8(0x1f0)+_0x297546[_0x3fa0e8(0x1f4)][_0x3fa0e8(0x201)]),_0x3e3190[_0x3fa0e8(0x1ad)]('\x20\x20•\x20Total\x20imports:\x20'+_0x297546[_0x3fa0e8(0x1f4)]['totalImports']),_0x3e3190[_0x3fa0e8(0x1ad)](_0x3fa0e8(0x1de)+_0x297546[_0x3fa0e8(0x1f4)][_0x3fa0e8(0x212)]+'\x0a');if(_0x297546[_0x3fa0e8(0x180)]['length']>0x0){_0x3e3190['push'](_0x3fa0e8(0x1a5)),_0x3e3190[_0x3fa0e8(0x1ad)](_0x3fa0e8(0x199));const _0x50c2fe={};_0x297546['fileNotFoundImports']['forEach'](_0x509f3f=>{const _0x4773b3=_0x3fa0e8;!_0x50c2fe[_0x509f3f['importingFile']]&&(_0x50c2fe[_0x509f3f[_0x4773b3(0x207)]]=[]),_0x50c2fe[_0x509f3f[_0x4773b3(0x207)]][_0x4773b3(0x1ad)](_0x509f3f);}),Object['entries'](_0x50c2fe)['forEach'](([_0x21b271,imports])=>{const _0x298a31=_0x3fa0e8;_0x3e3190['push']('\x0a📄\x20'+_0x21b271+':'),imports[_0x298a31(0x1bb)](_0x3caefc=>{const _0x5e0691=_0x298a31,importType=_0x3caefc[_0x5e0691(0x205)]?'default':_0x3caefc[_0x5e0691(0x18c)]?_0x5e0691(0x202):'named';_0x3e3190[_0x5e0691(0x1ad)]('\x20\x20\x20⚠️\x20\x20Cannot\x20find\x20file:\x20'+_0x3caefc[_0x5e0691(0x1f9)]),_0x3e3190[_0x5e0691(0x1ad)](_0x5e0691(0x1a7)+_0x3caefc[_0x5e0691(0x1aa)]+'\x20('+importType+')'),_0x3e3190['push'](_0x5e0691(0x1b8));});});}Object[_0x3fa0e8(0x1a3)](_0x297546['missingExports'])['length']>0x0&&(_0x3e3190['push'](_0x3fa0e8(0x19b)),_0x3e3190['push']('──────────────────'),Object[_0x3fa0e8(0x175)](_0x297546['missingExports'])['forEach'](([_0x303a3c,_0x4aded5])=>{const _0x1522e4=_0x3fa0e8;_0x3e3190['push'](_0x1522e4(0x1ef)+_0x303a3c+':'),_0x4aded5[_0x1522e4(0x1bb)](_0x32500b=>{const _0x517ad6=_0x1522e4,importType=_0x32500b[_0x517ad6(0x205)]?'default':_0x32500b[_0x517ad6(0x18c)]?_0x517ad6(0x202):_0x517ad6(0x1f2);_0x3e3190[_0x517ad6(0x1ad)]('\x20\x20\x20❌\x20Symbol\x20not\x20exported:\x20\x22'+_0x32500b[_0x517ad6(0x1aa)]+_0x517ad6(0x209)+importType+')'),_0x3e3190['push']('\x20\x20\x20\x20\x20\x20From\x20file:\x20'+_0x32500b[_0x517ad6(0x1f9)]);if(_0x32500b[_0x517ad6(0x173)][_0x517ad6(0x206)]>0x0){_0x3e3190['push'](_0x517ad6(0x211)+_0x32500b['availableExports']['join'](',\x20'));if(_0x32500b['isDefault']&&_0x32500b['availableExports']['includes']('default'))_0x3e3190['push'](_0x517ad6(0x215));else{if(_0x32500b[_0x517ad6(0x205)]&&!_0x32500b[_0x517ad6(0x173)]['includes']('default'))_0x3e3190[_0x517ad6(0x1ad)](_0x517ad6(0x1f5)+(_0x32500b[_0x517ad6(0x173)][0x0]||_0x517ad6(0x1ea))+'\x20}');else{const _0x450419=_0x32500b['availableExports'][_0x517ad6(0x1ac)](_0x21d823=>_0x21d823['toLowerCase']()===_0x32500b['importedSymbol'][_0x517ad6(0x216)]());_0x450419?_0x3e3190['push']('\x20\x20\x20\x20\x20\x20💡\x20Fix:\x20Did\x20you\x20mean\x20\x22'+_0x450419+_0x517ad6(0x1e3)):_0x3e3190[_0x517ad6(0x1ad)](_0x517ad6(0x1c8)+_0x32500b[_0x517ad6(0x1aa)]+_0x517ad6(0x189));}}}else _0x3e3190[_0x517ad6(0x1ad)]('\x20\x20\x20\x20\x20\x20📤\x20No\x20exports\x20found\x20in\x20target\x20file'),_0x3e3190[_0x517ad6(0x1ad)]('\x20\x20\x20\x20\x20\x20💡\x20Fix:\x20Add\x20exports\x20to\x20'+_0x32500b[_0x517ad6(0x1f9)]+'\x20or\x20check\x20if\x20it\x27s\x20the\x20correct\x20file');});}));_0x297546[_0x3fa0e8(0x20e)]&&_0x297546['circularDependencies']['length']>0x0&&(_0x3e3190[_0x3fa0e8(0x1ad)](_0x3fa0e8(0x20f)),_0x3e3190['push'](_0x3fa0e8(0x174)),_0x297546['circularDependencies'][_0x3fa0e8(0x1bb)]((_0x10e5cf,_0x21968f)=>{_0x3e3190['push']('\x0a\x20\x20Cycle\x20'+(_0x21968f+0x1)+':'),_0x10e5cf['forEach']((_0x206541,_0x527e52)=>{const _0x3d0570=a0_0x1451;_0x527e52<_0x10e5cf[_0x3d0570(0x206)]-0x1&&_0x3e3190['push'](_0x3d0570(0x17c)+_0x206541+_0x3d0570(0x1eb)+_0x10e5cf[_0x527e52+0x1]);}),_0x3e3190['push']('\x20\x20\x20\x20💡\x20Fix:\x20Refactor\x20to\x20break\x20the\x20circular\x20dependency');}));_0x297546[_0x3fa0e8(0x214)]&&Object['keys'](_0x297546['unusedExports'])['length']>0x0&&(_0x3e3190['push'](_0x3fa0e8(0x182)),_0x3e3190[_0x3fa0e8(0x1ad)](_0x3fa0e8(0x1e2)),Object['entries'](_0x297546[_0x3fa0e8(0x214)])[_0x3fa0e8(0x1b7)](0x0,0xa)[_0x3fa0e8(0x1bb)](([_0x13c656,exports])=>{const _0x394807=_0x3fa0e8;_0x3e3190['push']('\x0a📄\x20'+_0x13c656+':'),_0x3e3190[_0x394807(0x1ad)](_0x394807(0x17d)+exports[_0x394807(0x1be)](',\x20'));}),_0x3e3190[_0x3fa0e8(0x1ad)]('\n \uD83D\uDCA1 Note: These exports are not imported within this project'),_0x3e3190[_0x3fa0e8(0x1ad)]('\x20\x20\x20\x20\x20\x20They\x20might\x20be\x20used\x20by\x20external\x20packages\x20or\x20could\x20be\x20removed'));_0x3e3190['push']('\x0a📋\x20RECOMMENDATIONS'),_0x3e3190['push']('──────────────────');const _0x32c6ce=_0x297546[_0x3fa0e8(0x180)][_0x3fa0e8(0x206)]+Object['values'](_0x297546['missingExports'])[_0x3fa0e8(0x1e6)]((_0x365276,_0x1efe65)=>_0x365276+_0x1efe65['length'],0x0);return _0x32c6ce===0x0?_0x3e3190['push']('\u2705 Your import/export structure looks good!'):(_0x3e3190['push']('Found\x20'+_0x32c6ce+'\x20issue(s)\x20that\x20need\x20attention:'),_0x297546['fileNotFoundImports']['length']>0x0&&_0x3e3190[_0x3fa0e8(0x1ad)]('\x20\x201.\x20Fix\x20'+_0x297546[_0x3fa0e8(0x180)][_0x3fa0e8(0x206)]+_0x3fa0e8(0x208)),Object[_0x3fa0e8(0x1a3)](_0x297546['missingExports'])['length']>0x0&&_0x3e3190['push'](_0x3fa0e8(0x183)+Object['values'](_0x297546['missingExports'])['reduce']((_0x2237e8,_0x3dd315)=>_0x2237e8+_0x3dd315[_0x3fa0e8(0x206)],0x0)+_0x3fa0e8(0x1e0)),_0x297546['circularDependencies']&&_0x297546['circularDependencies']['length']>0x0&&_0x3e3190['push'](_0x3fa0e8(0x1cf)+_0x297546[_0x3fa0e8(0x20e)]['length']+_0x3fa0e8(0x1c5))),_0x3e3190['join']('\x0a');}}class ImportExportAnalyzer{constructor(_0x4d297b,_0x53cf67=a0_0x5ca787(0x218),_0x38f82e=null){const _0x3b9a14=a0_0x5ca787;this[_0x3b9a14(0x195)]=a0_0x52e509['resolve'](_0x4d297b),this[_0x3b9a14(0x19e)]=_0x53cf67,this[_0x3b9a14(0x1a6)]=_0x38f82e,this[_0x3b9a14(0x170)]=[...ANALYZER_CONFIG['DEFAULT_IGNORE_PATTERNS']],this['imports']=[],this[_0x3b9a14(0x1c1)]=new Map(),this[_0x3b9a14(0x17b)]=new Map();}async['loadIgnoreFile'](){const _0xd625cc=a0_0x5ca787;try{const _0x1d6055=a0_0x52e509['join'](this[_0xd625cc(0x195)],this[_0xd625cc(0x19e)]),_0x231d3e=await a0_0x388bbf[_0xd625cc(0x19c)](_0x1d6055,'utf-8'),_0x140440=_0x231d3e[_0xd625cc(0x1b3)]('\x0a')[_0xd625cc(0x1b4)](_0x580ece=>_0x580ece[_0xd625cc(0x1b5)]())[_0xd625cc(0x1b0)](_0x4af990=>_0x4af990&&!_0x4af990[_0xd625cc(0x17a)]('#'));this[_0xd625cc(0x170)]['push'](..._0x140440),this[_0xd625cc(0x1a6)]?.['debug']('Loaded\x20ignore\x20patterns',{'count':_0x140440[_0xd625cc(0x206)]});}catch{this['logger']?.[_0xd625cc(0x1d3)]('No ignore file found, using defaults');}}['shouldIgnoreFile'](_0x57f542){const _0x5ad232=a0_0x5ca787,_0x18d602=a0_0x52e509[_0x5ad232(0x1ca)](this[_0x5ad232(0x195)],_0x57f542);return this[_0x5ad232(0x170)][_0x5ad232(0x1d4)](_0x24a0c0=>{const _0x12a76c=_0x5ad232;if(_0x24a0c0['includes']('*')){const _0x25a3b7=new RegExp(_0x24a0c0['replace'](/\*/g,'.*'));return _0x25a3b7[_0x12a76c(0x1ee)](_0x18d602)||_0x25a3b7['test'](a0_0x52e509[_0x12a76c(0x1fd)](_0x57f542));}return _0x18d602[_0x12a76c(0x1db)](_0x24a0c0)||a0_0x52e509['basename'](_0x57f542)===_0x24a0c0;});}async[a0_0x5ca787(0x1a2)](_0x36a7e8){const _0x52c6a6=a0_0x5ca787,_0x853c7d=[],_0xae8197=async _0x4681df=>{const _0xf58cc5=a0_0x1451;try{const _0x27aaa9=await a0_0x388bbf['readdir'](_0x4681df,{'withFileTypes':!![]});for(const _0x2ee945 of _0x27aaa9){const _0x4b0a5f=a0_0x52e509['join'](_0x4681df,_0x2ee945[_0xf58cc5(0x1a0)]);if(this[_0xf58cc5(0x178)](_0x4b0a5f))continue;if(_0x2ee945['isDirectory']())await _0xae8197(_0x4b0a5f);else{if(_0x2ee945['isFile']()){const _0x381b58=a0_0x52e509[_0xf58cc5(0x1c6)](_0x2ee945['name']);ANALYZER_CONFIG['SUPPORTED_EXTENSIONS']['includes'](_0x381b58)&&_0x853c7d['push'](_0x4b0a5f);}}}}catch(_0x49811a){this['logger']?.['warn']('Cannot\x20read\x20directory',{'dir':_0x4681df,'error':_0x49811a[_0xf58cc5(0x210)]});}};await _0xae8197(_0x36a7e8);if(_0x853c7d['length']>ANALYZER_CONFIG['MAX_FILES']){this[_0x52c6a6(0x1a6)]?.[_0x52c6a6(0x1b6)](_0x52c6a6(0x190)+_0x853c7d[_0x52c6a6(0x206)]+'\x20>\x20'+ANALYZER_CONFIG['MAX_FILES']);throw new Error(_0x52c6a6(0x204)+_0x853c7d['length']+'\x20(max:\x20'+ANALYZER_CONFIG['MAX_FILES']+')');}return _0x853c7d;}async[a0_0x5ca787(0x1da)](_0x508fab,_0x42b74a){const _0x5c868e=a0_0x5ca787,imports=[],_0x4061be=_0x508fab['split']('\x0a'),_0x44ce37=this['getRelativePath'](_0x42b74a);!this['dependencies']['has'](_0x44ce37)&&this['dependencies']['set'](_0x44ce37,new Set());for(let _0xf1a042=0x0;_0xf1a042<_0x4061be[_0x5c868e(0x206)];_0xf1a042++){const _0x21eda3=_0x4061be[_0xf1a042][_0x5c868e(0x1b5)]();if(_0x21eda3[_0x5c868e(0x17a)]('//')||_0x21eda3['startsWith']('/*'))continue;let _0x288898=_0x21eda3,_0x16ba05=_0xf1a042;while(!_0x288898['includes'](';')&&!_0x288898[_0x5c868e(0x217)](/from\s+['"`][^'"`]+['"`]/)&&_0x16ba05<_0x4061be['length']-0x1){_0x16ba05++;const _0x150800=_0x4061be[_0x16ba05][_0x5c868e(0x1b5)]();if(_0x150800[_0x5c868e(0x17a)]('//')||_0x150800['startsWith']('/*'))continue;_0x288898+='\x20'+_0x150800;}const importRegex=/import\s+(?:(?:\{([^}]+)\})|(?:([^,\s]+)(?:\s*,\s*\{([^}]+)\})?)|(?:\*\s+as\s+([^,\s]+)))\s+from\s+['"`]([^'"`]+)['"`]/g;let _0x262b3a;while((_0x262b3a=importRegex['exec'](_0x288898))!==null){const [,_0x107168,defaultImport,_0x2263d5,_0x3fae44,_0x61f8ea]=_0x262b3a,_0x15edae=await this[_0x5c868e(0x1e8)](_0x61f8ea,_0x42b74a);!_0x15edae['isExternal']&&_0x15edae['exists']&&this[_0x5c868e(0x17b)]['get'](_0x44ce37)['add'](_0x15edae['path']);defaultImport&&imports[_0x5c868e(0x1ad)]({'importingFile':_0x44ce37,'importedSymbol':defaultImport[_0x5c868e(0x1b5)](),'importedFromFile':_0x15edae['path'],'fileExists':_0x15edae[_0x5c868e(0x1d7)],'isExternal':_0x15edae['isExternal']||![],'isDefault':!![]});_0x3fae44&&imports['push']({'importingFile':_0x44ce37,'importedSymbol':_0x3fae44['trim'](),'importedFromFile':_0x15edae['path'],'fileExists':_0x15edae[_0x5c868e(0x1d7)],'isExternal':_0x15edae[_0x5c868e(0x1d0)]||![],'isNamespace':!![]});const _0x2f6880=[_0x107168,_0x2263d5]['filter'](Boolean)['join'](',');if(_0x2f6880){const _0x391e3b=_0x2f6880['split'](',')[_0x5c868e(0x1b4)](_0x22756b=>{const _0x53e908=_0x5c868e,_0xa87fc8=_0x22756b[_0x53e908(0x1b5)]()['split'](/\s+as\s+/);return _0xa87fc8[0x0]['trim']();});_0x391e3b['forEach'](_0x25c77a=>{const _0x5f0cb6=_0x5c868e;_0x25c77a&&imports[_0x5f0cb6(0x1ad)]({'importingFile':_0x44ce37,'importedSymbol':_0x25c77a,'importedFromFile':_0x15edae[_0x5f0cb6(0x1c3)],'fileExists':_0x15edae['exists'],'isExternal':_0x15edae['isExternal']||![],'isDefault':![]});});}}const requireRegex=/(?:const|let|var)\s+(?:\{([^}]+)\}|([^=\s]+))\s*=\s*require\(['"`]([^'"`]+)['"`]\)/g;while((_0x262b3a=requireRegex[_0x5c868e(0x1cb)](_0x288898))!==null){const [,_0x40c577,_0x29a558,_0x132fd2]=_0x262b3a,_0x2ce4d8=await this[_0x5c868e(0x1e8)](_0x132fd2,_0x42b74a);!_0x2ce4d8['isExternal']&&_0x2ce4d8['exists']&&this['dependencies']['get'](_0x44ce37)['add'](_0x2ce4d8['path']);if(_0x40c577){const _0x4c8248=_0x40c577[_0x5c868e(0x1b3)](',')[_0x5c868e(0x1b4)](_0x4b89c9=>_0x4b89c9['trim']()['split'](':')[0x0][_0x5c868e(0x1b5)]());_0x4c8248['forEach'](_0x3da53c=>{const _0x10bc19=_0x5c868e;_0x3da53c&&imports[_0x10bc19(0x1ad)]({'importingFile':_0x44ce37,'importedSymbol':_0x3da53c,'importedFromFile':_0x2ce4d8['path'],'fileExists':_0x2ce4d8[_0x10bc19(0x1d7)],'isExternal':_0x2ce4d8['isExternal']||![],'isDefault':![]});});}else _0x29a558&&imports[_0x5c868e(0x1ad)]({'importingFile':_0x44ce37,'importedSymbol':_0x29a558[_0x5c868e(0x1b5)](),'importedFromFile':_0x2ce4d8['path'],'fileExists':_0x2ce4d8[_0x5c868e(0x1d7)],'isExternal':_0x2ce4d8['isExternal']||![],'isDefault':!![]});}_0xf1a042=_0x16ba05;}return imports;}[a0_0x5ca787(0x1f6)](_0x4455d5){const _0x2b35cc=a0_0x5ca787,exports=new Set(),_0x3cab7c=_0x4455d5[_0x2b35cc(0x1b3)]('\x0a');for(const _0x5a5b85 of _0x3cab7c){const _0x528223=_0x5a5b85[_0x2b35cc(0x1b5)]();if(_0x528223['startsWith']('//')||_0x528223['startsWith']('/*'))continue;/export\s+default\s+/[_0x2b35cc(0x1ee)](_0x528223)&&exports['add']('default');const _0x4beb89=_0x528223['match'](/export\s+\{([^}]+)\}/);if(_0x4beb89){const _0x26b031=_0x4beb89[0x1]['split'](',')[_0x2b35cc(0x1b4)](_0x23f421=>{const _0x3f90a0=_0x2b35cc,_0x380567=_0x23f421[_0x3f90a0(0x1b5)]()['split'](/\s+as\s+/);return _0x380567[_0x380567['length']-0x1]['trim']();});_0x26b031['forEach'](_0x180bf5=>exports[_0x2b35cc(0x1dd)](_0x180bf5));}const _0x5b87e5=_0x528223['match'](/export\s+(?:const|let|var|function|class|async\s+function)\s+([^=\s(]+)/);_0x5b87e5&&exports[_0x2b35cc(0x1dd)](_0x5b87e5[0x1]);const exportFromMatch=_0x528223['match'](/export\s+\{([^}]+)\}\s+from/);if(exportFromMatch){const _0x1018a5=exportFromMatch[0x1]['split'](',')['map'](_0x4a2922=>{const _0x26f2a9=_0x2b35cc,_0xa5c0e4=_0x4a2922[_0x26f2a9(0x1b5)]()['split'](/\s+as\s+/);return _0xa5c0e4[_0xa5c0e4['length']-0x1][_0x26f2a9(0x1b5)]();});_0x1018a5['forEach'](_0x4db766=>exports['add'](_0x4db766));}/export\s+\*\s+from/['test'](_0x528223)&&exports['add']('*');const moduleExportsMatch=_0x528223[_0x2b35cc(0x217)](/module\.exports\s*=\s*\{([^}]+)\}/);if(moduleExportsMatch){const _0x4703ab=moduleExportsMatch[0x1][_0x2b35cc(0x1b3)](',')[_0x2b35cc(0x1b4)](_0x44a577=>{const _0x3997d6=_0x2b35cc,_0x300518=_0x44a577['trim']()[_0x3997d6(0x1b3)](':');return _0x300518[0x0][_0x3997d6(0x1b5)]();});_0x4703ab[_0x2b35cc(0x1bb)](_0x3e4403=>exports[_0x2b35cc(0x1dd)](_0x3e4403));}/module\.exports\s*=\s*[^{]/['test'](_0x528223)&&exports['add']('default');const moduleExportsPropMatch=_0x528223['match'](/module\.exports\.([^=\s]+)\s*=/);moduleExportsPropMatch&&exports['add'](moduleExportsPropMatch[0x1]);const exportsPropMatch=_0x528223['match'](/exports\.([^=\s]+)\s*=/);exportsPropMatch&&exports[_0x2b35cc(0x1dd)](exportsPropMatch[0x1]);}return exports;}async[a0_0x5ca787(0x1e8)](importPath,_0x4a6120){const _0x53d772=a0_0x5ca787;if(importPath[_0x53d772(0x17a)]('.')){const _0x34ef77=a0_0x52e509[_0x53d772(0x181)](_0x4a6120),_0x1e1fb0=a0_0x52e509['resolve'](_0x34ef77,importPath);if(a0_0x52e509[_0x53d772(0x1c6)](importPath))try{const _0x5ef718=await a0_0x388bbf['stat'](_0x1e1fb0);if(_0x5ef718[_0x53d772(0x193)]())return{'path':this['getRelativePath'](_0x1e1fb0),'exists':!![]};}catch{}const _0x407584=['',_0x53d772(0x1ae),'.mjs','.ts','.jsx','.tsx',_0x53d772(0x1bf),_0x53d772(0x16f),'/index.jsx',_0x53d772(0x1a9)];for(const _0x320aec of _0x407584){const _0x4dd359=_0x1e1fb0+_0x320aec;try{const _0x223b13=await a0_0x388bbf['stat'](_0x4dd359);if(_0x223b13['isFile']())return{'path':this[_0x53d772(0x1d2)](_0x4dd359),'exists':!![]};}catch{}}return{'path':this['getRelativePath'](_0x1e1fb0),'exists':![]};}return{'path':importPath,'exists':!![],'isExternal':!![]};}[a0_0x5ca787(0x1d2)](_0x37ead8){const _0x33da49=a0_0x5ca787;return a0_0x52e509['relative'](this['rootDir'],_0x37ead8)[_0x33da49(0x1e1)](/\\/g,'/');}['findCircularDependencies'](){const _0x2a885c=a0_0x5ca787,_0x3bf0be=[],_0x53f1fa=new Set(),_0x370777=new Set(),_0x1ff484=(_0x3471bf,_0x24050d=[])=>{const _0x10935a=a0_0x1451;if(_0x370777['has'](_0x3471bf)){const _0x745f52=_0x24050d[_0x10935a(0x1c2)](_0x3471bf);_0x745f52!==-0x1&&_0x3bf0be[_0x10935a(0x1ad)]([..._0x24050d['slice'](_0x745f52),_0x3471bf]);return;}if(_0x53f1fa['has'](_0x3471bf))return;_0x53f1fa[_0x10935a(0x1dd)](_0x3471bf),_0x370777[_0x10935a(0x1dd)](_0x3471bf),_0x24050d['push'](_0x3471bf);const _0x221016=this[_0x10935a(0x17b)][_0x10935a(0x1ec)](_0x3471bf)||new Set();for(const _0x46a339 of _0x221016){_0x1ff484(_0x46a339,[..._0x24050d]);}_0x370777['delete'](_0x3471bf);};for(const _0x2f23d3 of this[_0x2a885c(0x17b)]['keys']()){!_0x53f1fa[_0x2a885c(0x185)](_0x2f23d3)&&_0x1ff484(_0x2f23d3);}return _0x3bf0be;}['findUnusedExports'](){const _0x535f81=a0_0x5ca787,_0x2757a3=new Map();for(const _0x179050 of this['imports']){!_0x179050[_0x535f81(0x1d0)]&&(!_0x2757a3['has'](_0x179050[_0x535f81(0x1f9)])&&_0x2757a3[_0x535f81(0x18d)](_0x179050[_0x535f81(0x1f9)],new Set()),_0x2757a3['get'](_0x179050['importedFromFile'])[_0x535f81(0x1dd)](_0x179050['importedSymbol']));}const _0x5df17a={};for(const [_0x51da99,exports]of this['exports']['entries']()){const _0x18b3ef=_0x2757a3[_0x535f81(0x1ec)](_0x51da99)||new Set(),_0x4055d0=Array[_0x535f81(0x1fb)](exports)['filter'](_0x1f921e=>!_0x18b3ef['has'](_0x1f921e)&&_0x1f921e!=='*');_0x4055d0[_0x535f81(0x206)]>0x0&&(_0x5df17a[_0x51da99]=_0x4055d0);}return _0x5df17a;}async[a0_0x5ca787(0x187)](_0x3c8de2='full'){const _0x3afb47=a0_0x5ca787;this[_0x3afb47(0x1a6)]?.[_0x3afb47(0x1e9)]('Starting import analysis',{'mode':_0x3c8de2,'rootDir':this[_0x3afb47(0x195)]}),await this['loadIgnoreFile']();const _0x48355e=await this[_0x3afb47(0x1a2)](this[_0x3afb47(0x195)]);this['logger']?.[_0x3afb47(0x1e9)](_0x3afb47(0x1c0),{'count':_0x48355e[_0x3afb47(0x206)]});for(const _0x54dd89 of _0x48355e){try{const _0x556670=await a0_0x388bbf[_0x3afb47(0x19c)](_0x54dd89,_0x3afb47(0x194)),_0x4c66d3=this[_0x3afb47(0x1d2)](_0x54dd89),_0x16a6d2=await this[_0x3afb47(0x1da)](_0x556670,_0x54dd89);this[_0x3afb47(0x1dc)][_0x3afb47(0x1ad)](..._0x16a6d2);const _0xcdf6af=this['parseExports'](_0x556670);this[_0x3afb47(0x1c1)]['set'](_0x4c66d3,_0xcdf6af);}catch(_0x14e5a6){this[_0x3afb47(0x1a6)]?.[_0x3afb47(0x1b6)]('Error\x20parsing\x20file',{'file':_0x54dd89,'error':_0x14e5a6['message']});}}this[_0x3afb47(0x1a6)]?.[_0x3afb47(0x1e9)]('Parsed\x20all\x20files',{'imports':this['imports']['length'],'exports':this['exports'][_0x3afb47(0x1a8)]});const _0x365724={'summary':{'totalFiles':_0x48355e['length'],'totalImports':this['imports'][_0x3afb47(0x206)],'totalExports':Array[_0x3afb47(0x1fb)](this[_0x3afb47(0x1c1)]['values']())['reduce']((_0x1ca029,exports)=>_0x1ca029+exports[_0x3afb47(0x1a8)],0x0)},'missingExports':{},'missingFiles':{},'fileNotFoundImports':[]};for(const importEntry of this[_0x3afb47(0x1dc)]){const {importingFile:importingFile,importedSymbol:importedSymbol,importedFromFile:importedFromFile,isDefault:_0x37871d,isNamespace:_0x50c734,fileExists:_0x1e84cd,isExternal:_0x213e1f}=importEntry;if(!_0x1e84cd&&!_0x213e1f){_0x365724[_0x3afb47(0x180)]['push']({'importingFile':importingFile,'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'isDefault':_0x37871d||![],'isNamespace':_0x50c734||![]});!_0x365724['missingFiles'][importingFile]&&(_0x365724[_0x3afb47(0x18a)][importingFile]=[]);_0x365724['missingFiles'][importingFile][_0x3afb47(0x1ad)]({'missingFile':importedFromFile,'importedSymbol':importedSymbol,'isDefault':_0x37871d||![],'isNamespace':_0x50c734||![]});continue;}if(_0x213e1f)continue;const exportingFileExports=this[_0x3afb47(0x1c1)]['get'](importedFromFile);let _0x15a4cb=![];if(exportingFileExports){if(_0x50c734)_0x15a4cb=exportingFileExports[_0x3afb47(0x1a8)]>0x0;else _0x37871d?_0x15a4cb=exportingFileExports['has']('default'):_0x15a4cb=exportingFileExports[_0x3afb47(0x185)](importedSymbol)||exportingFileExports[_0x3afb47(0x185)]('*');}!_0x15a4cb&&(!_0x365724['missingExports'][importingFile]&&(_0x365724[_0x3afb47(0x188)][importingFile]=[]),_0x365724['missingExports'][importingFile]['push']({'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'availableExports':exportingFileExports?Array[_0x3afb47(0x1fb)](exportingFileExports):[],'isDefault':_0x37871d||![],'isNamespace':_0x50c734||![]}));}return(_0x3c8de2===_0x3afb47(0x1fe)||_0x3c8de2===_0x3afb47(0x172))&&(this['logger']?.['info'](_0x3afb47(0x19f)),_0x365724[_0x3afb47(0x20e)]=this['findCircularDependencies'](),_0x365724[_0x3afb47(0x214)]=this['findUnusedExports']()),this['logger']?.[_0x3afb47(0x1e9)]('Analysis\x20complete',{'missingFiles':_0x365724['fileNotFoundImports'][_0x3afb47(0x206)],'missingExports':Object['keys'](_0x365724['missingExports'])['length']}),_0x365724;}}function a0_0x1451(_0x5ab676,_0x5e8924){_0x5ab676=_0x5ab676-0x16f;const _0x443642=a0_0x4436();let _0x1451c1=_0x443642[_0x5ab676];if(a0_0x1451['XJKEMg']===undefined){var _0x533c71=function(_0x2dc41f){const _0x4688ad='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x388bbf='',_0x52e509='';for(let _0x3e8737=0x0,_0x4670f0,_0x48d21e,_0x508e1d=0x0;_0x48d21e=_0x2dc41f['charAt'](_0x508e1d++);~_0x48d21e&&(_0x4670f0=_0x3e8737%0x4?_0x4670f0*0x40+_0x48d21e:_0x48d21e,_0x3e8737++%0x4)?_0x388bbf+=String['fromCharCode'](0xff&_0x4670f0>>(-0x2*_0x3e8737&0x6)):0x0){_0x48d21e=_0x4688ad['indexOf'](_0x48d21e);}for(let _0x3dc16c=0x0,_0x488c64=_0x388bbf['length'];_0x3dc16c<_0x488c64;_0x3dc16c++){_0x52e509+='%'+('00'+_0x388bbf['charCodeAt'](_0x3dc16c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x52e509);};a0_0x1451['FeCJgY']=_0x533c71,a0_0x1451['apaxly']={},a0_0x1451['XJKEMg']=!![];}const _0x478e1d=_0x443642[0x0],_0x523ba8=_0x5ab676+_0x478e1d,_0x583740=a0_0x1451['apaxly'][_0x523ba8];return!_0x583740?(_0x1451c1=a0_0x1451['FeCJgY'](_0x1451c1),a0_0x1451['apaxly'][_0x523ba8]=_0x1451c1):_0x1451c1=_0x583740,_0x1451c1;}export default ImportAnalyzerTool;function a0_0x4436(){const _0x46fe81=['yxzHAwXHyMXLrxHWB3j0CW','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','zw50CMLLCW','zgv0ywLSzwq','t3v0Chv0oIa','C2HVDwXKswDUB3jLrMLSzq','B3v0Chv0','C3rHCNrZv2L0Aa','zgvWzw5Kzw5JAwvZ','icaGia','icaGvw51C2vKoIa','mte3nZu5m0zurNjivG','revgqvvmvf9jr05puKvFrKLmrq','zMLSzu5VDezVDw5Ksw1WB3j0CW','zgLYBMfTzq','cVcFL5hVUi8GifbpvevoveLbteXzifvovvnfrcbfwfbpuLrt','icaYlIbszxnVBhzLia','8j+tPcbuB3rHBcbLEhbVCNrZoIa','AgfZ','lMDPDa','yw5HBhL6zq','BwLZC2LUz0v4Cg9YDhm','iIbVCIb1C2uGB25Lig9MihrOzsbHDMfPBgfIBguGzxHWB3j0CW','BwLZC2LUz0zPBgvZ','nde0nurdtxvlwa','Axnoyw1LC3bHy2u','C2v0','zxHLy3v0zq','C3rYAw5N','rMLSzsbJB3vUDcbLEgnLzwrZigXPBwL0oIa','odmYn2XowNLSuW','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','AxngAwXL','DxrMltG','CM9VDerPCG','BM9YBwfSAxPL','revgqvvmvf9nt0rf','ANnVBG','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','yxr0CMLIDxrLCW','cUkAOo+4JYaGtuLtu0LorYbfwfbpuLrt','CMvHzezPBgu','sw52ywXPzcbVDxrWDxq6ia','AwDUB3jLrMLSzq','uNvUBMLUzYbMDwXSigfUywX5C2LZ','BMfTzq','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','z2v0qwXSrMLSzxm','A2v5CW','ihn5BwjVBhmGBM90igv4Cg9YDgvKigzYB20GDgHLAxiGC291CMnLCW','4P2mie1ju1njtKCGrKLmrvm','Bg9Nz2vY','icaGicaGvhj5Aw5NihrVigLTCg9YDdOG','C2L6zq','l2LUzgv4lNrZEa','Aw1WB3j0zwrtEw1IB2W','8j+tIIbezxrHAwXLzcbjBxbVCNqVrxHWB3j0iefUywX5C2LZifjLCg9YDa','zMLUza','ChvZAa','lMPZ','mtu5ndy3neXPA2TztW','zMLSDgvY','zgLZDa','AxnbyNnVBhv0zq','C3bSAxq','BwfW','DhjPBq','D2fYBG','C2XPy2u','icaGicaG8j+sOsbgAxG6ienOzwnRigLMigzPBguGzxHPC3rZig9YignVCNjLy3qGDgHLigLTCg9YDcbWyxrO','igLTCg9YDhmG','x2zVCM1HDerLDgfPBgvKt3v0Chv0','zM9YrwfJAa','D29YA2LUz0rPCMvJDg9YEq','8j+tPsbuB3rHBcbPBxbVCNrZoIa','AM9PBG','l2LUzgv4lMPZ','rM91BMqGzMLSzxm','zxHWB3j0CW','Aw5KzxHpzG','Cgf0Aa','8j+tIcbtDgf0Axn0AwnZoG','ignPCMn1BgfYigrLCgvUzgvUy3KGy2HHAw4OCYK','zxH0BMfTzq','lMPZEa','icaGicaG8j+sOsbgAxG6iefKzcbLEhbVCNqGzM9Yici','mZu0nJa5zvPLC0fQ','CMvSyxrPDMu','zxHLyW','8j+uJsbbBMfSExPPBMCGAw1WB3j0CYbPBJOG','8j+tIIbjBxbVCNqVrxHWB3j0iefUywX5C2LZifn1Bw1HCNK','lM1QCW','icaZlIbszwzHy3rVCIa','AxnfEhrLCM5HBa','vKfmsurFt1vuufvuuW','z2v0uMvSyxrPDMvqyxrO','zgvIDwC','C29Tzq','y3DK','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','zxHPC3rZ','mJi0nJm5mLbgwwTwyq','revgqvvmvf9pvvrqvvq','CgfYC2vjBxbVCNrZ','Aw5JBhvKzxm','Aw1WB3j0CW','ywrK','icdIGkiGvg90ywWGzxHWB3j0CZOG','nJmXotrjzeDqzfm','ig1PC3nPBMCGzxHWB3j0khmP','CMvWBgfJzq','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','iJ8GkgnHC2uGBwLZBwf0y2GP','mtvgBNjstLO','Bw9Kzq','CMvKDwnL','cIaGtwLZC2LUzYbfEhbVCNrZoG','CMvZB2X2zuLTCg9YDfbHDgG','Aw5MBW','C3LTyM9StMfTzq','iokgKIa','z2v0','tw9KztOG','DgvZDa','cVcFK4qG','icdIGkiGrMLSzxmGyw5HBhL6zwq6ia','x2zVCM1HDfn1Bw1HCNLpDxrWDxq','BMfTzwq','lIbnDxn0igjLig9UzsbVzJOG','C3vTBwfYEq','icaGicaG8j+sOsbgAxG6ie5VigrLzMf1BhqGzxHWB3j0lIbvC2uGBMfTzwqGAw1WB3j0oIb7ia','CgfYC2vfEhbVCNrZ','BM9Kzv9TB2r1BgvZ','mtmZnMLyAhr3sq','Aw1WB3j0zwrgCM9TrMLSzq','icaGiokaOIa','zNjVBq','n0TiBu9QsW','yMfZzw5HBwu','zNvSBa','B2jQzwn0','DMfSDwvZ','Dg90ywXgAwXLCW','BMfTzxnWywnL','igLTCg9YDhmGCg9PBNrPBMCGDg8GBM9Ulwv4Axn0zw50igzPBgvZ','vg9Vig1HBNKGzMLSzxmGDg8Gyw5HBhL6ztOG','AxnezwzHDwX0','BgvUz3rO','Aw1WB3j0Aw5NrMLSzq','ig1PC3nPBMCGzMLSzsbYzwzLCMvUy2uOCYK','iIaO','z2v0rgvZy3jPChrPB24','ugf0AcbKB2vZig5VDcbLEgLZDdOG','ig5VBI1LEgLZDgvUDcbZEw1IB2WOCYK','8j+uHcbdAxjJDwXHCIbKzxbLBMrLBMnPzxm6ia','y2LYy3vSyxjezxbLBMrLBMnPzxm','cVcFLiqGq0Lsq1vmqviGrevqru5eru5dsuvt','BwvZC2fNzq','icaGicaG8j+tPcbbDMfPBgfIBguGzxHWB3j0CZOG','Dg90ywXfEhbVCNrZ','mtK2otbJCMXzzfe','Dw51C2vKrxHWB3j0CW','icaGicaG8j+sOsbgAxG6ierLzMf1BhqGzxHWB3j0igv4Axn0CYWGy2HLy2SGAw1WB3j0ihn5BNrHEa','Dg9mB3DLCKnHC2u','Bwf0y2G','lMDPDgLNBM9Yzq','y292zxjHz2u','CgfYC2vuywDZ','l2LUzgv4lNrZ','AwDUB3jLugf0DgvYBNm','cVcFKQeGuNvUihDPDgGGB3v0Chv0psjKzxrHAwXLzciGzM9YignVBxbSzxrLigfUywX5C2LZigfUzcbMAxGGC3vNz2vZDgLVBNm','zML4'];a0_0x4436=function(){return _0x46fe81;};return a0_0x4436();}
1
+ function a0_0x3332(){const _0x3eaacf=['B3v0Chv0','CgfYC2vjBxbVCNrZ','Cgf0AcbTDxn0igjLigeGC3rYAw5N','DhjPBq','lMDPDgLNBM9Yzq','z2v0uMvSyxrPDMvqyxrO','rMLSzsbJB3vUDcbLEgnLzwrZigXPBwL0oIa','l2LUzgv4lMPZ','C3rYAw5NAwz5','AM9PBG','ugfYC2vKigfSBcbMAwXLCW','rxjYB3iGCgfYC2LUzYbMAwXL','AxneAxjLy3rVCNK','icaGicaG8j+sOsbgAxG6ierLzMf1BhqGzxHWB3j0igv4Axn0CYWGy2HLy2SGAw1WB3j0ihn5BNrHEa','CMvHzezPBgu','C3rHCNrZv2L0Aa','Aw5MBW','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','icaGicaG8j+tPcboBYbLEhbVCNrZigzVDw5KigLUihrHCMDLDcbMAwXL','yNvPBgq','CMvWBgfJzq','8j+tPsbuB3rHBcbPBxbVCNrZoIa','x2zVCM1HDerLDgfPBgvKt3v0Chv0','owzpvhjoAa','ugf0AcbKB2vZig5VDcbLEgLZDdOG','revgqvvmvf9jr05puKvFuefuvevstLm','zNjVBq','mty4odu1swHVrNHg','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0k','Bwf0y2G','cIaGq3LJBguG','AxnbyNnVBhv0zq','C2v0','lM1QCW','AxngAwXL','yw5HBhL6zq','Aw1WB3j0zwrgCM9TrMLSzq','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','iIaO','BMfTzwq','BMfTzxnWywnL','revgqvvmvf9pvvrqvvq','zxHPC3rZ','4P2mie1PC3nPBMCGzMLSzxm6ia','AxnfEhrLCM5HBa','lNrZ','Cgf0Aa','zxHLyW','BwLZC2LUz0zPBgvZ','yxzHAwXHyMXLrxHWB3j0CW','nKjqtfHsBa','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','8j+tGsbgAwXLCYbHBMfSExPLzdOG','BM9YBwfSAxPL','zxjYB3i','C3vTBwfYEq','ignPCMn1BgfYigrLCgvUzgvUy3KGy2HHAw5ZigrLDgvJDgvK','Dg90ywXfEhbVCNrZ','AxnezwzHDwX0','C3rYAw5N','8j+uHcbdAxjJDwXHCIbKzxbLBMrLBMnPzxm6ia','Dg90ywXjBxbVCNrZ','Bg9HzeLNBM9YzuzPBgu','ywrK','z2v0rgvZy3jPChrPB24','zgv0ywLSzwq','BM9Kzv9TB2r1BgvZ','C2XPy2u','revgqvvmvf9nt0rf','revgqvvmvf9jr05puKvFrKLmrq','Bw9Kzq','sw1WB3j0igfUywX5EMvYigv4zwn1DgLUzW','z2v0qwXSrMLSzxm','x2zVCM1HDfn1Bw1HCNLpDxrWDxq','8j+tPcbuB3rHBcbLEhbVCNrZoIa','icaGicaG8j+sOsbgAxG6iefKzcbLEhbVCNrZihrVia','icdIGkiGrMLSzxmGyw5HBhL6zwq6ia','zw50CMLLCW','zxHWB3j0CW','DgvZDa','ig1PC3nPBMCGzMLSzsbYzwzLCMvUy2uOCYK','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','vKfmsurFtu9ervm','zM9YrwfJAa','z2v0','mZC5mJqXmhvLrhvVBW','Aw5KzxHpzG','AwDUB3jLlwzPBgu','icaGicaGrNjVBsbMAwXLoIa','iJ8GkgnHC2uGBwLZBwf0y2GP','icaGicaG8j+sOsbgAxG6iefKzcbLEhbVCNqGzM9Yici','ndjtC3fqseO','C3bSAxq','icaGicaG8j+sOsbgAxG6ierPzcb5B3uGBwvHBIaI','Aw1WB3j0zwrtEw1IB2W','8j+tIcbtDgf0Axn0AwnZoG','A2v5CW','icaZlIbszwzHy3rVCIa','ignPCMn1BgfYigrLCgvUzgvUy3KGy2HHAw4OCYK','Aw1WB3j0Aw5NrMLSzq','ChvZAa','cVcFLiqGq0Lsq1vmqviGrevqru5eru5dsuvt','lMPZEa','C3LTyM9StMfTzq','icaGvw51C2vKoIa','zgvSzxrL','icaXlIbgAxGG','lMPZ','t3v0Chv0oIa','icaGiokaOIa','cVcFLi0Gvg9WieLZC3vLCYb0BYbgAxG6','4PQG77IpicbnAxnZAw5Nigv4Cg9YDhm6ia','yxr0CMLIDxrLCW','icaGicaG8j+tPcbbDMfPBgfIBguGzxHWB3j0CZOG','Bg9Nz2vY','ig1PC3nPBMCGzxHWB3j0khmP','ndu0mtqZmND4zw9tuG','rM91BMqGzMLSzxm','zgLZDa','BwLZC2LUz0v4Cg9YDhm','8j+uJsbbBMfSExPPBMCGAw1WB3j0CYbPBJOG','zML4','uNvUBMLUzYbMDwXSigfUywX5C2LZ','Dg90ywXgAwXLCW','ndC4nZDpsuXVtNq','vKfmsurFt1vuufvuuW','Aw5JBhvKzxm','BwfW','CMvHzgrPCG','ywnJzxnZ','ANnVBG','DMfSDwvZ','mti5nteXmK5XwgDhEa','y2LYy3vSyxjezxbLBMrLBMnPzxm','zxH0BMfTzq','nJi4mZm3nM9pA3bQwa','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','cVcFL5hVUi8GifbpvevoveLbteXzifvovvnfrcbfwfbpuLrt','BwvZC2fNzq','zgvWzw5Kzw5JAwvZ','icHTyxG6ia','lNrZEa','x3zHBgLKyxrLugfYyw1LDgvYCW','DxrMltG','BgvUz3rO','C3rHDa','nhbZDePxtW','AwDUB3jLrMLSzsbTDxn0igjLigeGC3rYAw5N','cVcFK4qG','zMLUzenPCMn1BgfYrgvWzw5Kzw5JAwvZ','CMvZB2X2zuLTCg9YDfbHDgG','zgvIDwC','CMvZB2X2zq','Dw51C2vKrxHWB3j0CW','zMLSzu5VDezVDw5Ksw1WB3j0CW','igLTCg9YDhmGCg9PBNrPBMCGDg8GBM9Ulwv4Axn0zw50igzPBgvZ','mZC2mJyWBLPPzvn6','Aw1WB3j0CW','CM9VDerPCG','zNvSBa','CMvKDwnL','AgfZ','tufyx0zjtevt','D2fYBG','icdIGkiGvg90ywWGzxHWB3j0CZOG','lMDPDa','C2L6zq','AwDUB3jLrMLSzq','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa'];a0_0x3332=function(){return _0x3eaacf;};return a0_0x3332();}const a0_0x159074=a0_0x2e53;(function(_0xc1bced,_0x2c53bd){const _0x2ae4a0=a0_0x2e53,_0x582d04=_0xc1bced();while(!![]){try{const _0x4f5f3e=-parseInt(_0x2ae4a0(0x155))/0x1*(-parseInt(_0x2ae4a0(0x10b))/0x2)+parseInt(_0x2ae4a0(0x15d))/0x3+-parseInt(_0x2ae4a0(0xc2))/0x4*(-parseInt(_0x2ae4a0(0xf4))/0x5)+parseInt(_0x2ae4a0(0xcc))/0x6*(-parseInt(_0x2ae4a0(0x134))/0x7)+parseInt(_0x2ae4a0(0x14d))/0x8*(parseInt(_0x2ae4a0(0xf0))/0x9)+parseInt(_0x2ae4a0(0x12e))/0xa+-parseInt(_0x2ae4a0(0x160))/0xb;if(_0x4f5f3e===_0x2c53bd)break;else _0x582d04['push'](_0x582d04['shift']());}catch(_0x13eed4){_0x582d04['push'](_0x582d04['shift']());}}}(a0_0x3332,0x94926));import{promises as a0_0x501a48}from'fs';import a0_0x217288 from'path';import{BaseTool}from'./baseTool.js';import a0_0x432cba from'../utilities/tagParser.js';const ANALYZER_CONFIG={'DEFAULT_MODE':'full','VALID_MODES':['full','quick',a0_0x159074(0x152)],'DEFAULT_OUTPUT':'summary','VALID_OUTPUTS':['summary',a0_0x159074(0x11a),'json'],'DEFAULT_IGNORE_FILE':a0_0x159074(0xdd),'MAX_FILES':0x2710,'SUPPORTED_EXTENSIONS':[a0_0x159074(0x144),'.mjs',a0_0x159074(0x106),'.jsx',a0_0x159074(0xbd)],'DEFAULT_IGNORE_PATTERNS':[a0_0x159074(0x11b),a0_0x159074(0xd5),a0_0x159074(0x14f),a0_0x159074(0xec),'coverage'],'FILE_READ_TIMEOUT':0x1388};export class ImportAnalyzerTool extends BaseTool{[a0_0x159074(0x119)](){return'Tool:\x20Import\x20Analyzer\x20-\x20Analyze\x20JavaScript/TypeScript\x20imports\x20and\x20exports\x0a\x0a**Purpose:**\x20Analyzes\x20JavaScript/TypeScript\x20projects\x20to\x20detect\x20broken\x20imports,\x20missing\x20exports,\x20circular\x20dependencies,\x20and\x20unused\x20exports.\x0a\x0a**Invocation\x20Syntax:**\x0a\x0aXML\x20Format:\x0a```xml\x0a<import-analyzer>\x0a\x20\x20<path>./src</path>\x0a\x20\x20<mode>full</mode>\x0a\x20\x20<output>summary</output>\x0a\x20\x20<ignore-file>.gitignore</ignore-file>\x0a</import-analyzer>\x0a```\x0a\x0aJSON\x20Format:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22import-analyzer\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22path\x22:\x20\x22./src\x22,\x0a\x20\x20\x20\x20\x22mode\x22:\x20\x22full\x22,\x0a\x20\x20\x20\x20\x22output\x22:\x20\x22summary\x22,\x0a\x20\x20\x20\x20\x22ignoreFile\x22:\x20\x22.gitignore\x22\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**path**\x20(string,\x20optional):\x20Path\x20to\x20directory\x20to\x20analyze.\x20Default:\x20\x22.\x22\x0a-\x20**mode**\x20(string,\x20optional):\x20Analysis\x20mode.\x20Options:\x0a\x20\x20-\x20\x22full\x22\x20-\x20Complete\x20analysis\x20(default)\x0a\x20\x20-\x20\x22quick\x22\x20-\x20Fast\x20scan\x20for\x20missing\x20files\x20only\x0a\x20\x20-\x20\x22fix\x22\x20-\x20Includes\x20fix\x20suggestions\x0a-\x20**output**\x20(string,\x20optional):\x20Output\x20format.\x20Options:\x0a\x20\x20-\x20\x22summary\x22\x20-\x20Concise\x20summary\x20(default)\x0a\x20\x20-\x20\x22detailed\x22\x20-\x20Full\x20report\x20with\x20fixes\x0a\x20\x20-\x20\x22json\x22\x20-\x20Machine-readable\x20format\x0a-\x20**ignoreFile**\x20(string,\x20optional):\x20Ignore\x20file\x20name.\x20Default:\x20\x22.gitignore\x22\x0a\x0a**What\x20It\x20Detects:**\x0a-\x20Missing\x20files\x20(imports\x20pointing\x20to\x20non-existent\x20files)\x0a-\x20Missing\x20exports\x20(symbols\x20not\x20exported\x20from\x20target\x20files)\x0a-\x20Circular\x20dependencies\x20(files\x20that\x20depend\x20on\x20each\x20other\x20in\x20a\x20loop)\x0a-\x20Unused\x20exports\x20(exports\x20never\x20imported\x20anywhere)\x0a\x0a**Examples:**\x0a\x0a1.\x20Quick\x20project\x20scan:\x0a```xml\x0a<import-analyzer>\x0a\x20\x20<mode>quick</mode>\x0a</import-analyzer>\x0a```\x0a\x0a2.\x20Full\x20analysis\x20with\x20detailed\x20report:\x0a```xml\x0a<import-analyzer>\x0a\x20\x20<mode>full</mode>\x0a\x20\x20<output>detailed</output>\x0a</import-analyzer>\x0a```\x0a\x0a3.\x20Analyze\x20specific\x20directory:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22import-analyzer\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22path\x22:\x20\x22./src/components\x22,\x20\x22mode\x22:\x20\x22full\x22\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Supports\x20ES6\x20modules\x20(import/export)\x20and\x20CommonJS\x20(require/module.exports)\x0a-\x20Respects\x20.gitignore\x20patterns\x0a-\x20Correctly\x20handles\x20commented\x20imports\x20and\x20multi-line\x20statements\x0a-\x20Works\x20with\x20.js,\x20.mjs,\x20.ts,\x20.jsx,\x20.tsx\x20files';}['parseParameters'](_0x1fb813){const _0x51b503=a0_0x159074;if(typeof _0x1fb813==='object'&&_0x1fb813!==null)return{'path':_0x1fb813[_0x51b503(0x107)]||'.','mode':_0x1fb813[_0x51b503(0x11f)]||ANALYZER_CONFIG[_0x51b503(0x11d)],'output':_0x1fb813['output']||ANALYZER_CONFIG[_0x51b503(0x102)],'ignoreFile':_0x1fb813['ignoreFile']||ANALYZER_CONFIG[_0x51b503(0x11e)]};if(typeof _0x1fb813==='string'){const _0x45e339=/<import-analyzer([^>]*)>([\s\S]*?)<\/import-analyzer>/i,_0x2bedec=_0x45e339['exec'](_0x1fb813);if(_0x2bedec){const _0xa770bb=_0x2bedec[0x1],_0x2ed9d0=_0x2bedec[0x2],_0x5a695a=/path=["']([^"']*)["']/i[_0x51b503(0x108)](_0xa770bb),_0x5bc097=/mode=["']([^"']*)["']/i['exec'](_0xa770bb),_0x53a066=/output=["']([^"']*)["']/i['exec'](_0xa770bb),_0x29f122=/ignore-file=["']([^"']*)["']/i[_0x51b503(0x108)](_0xa770bb),_0x466673=/<path>(.*?)<\/path>/i,_0x32e165=_0x466673[_0x51b503(0x108)](_0x2ed9d0),_0x1b7c37=/<mode>(.*?)<\/mode>/i,_0x109327=_0x1b7c37[_0x51b503(0x108)](_0x2ed9d0),_0x4ba198=/<output>(.*?)<\/output>/i,_0x502421=_0x4ba198['exec'](_0x2ed9d0),_0x332572=/<ignore-file>(.*?)<\/ignore-file>/i,_0x402368=_0x332572['exec'](_0x2ed9d0),_0x33fe6a=(_0x32e165?_0x32e165[0x1][_0x51b503(0xdc)]():null)||(_0x5a695a?_0x5a695a[0x1]:'.'),_0x5f007d=(_0x109327?_0x109327[0x1][_0x51b503(0xdc)]():null)||(_0x5bc097?_0x5bc097[0x1]:ANALYZER_CONFIG['DEFAULT_MODE']),_0x18add6=(_0x502421?_0x502421[0x1][_0x51b503(0xdc)]():null)||(_0x53a066?_0x53a066[0x1]:ANALYZER_CONFIG[_0x51b503(0x102)]),_0x6df30f=(_0x402368?_0x402368[0x1]['trim']():null)||(_0x29f122?_0x29f122[0x1]:ANALYZER_CONFIG['DEFAULT_IGNORE_FILE']);return{'path':_0x33fe6a,'mode':_0x5f007d,'output':_0x18add6,'ignoreFile':_0x6df30f};}try{const _0x1583c8=a0_0x432cba['parseTags'](_0x1fb813,'analyze');if(_0x1583c8&&_0x1583c8['length']>0x0){const _0x4c84b8=_0x1583c8[0x0];return{'path':_0x4c84b8['attributes'][_0x51b503(0x107)]||'.','mode':_0x4c84b8['attributes']['mode']||ANALYZER_CONFIG['DEFAULT_MODE'],'output':_0x4c84b8[_0x51b503(0x149)]['output']||ANALYZER_CONFIG[_0x51b503(0x102)],'ignoreFile':_0x4c84b8['attributes'][_0x51b503(0x130)]||ANALYZER_CONFIG['DEFAULT_IGNORE_FILE']};}}catch(_0x3e3dc4){}throw new Error('Invalid import-analyzer format. Use <import-analyzer> tags or JSON format.');}throw new Error(_0x51b503(0x12a));}[a0_0x159074(0xbe)](_0x2a4e05){const _0x1cfff7=a0_0x159074;if(!_0x2a4e05||typeof _0x2a4e05!=='object')throw new Error(_0x1cfff7(0xb8));if(_0x2a4e05[_0x1cfff7(0x107)]&&typeof _0x2a4e05[_0x1cfff7(0x107)]!==_0x1cfff7(0x114))throw new Error(_0x1cfff7(0xdb));if(_0x2a4e05['mode']&&!ANALYZER_CONFIG['VALID_MODES'][_0x1cfff7(0x157)](_0x2a4e05['mode']))throw new Error('Invalid\x20mode:\x20'+_0x2a4e05[_0x1cfff7(0x11f)]+'.\x20Must\x20be\x20one\x20of:\x20'+ANALYZER_CONFIG[_0x1cfff7(0x12b)][_0x1cfff7(0xe2)](',\x20'));if(_0x2a4e05['output']&&!ANALYZER_CONFIG[_0x1cfff7(0x156)][_0x1cfff7(0x157)](_0x2a4e05[_0x1cfff7(0xd9)]))throw new Error('Invalid\x20output:\x20'+_0x2a4e05[_0x1cfff7(0xd9)]+'.\x20Must\x20be\x20one\x20of:\x20'+ANALYZER_CONFIG[_0x1cfff7(0x156)][_0x1cfff7(0xe2)](',\x20'));if(_0x2a4e05['ignoreFile']&&typeof _0x2a4e05['ignoreFile']!=='string')throw new Error(_0x1cfff7(0xc3));}['_resolveAndValidatePath'](_0x198eb6,_0x53d391){const _0x2caf3c=a0_0x159074,{projectDir:_0xb0ac9e,directoryAccess:_0x1e0d75}=_0x53d391;let _0xff1013=_0xb0ac9e||process['cwd']();_0x1e0d75&&_0x1e0d75['workingDirectory']&&(_0xff1013=_0x1e0d75['workingDirectory']);const _0x187416=a0_0x217288[_0x2caf3c(0xf8)](_0x198eb6)?a0_0x217288[_0x2caf3c(0x10e)](_0x198eb6):a0_0x217288['normalize'](a0_0x217288[_0x2caf3c(0xe2)](_0xff1013,_0x198eb6)),_0xba510c=a0_0x217288['normalize'](_0xff1013);if(!_0x187416['startsWith'](_0xba510c))throw new Error('Path\x20traversal\x20detected:\x20'+_0x198eb6+_0x2caf3c(0xea));return _0x187416;}async['execute'](_0x4daea9,_0x3b7204={}){const _0x29f89a=a0_0x159074;try{this['_validateParameters'](_0x4daea9);const {path:_0xe5bc12,mode:_0x1de4d3,output:_0x5a9d16,ignoreFile:_0x1e432}=_0x4daea9,{projectDir:_0x48386b,agentId:_0x29e71d,directoryAccess:_0x45e6ab}=_0x3b7204,_0x2ec717=this['_resolveAndValidatePath'](_0xe5bc12,_0x3b7204);this['logger']?.['info'](_0x29f89a(0x120),{'mode':_0x1de4d3,'resolvedPath':_0x2ec717,'output':_0x5a9d16,'agentId':_0x29e71d});const _0x294c1d=[];_0x294c1d[_0x29f89a(0x13d)](_0x29f89a(0x151)+_0x2ec717),_0x294c1d[_0x29f89a(0x13d)]('Mode:\x20'+_0x1de4d3),_0x294c1d['push'](_0x29f89a(0x145)+_0x5a9d16+'\x0a');try{await a0_0x501a48[_0x29f89a(0x15a)](_0x2ec717);}catch{return{'success':![],'error':_0x29f89a(0xf1)+_0x2ec717,'output':_0x294c1d['join']('\x0a')};}const _0x4a44da=new ImportExportAnalyzer(_0x2ec717,_0x1e432,this[_0x29f89a(0x14b)]),_0x535c89=await _0x4a44da['analyze'](_0x1de4d3);let _0x5c8f24;switch(_0x5a9d16){case _0x29f89a(0x15b):_0x5c8f24=JSON[_0x29f89a(0xe1)](_0x535c89,null,0x2);break;case _0x29f89a(0x11a):_0x5c8f24=this[_0x29f89a(0xef)](_0x535c89),_0x294c1d[_0x29f89a(0x13d)](_0x5c8f24);break;case _0x29f89a(0x110):default:_0x5c8f24=this[_0x29f89a(0x122)](_0x535c89),_0x294c1d['push'](_0x5c8f24);break;}return{'success':!![],'mode':_0x1de4d3,'message':'Import\x20analysis\x20completed','statistics':{'totalFiles':_0x535c89['summary'][_0x29f89a(0x154)],'totalImports':_0x535c89[_0x29f89a(0x110)]['totalImports'],'totalExports':_0x535c89[_0x29f89a(0x110)]['totalExports'],'issuesFound':_0x535c89['fileNotFoundImports'][_0x29f89a(0xc0)]+Object[_0x29f89a(0x15c)](_0x535c89[_0x29f89a(0x150)])['reduce']((_0x51074b,_0x552e5c)=>_0x51074b+_0x552e5c['length'],0x0)},'output':_0x5a9d16==='json'?_0x5c8f24:_0x294c1d[_0x29f89a(0xe2)]('\x0a'),'results':_0x535c89};}catch(_0x1c3385){return this['logger']?.[_0x29f89a(0x10f)]('Import\x20analyzer\x20error:',_0x1c3385),{'success':![],'error':_0x1c3385[_0x29f89a(0xba)],'output':_0x1c3385['message']};}}[a0_0x159074(0x122)](_0x193e84){const _0x474788=a0_0x159074,_0xd8bdbc=[];_0xd8bdbc[_0x474788(0x13d)]('📊\x20Import/Export\x20Analysis\x20Summary'),_0xd8bdbc['push'](_0x474788(0xf5)),_0xd8bdbc['push'](_0x474788(0x10d)+_0x193e84['summary']['totalFiles']),_0xd8bdbc[_0x474788(0x13d)](_0x474788(0xee)+_0x193e84['summary'][_0x474788(0x116)]),_0xd8bdbc[_0x474788(0x13d)](_0x474788(0x123)+_0x193e84[_0x474788(0x110)]['totalExports']+'\x0a');const _0x292867=_0x193e84[_0x474788(0xca)]['length'],_0x5bb4ac=Object['values'](_0x193e84[_0x474788(0x150)])['reduce']((_0x99323f,_0x2b29ea)=>_0x99323f+_0x2b29ea[_0x474788(0xc0)],0x0),_0x1ff22b=_0x193e84[_0x474788(0x15e)]?_0x193e84['circularDependencies'][_0x474788(0xc0)]:0x0;return _0x292867>0x0&&_0xd8bdbc[_0x474788(0x13d)](_0x474788(0x104)+_0x292867+_0x474788(0xcb)),_0x5bb4ac>0x0&&_0xd8bdbc['push'](_0x474788(0x148)+_0x5bb4ac+'\x20symbols\x20not\x20exported\x20from\x20their\x20sources'),_0x1ff22b>0x0&&_0xd8bdbc['push'](_0x474788(0x115)+_0x1ff22b+_0x474788(0x111)),_0x292867===0x0&&_0x5bb4ac===0x0&&_0x1ff22b===0x0?_0xd8bdbc['push']('\u2705 No import/export issues detected!'):(_0xd8bdbc['push'](_0x474788(0x147)),Object[_0x474788(0x139)](_0x193e84['missingFiles']||{})[_0x474788(0xc0)]>0x0&&(_0xd8bdbc[_0x474788(0x13d)]('\x0a\x20\x20Missing\x20Files:'),Object['entries'](_0x193e84['missingFiles'])['slice'](0x0,0x3)[_0x474788(0x12c)](([_0xc752c3,_0x3ab739])=>{const _0x2a066a=_0x474788;_0xd8bdbc['push'](_0x2a066a(0x146)+_0xc752c3+'\x20has\x20'+_0x3ab739['length']+'\x20broken\x20import(s)');})),Object[_0x474788(0x139)](_0x193e84[_0x474788(0x150)])['length']>0x0&&(_0xd8bdbc[_0x474788(0x13d)]('\x0a\x20\x20Missing\x20Exports:'),Object[_0x474788(0x126)](_0x193e84['missingExports'])[_0x474788(0x11c)](0x0,0x3)['forEach'](([_0x4562dd,_0x37a8fc])=>{const _0x7d5d93=_0x474788;_0xd8bdbc[_0x7d5d93(0x13d)]('\x20\x20\x20\x20•\x20'+_0x4562dd+'\x20imports\x20'+_0x37a8fc['length']+'\x20non-existent\x20symbol(s)');})),_0xd8bdbc[_0x474788(0x13d)]('\x0a💡\x20Run\x20with\x20output=\x22detailed\x22\x20for\x20complete\x20analysis\x20and\x20fix\x20suggestions')),_0xd8bdbc['join']('\x0a');}['_formatDetailedOutput'](_0x4057e2){const _0x16de33=a0_0x159074,_0x4083cd=[];_0x4083cd[_0x16de33(0x13d)]('📊\x20Detailed\x20Import/Export\x20Analysis\x20Report'),_0x4083cd['push']('=========================================\x0a'),_0x4083cd[_0x16de33(0x13d)](_0x16de33(0x138)),_0x4083cd[_0x16de33(0x13d)](_0x16de33(0x125)+_0x4057e2[_0x16de33(0x110)][_0x16de33(0x154)]),_0x4083cd['push']('\x20\x20•\x20Total\x20imports:\x20'+_0x4057e2[_0x16de33(0x110)]['totalImports']),_0x4083cd[_0x16de33(0x13d)](_0x16de33(0xd4)+_0x4057e2[_0x16de33(0x110)][_0x16de33(0x112)]+'\x0a');if(_0x4057e2[_0x16de33(0xca)]['length']>0x0){_0x4083cd[_0x16de33(0x13d)]('❌\x20MISSING\x20FILES'),_0x4083cd['push'](_0x16de33(0xfe));const _0x3169df={};_0x4057e2[_0x16de33(0xca)]['forEach'](_0x5aaa25=>{const _0x4c4781=_0x16de33;!_0x3169df[_0x5aaa25['importingFile']]&&(_0x3169df[_0x5aaa25[_0x4c4781(0x13c)]]=[]),_0x3169df[_0x5aaa25[_0x4c4781(0x13c)]]['push'](_0x5aaa25);}),Object[_0x16de33(0x126)](_0x3169df)[_0x16de33(0x12c)](([_0x226359,imports])=>{const _0x266125=_0x16de33;_0x4083cd['push'](_0x266125(0xc4)+_0x226359+':'),imports['forEach'](_0x36c87a=>{const _0x1eb638=_0x266125,importType=_0x36c87a['isDefault']?'default':_0x36c87a['isNamespace']?_0x1eb638(0x101):'named';_0x4083cd[_0x1eb638(0x13d)]('\x20\x20\x20⚠️\x20\x20Cannot\x20find\x20file:\x20'+_0x36c87a['importedFromFile']),_0x4083cd[_0x1eb638(0x13d)]('\x20\x20\x20\x20\x20\x20Trying\x20to\x20import:\x20'+_0x36c87a[_0x1eb638(0x137)]+'\x20('+importType+')'),_0x4083cd[_0x1eb638(0x13d)]('\x20\x20\x20\x20\x20\x20💡\x20Fix:\x20Check\x20if\x20file\x20exists\x20or\x20correct\x20the\x20import\x20path');});});}Object['keys'](_0x4057e2[_0x16de33(0x150)])['length']>0x0&&(_0x4083cd['push']('\x0a⚠️\x20\x20MISSING\x20EXPORTS'),_0x4083cd['push']('──────────────────'),Object[_0x16de33(0x126)](_0x4057e2['missingExports'])[_0x16de33(0x12c)](([_0x11f38e,_0x5ee12f])=>{const _0x4028f7=_0x16de33;_0x4083cd['push']('\x0a📄\x20'+_0x11f38e+':'),_0x5ee12f[_0x4028f7(0x12c)](_0x3482be=>{const _0x46c35b=_0x4028f7,importType=_0x3482be[_0x46c35b(0x113)]?'default':_0x3482be['isNamespace']?'namespace':_0x46c35b(0x100);_0x4083cd['push']('\x20\x20\x20❌\x20Symbol\x20not\x20exported:\x20\x22'+_0x3482be[_0x46c35b(0x137)]+_0x46c35b(0xff)+importType+')'),_0x4083cd[_0x46c35b(0x13d)](_0x46c35b(0x131)+_0x3482be[_0x46c35b(0xfd)]);if(_0x3482be[_0x46c35b(0x10a)][_0x46c35b(0xc0)]>0x0){_0x4083cd[_0x46c35b(0x13d)](_0x46c35b(0x14a)+_0x3482be[_0x46c35b(0x10a)][_0x46c35b(0xe2)](',\x20'));if(_0x3482be[_0x46c35b(0x113)]&&_0x3482be['availableExports'][_0x46c35b(0x157)]('default'))_0x4083cd['push'](_0x46c35b(0xe6));else{if(_0x3482be['isDefault']&&!_0x3482be['availableExports']['includes']('default'))_0x4083cd['push']('\x20\x20\x20\x20\x20\x20💡\x20Fix:\x20No\x20default\x20export.\x20Use\x20named\x20import:\x20{\x20'+(_0x3482be[_0x46c35b(0x10a)][0x0]||_0x46c35b(0x140))+'\x20}');else{const _0x465a52=_0x3482be['availableExports']['find'](_0x385bc4=>_0x385bc4['toLowerCase']()===_0x3482be['importedSymbol']['toLowerCase']());_0x465a52?_0x4083cd['push'](_0x46c35b(0x136)+_0x465a52+_0x46c35b(0x132)):_0x4083cd['push'](_0x46c35b(0x133)+_0x3482be[_0x46c35b(0x137)]+'\x22\x20or\x20use\x20one\x20of\x20the\x20available\x20exports');}}}else _0x4083cd['push'](_0x46c35b(0xeb)),_0x4083cd[_0x46c35b(0x13d)](_0x46c35b(0x124)+_0x3482be[_0x46c35b(0xfd)]+'\x20or\x20check\x20if\x20it\x27s\x20the\x20correct\x20file');});}));_0x4057e2[_0x16de33(0x15e)]&&_0x4057e2[_0x16de33(0x15e)]['length']>0x0&&(_0x4083cd['push'](_0x16de33(0x13e)),_0x4083cd[_0x16de33(0x13d)]('────────────────────────'),_0x4057e2[_0x16de33(0x15e)]['forEach']((_0x58aa3a,_0x5547e)=>{const _0x23f25d=_0x16de33;_0x4083cd[_0x23f25d(0x13d)](_0x23f25d(0xf7)+(_0x5547e+0x1)+':'),_0x58aa3a[_0x23f25d(0x12c)]((_0x2d1174,_0xbfe7c2)=>{_0xbfe7c2<_0x58aa3a['length']-0x1&&_0x4083cd['push']('\x20\x20\x20\x20'+_0x2d1174+'\x20→\x20'+_0x58aa3a[_0xbfe7c2+0x1]);}),_0x4083cd[_0x23f25d(0x13d)]('\x20\x20\x20\x20💡\x20Fix:\x20Refactor\x20to\x20break\x20the\x20circular\x20dependency');}));_0x4057e2[_0x16de33(0xc9)]&&Object[_0x16de33(0x139)](_0x4057e2[_0x16de33(0xc9)])[_0x16de33(0xc0)]>0x0&&(_0x4083cd[_0x16de33(0x13d)](_0x16de33(0xb9)),_0x4083cd['push'](_0x16de33(0xd8)),Object['entries'](_0x4057e2['unusedExports'])[_0x16de33(0x11c)](0x0,0xa)['forEach'](([_0x1ab57f,exports])=>{const _0x15dbb6=_0x16de33;_0x4083cd[_0x15dbb6(0x13d)](_0x15dbb6(0xc4)+_0x1ab57f+':'),_0x4083cd['push'](_0x15dbb6(0x141)+exports['join'](',\x20'));}),_0x4083cd['push']('\n \uD83D\uDCA1 Note: These exports are not imported within this project'),_0x4083cd[_0x16de33(0x13d)]('\x20\x20\x20\x20\x20\x20They\x20might\x20be\x20used\x20by\x20external\x20packages\x20or\x20could\x20be\x20removed'));_0x4083cd[_0x16de33(0x13d)]('\x0a📋\x20RECOMMENDATIONS'),_0x4083cd['push'](_0x16de33(0x10c));const _0x6d1dd8=_0x4057e2[_0x16de33(0xca)][_0x16de33(0xc0)]+Object[_0x16de33(0x15c)](_0x4057e2['missingExports'])['reduce']((_0x5efbbf,_0x2beaf2)=>_0x5efbbf+_0x2beaf2['length'],0x0);return _0x6d1dd8===0x0?_0x4083cd['push']('\u2705 Your import/export structure looks good!'):(_0x4083cd[_0x16de33(0x13d)]('Found\x20'+_0x6d1dd8+'\x20issue(s)\x20that\x20need\x20attention:'),_0x4057e2[_0x16de33(0xca)]['length']>0x0&&_0x4083cd['push'](_0x16de33(0x143)+_0x4057e2[_0x16de33(0xca)]['length']+_0x16de33(0x129)),Object['keys'](_0x4057e2[_0x16de33(0x150)])['length']>0x0&&_0x4083cd[_0x16de33(0x13d)]('\x20\x202.\x20Resolve\x20'+Object['values'](_0x4057e2['missingExports'])[_0x16de33(0xd0)]((_0x58795b,_0x14d132)=>_0x58795b+_0x14d132['length'],0x0)+_0x16de33(0x14c)),_0x4057e2[_0x16de33(0x15e)]&&_0x4057e2['circularDependencies'][_0x16de33(0xc0)]>0x0&&_0x4083cd['push'](_0x16de33(0x13a)+_0x4057e2[_0x16de33(0x15e)]['length']+_0x16de33(0x13b))),_0x4083cd[_0x16de33(0xe2)]('\x0a');}}function a0_0x2e53(_0x1dc355,_0x1b1aec){_0x1dc355=_0x1dc355-0xb8;const _0x333278=a0_0x3332();let _0x2e53cd=_0x333278[_0x1dc355];if(a0_0x2e53['FbUebq']===undefined){var _0x47f13c=function(_0x5565a5){const _0x389cdc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x501a48='',_0x217288='';for(let _0x432cba=0x0,_0x1fb813,_0x45e339,_0x2bedec=0x0;_0x45e339=_0x5565a5['charAt'](_0x2bedec++);~_0x45e339&&(_0x1fb813=_0x432cba%0x4?_0x1fb813*0x40+_0x45e339:_0x45e339,_0x432cba++%0x4)?_0x501a48+=String['fromCharCode'](0xff&_0x1fb813>>(-0x2*_0x432cba&0x6)):0x0){_0x45e339=_0x389cdc['indexOf'](_0x45e339);}for(let _0xa770bb=0x0,_0x2ed9d0=_0x501a48['length'];_0xa770bb<_0x2ed9d0;_0xa770bb++){_0x217288+='%'+('00'+_0x501a48['charCodeAt'](_0xa770bb)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x217288);};a0_0x2e53['GbofXe']=_0x47f13c,a0_0x2e53['kqUcDf']={},a0_0x2e53['FbUebq']=!![];}const _0x341a94=_0x333278[0x0],_0x1e9984=_0x1dc355+_0x341a94,_0x3504f5=a0_0x2e53['kqUcDf'][_0x1e9984];return!_0x3504f5?(_0x2e53cd=a0_0x2e53['GbofXe'](_0x2e53cd),a0_0x2e53['kqUcDf'][_0x1e9984]=_0x2e53cd):_0x2e53cd=_0x3504f5,_0x2e53cd;}class ImportExportAnalyzer{constructor(_0x48f672,_0x54af3e='.gitignore',_0x335241=null){const _0x5d9d1b=a0_0x159074;this[_0x5d9d1b(0xce)]=a0_0x217288[_0x5d9d1b(0xc8)](_0x48f672),this['ignoreFile']=_0x54af3e,this['logger']=_0x335241,this['ignorePatterns']=[...ANALYZER_CONFIG[_0x5d9d1b(0xf2)]],this[_0x5d9d1b(0xcd)]=[],this['exports']=new Map(),this[_0x5d9d1b(0xbb)]=new Map();}async[a0_0x159074(0x117)](){const _0x53d6ad=a0_0x159074;try{const _0x53dd82=a0_0x217288[_0x53d6ad(0xe2)](this[_0x53d6ad(0xce)],this[_0x53d6ad(0xd7)]),_0xa71496=await a0_0x501a48[_0x53d6ad(0xe7)](_0x53dd82,_0x53d6ad(0xbf)),_0x3c7305=_0xa71496['split']('\x0a')[_0x53d6ad(0x158)](_0x2e30e2=>_0x2e30e2['trim']())['filter'](_0x50663c=>_0x50663c&&!_0x50663c[_0x53d6ad(0xe8)]('#'));this['ignorePatterns']['push'](..._0x3c7305),this[_0x53d6ad(0x14b)]?.[_0x53d6ad(0xc7)]('Loaded\x20ignore\x20patterns',{'count':_0x3c7305[_0x53d6ad(0xc0)]});}catch{this['logger']?.['debug']('No ignore file found, using defaults');}}['shouldIgnoreFile'](_0x3b2629){const _0x2c7a18=a0_0x159074,_0x784b5c=a0_0x217288['relative'](this[_0x2c7a18(0xce)],_0x3b2629);return this['ignorePatterns']['some'](_0x191274=>{const _0x310a61=_0x2c7a18;if(_0x191274['includes']('*')){const _0x40dfc3=new RegExp(_0x191274['replace'](/\*/g,'.*'));return _0x40dfc3[_0x310a61(0x128)](_0x784b5c)||_0x40dfc3[_0x310a61(0x128)](a0_0x217288['basename'](_0x3b2629));}return _0x784b5c['includes'](_0x191274)||a0_0x217288['basename'](_0x3b2629)===_0x191274;});}async['getAllFiles'](_0x35f387){const _0x2ed1e9=a0_0x159074,_0xc5824a=[],_0x28cea6=async _0x5e6edf=>{const _0x451f81=a0_0x2e53;try{const _0x3f988f=await a0_0x501a48[_0x451f81(0x159)](_0x5e6edf,{'withFileTypes':!![]});for(const _0x3d2467 of _0x3f988f){const _0x2cd358=a0_0x217288[_0x451f81(0xe2)](_0x5e6edf,_0x3d2467['name']);if(this['shouldIgnoreFile'](_0x2cd358))continue;if(_0x3d2467[_0x451f81(0xe5)]())await _0x28cea6(_0x2cd358);else{if(_0x3d2467[_0x451f81(0xfb)]()){const _0x3fce1b=a0_0x217288['extname'](_0x3d2467['name']);ANALYZER_CONFIG['SUPPORTED_EXTENSIONS']['includes'](_0x3fce1b)&&_0xc5824a[_0x451f81(0x13d)](_0x2cd358);}}}}catch(_0xd35760){this[_0x451f81(0x14b)]?.[_0x451f81(0xd3)]('Cannot\x20read\x20directory',{'dir':_0x5e6edf,'error':_0xd35760[_0x451f81(0xba)]});}};await _0x28cea6(_0x35f387);if(_0xc5824a['length']>ANALYZER_CONFIG['MAX_FILES']){this['logger']?.[_0x2ed1e9(0xd3)](_0x2ed1e9(0xdf)+_0xc5824a[_0x2ed1e9(0xc0)]+'\x20>\x20'+ANALYZER_CONFIG[_0x2ed1e9(0xd2)]);throw new Error('Too\x20many\x20files\x20to\x20analyze:\x20'+_0xc5824a[_0x2ed1e9(0xc0)]+_0x2ed1e9(0xbc)+ANALYZER_CONFIG['MAX_FILES']+')');}return _0xc5824a;}async[a0_0x159074(0xda)](_0x29b2da,_0x1aaa51){const _0x56f27a=a0_0x159074,imports=[],_0x4e5d45=_0x29b2da['split']('\x0a'),_0x32bdc3=this['getRelativePath'](_0x1aaa51);!this[_0x56f27a(0xbb)]['has'](_0x32bdc3)&&this['dependencies'][_0x56f27a(0xf9)](_0x32bdc3,new Set());for(let _0x242d04=0x0;_0x242d04<_0x4e5d45['length'];_0x242d04++){const _0x4c3904=_0x4e5d45[_0x242d04][_0x56f27a(0xdc)]();if(_0x4c3904['startsWith']('//')||_0x4c3904[_0x56f27a(0xe8)]('/*'))continue;let _0x3b3af6=_0x4c3904,_0x46efe0=_0x242d04;while(!_0x3b3af6['includes'](';')&&!_0x3b3af6['match'](/from\s+['"`][^'"`]+['"`]/)&&_0x46efe0<_0x4e5d45['length']-0x1){_0x46efe0++;const _0x1c4eb9=_0x4e5d45[_0x46efe0]['trim']();if(_0x1c4eb9['startsWith']('//')||_0x1c4eb9['startsWith']('/*'))continue;_0x3b3af6+='\x20'+_0x1c4eb9;}const importRegex=/import\s+(?:(?:\{([^}]+)\})|(?:([^,\s]+)(?:\s*,\s*\{([^}]+)\})?)|(?:\*\s+as\s+([^,\s]+)))\s+from\s+['"`]([^'"`]+)['"`]/g;let _0x39351f;while((_0x39351f=importRegex['exec'](_0x3b3af6))!==null){const [,_0x581afd,defaultImport,_0x218f50,_0x395d46,_0x2f8079]=_0x39351f,_0x330a45=await this['resolveImportPath'](_0x2f8079,_0x1aaa51);!_0x330a45['isExternal']&&_0x330a45[_0x56f27a(0x103)]&&this[_0x56f27a(0xbb)][_0x56f27a(0x12d)](_0x32bdc3)['add'](_0x330a45[_0x56f27a(0x107)]);defaultImport&&imports['push']({'importingFile':_0x32bdc3,'importedSymbol':defaultImport['trim'](),'importedFromFile':_0x330a45['path'],'fileExists':_0x330a45['exists'],'isExternal':_0x330a45['isExternal']||![],'isDefault':!![]});_0x395d46&&imports[_0x56f27a(0x13d)]({'importingFile':_0x32bdc3,'importedSymbol':_0x395d46[_0x56f27a(0xdc)](),'importedFromFile':_0x330a45[_0x56f27a(0x107)],'fileExists':_0x330a45['exists'],'isExternal':_0x330a45[_0x56f27a(0x105)]||![],'isNamespace':!![]});const _0x1f1611=[_0x581afd,_0x218f50]['filter'](Boolean)[_0x56f27a(0xe2)](',');if(_0x1f1611){const _0x168513=_0x1f1611[_0x56f27a(0x135)](',')['map'](_0x24b136=>{const _0x4578a3=_0x56f27a,_0x32c993=_0x24b136[_0x4578a3(0xdc)]()['split'](/\s+as\s+/);return _0x32c993[0x0]['trim']();});_0x168513[_0x56f27a(0x12c)](_0x131d60=>{const _0x261323=_0x56f27a;_0x131d60&&imports['push']({'importingFile':_0x32bdc3,'importedSymbol':_0x131d60,'importedFromFile':_0x330a45['path'],'fileExists':_0x330a45['exists'],'isExternal':_0x330a45[_0x261323(0x105)]||![],'isDefault':![]});});}}const requireRegex=/(?:const|let|var)\s+(?:\{([^}]+)\}|([^=\s]+))\s*=\s*require\(['"`]([^'"`]+)['"`]\)/g;while((_0x39351f=requireRegex[_0x56f27a(0x108)](_0x3b3af6))!==null){const [,_0x393eb0,_0x1bcce4,_0x22b96f]=_0x39351f,_0x218495=await this['resolveImportPath'](_0x22b96f,_0x1aaa51);!_0x218495[_0x56f27a(0x105)]&&_0x218495['exists']&&this['dependencies'][_0x56f27a(0x12d)](_0x32bdc3)[_0x56f27a(0x118)](_0x218495[_0x56f27a(0x107)]);if(_0x393eb0){const _0x49f862=_0x393eb0['split'](',')[_0x56f27a(0x158)](_0x426d5f=>_0x426d5f[_0x56f27a(0xdc)]()['split'](':')[0x0][_0x56f27a(0xdc)]());_0x49f862['forEach'](_0x1a1102=>{const _0x21ff87=_0x56f27a;_0x1a1102&&imports['push']({'importingFile':_0x32bdc3,'importedSymbol':_0x1a1102,'importedFromFile':_0x218495['path'],'fileExists':_0x218495[_0x21ff87(0x103)],'isExternal':_0x218495['isExternal']||![],'isDefault':![]});});}else _0x1bcce4&&imports[_0x56f27a(0x13d)]({'importingFile':_0x32bdc3,'importedSymbol':_0x1bcce4['trim'](),'importedFromFile':_0x218495['path'],'fileExists':_0x218495[_0x56f27a(0x103)],'isExternal':_0x218495[_0x56f27a(0x105)]||![],'isDefault':!![]});}_0x242d04=_0x46efe0;}return imports;}['parseExports'](_0x13c304){const _0x4f2799=a0_0x159074,exports=new Set(),_0x4a4725=_0x13c304[_0x4f2799(0x135)]('\x0a');for(const _0x84f528 of _0x4a4725){const _0x29d547=_0x84f528[_0x4f2799(0xdc)]();if(_0x29d547['startsWith']('//')||_0x29d547['startsWith']('/*'))continue;/export\s+default\s+/['test'](_0x29d547)&&exports[_0x4f2799(0x118)]('default');const _0xc5bfd0=_0x29d547['match'](/export\s+\{([^}]+)\}/);if(_0xc5bfd0){const _0x37ca30=_0xc5bfd0[0x1]['split'](',')[_0x4f2799(0x158)](_0xb337ba=>{const _0x41bc1b=_0xb337ba['trim']()['split'](/\s+as\s+/);return _0x41bc1b[_0x41bc1b['length']-0x1]['trim']();});_0x37ca30[_0x4f2799(0x12c)](_0x389072=>exports[_0x4f2799(0x118)](_0x389072));}const _0x1509e3=_0x29d547['match'](/export\s+(?:const|let|var|function|class|async\s+function)\s+([^=\s(]+)/);_0x1509e3&&exports['add'](_0x1509e3[0x1]);const exportFromMatch=_0x29d547['match'](/export\s+\{([^}]+)\}\s+from/);if(exportFromMatch){const _0x2ab103=exportFromMatch[0x1]['split'](',')[_0x4f2799(0x158)](_0x359587=>{const _0x47b9e0=_0x4f2799,_0x3d2034=_0x359587[_0x47b9e0(0xdc)]()['split'](/\s+as\s+/);return _0x3d2034[_0x3d2034[_0x47b9e0(0xc0)]-0x1][_0x47b9e0(0xdc)]();});_0x2ab103[_0x4f2799(0x12c)](_0xbeddb9=>exports['add'](_0xbeddb9));}/export\s+\*\s+from/[_0x4f2799(0x128)](_0x29d547)&&exports['add']('*');const moduleExportsMatch=_0x29d547[_0x4f2799(0xf6)](/module\.exports\s*=\s*\{([^}]+)\}/);if(moduleExportsMatch){const _0x1c7cc9=moduleExportsMatch[0x1][_0x4f2799(0x135)](',')[_0x4f2799(0x158)](_0x35d250=>{const _0x430731=_0x4f2799,_0x5d4f2c=_0x35d250['trim']()['split'](':');return _0x5d4f2c[0x0][_0x430731(0xdc)]();});_0x1c7cc9['forEach'](_0x573bd4=>exports['add'](_0x573bd4));}/module\.exports\s*=\s*[^{]/[_0x4f2799(0x128)](_0x29d547)&&exports[_0x4f2799(0x118)]('default');const moduleExportsPropMatch=_0x29d547['match'](/module\.exports\.([^=\s]+)\s*=/);moduleExportsPropMatch&&exports['add'](moduleExportsPropMatch[0x1]);const exportsPropMatch=_0x29d547[_0x4f2799(0xf6)](/exports\.([^=\s]+)\s*=/);exportsPropMatch&&exports[_0x4f2799(0x118)](exportsPropMatch[0x1]);}return exports;}async[a0_0x159074(0xc6)](importPath,_0x384342){const _0x4fbc42=a0_0x159074;if(importPath['startsWith']('.')){const _0x49989d=a0_0x217288['dirname'](_0x384342),_0x52a4ee=a0_0x217288[_0x4fbc42(0xc8)](_0x49989d,importPath);if(a0_0x217288[_0x4fbc42(0x15f)](importPath))try{const _0x20a602=await a0_0x501a48[_0x4fbc42(0xc1)](_0x52a4ee);if(_0x20a602[_0x4fbc42(0xfb)]())return{'path':this[_0x4fbc42(0xde)](_0x52a4ee),'exists':!![]};}catch{}const _0x32c69c=['','.js',_0x4fbc42(0xfa),'.ts',_0x4fbc42(0x13f),_0x4fbc42(0xbd),_0x4fbc42(0xe0),'/index.ts','/index.jsx','/index.tsx'];for(const _0x18985b of _0x32c69c){const _0x3a8436=_0x52a4ee+_0x18985b;try{const _0x21a4f3=await a0_0x501a48['stat'](_0x3a8436);if(_0x21a4f3['isFile']())return{'path':this[_0x4fbc42(0xde)](_0x3a8436),'exists':!![]};}catch{}}return{'path':this[_0x4fbc42(0xde)](_0x52a4ee),'exists':![]};}return{'path':importPath,'exists':!![],'isExternal':!![]};}[a0_0x159074(0xde)](_0x159d1a){const _0x4b6a21=a0_0x159074;return a0_0x217288['relative'](this[_0x4b6a21(0xce)],_0x159d1a)[_0x4b6a21(0xed)](/\\/g,'/');}['findCircularDependencies'](){const _0x12e277=a0_0x159074,_0x1eda3f=[],_0x224abe=new Set(),_0x463114=new Set(),_0x2c72ee=(_0x2b86aa,_0x7c5f00=[])=>{const _0x2800dd=a0_0x2e53;if(_0x463114['has'](_0x2b86aa)){const _0x15656e=_0x7c5f00[_0x2800dd(0x12f)](_0x2b86aa);_0x15656e!==-0x1&&_0x1eda3f[_0x2800dd(0x13d)]([..._0x7c5f00['slice'](_0x15656e),_0x2b86aa]);return;}if(_0x224abe['has'](_0x2b86aa))return;_0x224abe['add'](_0x2b86aa),_0x463114['add'](_0x2b86aa),_0x7c5f00['push'](_0x2b86aa);const _0x56faa1=this[_0x2800dd(0xbb)]['get'](_0x2b86aa)||new Set();for(const _0x2c8ea4 of _0x56faa1){_0x2c72ee(_0x2c8ea4,[..._0x7c5f00]);}_0x463114[_0x2800dd(0x142)](_0x2b86aa);};for(const _0x797198 of this['dependencies']['keys']()){!_0x224abe[_0x12e277(0xd1)](_0x797198)&&_0x2c72ee(_0x797198);}return _0x1eda3f;}['findUnusedExports'](){const _0x4e9a5b=a0_0x159074,_0x4d68fb=new Map();for(const _0x26a4f8 of this['imports']){!_0x26a4f8['isExternal']&&(!_0x4d68fb[_0x4e9a5b(0xd1)](_0x26a4f8['importedFromFile'])&&_0x4d68fb[_0x4e9a5b(0xf9)](_0x26a4f8['importedFromFile'],new Set()),_0x4d68fb[_0x4e9a5b(0x12d)](_0x26a4f8[_0x4e9a5b(0xfd)])['add'](_0x26a4f8['importedSymbol']));}const _0x503042={};for(const [_0x53bad4,exports]of this['exports']['entries']()){const _0x448c4e=_0x4d68fb['get'](_0x53bad4)||new Set(),_0x2ab410=Array['from'](exports)['filter'](_0x38a554=>!_0x448c4e[_0x4e9a5b(0xd1)](_0x38a554)&&_0x38a554!=='*');_0x2ab410['length']>0x0&&(_0x503042[_0x53bad4]=_0x2ab410);}return _0x503042;}async[a0_0x159074(0xfc)](_0x207b8e=a0_0x159074(0xcf)){const _0x56338f=a0_0x159074;this[_0x56338f(0x14b)]?.[_0x56338f(0xe9)]('Starting import analysis',{'mode':_0x207b8e,'rootDir':this[_0x56338f(0xce)]}),await this[_0x56338f(0x117)]();const _0x106016=await this[_0x56338f(0x121)](this['rootDir']);this['logger']?.['info'](_0x56338f(0x14e),{'count':_0x106016['length']});for(const _0x5048ff of _0x106016){try{const _0x14f190=await a0_0x501a48[_0x56338f(0xe7)](_0x5048ff,_0x56338f(0xbf)),_0x57b3b4=this['getRelativePath'](_0x5048ff),_0x4faee2=await this[_0x56338f(0xda)](_0x14f190,_0x5048ff);this[_0x56338f(0xcd)]['push'](..._0x4faee2);const _0xe2b5b4=this['parseExports'](_0x14f190);this[_0x56338f(0x127)][_0x56338f(0xf9)](_0x57b3b4,_0xe2b5b4);}catch(_0x2740a3){this[_0x56338f(0x14b)]?.['warn'](_0x56338f(0xe4),{'file':_0x5048ff,'error':_0x2740a3[_0x56338f(0xba)]});}}this['logger']?.['info'](_0x56338f(0xe3),{'imports':this[_0x56338f(0xcd)]['length'],'exports':this['exports']['size']});const _0x276952={'summary':{'totalFiles':_0x106016[_0x56338f(0xc0)],'totalImports':this[_0x56338f(0xcd)]['length'],'totalExports':Array['from'](this['exports']['values']())['reduce']((_0xa1edd3,exports)=>_0xa1edd3+exports['size'],0x0)},'missingExports':{},'missingFiles':{},'fileNotFoundImports':[]};for(const importEntry of this['imports']){const {importingFile:importingFile,importedSymbol:importedSymbol,importedFromFile:importedFromFile,isDefault:_0x5e763d,isNamespace:_0x359351,fileExists:_0x3c6e61,isExternal:_0x3ca662}=importEntry;if(!_0x3c6e61&&!_0x3ca662){_0x276952[_0x56338f(0xca)][_0x56338f(0x13d)]({'importingFile':importingFile,'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'isDefault':_0x5e763d||![],'isNamespace':_0x359351||![]});!_0x276952[_0x56338f(0x109)][importingFile]&&(_0x276952[_0x56338f(0x109)][importingFile]=[]);_0x276952['missingFiles'][importingFile][_0x56338f(0x13d)]({'missingFile':importedFromFile,'importedSymbol':importedSymbol,'isDefault':_0x5e763d||![],'isNamespace':_0x359351||![]});continue;}if(_0x3ca662)continue;const exportingFileExports=this['exports']['get'](importedFromFile);let _0x269250=![];if(exportingFileExports){if(_0x359351)_0x269250=exportingFileExports[_0x56338f(0xd6)]>0x0;else _0x5e763d?_0x269250=exportingFileExports['has']('default'):_0x269250=exportingFileExports['has'](importedSymbol)||exportingFileExports[_0x56338f(0xd1)]('*');}!_0x269250&&(!_0x276952['missingExports'][importingFile]&&(_0x276952['missingExports'][importingFile]=[]),_0x276952[_0x56338f(0x150)][importingFile][_0x56338f(0x13d)]({'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'availableExports':exportingFileExports?Array[_0x56338f(0xf3)](exportingFileExports):[],'isDefault':_0x5e763d||![],'isNamespace':_0x359351||![]}));}return(_0x207b8e==='full'||_0x207b8e==='fix')&&(this['logger']?.[_0x56338f(0xe9)](_0x56338f(0x153)),_0x276952['circularDependencies']=this[_0x56338f(0xc5)](),_0x276952[_0x56338f(0xc9)]=this['findUnusedExports']()),this[_0x56338f(0x14b)]?.[_0x56338f(0xe9)]('Analysis\x20complete',{'missingFiles':_0x276952['fileNotFoundImports'][_0x56338f(0xc0)],'missingExports':Object[_0x56338f(0x139)](_0x276952['missingExports'])[_0x56338f(0xc0)]}),_0x276952;}}export default ImportAnalyzerTool;
@@ -1 +1 @@
1
- const a0_0x32cd73=a0_0x1b3d;function a0_0x1b3d(_0x5ba66e,_0x1da952){_0x5ba66e=_0x5ba66e-0xc1;const _0x278e53=a0_0x278e();let _0x1b3dda=_0x278e53[_0x5ba66e];if(a0_0x1b3d['PstEOX']===undefined){var _0x284b89=function(_0x18ebb8){const _0x255bf8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x50755a='',_0x5c3478='';for(let _0x77ca49=0x0,_0x2f6e9b,_0x4752d8,_0x3fa4d3=0x0;_0x4752d8=_0x18ebb8['charAt'](_0x3fa4d3++);~_0x4752d8&&(_0x2f6e9b=_0x77ca49%0x4?_0x2f6e9b*0x40+_0x4752d8:_0x4752d8,_0x77ca49++%0x4)?_0x50755a+=String['fromCharCode'](0xff&_0x2f6e9b>>(-0x2*_0x77ca49&0x6)):0x0){_0x4752d8=_0x255bf8['indexOf'](_0x4752d8);}for(let _0x3073ed=0x0,_0x2712a6=_0x50755a['length'];_0x3073ed<_0x2712a6;_0x3073ed++){_0x5c3478+='%'+('00'+_0x50755a['charCodeAt'](_0x3073ed)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c3478);};a0_0x1b3d['xDOgba']=_0x284b89,a0_0x1b3d['sQrZjS']={},a0_0x1b3d['PstEOX']=!![];}const _0x1e0ca4=_0x278e53[0x0],_0x47a853=_0x5ba66e+_0x1e0ca4,_0x6a5aa=a0_0x1b3d['sQrZjS'][_0x47a853];return!_0x6a5aa?(_0x1b3dda=a0_0x1b3d['xDOgba'](_0x1b3dda),a0_0x1b3d['sQrZjS'][_0x47a853]=_0x1b3dda):_0x1b3dda=_0x6a5aa,_0x1b3dda;}(function(_0x2b31d0,_0x1197b8){const _0x191178=a0_0x1b3d,_0x53c8b5=_0x2b31d0();while(!![]){try{const _0x58c7d4=-parseInt(_0x191178(0xd1))/0x1*(-parseInt(_0x191178(0xd2))/0x2)+parseInt(_0x191178(0xc6))/0x3*(parseInt(_0x191178(0xc5))/0x4)+parseInt(_0x191178(0xc2))/0x5*(-parseInt(_0x191178(0xc7))/0x6)+parseInt(_0x191178(0xcb))/0x7+-parseInt(_0x191178(0xe9))/0x8*(parseInt(_0x191178(0xc4))/0x9)+-parseInt(_0x191178(0xd6))/0xa*(parseInt(_0x191178(0xc1))/0xb)+parseInt(_0x191178(0xe6))/0xc;if(_0x58c7d4===_0x1197b8)break;else _0x53c8b5['push'](_0x53c8b5['shift']());}catch(_0x3557ce){_0x53c8b5['push'](_0x53c8b5['shift']());}}}(a0_0x278e,0x72c05));import{BaseTool}from'./baseTool.js';function a0_0x278e(){const _0x2acdb7=['ndu4odu2Be9sEwzl','mtG4mtG0nhj3y0v5ta','m1jlr0DLqG','nJKYmtbZt1PWEuu','zxH0CMfJDenVBNrLBNq','C3vJy2vZCW','BwvZC2fNzq','mtuZnZC5nur5zwPNEG','y2fWywjPBgL0AwvZ','C3rYAw5N','AM9Izg9Uzq','BgvUz3rO','DMvYC2LVBG','nZe5nxzjC3rtEG','ngHjsxfVuW','BMfTzq','z2v0q2fWywjPBgL0AwvZ','4PYfifrHC2SGy29TCgXLDgvK','ndi0nZCWrLrvr1LS','Bw9Kzs1JB250CM9S','q2XLyxiGC3vTBwfYEsbVzIb3Agf0ihLVDsbHy2nVBxbSAxnOzwqGt1iGD2HHDcbWCMv2zw50zwqGy29TCgXLDgLVBIaOzs5NlIWGiKnYzwf0zwqGnsbZB25NigzPBgvZihn1y2nLC3nMDwXSEsiSicjvBMfIBguGDg8GChjVy2vLzdOGBwLZC2LUzYbbueKGy3jLzgvUDgLHBhmIlcaIu3r1y2SGywz0zxiGmYbMywLSzwqGy29TCgLSyxrPB24Gyxr0zw1WDhmIkq','cGOQkKrLDgfPBhm6kIOG','ywDLBNrjza','Dw5RBM93BG','ihDPDgGGAxnZDwvZ','CMvXDwLYzxnqCM9Qzwn0','ms4WlJa','Dg9VBhnszwDPC3rYEq','C3vTBwfYEq','y29TCgXLDgu','ywn0Aw9U','q29TCgXLDgLVBIbZDw1Tyxj5igLZihjLCxvPCMvK','DhjPBq','yxn5BMm','mtm0mZy1mZjPsNbrqwy','zgvZy3jPChrPB24','vgfZAYbJB21WBgv0zwq','mti4tMHsDu9j','cGOQqxv0B25VBw91CYbTB2rLihDPBgWGBM93igv4AxqUkG','sw52ywXPzcbHy3rPB24Uie9UBhKGiMnVBxbSzxrLiIbPCYbZDxbWB3j0zwq','mtfIBg5lyMq','mJe1BNvHtvPz','z2v0u2nOzw1H'];a0_0x278e=function(){return _0x2acdb7;};return a0_0x278e();}import a0_0x50755a from'../utilities/tagParser.js';class JobDoneTool extends BaseTool{constructor(){const _0x3dde9c=a0_0x1b3d;super(),this['id']=_0x3dde9c(0xce),this[_0x3dde9c(0xd3)]='Job\x20Done',this[_0x3dde9c(0xe7)]='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['version']=_0x3dde9c(0xde),this['capabilities']=['task-completion',_0x3dde9c(0xd7)],this[_0x3dde9c(0xdd)]=![],this[_0x3dde9c(0xe5)]=![];}['getDescription'](){return'\x0aJob\x20Done\x20Tool:\x20Signal\x20task\x20completion\x20in\x20autonomous\x20mode\x20and\x20exit\x20to\x20chat\x20mode.\x0a\x0aUsage\x20Instructions:\x0a-\x20Call\x20this\x20tool\x20when\x20you\x20have\x20SUCCESSFULLY\x20completed\x20the\x20assigned\x20task\x0a-\x20Also\x20call\x20this\x20tool\x20if\x20you\x20are\x20STUCK\x20or\x20UNABLE\x20to\x20proceed\x20after\x20multiple\x20failed\x20attempts\x0a-\x20Provide\x20a\x20clear\x20summary\x20of\x20what\x20was\x20accomplished\x20OR\x20what\x20prevented\x20completion\x0a-\x20This\x20will\x20immediately\x20exit\x20autonomous\x20mode\x20and\x20return\x20control\x20to\x20the\x20user\x0a\x0aExamples:\x0a-\x20\x22Created\x205\x20song\x20files\x20successfully\x20with\x20lyrics\x20and\x20melodies\x22\x0a-\x20\x22Unable\x20to\x20proceed:\x20missing\x20API\x20credentials\x20for\x20the\x20service\x22\x0a-\x20\x22Stuck\x20after\x203\x20failed\x20compilation\x20attempts\x20-\x20syntax\x20errors\x20persist\x22\x0a-\x20\x22Task\x20partially\x20complete:\x20implemented\x202\x20of\x203\x20requested\x20features\x22\x0a\x0aThe\x20tool\x20will\x20format\x20a\x20completion\x20message\x20and\x20gracefully\x20exit\x20autonomous\x20mode.\x0a\x20\x20\x20\x20'['trim']();}['parseParameters'](_0x5c3478){const _0x48fa0a=a0_0x1b3d;try{const _0x77ca49=a0_0x50755a[_0x48fa0a(0xc8)](_0x5c3478,_0x48fa0a(0xe0)),_0x2f6e9b=a0_0x50755a['extractContent'](_0x5c3478,'details'),_0x4752d8=a0_0x50755a[_0x48fa0a(0xc8)](_0x5c3478,'success');let _0x3fa4d3='',_0x3073ed='',_0x2712a6=!![];return _0x77ca49[_0x48fa0a(0xcf)]>0x0?(_0x3fa4d3=_0x77ca49[0x0]['trim'](),_0x3073ed=_0x2f6e9b[_0x48fa0a(0xcf)]>0x0?_0x2f6e9b[0x0]['trim']():'',_0x2712a6=_0x4752d8['length']>0x0?_0x4752d8[0x0]['toLowerCase']()!=='false':!![]):_0x3fa4d3=_0x5c3478[_0x48fa0a(0xe4)]()||_0x48fa0a(0xe8),{'actions':[{'action':'complete','summary':_0x3fa4d3,'success':_0x2712a6,'details':_0x3073ed||undefined}]};}catch(_0x2f4f3e){return{'actions':[{'action':_0x48fa0a(0xe1),'summary':_0x5c3478['trim']()||_0x48fa0a(0xe8),'success':!![]}]};}}[a0_0x32cd73(0xc3)](){const _0x312838=a0_0x32cd73;return{'type':'object','properties':{'actions':{'type':'array','items':{'type':'object','properties':{'action':{'type':_0x312838(0xcd),'enum':['complete'],'description':'Mark\x20task\x20as\x20complete\x20-\x20always\x20use\x20\x22complete\x22'},'summary':{'type':_0x312838(0xcd),'description':_0x312838(0xd8)},'success':{'type':'boolean','default':!![],'description':'Set\x20to\x20true\x20if\x20task\x20completed\x20successfully,\x20false\x20if\x20stuck/failed\x20or\x20partial\x20completion'},'details':{'type':'string','description':'Optional:\x20Additional\x20details\x20about\x20what\x20was\x20done,\x20what\x20failed,\x20any\x20files\x20created,\x20or\x20next\x20steps\x20for\x20the\x20user'}},'required':[_0x312838(0xe2),'summary'],'additionalProperties':![]},'minItems':0x1,'maxItems':0x1}},'required':['actions'],'additionalProperties':![]};}async['execute'](_0x2e6129,_0x2c1f0e={}){const _0xa7fd1c=a0_0x32cd73;try{const {actions:_0x4db643}=_0x2e6129;if(!_0x4db643||!Array['isArray'](_0x4db643)||_0x4db643['length']===0x0)throw new Error('Actions\x20array\x20is\x20required');const _0x265cc8=_0x4db643[0x0];if(_0x265cc8[_0xa7fd1c(0xe2)]!=='complete')throw new Error(_0xa7fd1c(0xeb));if(!_0x265cc8['summary'])throw new Error(_0xa7fd1c(0xe3));const _0x1c8048=_0x2c1f0e[_0xa7fd1c(0xda)];let _0x177bd4='';if(_0x1c8048&&_0x2c1f0e[_0xa7fd1c(0xdf)])try{if(this['agentPool']){const _0x147bf8=await this['agentPool']['getAgent'](_0x1c8048);_0x147bf8&&(_0x177bd4='\x20by\x20agent\x20\x22'+_0x147bf8['name']+'\x22');}}catch(_0x483dfc){}const _0x10be03=_0xa7fd1c(0xd5)+_0x177bd4+(_0x265cc8[_0xa7fd1c(0xc9)]!==![]?'\x20successfully':_0xa7fd1c(0xdc))+'\x0a\x0a**Summary:**\x20'+_0x265cc8[_0xa7fd1c(0xe0)]+(_0x265cc8['details']?_0xa7fd1c(0xd9)+_0x265cc8['details']:'')+_0xa7fd1c(0xea);return{'success':!![],'output':_0x10be03,'taskComplete':!![],'summary':_0x265cc8[_0xa7fd1c(0xe0)],'details':_0x265cc8['details']||null,'successfulCompletion':_0x265cc8[_0xa7fd1c(0xc9)]!==![],'metadata':{'toolId':this['id'],'agentId':_0x1c8048||_0xa7fd1c(0xdb),'completedAt':new Date()['toISOString'](),'action':_0x265cc8['action']}};}catch(_0x398e8c){return{'success':![],'error':_0x398e8c['message'],'output':'Failed\x20to\x20mark\x20task\x20as\x20complete:\x20'+_0x398e8c[_0xa7fd1c(0xca)],'taskComplete':![]};}}['setAgentPool'](_0x4555e4){this['agentPool']=_0x4555e4;}[a0_0x32cd73(0xd4)](){const _0x21c194=a0_0x32cd73;return{'id':this['id'],'name':this[_0x21c194(0xd3)],'description':this['description'],'version':this[_0x21c194(0xd0)],'capabilities':this[_0x21c194(0xcc)],'requiresProject':this['requiresProject'],'async':this[_0x21c194(0xe5)],'enabled':!![],'schema':this['getSchema']()};}}export default JobDoneTool;
1
+ (function(_0x58436e,_0x6365b2){const _0x4e4bc6=a0_0x4e98,_0x10b9fd=_0x58436e();while(!![]){try{const _0x3b8b45=parseInt(_0x4e4bc6(0x81))/0x1+-parseInt(_0x4e4bc6(0x70))/0x2+parseInt(_0x4e4bc6(0x90))/0x3+parseInt(_0x4e4bc6(0x6c))/0x4*(parseInt(_0x4e4bc6(0x87))/0x5)+-parseInt(_0x4e4bc6(0x7f))/0x6+parseInt(_0x4e4bc6(0x86))/0x7*(parseInt(_0x4e4bc6(0x7c))/0x8)+-parseInt(_0x4e4bc6(0x8d))/0x9*(parseInt(_0x4e4bc6(0x75))/0xa);if(_0x3b8b45===_0x6365b2)break;else _0x10b9fd['push'](_0x10b9fd['shift']());}catch(_0x820686){_0x10b9fd['push'](_0x10b9fd['shift']());}}}(a0_0x59a8,0xbd7eb));import{BaseTool}from'./baseTool.js';import a0_0x5e7ba2 from'../utilities/tagParser.js';class JobDoneTool extends BaseTool{constructor(){const _0x49757c=a0_0x4e98;super(),this['id']=_0x49757c(0x7d),this['name']=_0x49757c(0x71),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['version']='1.0.0',this['capabilities']=['task-completion','mode-control'],this[_0x49757c(0x6b)]=![],this[_0x49757c(0x83)]=![];}['getDescription'](){const _0x4c0d95=a0_0x4e98;return'\x0aJob\x20Done\x20Tool:\x20Signal\x20task\x20completion\x20in\x20autonomous\x20mode\x20and\x20exit\x20to\x20chat\x20mode.\x0a\x0aUsage\x20Instructions:\x0a-\x20Call\x20this\x20tool\x20when\x20you\x20have\x20SUCCESSFULLY\x20completed\x20the\x20assigned\x20task\x0a-\x20Also\x20call\x20this\x20tool\x20if\x20you\x20are\x20STUCK\x20or\x20UNABLE\x20to\x20proceed\x20after\x20multiple\x20failed\x20attempts\x0a-\x20Provide\x20a\x20clear\x20summary\x20of\x20what\x20was\x20accomplished\x20OR\x20what\x20prevented\x20completion\x0a-\x20This\x20will\x20immediately\x20exit\x20autonomous\x20mode\x20and\x20return\x20control\x20to\x20the\x20user\x0a\x0aExamples:\x0a-\x20\x22Created\x205\x20song\x20files\x20successfully\x20with\x20lyrics\x20and\x20melodies\x22\x0a-\x20\x22Unable\x20to\x20proceed:\x20missing\x20API\x20credentials\x20for\x20the\x20service\x22\x0a-\x20\x22Stuck\x20after\x203\x20failed\x20compilation\x20attempts\x20-\x20syntax\x20errors\x20persist\x22\x0a-\x20\x22Task\x20partially\x20complete:\x20implemented\x202\x20of\x203\x20requested\x20features\x22\x0a\x0aThe\x20tool\x20will\x20format\x20a\x20completion\x20message\x20and\x20gracefully\x20exit\x20autonomous\x20mode.\x0a\x20\x20\x20\x20'[_0x4c0d95(0x8e)]();}['parseParameters'](_0x88e15c){const _0x9ea826=a0_0x4e98;try{const _0x1a8b50=a0_0x5e7ba2[_0x9ea826(0x6a)](_0x88e15c,_0x9ea826(0x77)),_0x45075f=a0_0x5e7ba2[_0x9ea826(0x6a)](_0x88e15c,'details'),_0x210d4a=a0_0x5e7ba2['extractContent'](_0x88e15c,'success');let _0x3dc10a='',_0x3321ce='',_0x8b4fe1=!![];return _0x1a8b50[_0x9ea826(0x72)]>0x0?(_0x3dc10a=_0x1a8b50[0x0][_0x9ea826(0x8e)](),_0x3321ce=_0x45075f['length']>0x0?_0x45075f[0x0][_0x9ea826(0x8e)]():'',_0x8b4fe1=_0x210d4a['length']>0x0?_0x210d4a[0x0][_0x9ea826(0x6f)]()!=='false':!![]):_0x3dc10a=_0x88e15c[_0x9ea826(0x8e)]()||_0x9ea826(0x8c),{'actions':[{'action':'complete','summary':_0x3dc10a,'success':_0x8b4fe1,'details':_0x3321ce||undefined}]};}catch(_0x134323){return{'actions':[{'action':'complete','summary':_0x88e15c[_0x9ea826(0x8e)]()||'Task\x20completed','success':!![]}]};}}['getSchema'](){const _0x408ec9=a0_0x4e98;return{'type':'object','properties':{'actions':{'type':'array','items':{'type':_0x408ec9(0x74),'properties':{'action':{'type':_0x408ec9(0x80),'enum':['complete'],'description':'Mark\x20task\x20as\x20complete\x20-\x20always\x20use\x20\x22complete\x22'},'summary':{'type':'string','description':'Clear\x20summary\x20of\x20what\x20you\x20accomplished\x20OR\x20what\x20prevented\x20completion\x20(e.g.,\x20\x22Created\x205\x20song\x20files\x20successfully\x22,\x20\x22Unable\x20to\x20proceed:\x20missing\x20API\x20credentials\x22,\x20\x22Stuck\x20after\x203\x20failed\x20compilation\x20attempts\x22)'},'success':{'type':_0x408ec9(0x6d),'default':!![],'description':'Set\x20to\x20true\x20if\x20task\x20completed\x20successfully,\x20false\x20if\x20stuck/failed\x20or\x20partial\x20completion'},'details':{'type':_0x408ec9(0x80),'description':'Optional:\x20Additional\x20details\x20about\x20what\x20was\x20done,\x20what\x20failed,\x20any\x20files\x20created,\x20or\x20next\x20steps\x20for\x20the\x20user'}},'required':[_0x408ec9(0x7b),_0x408ec9(0x77)],'additionalProperties':![]},'minItems':0x1,'maxItems':0x1}},'required':['actions'],'additionalProperties':![]};}async['execute'](_0x115429,_0x9f6166={}){const _0x420d38=a0_0x4e98;try{const {actions:_0x3d32c6}=_0x115429;if(!_0x3d32c6||!Array['isArray'](_0x3d32c6)||_0x3d32c6['length']===0x0)throw new Error('Actions\x20array\x20is\x20required');const _0x4e1a7b=_0x3d32c6[0x0];if(_0x4e1a7b[_0x420d38(0x7b)]!==_0x420d38(0x8f))throw new Error(_0x420d38(0x8b));if(!_0x4e1a7b[_0x420d38(0x77)])throw new Error('Completion\x20summary\x20is\x20required');const _0x417ba=_0x9f6166['agentId'];let _0x17343c='';if(_0x417ba&&_0x9f6166['toolsRegistry'])try{if(this[_0x420d38(0x88)]){const _0x5d5886=await this['agentPool'][_0x420d38(0x82)](_0x417ba);_0x5d5886&&(_0x17343c='\x20by\x20agent\x20\x22'+_0x5d5886['name']+'\x22');}}catch(_0x28d008){}const _0x19d516=_0x420d38(0x84)+_0x17343c+(_0x4e1a7b['success']!==![]?'\x20successfully':_0x420d38(0x78))+'\x0a\x0a**Summary:**\x20'+_0x4e1a7b[_0x420d38(0x77)]+(_0x4e1a7b['details']?_0x420d38(0x73)+_0x4e1a7b[_0x420d38(0x8a)]:'')+'\x0a\x0a*Autonomous\x20mode\x20will\x20now\x20exit.*';return{'success':!![],'output':_0x19d516,'taskComplete':!![],'summary':_0x4e1a7b[_0x420d38(0x77)],'details':_0x4e1a7b[_0x420d38(0x8a)]||null,'successfulCompletion':_0x4e1a7b[_0x420d38(0x7e)]!==![],'metadata':{'toolId':this['id'],'agentId':_0x417ba||_0x420d38(0x6e),'completedAt':new Date()[_0x420d38(0x89)](),'action':_0x4e1a7b['action']}};}catch(_0x95a790){return{'success':![],'error':_0x95a790[_0x420d38(0x79)],'output':_0x420d38(0x7a)+_0x95a790['message'],'taskComplete':![]};}}['setAgentPool'](_0x87d490){const _0x224509=a0_0x4e98;this[_0x224509(0x88)]=_0x87d490;}['getCapabilities'](){const _0x597bcb=a0_0x4e98;return{'id':this['id'],'name':this[_0x597bcb(0x76)],'description':this['description'],'version':this['version'],'capabilities':this['capabilities'],'requiresProject':this['requiresProject'],'async':this[_0x597bcb(0x83)],'enabled':!![],'schema':this[_0x597bcb(0x85)]()};}}export default JobDoneTool;function a0_0x4e98(_0x23f744,_0x176319){_0x23f744=_0x23f744-0x6a;const _0x59a854=a0_0x59a8();let _0x4e9897=_0x59a854[_0x23f744];if(a0_0x4e98['nZIiBq']===undefined){var _0x24c78e=function(_0x40d431){const _0x3098e7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5e7ba2='',_0x88e15c='';for(let _0x1a8b50=0x0,_0x45075f,_0x210d4a,_0x3dc10a=0x0;_0x210d4a=_0x40d431['charAt'](_0x3dc10a++);~_0x210d4a&&(_0x45075f=_0x1a8b50%0x4?_0x45075f*0x40+_0x210d4a:_0x210d4a,_0x1a8b50++%0x4)?_0x5e7ba2+=String['fromCharCode'](0xff&_0x45075f>>(-0x2*_0x1a8b50&0x6)):0x0){_0x210d4a=_0x3098e7['indexOf'](_0x210d4a);}for(let _0x3321ce=0x0,_0x8b4fe1=_0x5e7ba2['length'];_0x3321ce<_0x8b4fe1;_0x3321ce++){_0x88e15c+='%'+('00'+_0x5e7ba2['charCodeAt'](_0x3321ce)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x88e15c);};a0_0x4e98['buXtvr']=_0x24c78e,a0_0x4e98['xGMpaw']={},a0_0x4e98['nZIiBq']=!![];}const _0x2f571e=_0x59a854[0x0],_0x299b59=_0x23f744+_0x2f571e,_0x50ffca=a0_0x4e98['xGMpaw'][_0x299b59];return!_0x50ffca?(_0x4e9897=a0_0x4e98['buXtvr'](_0x4e9897),a0_0x4e98['xGMpaw'][_0x299b59]=_0x4e9897):_0x4e9897=_0x50ffca,_0x4e9897;}function a0_0x59a8(){const _0x2675e1=['DhjPBq','y29TCgXLDgu','mJeZodmZn3PKD1vbDW','zxH0CMfJDenVBNrLBNq','CMvXDwLYzxnqCM9Qzwn0','mtG0ugjfEwzh','yM9VBgvHBG','Dw5RBM93BG','Dg9mB3DLCKnHC2u','mtC5ndC4mLH4DNDguq','sM9IierVBMu','BgvUz3rO','cGOQkKrLDgfPBhm6kIOG','B2jQzwn0','mZb0z09Ishi','BMfTzq','C3vTBwfYEq','ihDPDgGGAxnZDwvZ','BwvZC2fNzq','rMfPBgvKihrVig1HCMSGDgfZAYbHCYbJB21WBgv0ztOG','ywn0Aw9U','ntCWndHPzLDrDfi','AM9Izg9Uzq','C3vJy2vZCW','ndKZnZuZoevprvbgvW','C3rYAw5N','nJK3ody0sKrNwen1','z2v0qwDLBNq','yxn5BMm','4PYfifrHC2SGy29TCgXLDgvK','z2v0u2nOzw1H','mtm3mLjrEeX1yG','nJq3mhPVBMrQyW','ywDLBNrqB29S','Dg9ju09tDhjPBMC','zgv0ywLSCW','sw52ywXPzcbHy3rPB24Uie9UBhKGiMnVBxbSzxrLiIbPCYbZDxbWB3j0zwq','vgfZAYbJB21WBgv0zwq','mteXnda3ngXlD3jyCG'];a0_0x59a8=function(){return _0x2675e1;};return a0_0x59a8();}