@loxia-labs/loxia-autopilot-one 1.0.18 → 1.0.19

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 (120) hide show
  1. package/README.md +2 -2
  2. package/bin/cli.js +1 -1
  3. package/bin/loxia-terminal-v2.js +1 -1
  4. package/bin/loxia-terminal.js +1 -1
  5. package/bin/start-with-terminal.js +1 -1
  6. package/package.json +1 -1
  7. package/scripts/install-scanners.js +1 -1
  8. package/src/analyzers/CSSAnalyzer.js +1 -1
  9. package/src/analyzers/ConfigValidator.js +1 -1
  10. package/src/analyzers/ESLintAnalyzer.js +1 -1
  11. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  12. package/src/analyzers/PrettierFormatter.js +1 -1
  13. package/src/analyzers/PythonAnalyzer.js +1 -1
  14. package/src/analyzers/SecurityAnalyzer.js +1 -1
  15. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  17. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  18. package/src/analyzers/codeCloneDetector/index.js +1 -1
  19. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  20. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  21. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  22. package/src/core/agentPool.js +1 -1
  23. package/src/core/agentScheduler.js +1 -1
  24. package/src/core/contextManager.js +1 -1
  25. package/src/core/messageProcessor.js +1 -1
  26. package/src/core/orchestrator.js +1 -1
  27. package/src/core/stateManager.js +1 -1
  28. package/src/index.js +1 -1
  29. package/src/interfaces/cli.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  38. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  39. package/src/interfaces/terminal/api/apiClient.js +1 -1
  40. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  41. package/src/interfaces/terminal/api/session.js +1 -1
  42. package/src/interfaces/terminal/api/websocket.js +1 -1
  43. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  44. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  45. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  47. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  48. package/src/interfaces/terminal/components/Header.js +1 -1
  49. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  50. package/src/interfaces/terminal/components/InputBox.js +1 -1
  51. package/src/interfaces/terminal/components/Layout.js +1 -1
  52. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  53. package/src/interfaces/terminal/components/MessageList.js +1 -1
  54. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  55. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  56. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  57. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  58. package/src/interfaces/terminal/components/TextInput.js +1 -1
  59. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  60. package/src/interfaces/terminal/config/constants.js +1 -1
  61. package/src/interfaces/terminal/index.js +1 -1
  62. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  63. package/src/interfaces/terminal/state/useAgents.js +1 -1
  64. package/src/interfaces/terminal/state/useConnection.js +1 -1
  65. package/src/interfaces/terminal/state/useMessages.js +1 -1
  66. package/src/interfaces/terminal/state/useTools.js +1 -1
  67. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  68. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  69. package/src/interfaces/terminal/utils/theme.js +1 -1
  70. package/src/interfaces/webServer.js +1 -1
  71. package/src/modules/fileExplorer/controller.js +1 -1
  72. package/src/modules/fileExplorer/index.js +1 -1
  73. package/src/modules/fileExplorer/middleware.js +1 -1
  74. package/src/modules/fileExplorer/routes.js +1 -1
  75. package/src/services/agentActivityService.js +1 -1
  76. package/src/services/aiService.js +1 -1
  77. package/src/services/apiKeyManager.js +1 -1
  78. package/src/services/benchmarkService.js +1 -1
  79. package/src/services/budgetService.js +1 -1
  80. package/src/services/contextInjectionService.js +1 -1
  81. package/src/services/conversationCompactionService.js +1 -1
  82. package/src/services/errorHandler.js +1 -1
  83. package/src/services/fileAttachmentService.js +1 -1
  84. package/src/services/modelRouterService.js +1 -1
  85. package/src/services/modelsService.js +1 -1
  86. package/src/services/qualityInspector.js +1 -1
  87. package/src/services/tokenCountingService.js +1 -1
  88. package/src/tools/agentCommunicationTool.js +1 -1
  89. package/src/tools/agentDelayTool.js +1 -1
  90. package/src/tools/asyncToolManager.js +1 -1
  91. package/src/tools/baseTool.js +1 -1
  92. package/src/tools/browserTool.js +1 -1
  93. package/src/tools/cloneDetectionTool.js +1 -1
  94. package/src/tools/dependencyResolverTool.js +1 -1
  95. package/src/tools/fileContentReplaceTool.js +1 -1
  96. package/src/tools/fileSystemTool.js +1 -1
  97. package/src/tools/fileTreeTool.js +1 -1
  98. package/src/tools/imageTool.js +1 -1
  99. package/src/tools/importAnalyzerTool.js +1 -1
  100. package/src/tools/jobDoneTool.js +1 -1
  101. package/src/tools/seekTool.js +1 -1
  102. package/src/tools/staticAnalysisTool.js +1 -1
  103. package/src/tools/taskManagerTool.js +1 -1
  104. package/src/tools/terminalTool.js +1 -1
  105. package/src/tools/webTool.js +1 -1
  106. package/src/types/agent.js +1 -1
  107. package/src/types/contextReference.js +1 -1
  108. package/src/types/conversation.js +1 -1
  109. package/src/types/toolCommand.js +1 -1
  110. package/src/utilities/attachmentValidator.js +1 -1
  111. package/src/utilities/configManager.js +1 -1
  112. package/src/utilities/constants.js +1 -1
  113. package/src/utilities/directoryAccessManager.js +1 -1
  114. package/src/utilities/fileProcessor.js +1 -1
  115. package/src/utilities/logger.js +1 -1
  116. package/src/utilities/tagParser.js +1 -1
  117. package/src/utilities/toolConstants.js +1 -1
  118. package/src/utilities/userDataDir.js +1 -1
  119. package/web-ui/build/index.html +1 -1
  120. package/web-ui/build/static/{index-DL2-PyNX.js → index-CcwO7jS4.js} +8 -8
@@ -1 +1 @@
1
- const a0_0x3347e8=a0_0x43da;function a0_0x5ee5(){const _0x1ef2c7=['rxjYB3iGyNvPBgrPBMCGDhjLzq','teftvf9cuKfoq0G','AxneAxjLy3rVCNK','nhnzBMDPsq','Bwf4lwrLChrOig11C3qGyMuGysbWB3nPDgL2zsbUDw1Izxi','lM1HCa','lMnSyxnZ','zwDNCW','yMfZzw5HBwu','C2L6zq','lNb5DgvZDf9JywnOzq','lNDHCG','lNrLBxa','ndmYmteZt2LNB0TK','C3rHCNrZv2L0Aa','ugf0Acb0CMf2zxjZywWGkc4UksbUB3qGywXSB3DLzcbMB3iGC2vJDxjPDhK','lM1VDG','lNjHCG','zMLSzq','BMfTzq','C29YDa','AxnbCNjHEq','zw52','DhjLzunVBMzPzW','rgLYzwn0B3j5igrVzxmGBM90igv4Axn0ig9YigLZigLUywnJzxnZAwjSztOG','ndnqBMDPreG','Bwf4lwrLChrOignHBM5VDcbLEgnLzwqG','lMvNz3m','Dhj1zq','mta1n2vizwD5wG','tufyx0zjtevtx0Lox1rsruu','lNb5za','cKrPCMvJDg9YAwvZoIa','zM9YBwf0vhjLzq','twf4Aw11BsbKAxjLy3rVCNKGy291BNqGCMvHy2HLza','mJKYnJjnBgHer2y','zM9YBwf0rMLSzvnPEMu','D29YA2LUz0rPCMvJDg9YEq','DhLWzq','BwfW','lNbKzG','AM9PBG','lMLJBW','BM9Kzv9TB2r1BgvZ','zgLYzwn0B3j5','C2HVD0HPzgrLBG','BgLI','DhjPBq','zxHJBhvKzuv4DgvUC2LVBNm','cI0Gtwf4Aw11BsbKAxjLy3rVCMLLCZOG','vKvsveLdquW','Dg9gAxHLza','iIbTDxn0ihn0yxj0ihDPDgGGysbKB3qGkguUzY4SiciUANmIkq','zM9YrwfJAa','Aw5MBW','twf4Aw11BsbMAwXLignVDw50ihjLywnOzwq','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','nty0DMLuDMTl','lM5VEa','Bg9Nz2vY','BwvZC2fNzq','C2TPChbLzenVDw50','zMfSC2u','mJuZnZiYmhfevMvluW','cKrPCMvJDg9YEtOG','DgLTzw91Da','cIaGica','y292zxjHz2u','mtGZndjzwMjuAvC','BgvUz3rO','mteWmZmZmhPztNzuwa','yNvPBgruCMvL','lM1PBI5JC3m','lMPWzW','qLjbtKni','revgqvvmvf9nqvHFrevqveG','Aw5JBhvKzuv4DgvUC2LVBNmGBxvZDcbIzsbHBIbHCNjHEq','mta4ntG5mKL4AKXxua','mZGXnNnNAKrJuG','lMv4zq','tufyx0rjuKvdve9ssuvt','zxjYB3i','r2vUzxjHDgLUzYbMAwXLihrYzwu','lMDPzG','lMvUDG','ugf0AcbPCYbUB3qGysbKAxjLy3rVCNK','tufyx0rfufrix0XjtuLu','lNn2zW','zMLSDgvY','lMPHCG','CMvSyxrPDMu','B3v0','zMLSzxndB3vUDa','Dg9mB3DLCKnHC2u','lM51Ehq','lM15ChLFy2fJAgu','lNb5yW','lMr5BgLI','y2HPBgrYzw4','Bwf4rgvWDgG','CgfYDhm','zxH0BMfTzq','zxHLyW','rMLSzsb0CMvLihrVB2WGy2XLyw51CcbJB21WBgv0zwq','Aw5JBhvKzxm','DgfYz2v0','rMfPBgvKihrVihbHCNnLigzPBguTDhjLzsbWyxjHBwv0zxjZ','ieTc','cKzPBguGvhjLzsbuB29SoIbhzw5LCMf0zsbOAwvYyxjJAgLJywWGDhjLzsbYzxbYzxnLBNrHDgLVBIbVzIbWCM9Qzwn0igrPCMvJDg9YEsbZDhj1y3r1CMuUcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLlxrYzwuIlaOGicjKAxjLy3rVCNKIoIaIC3jJiIWkicaIBwf4rgvWDgGIoIa0laOGicjPBMnSDwrLrxH0zw5ZAw9UCYi6ifSIlMPZiIWGiI5QC3GIlcaIlNrZiIWGiI50C3GIxsWkicaIzxHJBhvKzuv4DgvUC2LVBNmIoIbBiI50zxn0lMPZiIWGiI5ZCgvJlMPZiL0ScIaGiNnOB3DgAwXLCYi6ihrYDwuScIaGiNnOB3DiAwrKzw4IoIbMywXZzqP9cMbGyaOkuefsqu1fvevsuZOkcMrPCMvJDg9YEsaOB3b0Aw9UywWPoGOGic0GrgLYzwn0B3j5ihrVihnJyw4GkgrLzMf1Bhq6ihDVCMTPBMCGzgLYzwn0B3j5kqOGic0Gq2fUigjLihjLBgf0AxzLig9YigfIC29SDxrLihbHDgGkicaTiev4yw1WBgvZoIaIC3jJiIWGiNnYyY9JB21WB25LBNrZiIWGiI9OB21Ll3vZzxiVChjVAMvJDcikcM1HEerLChrOicHVChrPB25HBcK6cIaGlsbnyxHPBxvTigrLChrOihrVihnJyw4GkgrLzMf1Bhq6ia','C2HVD1nPEMvZ','lMH5Cg90AgvZAxm','BgLInJq','lMrSBa','lNDVzMyY','lNnV','lNrVEa','lMD6','nti5odHSEwjuyM8','lMvVDa','Aw5JBhvKzuv4DgvUC2LVBNm','cIaGlsbezwvWzxiGpsbTB3jLigrLDgfPBcWGC2XVD2vYihbLCMzVCM1HBMnLcGPPBMnSDwrLrxH0zw5ZAw9UCYaOB3b0Aw9UywWGlsbxseLuruXju1qPoGOGic0Gsw5JBhvKzsbptKXzihrOzxnLigzPBguGzxH0zw5ZAw9UCWOGic0GqxjYyxKGB2yGzxH0zw5ZAw9UCWOGic0GrxHHBxbSzxm6ifSIlMPZiIWGiI5QC3GIlcaIlNrZiIWGiI50C3GIxqOGic0GvgfRzxmGChjLy2vKzw5JzsbVDMvYigv4y2X1zgvfEhrLBNnPB25ZcGPLEgnSDwrLrxH0zw5ZAw9UCYaOB3b0Aw9UywWGlsbctefds0Xju1qPoGOGic0GrxHJBhvKzsb0AgvZzsbMAwXLigv4DgvUC2LVBNmkicaTiefYCMf5ig9Migv4DgvUC2LVBNmkicaTiev4yw1WBgvZoIbBiI50zxn0lMPZiIWGiI5ZCgvJlMPZiIWGiI5TAw4UANmIxqOGic0Gt25SEsbHChbSAwvZigLMigLUy2X1zgvfEhrLBNnPB25ZigLZig5VDcbZzxqkcMv4y2X1zgveAxjLy3rVCMLLCYaOB3b0Aw9UywWPoGOGic0GqwrKAxrPB25HBcbKAxjLy3rVCMLLCYb0BYbPz25VCMukicaTiefSCMvHzhKGAwDUB3jLCZOGBM9Kzv9TB2r1BgvZlcaUz2L0lcbKAxn0lcbIDwLSzcWGzxrJlGOGic0GrxHHBxbSzxm6ifSIDgvZDhmIlcaIzML4DhvYzxmIlcaIBw9JA3mIxqOkC2HVD0zPBgvZicHVChrPB25HBcK6cIaGlsbxAgv0AgvYihrVihnOB3CGzMLSzxmGkgrLzMf1Bhq6ihrYDwuPcIaGlsbtzxqGDg8GzMfSC2uGDg8GC2HVDYbVBMX5igrPCMvJDg9YEsbZDhj1y3r1CMukcNnOB3DiAwrKzw4Gkg9WDgLVBMfSktOkicaTifDOzxrOzxiGDg8GC2HVDYbOAwrKzw4GzMLSzxmVzM9SzgvYCYaOzgvMyxvSDdOGzMfSC2uPcIaGlsbiAwrKzw4GpsbZDgfYDhmGD2L0AcaNlICkcNnOB3DtAxPLCYaOB3b0Aw9UywWPoGOGic0Gv2HLDgHLCIb0BYbZAg93igzPBguGC2L6zxmGkgrLzMf1Bhq6igzHBhnLkqOGic0GrM9YBwf0oIblqIWGtuikcMLNBM9YzujPBMfYEuzPBgvZicHVChrPB25HBcK6cIaGlsbxAgv0AgvYihrVigLNBM9YzsbIAw5HCNKVBwvKAweGzMLSzxmGkgrLzMf1Bhq6igzHBhnLkqOGic0GswDUB3jLCZOGAw1Hz2vZlcb2AwrLB3mSigfYy2HPDMvZlcbMB250CYWGzxrJlGOkrvHbtvbmrvm6cGPfEgfTCgXLideGlsbcyxnPyYb0CMvLoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTDhjLzsiScIaGiMrPCMvJDg9YEsi6iciUiGP9cMbGyaOkrxHHBxbSzsaYic0GsMf2yvnJCMLWDc9uExbLu2nYAxb0ig9UBhK6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs10CMvLiIWkicaIzgLYzwn0B3j5iJOGiNnYyYiScIaGiMLUy2X1zgvfEhrLBNnPB25ZiJOGwYiUANmIlcaIlMPZEciSiciUDhmIlcaIlNrZEcjDlaOGicjTyxHezxb0Aci6idukFqPGygakcKv4yw1WBguGmYaTifb5DgHVBIbWCM9Qzwn0ihn0CNvJDhvYztOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLlxrYzwuIlaOGicjKAxjLy3rVCNKIoIaIlIiScIaGiMLUy2X1zgvfEhrLBNnPB25ZiJOGwYiUChKIxsWkicaIzxHJBhvKzuv4DgvUC2LVBNmIoIbBiI5WEwmIxsWkicaIC2HVD0zPBgvZiJOGDhj1zqP9cMbGyaOkrxHHBxbSzsa0ic0GrgLYzwn0B3j5ihn0CNvJDhvYzsbVBMX5oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTDhjLzsiScIaGiMrPCMvJDg9YEsi6icjZCMmIlaOGicjZAg93rMLSzxmIoIbMywXZzsWkicaIBwf4rgvWDgGIoIaZcN0kygbGcGPfEgfTCgXLiduGlsbfEgnSDwrLihrLC3qGzMLSzxm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs10CMvLiIWkicaIzgLYzwn0B3j5iJOGiNnYyYiScIaGiMv4y2X1zgvfEhrLBNnPB25ZiJOGwYiUDgvZDc5QCYiSiciUC3bLyY5QCYiSiciUDgvZDc50CYiSiciUC3bLyY50CYjDlaOGicjLEgnSDwrLrgLYzwn0B3jPzxmIoIbBiL9FDgvZDhnFxYiSicj0zxn0CYiSicjZCgvJCYjDcN0kygbGcGPpvvrqvvqGrK9stufuoGPZCMmVcUkuNokuGokuGcbJB21WB25LBNrZlWRILiiGicdILjZILidILiaGsgvHzgvYlMPZEaRILiiGicdILjZILidILiaGrM9VDgvYlMPZEaRILiiGicdILjtILidILiaGtgf5B3v0lMPZEaRILjZILidILiaGDxrPBhmVcUkuGIaGiokuNokuGokuGcbOzwXWzxjZlMPZcUkuGIaGiokuLokuGokuGcbJB25MAwCUANmk4Psu4Psa4PsaigLUzgv4lMPZcGPbvvrptufusumGsuDot1jfuZOkvgHLihrVB2WGyxv0B21HDgLJywXSEsbPz25VCMvZignVBw1VBIbKAxjLy3rVCMLLCZOklsbUB2rLx21VzhvSzxmSic5NAxqSigrPC3qSigj1AwXKlcbJB3zLCMfNzqOTic5UzxH0lcaUBNv4DcWGlMnHy2HLlcbVDxqSihrHCMDLDaOTic52C2nVzguSic5PzgvHlcbFx3b5y2fJAgvFxYWGDMvUDGOkteLnsvrbveLptLm6cI0Gtwf4Aw11BsbKzxb0AdOG','ChvZAa','cK1HEcbezxb0AdOG','C2rPC3q','CgfYC2vqyxjHBwv0zxjZ','zxHLy3v0zq','lNrTCa','CMvZB2X2zq','rxH0zw5ZAw9Uici','vxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEq','z2vUzxjHDgvtDw1Tyxj5','x19WEwnHy2HLx18','C3bSAxq','lMnHy2HL','C3rHDhm','4PscicaG','lNnXBgL0zq','zMLSzs10CMvL','lMDPDa','lNzZ','lNrHCG'];a0_0x5ee5=function(){return _0x1ef2c7;};return a0_0x5ee5();}(function(_0x2bf025,_0x810d70){const _0x59f324=a0_0x43da,_0x36fdc1=_0x2bf025();while(!![]){try{const _0x487cee=-parseInt(_0x59f324(0xe1))/0x1*(parseInt(_0x59f324(0xb0))/0x2)+-parseInt(_0x59f324(0x115))/0x3*(parseInt(_0x59f324(0xcb))/0x4)+-parseInt(_0x59f324(0x10e))/0x5+parseInt(_0x59f324(0xeb))/0x6*(-parseInt(_0x59f324(0xe5))/0x7)+parseInt(_0x59f324(0x116))/0x8*(parseInt(_0x59f324(0x10c))/0x9)+parseInt(_0x59f324(0x107))/0xa+-parseInt(_0x59f324(0xd5))/0xb*(-parseInt(_0x59f324(0x101))/0xc);if(_0x487cee===_0x810d70)break;else _0x36fdc1['push'](_0x36fdc1['shift']());}catch(_0x4bf27f){_0x36fdc1['push'](_0x36fdc1['shift']());}}}(a0_0x5ee5,0x95dda));import{BaseTool}from'./baseTool.js';import{promises as a0_0x5c5078}from'fs';import a0_0x1f5db2 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':a0_0x3347e8(0xc2),'INDENT':'\x20\x20\x20\x20'}},DEFAULT_IGNORE_DIRECTORIES=[a0_0x3347e8(0xf3),a0_0x3347e8(0xc5),'dist','build',a0_0x3347e8(0x10b),'.next',a0_0x3347e8(0x126),a0_0x3347e8(0xc0),a0_0x3347e8(0x123),a0_0x3347e8(0xa4),'vendor','bower_components','.vscode','.idea',a0_0x3347e8(0xc6),a0_0x3347e8(0xbe),'venv',a0_0x3347e8(0xde),a0_0x3347e8(0x11c),a0_0x3347e8(0xd2),a0_0x3347e8(0x127),a0_0x3347e8(0xcf),a0_0x3347e8(0xe3),a0_0x3347e8(0xf6),a0_0x3347e8(0xaa),a0_0x3347e8(0x12c),a0_0x3347e8(0xb6),'wheels',a0_0x3347e8(0xae),a0_0x3347e8(0x102),'htmlcov',a0_0x3347e8(0xa9),'tmp','temp',a0_0x3347e8(0xb9),a0_0x3347e8(0xd4)],DEFAULT_IGNORE_EXTENSIONS=[a0_0x3347e8(0xcd),'.min.js',a0_0x3347e8(0x110),'.lock','.log',a0_0x3347e8(0xb9),'.temp',a0_0x3347e8(0x128),'.pyo',a0_0x3347e8(0xe7),a0_0x3347e8(0xad),a0_0x3347e8(0xab),a0_0x3347e8(0x129),a0_0x3347e8(0x117),'.obj','.o','.a',a0_0x3347e8(0xce),a0_0x3347e8(0x121),a0_0x3347e8(0xd3)],BINARY_EXTENSIONS=['.png',a0_0x3347e8(0x111),'.jpeg',a0_0x3347e8(0x11b),'.bmp',a0_0x3347e8(0xf2),a0_0x3347e8(0x11f),a0_0x3347e8(0xf0),'.zip',a0_0x3347e8(0xc7),a0_0x3347e8(0xaf),a0_0x3347e8(0xd9),'.7z','.mp3','.mp4','.avi',a0_0x3347e8(0xd8),'.wmv','.woff',a0_0x3347e8(0xac),'.ttf',a0_0x3347e8(0xb1),'.bin','.dat','.db',a0_0x3347e8(0xc3)];class FileTreeTool extends BaseTool{constructor(_0x4099aa={},_0x43ed4e=null){const _0x24ee1c=a0_0x3347e8;super(_0x4099aa,_0x43ed4e),this['id']=_0x24ee1c(0xc4),this['requiresProject']=!![],this['isAsync']=!![],this[_0x24ee1c(0x109)]=_0x4099aa[_0x24ee1c(0x109)]||0x1d4c0,this[_0x24ee1c(0xdf)]={...TREE_CONFIG,..._0x4099aa[_0x24ee1c(0xdf)]},this[_0x24ee1c(0xc1)]={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};}['getDescription'](){const _0x30ede7=a0_0x3347e8;return _0x30ede7(0xa7)+TREE_CONFIG[_0x30ede7(0x113)]+')\x0a\x20\x20-\x20Range:\x201-'+TREE_CONFIG[_0x30ede7(0x11e)]+_0x30ede7(0xb3)+TREE_CONFIG[_0x30ede7(0x11e)]+'\x0a-\x20Maximum\x20files:\x20'+TREE_CONFIG['MAX_FILES_IN_TREE']+_0x30ede7(0xf9)+TREE_CONFIG['MAX_DIRECTORIES']+'\x0a-\x20Binary\x20files\x20can\x20be\x20filtered\x20with\x20ignoreBinaryFiles\x20option\x0a\x20\x20\x20\x20';}[a0_0x3347e8(0xb7)](_0x2b57e2){const _0x36a08f=a0_0x3347e8;try{if(_0x2b57e2[_0x36a08f(0xf7)]()['startsWith']('{')){const _0x4279b8=JSON['parse'](_0x2b57e2);return{'directory':_0x4279b8[_0x36a08f(0xf4)]||'.','maxDepth':_0x4279b8[_0x36a08f(0x12b)]||TREE_CONFIG[_0x36a08f(0x113)],'includeExtensions':_0x4279b8[_0x36a08f(0xb2)]||[],'excludeExtensions':_0x4279b8[_0x36a08f(0xf8)]||[],'excludeDirectories':_0x4279b8['excludeDirectories']||[],'showFiles':_0x4279b8['showFiles']!==![],'showHidden':_0x4279b8['showHidden']===!![],'showSizes':_0x4279b8[_0x36a08f(0xa8)]===!![],'ignoreBinaryFiles':_0x4279b8['ignoreBinaryFiles']===!![]};}const _0x41beb7={'directory':'.','maxDepth':TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![]},_0x3ff92c=/<directory>(.*?)<\/directory>/i,_0x20a70a=_0x3ff92c[_0x36a08f(0xa1)](_0x2b57e2);_0x20a70a&&(_0x41beb7['directory']=_0x20a70a[0x1]['trim']());const _0x43a30e=/<max-depth>(\d+)<\/max-depth>/i,_0x3592ab=_0x43a30e['exec'](_0x2b57e2);_0x3592ab&&(_0x41beb7['maxDepth']=parseInt(_0x3592ab[0x1],0xa));const _0x5c7984=/<include-extensions>(.*?)<\/include-extensions>/i,_0x442a4d=_0x5c7984['exec'](_0x2b57e2);_0x442a4d&&(_0x41beb7['includeExtensions']=_0x442a4d[0x1]['split'](',')[_0x36a08f(0xef)](_0x192dbb=>_0x192dbb['trim']())['filter'](_0x25802b=>_0x25802b[_0x36a08f(0x10d)]>0x0));const _0x2df76d=/<exclude-extensions>(.*?)<\/exclude-extensions>/i,_0x1ed6b3=_0x2df76d[_0x36a08f(0xa1)](_0x2b57e2);_0x1ed6b3&&(_0x41beb7[_0x36a08f(0xf8)]=_0x1ed6b3[0x1]['split'](',')[_0x36a08f(0xef)](_0x3873ae=>_0x3873ae[_0x36a08f(0xf7)]())[_0x36a08f(0x120)](_0x24b642=>_0x24b642['length']>0x0));const _0x5b0a82=/<exclude-directories>(.*?)<\/exclude-directories>/i,_0x4de174=_0x5b0a82['exec'](_0x2b57e2);_0x4de174&&(_0x41beb7['excludeDirectories']=_0x4de174[0x1][_0x36a08f(0xbf)](',')['map'](_0x176080=>_0x176080[_0x36a08f(0xf7)]())['filter'](_0x5c2d51=>_0x5c2d51[_0x36a08f(0x10d)]>0x0));const _0x556348=/<show-files>(.*?)<\/show-files>/i,_0x4111cc=_0x556348[_0x36a08f(0xa1)](_0x2b57e2);_0x4111cc&&(_0x41beb7['showFiles']=_0x4111cc[0x1]['trim']()[_0x36a08f(0x125)]()!==_0x36a08f(0x106));const _0x4783a0=/<show-hidden>(.*?)<\/show-hidden>/i,_0xb2032e=_0x4783a0['exec'](_0x2b57e2);_0xb2032e&&(_0x41beb7[_0x36a08f(0xf5)]=_0xb2032e[0x1][_0x36a08f(0xf7)]()[_0x36a08f(0x125)]()==='true');const _0x35969d=/<show-sizes>(.*?)<\/show-sizes>/i,_0x1e4614=_0x35969d['exec'](_0x2b57e2);_0x1e4614&&(_0x41beb7['showSizes']=_0x1e4614[0x1][_0x36a08f(0xf7)]()[_0x36a08f(0x125)]()===_0x36a08f(0xe4));const _0x151bbc=/<ignore-binary-files>(.*?)<\/ignore-binary-files>/i,_0x31a7dd=_0x151bbc[_0x36a08f(0xa1)](_0x2b57e2);return _0x31a7dd&&(_0x41beb7['ignoreBinaryFiles']=_0x31a7dd[0x1]['trim']()['toLowerCase']()===_0x36a08f(0xe4)),_0x41beb7;}catch(_0x5dbe2a){return this[_0x36a08f(0x103)]?.['error'](_0x36a08f(0xa5),{'error':_0x5dbe2a['message']}),{'directory':'.','maxDepth':TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![],'parseError':_0x5dbe2a[_0x36a08f(0x104)]};}}['getRequiredParameters'](){return[];}[a0_0x3347e8(0x100)](_0x541add){const _0x5f4759=a0_0x3347e8,_0x430092=[];if(_0x541add['maxDepth']!==undefined){if(typeof _0x541add['maxDepth']!=='number'||_0x541add[_0x5f4759(0x12b)]<0x1)_0x430092['push'](_0x5f4759(0xcc));else _0x541add['maxDepth']>this[_0x5f4759(0xdf)][_0x5f4759(0x11e)]&&_0x430092[_0x5f4759(0xb4)](_0x5f4759(0xe2)+this['treeConfig'][_0x5f4759(0x11e)]);}_0x541add[_0x5f4759(0xf4)]&&_0x541add['directory']['includes']('..')&&_0x430092[_0x5f4759(0xb4)](_0x5f4759(0xd7));if(_0x541add[_0x5f4759(0xb2)]!==undefined&&_0x541add[_0x5f4759(0xb2)]!==null){if(!Array[_0x5f4759(0xdd)](_0x541add[_0x5f4759(0xb2)]))_0x430092[_0x5f4759(0xb4)](_0x5f4759(0x114));else for(const _0x459c31 of _0x541add['includeExtensions']){!_0x459c31[_0x5f4759(0xd6)]('.')&&_0x430092[_0x5f4759(0xb4)](_0x5f4759(0xbb)+_0x459c31+'\x22\x20must\x20start\x20with\x20a\x20dot\x20(e.g.,\x20\x22.js\x22)');}}if(_0x541add['excludeExtensions']!==undefined&&_0x541add[_0x5f4759(0xf8)]!==null){if(!Array[_0x5f4759(0xdd)](_0x541add[_0x5f4759(0xf8)]))_0x430092['push']('excludeExtensions\x20must\x20be\x20an\x20array');else for(const _0x2c0d84 of _0x541add['excludeExtensions']){!_0x2c0d84[_0x5f4759(0xd6)]('.')&&_0x430092[_0x5f4759(0xb4)](_0x5f4759(0xbb)+_0x2c0d84+_0x5f4759(0xfc));}}_0x541add['excludeDirectories']!==undefined&&_0x541add['excludeDirectories']!==null&&(!Array['isArray'](_0x541add['excludeDirectories'])&&_0x430092['push']('excludeDirectories\x20must\x20be\x20an\x20array'));if(_0x430092['length']>0x0)throw new Error('Parameter\x20validation\x20failed:\x20'+_0x430092[_0x5f4759(0xf1)](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x3347e8(0xb8)](_0x54f042,_0x36fa8e){const _0x3324f4=a0_0x3347e8,{directory:directory='.',maxDepth:maxDepth=TREE_CONFIG[_0x3324f4(0x113)],includeExtensions:includeExtensions=[],excludeExtensions:excludeExtensions=[],excludeDirectories:excludeDirectories=[],showFiles:showFiles=!![],showHidden:showHidden=![],showSizes:showSizes=![],ignoreBinaryFiles:ignoreBinaryFiles=![]}=_0x54f042,{projectDir:_0xb57db1,agentId:_0x13c571,directoryAccess:_0x58a5b1}=_0x36fa8e;let _0x377cbb=_0xb57db1||process['cwd']();_0x58a5b1&&_0x58a5b1['workingDirectory']&&(_0x377cbb=_0x58a5b1[_0x3324f4(0xed)],this[_0x3324f4(0x103)]?.[_0x3324f4(0xfe)](_0x3324f4(0xbc),{'workingDirectory':_0x58a5b1[_0x3324f4(0xed)],'agentId':_0x13c571}));const _0x111097=a0_0x1f5db2['isAbsolute'](directory)?directory:a0_0x1f5db2[_0x3324f4(0xba)](_0x377cbb,directory);try{const _0x307d07=await a0_0x5c5078['stat'](_0x111097);if(!_0x307d07['isDirectory']())throw new Error(_0x3324f4(0x11d));}catch(_0x136119){throw new Error(_0x3324f4(0xe0)+directory);}this['logger']?.['info'](_0x3324f4(0x11a),{'directory':directory,'targetDir':_0x111097,'maxDepth':maxDepth,'includeExtensions':includeExtensions?.[_0x3324f4(0x10d)]||0x0,'excludeExtensions':excludeExtensions?.['length']||0x0,'agentId':_0x13c571}),this['stats']={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};const _0x4eb5a6=[...DEFAULT_IGNORE_DIRECTORIES,...excludeDirectories||[]],_0x546a21=[...DEFAULT_IGNORE_EXTENSIONS];ignoreBinaryFiles&&_0x546a21[_0x3324f4(0xb4)](...BINARY_EXTENSIONS);const _0x2aa5ea=await this[_0x3324f4(0x10f)](_0x111097,_0x111097,0x0,maxDepth,_0x4eb5a6,includeExtensions||[],[...excludeExtensions||[],..._0x546a21],showFiles,showHidden,showSizes),_0x4aaf1b=this['formatTree'](_0x2aa5ea),_0x5bd6de=this['generateSummary'](directory,this['stats'],maxDepth);return{'success':!![],'directory':_0x111097,'tree':_0x4aaf1b,'summary':_0x5bd6de,'maxDepth':maxDepth,'totalFiles':this['stats']['filesCount'],'totalDirectories':this['stats']['directoriesCount'],'skippedCount':this['stats']['skippedCount'],'statistics':{...this['stats']},'toolUsed':'file-tree'};}async['buildTree'](_0x3749e8,_0xe28103,_0x21cd00,_0x357b6c,_0x486748,_0x398a6f,_0x19ca72,_0x2c592e,_0x22741a,_0x2c8c6d){const _0x391d48=a0_0x3347e8;if(_0x21cd00>_0x357b6c)return null;if(this[_0x391d48(0xc1)]['directoriesCount']>=this['treeConfig']['MAX_DIRECTORIES'])return this[_0x391d48(0x103)]?.['warn'](_0x391d48(0xea),{'maxDirectories':this['treeConfig'][_0x391d48(0x118)]}),null;try{const _0x2debc2=await a0_0x5c5078['readdir'](_0xe28103,{'withFileTypes':!![]}),_0x5df12a={'name':_0x21cd00===0x0?a0_0x1f5db2[_0x391d48(0xd0)](_0xe28103)+'/':a0_0x1f5db2['basename'](_0xe28103),'path':a0_0x1f5db2[_0x391d48(0x122)](_0x3749e8,_0xe28103),'type':_0x391d48(0xf4),'children':[]};this[_0x391d48(0xc1)]['directoriesCount']++;for(const _0x14a0e2 of _0x2debc2){if(this[_0x391d48(0xc1)][_0x391d48(0x124)]>=this['treeConfig'][_0x391d48(0xe6)]){this['logger']?.['warn'](_0x391d48(0xff),{'maxFiles':this[_0x391d48(0xdf)][_0x391d48(0xe6)]});break;}if(!_0x22741a&&_0x14a0e2['name']['startsWith']('.')){this[_0x391d48(0xc1)][_0x391d48(0x105)]++;continue;}const _0x3ae4ac=a0_0x1f5db2[_0x391d48(0xf1)](_0xe28103,_0x14a0e2[_0x391d48(0xdb)]);if(_0x14a0e2[_0x391d48(0xca)]()){if(_0x486748['includes'](_0x14a0e2['name'])){this[_0x391d48(0xc1)]['skippedCount']++;continue;}const _0x4f1709=await this[_0x391d48(0x10f)](_0x3749e8,_0x3ae4ac,_0x21cd00+0x1,_0x357b6c,_0x486748,_0x398a6f,_0x19ca72,_0x2c592e,_0x22741a,_0x2c8c6d);_0x4f1709&&(_0x4f1709[_0x391d48(0x12a)]['length']>0x0||_0x21cd00===0x0)&&_0x5df12a['children']['push'](_0x4f1709);}else{if(_0x14a0e2['isFile']()&&_0x2c592e){if(_0x21cd00+0x1>_0x357b6c)continue;const _0x4756d9=a0_0x1f5db2[_0x391d48(0xa0)](_0x14a0e2[_0x391d48(0xdb)]);if(_0x398a6f['length']>0x0){if(!_0x398a6f['includes'](_0x4756d9)){this[_0x391d48(0xc1)]['skippedCount']++;continue;}}else{if(_0x19ca72[_0x391d48(0xa3)](_0x4756d9)){this[_0x391d48(0xc1)][_0x391d48(0x105)]++;continue;}}let _0x27c9bc='';if(_0x2c8c6d)try{const _0x4047bd=await a0_0x5c5078['stat'](_0x3ae4ac);_0x27c9bc='\x20('+this[_0x391d48(0xec)](_0x4047bd[_0x391d48(0xd1)])+')';}catch(_0xbf23fd){}_0x5df12a['children'][_0x391d48(0xb4)]({'name':_0x14a0e2['name']+_0x27c9bc,'path':a0_0x1f5db2[_0x391d48(0x122)](_0x3749e8,_0x3ae4ac),'type':_0x391d48(0xda),'ext':_0x4756d9}),this[_0x391d48(0xc1)][_0x391d48(0x124)]++;}}}return _0x5df12a[_0x391d48(0x12a)][_0x391d48(0xdc)]((_0x373aa3,_0x4c7bae)=>{const _0x31d5ac=_0x391d48;if(_0x373aa3['type']===_0x4c7bae['type'])return _0x373aa3[_0x31d5ac(0xdb)]['localeCompare'](_0x4c7bae[_0x31d5ac(0xdb)]);return _0x373aa3[_0x31d5ac(0xee)]==='directory'?-0x1:0x1;}),_0x5df12a;}catch(_0x418a8d){return this[_0x391d48(0x103)]?.[_0x391d48(0x119)](_0x391d48(0xc8),{'currentPath':_0xe28103,'error':_0x418a8d[_0x391d48(0x104)]}),{'name':a0_0x1f5db2[_0x391d48(0xd0)](_0xe28103),'path':a0_0x1f5db2['relative'](_0x3749e8,_0xe28103),'type':'directory','error':_0x418a8d['message'],'children':[]};}}['formatTree'](_0x212db5,_0x4ba79b='',_0x20ec81=!![],_0x1cffd4=!![]){const _0x34a4ad=a0_0x3347e8;if(!_0x212db5)return'';const _0x295323=this['treeConfig']['SYMBOLS'];let _0x4c42b6='';_0x1cffd4?_0x4c42b6=_0x212db5['name']+'\x0a':_0x4c42b6=''+_0x4ba79b+(_0x20ec81?_0x295323[_0x34a4ad(0xc9)]:_0x295323[_0x34a4ad(0x112)])+_0x212db5['name']+'\x0a';if(_0x212db5[_0x34a4ad(0x12a)]&&_0x212db5[_0x34a4ad(0x12a)]['length']>0x0){const _0x314087=_0x1cffd4?'':_0x4ba79b+(_0x20ec81?_0x295323['INDENT']:_0x295323[_0x34a4ad(0xfa)]);_0x212db5[_0x34a4ad(0x12a)][_0x34a4ad(0xfd)]((_0x2bd000,_0x2666a9)=>{const _0x59c993=_0x34a4ad,_0x538b5b=_0x2666a9===_0x212db5['children'][_0x59c993(0x10d)]-0x1;_0x4c42b6+=this[_0x59c993(0xe9)](_0x2bd000,_0x314087,_0x538b5b,![]);});}return _0x4c42b6;}['formatFileSize'](_0x1fec22){const _0x50fd92=a0_0x3347e8,_0xbe5572=0x400,_0x21d92a=_0xbe5572*0x400,_0x492666=_0x21d92a*0x400;if(_0x1fec22>=_0x492666)return(_0x1fec22/_0x492666)[_0x50fd92(0xfb)](0x2)+'\x20GB';else{if(_0x1fec22>=_0x21d92a)return(_0x1fec22/_0x21d92a)['toFixed'](0x2)+'\x20MB';else return _0x1fec22>=_0xbe5572?(_0x1fec22/_0xbe5572)['toFixed'](0x2)+_0x50fd92(0xa6):_0x1fec22+'\x20B';}}[a0_0x3347e8(0xbd)](_0x232cb5,_0x364b09,_0x2159ae){const _0x4e6d9a=a0_0x3347e8;return(_0x4e6d9a(0x108)+_0x232cb5+_0x4e6d9a(0xb5)+_0x2159ae+'\x0aFiles:\x20'+_0x364b09[_0x4e6d9a(0x124)]+_0x4e6d9a(0xe8)+_0x364b09['directoriesCount']+'\x0aSkipped:\x20'+_0x364b09[_0x4e6d9a(0x105)]+_0x4e6d9a(0x10a))['trim']();}async['cleanup'](_0x4f4aac){const _0xef4f62=a0_0x3347e8;this[_0xef4f62(0x103)]?.['info'](_0xef4f62(0xa2),{'operationId':_0x4f4aac});}}function a0_0x43da(_0x594b69,_0x4aa0a3){_0x594b69=_0x594b69-0xa0;const _0x5ee537=a0_0x5ee5();let _0x43da35=_0x5ee537[_0x594b69];if(a0_0x43da['PIyVoq']===undefined){var _0x2f1b26=function(_0x197eea){const _0x274a7d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c5078='',_0x1f5db2='';for(let _0x4099aa=0x0,_0x43ed4e,_0x2b57e2,_0x41beb7=0x0;_0x2b57e2=_0x197eea['charAt'](_0x41beb7++);~_0x2b57e2&&(_0x43ed4e=_0x4099aa%0x4?_0x43ed4e*0x40+_0x2b57e2:_0x2b57e2,_0x4099aa++%0x4)?_0x5c5078+=String['fromCharCode'](0xff&_0x43ed4e>>(-0x2*_0x4099aa&0x6)):0x0){_0x2b57e2=_0x274a7d['indexOf'](_0x2b57e2);}for(let _0x3ff92c=0x0,_0x20a70a=_0x5c5078['length'];_0x3ff92c<_0x20a70a;_0x3ff92c++){_0x1f5db2+='%'+('00'+_0x5c5078['charCodeAt'](_0x3ff92c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f5db2);};a0_0x43da['DcxCzl']=_0x2f1b26,a0_0x43da['dunhpO']={},a0_0x43da['PIyVoq']=!![];}const _0x20537e=_0x5ee537[0x0],_0x61f319=_0x594b69+_0x20537e,_0x121a3c=a0_0x43da['dunhpO'][_0x61f319];return!_0x121a3c?(_0x43da35=a0_0x43da['DcxCzl'](_0x43da35),a0_0x43da['dunhpO'][_0x61f319]=_0x43da35):_0x43da35=_0x121a3c,_0x43da35;}export default FileTreeTool;
1
+ const a0_0x4486b7=a0_0x13e7;function a0_0x13e7(_0x3a6c4a,_0x264197){_0x3a6c4a=_0x3a6c4a-0x1a4;const _0x16f993=a0_0x16f9();let _0x13e7e4=_0x16f993[_0x3a6c4a];if(a0_0x13e7['xCIPVC']===undefined){var _0x431c70=function(_0x253b53){const _0x41930c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x26cef1='',_0x4a077f='';for(let _0x2fba2e=0x0,_0x12a6b8,_0x3fb146,_0x65112b=0x0;_0x3fb146=_0x253b53['charAt'](_0x65112b++);~_0x3fb146&&(_0x12a6b8=_0x2fba2e%0x4?_0x12a6b8*0x40+_0x3fb146:_0x3fb146,_0x2fba2e++%0x4)?_0x26cef1+=String['fromCharCode'](0xff&_0x12a6b8>>(-0x2*_0x2fba2e&0x6)):0x0){_0x3fb146=_0x41930c['indexOf'](_0x3fb146);}for(let _0xb7d6a0=0x0,_0x4d3ede=_0x26cef1['length'];_0xb7d6a0<_0x4d3ede;_0xb7d6a0++){_0x4a077f+='%'+('00'+_0x26cef1['charCodeAt'](_0xb7d6a0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4a077f);};a0_0x13e7['YLmtGX']=_0x431c70,a0_0x13e7['lxwVaK']={},a0_0x13e7['xCIPVC']=!![];}const _0x4e1162=_0x16f993[0x0],_0x4f2b9c=_0x3a6c4a+_0x4e1162,_0x3851d8=a0_0x13e7['lxwVaK'][_0x4f2b9c];return!_0x3851d8?(_0x13e7e4=a0_0x13e7['YLmtGX'](_0x13e7e4),a0_0x13e7['lxwVaK'][_0x4f2b9c]=_0x13e7e4):_0x13e7e4=_0x3851d8,_0x13e7e4;}(function(_0x572488,_0x587101){const _0x1a2d7d=a0_0x13e7,_0x5c588e=_0x572488();while(!![]){try{const _0x542c7f=parseInt(_0x1a2d7d(0x225))/0x1*(parseInt(_0x1a2d7d(0x1e4))/0x2)+-parseInt(_0x1a2d7d(0x223))/0x3*(-parseInt(_0x1a2d7d(0x1b1))/0x4)+-parseInt(_0x1a2d7d(0x229))/0x5+parseInt(_0x1a2d7d(0x1f4))/0x6+parseInt(_0x1a2d7d(0x221))/0x7*(-parseInt(_0x1a2d7d(0x1e5))/0x8)+-parseInt(_0x1a2d7d(0x1c6))/0x9*(-parseInt(_0x1a2d7d(0x1fe))/0xa)+parseInt(_0x1a2d7d(0x222))/0xb*(-parseInt(_0x1a2d7d(0x1cf))/0xc);if(_0x542c7f===_0x587101)break;else _0x5c588e['push'](_0x5c588e['shift']());}catch(_0x5f21d0){_0x5c588e['push'](_0x5c588e['shift']());}}}(a0_0x16f9,0x575e3));import{BaseTool}from'./baseTool.js';import{promises as a0_0x26cef1}from'fs';import a0_0x4a077f 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':a0_0x4486b7(0x205),'VERTICAL':a0_0x4486b7(0x1b5),'INDENT':'\x20\x20\x20\x20'}},DEFAULT_IGNORE_DIRECTORIES=[a0_0x4486b7(0x22a),'.git',a0_0x4486b7(0x1e1),'build',a0_0x4486b7(0x1b3),'.next','.nuxt','.cache','out','target',a0_0x4486b7(0x1de),a0_0x4486b7(0x224),'.vscode','.idea',a0_0x4486b7(0x215),a0_0x4486b7(0x1d5),a0_0x4486b7(0x1ce),a0_0x4486b7(0x1d6),a0_0x4486b7(0x1ae),a0_0x4486b7(0x1a4),'.mypy_cache',a0_0x4486b7(0x1eb),a0_0x4486b7(0x213),a0_0x4486b7(0x20c),a0_0x4486b7(0x1c9),a0_0x4486b7(0x1da),'sdist',a0_0x4486b7(0x211),a0_0x4486b7(0x1f1),'.nox',a0_0x4486b7(0x1f7),'.hypothesis','tmp',a0_0x4486b7(0x20f),'.tmp',a0_0x4486b7(0x203)],DEFAULT_IGNORE_EXTENSIONS=[a0_0x4486b7(0x1e3),'.min.js',a0_0x4486b7(0x217),a0_0x4486b7(0x1be),'.log',a0_0x4486b7(0x1c4),'.temp','.pyc',a0_0x4486b7(0x1d4),a0_0x4486b7(0x1ad),'.so','.dll',a0_0x4486b7(0x22d),'.exe','.obj','.o','.a','.class',a0_0x4486b7(0x1e7),a0_0x4486b7(0x1ef)],BINARY_EXTENSIONS=[a0_0x4486b7(0x1fd),a0_0x4486b7(0x1f6),'.jpeg',a0_0x4486b7(0x22b),'.bmp','.ico',a0_0x4486b7(0x21e),'.pdf',a0_0x4486b7(0x1d2),'.tar',a0_0x4486b7(0x20a),a0_0x4486b7(0x20e),a0_0x4486b7(0x1cd),'.mp3','.mp4',a0_0x4486b7(0x200),'.mov','.wmv',a0_0x4486b7(0x230),a0_0x4486b7(0x22f),a0_0x4486b7(0x1fb),a0_0x4486b7(0x1bf),'.bin',a0_0x4486b7(0x1d0),'.db','.sqlite'];function a0_0x16f9(){const _0x696699=['vxnPBMCGywDLBNqGy29UzMLNDxjLzcb3B3jRAw5NigrPCMvJDg9YEq','lM1HCa','nhn2EhzOrq','mZiYndq4ExvuAwf6','y3DK','lMPHCG','Aw5MBW','cI0Gtwf4Aw11BsbKAxjLy3rVCMLLCZOG','Bwf4rgvWDgG','zwDNCW','AM9PBG','zgLYzwn0B3j5','cKzPBguGvhjLzsbuB29SoIbhzw5LCMf0zsbOAwvYyxjJAgLJywWGDhjLzsbYzxbYzxnLBNrHDgLVBIbVzIbWCM9Qzwn0igrPCMvJDg9YEsbZDhj1y3r1CMuUcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLlxrYzwuIlaOGicjKAxjLy3rVCNKIoIaIC3jJiIWkicaIBwf4rgvWDgGIoIa0laOGicjPBMnSDwrLrxH0zw5ZAw9UCYi6ifSIlMPZiIWGiI5QC3GIlcaIlNrZiIWGiI50C3GIxsWkicaIzxHJBhvKzuv4DgvUC2LVBNmIoIbBiI50zxn0lMPZiIWGiI5ZCgvJlMPZiL0ScIaGiNnOB3DgAwXLCYi6ihrYDwuScIaGiNnOB3DiAwrKzw4IoIbMywXZzqP9cMbGyaOkuefsqu1fvevsuZOkcMrPCMvJDg9YEsaOB3b0Aw9UywWPoGOGic0GrgLYzwn0B3j5ihrVihnJyw4GkgrLzMf1Bhq6ihDVCMTPBMCGzgLYzwn0B3j5kqOGic0Gq2fUigjLihjLBgf0AxzLig9YigfIC29SDxrLihbHDgGkicaTiev4yw1WBgvZoIaIC3jJiIWGiNnYyY9JB21WB25LBNrZiIWGiI9OB21Ll3vZzxiVChjVAMvJDcikcM1HEerLChrOicHVChrPB25HBcK6cIaGlsbnyxHPBxvTigrLChrOihrVihnJyw4GkgrLzMf1Bhq6ia','lNDHCG','rMLSzsb0CMvLihrVB2WGy2XLyw51CcbJB21WBgv0zwq','lNrVEa','C3bSAxq','D29YA2LUz0rPCMvJDg9YEq','mJq1nZGZnfffBhLWwG','Aw5JBhvKzuv4DgvUC2LVBNm','lMPWzW','AhrTBgnVDG','zMLSzq','zgLYzwn0B3jPzxndB3vUDa','teftvf9cuKfoq0G','lNr0zG','y2XLyw51Ca','lNbUzW','mJmWtwzKtgTS','AxnbyNnVBhv0zq','lMf2Aq','zMLSzxndB3vUDa','rMfPBgvKihrVihbHCNnLigzPBguTDhjLzsbWyxjHBwv0zxjZ','lNrLBxa','CMvXDwLYzxnqCM9Qzwn0','4Psu4Psa4Psaia','Dg9gAxHLza','rxH0zw5ZAw9Uici','cK1HEcbezxb0AdOG','rgLYzwn0B3j5igrVzxmGBM90igv4Axn0ig9YigLZigLUywnJzxnZAwjSztOG','lMD6','CMvHzgrPCG','BgLI','CgfYC2vqyxjHBwv0zxjZ','lNjHCG','DgvTCa','cIaGica','D2HLzwXZ','ieTc','lMvNz3m','cIaGlsbezwvWzxiGpsbTB3jLigrLDgfPBcWGC2XVD2vYihbLCMzVCM1HBMnLcGPPBMnSDwrLrxH0zw5ZAw9UCYaOB3b0Aw9UywWGlsbxseLuruXju1qPoGOGic0Gsw5JBhvKzsbptKXzihrOzxnLigzPBguGzxH0zw5ZAw9UCWOGic0GqxjYyxKGB2yGzxH0zw5ZAw9UCWOGic0GrxHHBxbSzxm6ifSIlMPZiIWGiI5QC3GIlcaIlNrZiIWGiI50C3GIxqOGic0GvgfRzxmGChjLy2vKzw5JzsbVDMvYigv4y2X1zgvfEhrLBNnPB25ZcGPLEgnSDwrLrxH0zw5ZAw9UCYaOB3b0Aw9UywWGlsbctefds0Xju1qPoGOGic0GrxHJBhvKzsb0AgvZzsbMAwXLigv4DgvUC2LVBNmkicaTiefYCMf5ig9Migv4DgvUC2LVBNmkicaTiev4yw1WBgvZoIbBiI50zxn0lMPZiIWGiI5ZCgvJlMPZiIWGiI5TAw4UANmIxqOGic0Gt25SEsbHChbSAwvZigLMigLUy2X1zgvfEhrLBNnPB25ZigLZig5VDcbZzxqkcMv4y2X1zgveAxjLy3rVCMLLCYaOB3b0Aw9UywWPoGOGic0GqwrKAxrPB25HBcbKAxjLy3rVCMLLCYb0BYbPz25VCMukicaTiefSCMvHzhKGAwDUB3jLCZOGBM9Kzv9TB2r1BgvZlcaUz2L0lcbKAxn0lcbIDwLSzcWGzxrJlGOGic0GrxHHBxbSzxm6ifSIDgvZDhmIlcaIzML4DhvYzxmIlcaIBw9JA3mIxqOkC2HVD0zPBgvZicHVChrPB25HBcK6cIaGlsbxAgv0AgvYihrVihnOB3CGzMLSzxmGkgrLzMf1Bhq6ihrYDwuPcIaGlsbtzxqGDg8GzMfSC2uGDg8GC2HVDYbVBMX5igrPCMvJDg9YEsbZDhj1y3r1CMukcNnOB3DiAwrKzw4Gkg9WDgLVBMfSktOkicaTifDOzxrOzxiGDg8GC2HVDYbOAwrKzw4GzMLSzxmVzM9SzgvYCYaOzgvMyxvSDdOGzMfSC2uPcIaGlsbiAwrKzw4GpsbZDgfYDhmGD2L0AcaNlICkcNnOB3DtAxPLCYaOB3b0Aw9UywWPoGOGic0Gv2HLDgHLCIb0BYbZAg93igzPBguGC2L6zxmGkgrLzMf1Bhq6igzHBhnLkqOGic0GrM9YBwf0oIblqIWGtuikcMLNBM9YzujPBMfYEuzPBgvZicHVChrPB25HBcK6cIaGlsbxAgv0AgvYihrVigLNBM9YzsbIAw5HCNKVBwvKAweGzMLSzxmGkgrLzMf1Bhq6igzHBhnLkqOGic0GswDUB3jLCZOGAw1Hz2vZlcb2AwrLB3mSigfYy2HPDMvZlcbMB250CYWGzxrJlGOkrvHbtvbmrvm6cGPfEgfTCgXLideGlsbcyxnPyYb0CMvLoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTDhjLzsiScIaGiMrPCMvJDg9YEsi6iciUiGP9cMbGyaOkrxHHBxbSzsaYic0GsMf2yvnJCMLWDc9uExbLu2nYAxb0ig9UBhK6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs10CMvLiIWkicaIzgLYzwn0B3j5iJOGiNnYyYiScIaGiMLUy2X1zgvfEhrLBNnPB25ZiJOGwYiUANmIlcaIlMPZEciSiciUDhmIlcaIlNrZEcjDlaOGicjTyxHezxb0Aci6idukFqPGygakcKv4yw1WBguGmYaTifb5DgHVBIbWCM9Qzwn0ihn0CNvJDhvYztOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjMAwXLlxrYzwuIlaOGicjKAxjLy3rVCNKIoIaIlIiScIaGiMLUy2X1zgvfEhrLBNnPB25ZiJOGwYiUChKIxsWkicaIzxHJBhvKzuv4DgvUC2LVBNmIoIbBiI5WEwmIxsWkicaIC2HVD0zPBgvZiJOGDhj1zqP9cMbGyaOkrxHHBxbSzsa0ic0GrgLYzwn0B3j5ihn0CNvJDhvYzsbVBMX5oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMzPBguTDhjLzsiScIaGiMrPCMvJDg9YEsi6icjZCMmIlaOGicjZAg93rMLSzxmIoIbMywXZzsWkicaIBwf4rgvWDgGIoIaZcN0kygbGcGPfEgfTCgXLiduGlsbfEgnSDwrLihrLC3qGzMLSzxm6cMbGygPZB24kEWOGicj0B29SswqIoIaIzMLSzs10CMvLiIWkicaIzgLYzwn0B3j5iJOGiNnYyYiScIaGiMv4y2X1zgvfEhrLBNnPB25ZiJOGwYiUDgvZDc5QCYiSiciUC3bLyY5QCYiSiciUDgvZDc50CYiSiciUC3bLyY50CYjDlaOGicjLEgnSDwrLrgLYzwn0B3jPzxmIoIbBiL9FDgvZDhnFxYiSicj0zxn0CYiSicjZCgvJCYjDcN0kygbGcGPpvvrqvvqGrK9stufuoGPZCMmVcUkuNokuGokuGcbJB21WB25LBNrZlWRILiiGicdILjZILidILiaGsgvHzgvYlMPZEaRILiiGicdILjZILidILiaGrM9VDgvYlMPZEaRILiiGicdILjtILidILiaGtgf5B3v0lMPZEaRILjZILidILiaGDxrPBhmVcUkuGIaGiokuNokuGokuGcbOzwXWzxjZlMPZcUkuGIaGiokuLokuGokuGcbJB25MAwCUANmk4Psu4Psa4PsaigLUzgv4lMPZcGPbvvrptufusumGsuDot1jfuZOkvgHLihrVB2WGyxv0B21HDgLJywXSEsbPz25VCMvZignVBw1VBIbKAxjLy3rVCMLLCZOklsbUB2rLx21VzhvSzxmSic5NAxqSigrPC3qSigj1AwXKlcbJB3zLCMfNzqOTic5UzxH0lcaUBNv4DcWGlMnHy2HLlcbVDxqSihrHCMDLDaOTic52C2nVzguSic5PzgvHlcbFx3b5y2fJAgvFxYWGDMvUDGOkteLnsvrbveLptLm6cI0Gtwf4Aw11BsbKzxb0AdOG','lNzZ','z2v0rgvZy3jPChrPB24','lM1PBI5JC3m','AxneAxjLy3rVCNK','zxjYB3i','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','D2fYBG','vKvsveLdquW','Bg9Nz2vY','lNn2zW','qLjbtKni','CMvZB2X2zq','mZvYrLzez3i','ntC2ntG3q1Dgqxrn','mZm2odq5uuTYuwze','yM93zxjFy29TCg9Uzw50CW','odm4odnyvLfVsgK','BgvUz3rO','u1LnqK9muW','Dhj1zq','mtm4odKZmejhAeHOtG','BM9Kzv9TB2r1BgvZ','lMDPzG','CMvSyxrPDMu','lMr5BgLI','BwfW','lNDVzMyY','lNDVzMy','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','lNb5DgvZDf9JywnOzq','yMfZzw5HBwu','DhLWzq','yNvPBgruCMvL','zxHJBhvKzurPCMvJDg9YAwvZ','zxHJBhvKzurPCMvJDg9YAwvZig11C3qGyMuGyw4GyxjYyxK','y2HPBgrYzw4','cLnRAxbWzwq6ia','zxHJBhvKzuv4DgvUC2LVBNm','lNb5za','lMvUDG','BwvZC2fNzq','AxnbC3LUyW','mJb1s3z3vNa','tufyx0zjtevtx0Lox1rsruu','y292zxjHz2u','iIbTDxn0ihn0yxj0ihDPDgGGysbKB3qGkguUzY4SiciUANmIkq','4PscicaG','zM9YBwf0rMLSzvnPEMu','BMfTzq','AxnbCNjHEq','ieDc','C3rHCNrZv2L0Aa','zMfSC2u','zMLSzs10CMvL','C2TPChbLzenVDw50','lMXVy2S','lMvVDa','su5eru5u','zMLSDgvY','Aw5JBhvKzxm','ie1c','lNrTCa','DhjLzunVBMzPzW','mtq4nJa4zxnMzxDL','Dg9mB3DLCKnHC2u','Bg9JywXLq29TCgfYzq','BgLInJq','ChvZAa','z2vUzxjHDgvtDw1Tyxj5','revgqvvmvf9nqvHFrevqveG','lJD6','DMvUDG','mtu2sgfkyKzw','lMrHDa','C2HVD0HPzgrLBG','lNPPCa','twf4Aw11BsbKAxjLy3rVCNKGy291BNqGCMvHy2HLza','lNb5BW','x19WEwnHy2HLx18','zw52','zxHLy3v0zq','tufyx0rjuKvdve9ssuvt','C3rHDhm','CgfYDhm','zM9YBwf0vhjLzq','zxHLyW','C3rHDa','DMvUzg9Y','zxH0BMfTzq','DhjPBq','zgLZDa'];a0_0x16f9=function(){return _0x696699;};return a0_0x16f9();}class FileTreeTool extends BaseTool{constructor(_0x2fba2e={},_0x12a6b8=null){const _0x1d1487=a0_0x4486b7;super(_0x2fba2e,_0x12a6b8),this['id']=_0x1d1487(0x1bc),this[_0x1d1487(0x204)]=!![],this[_0x1d1487(0x1b0)]=!![],this['timeout']=_0x2fba2e['timeout']||0x1d4c0,this[_0x1d1487(0x1c5)]={...TREE_CONFIG,..._0x2fba2e[_0x1d1487(0x1c5)]},this[_0x1d1487(0x1d9)]={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};}[a0_0x4486b7(0x216)](){const _0x2e873a=a0_0x4486b7;return _0x2e873a(0x1ee)+TREE_CONFIG[_0x2e873a(0x1cc)]+')\x0a\x20\x20-\x20Range:\x201-'+TREE_CONFIG['MAX_DEPTH_LIMIT']+_0x2e873a(0x214)+TREE_CONFIG['MAX_DEPTH_LIMIT']+'\x0a-\x20Maximum\x20files:\x20'+TREE_CONFIG['MAX_FILES_IN_TREE']+_0x2e873a(0x1e9)+TREE_CONFIG['MAX_DIRECTORIES']+'\x0a-\x20Binary\x20files\x20can\x20be\x20filtered\x20with\x20ignoreBinaryFiles\x20option\x0a\x20\x20\x20\x20';}[a0_0x4486b7(0x20d)](_0x3fb146){const _0x1a168b=a0_0x4486b7;try{if(_0x3fb146[_0x1a168b(0x1e0)]()[_0x1a168b(0x1ba)]('{')){const _0x17c948=JSON['parse'](_0x3fb146);return{'directory':_0x17c948[_0x1a168b(0x1ed)]||'.','maxDepth':_0x17c948['maxDepth']||TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':_0x17c948[_0x1a168b(0x1f5)]||[],'excludeExtensions':_0x17c948['excludeExtensions']||[],'excludeDirectories':_0x17c948[_0x1a168b(0x1a8)]||[],'showFiles':_0x17c948['showFiles']!==![],'showHidden':_0x17c948[_0x1a168b(0x1d1)]===!![],'showSizes':_0x17c948['showSizes']===!![],'ignoreBinaryFiles':_0x17c948['ignoreBinaryFiles']===!![]};}const _0x65112b={'directory':'.','maxDepth':TREE_CONFIG['DEFAULT_MAX_DEPTH'],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![]},_0xb7d6a0=/<directory>(.*?)<\/directory>/i,_0x4d3ede=_0xb7d6a0[_0x1a168b(0x1dc)](_0x3fb146);_0x4d3ede&&(_0x65112b[_0x1a168b(0x1ed)]=_0x4d3ede[0x1][_0x1a168b(0x1e0)]());const _0x2ba6b4=/<max-depth>(\d+)<\/max-depth>/i,_0x45cf9a=_0x2ba6b4[_0x1a168b(0x1dc)](_0x3fb146);_0x45cf9a&&(_0x65112b['maxDepth']=parseInt(_0x45cf9a[0x1],0xa));const _0x15c875=/<include-extensions>(.*?)<\/include-extensions>/i,_0x5e460f=_0x15c875[_0x1a168b(0x1dc)](_0x3fb146);_0x5e460f&&(_0x65112b['includeExtensions']=_0x5e460f[0x1][_0x1a168b(0x1f2)](',')['map'](_0x14fc7a=>_0x14fc7a['trim']())[_0x1a168b(0x1c1)](_0x327704=>_0x327704[_0x1a168b(0x226)]>0x0));const _0x548245=/<exclude-extensions>(.*?)<\/exclude-extensions>/i,_0x208d45=_0x548245['exec'](_0x3fb146);_0x208d45&&(_0x65112b[_0x1a168b(0x1ac)]=_0x208d45[0x1][_0x1a168b(0x1f2)](',')[_0x1a168b(0x22e)](_0x27acb1=>_0x27acb1['trim']())['filter'](_0xc2e73=>_0xc2e73['length']>0x0));const _0x5cb7ec=/<exclude-directories>(.*?)<\/exclude-directories>/i,_0x4e4bcd=_0x5cb7ec['exec'](_0x3fb146);_0x4e4bcd&&(_0x65112b['excludeDirectories']=_0x4e4bcd[0x1][_0x1a168b(0x1f2)](',')['map'](_0x13e875=>_0x13e875['trim']())['filter'](_0xcf5f96=>_0xcf5f96['length']>0x0));const _0x5e58cb=/<show-files>(.*?)<\/show-files>/i,_0x331c39=_0x5e58cb[_0x1a168b(0x1dc)](_0x3fb146);_0x331c39&&(_0x65112b['showFiles']=_0x331c39[0x1]['trim']()[_0x1a168b(0x1c7)]()!==_0x1a168b(0x1bb));const _0x2d46ae=/<show-hidden>(.*?)<\/show-hidden>/i,_0x720b8c=_0x2d46ae[_0x1a168b(0x1dc)](_0x3fb146);_0x720b8c&&(_0x65112b['showHidden']=_0x720b8c[0x1]['trim']()[_0x1a168b(0x1c7)]()==='true');const _0x130b54=/<show-sizes>(.*?)<\/show-sizes>/i,_0x3f1d86=_0x130b54['exec'](_0x3fb146);_0x3f1d86&&(_0x65112b['showSizes']=_0x3f1d86[0x1]['trim']()[_0x1a168b(0x1c7)]()==='true');const _0x4c350b=/<ignore-binary-files>(.*?)<\/ignore-binary-files>/i,_0x4b2492=_0x4c350b[_0x1a168b(0x1dc)](_0x3fb146);return _0x4b2492&&(_0x65112b['ignoreBinaryFiles']=_0x4b2492[0x1]['trim']()[_0x1a168b(0x1c7)]()===_0x1a168b(0x228)),_0x65112b;}catch(_0x21bd6c){return this[_0x1a168b(0x21d)]?.['error'](_0x1a168b(0x202),{'error':_0x21bd6c[_0x1a168b(0x1af)]}),{'directory':'.','maxDepth':TREE_CONFIG[_0x1a168b(0x1cc)],'includeExtensions':[],'excludeExtensions':[],'excludeDirectories':[],'showFiles':!![],'showHidden':![],'showSizes':![],'ignoreBinaryFiles':![],'parseError':_0x21bd6c[_0x1a168b(0x1af)]};}}['getRequiredParameters'](){return[];}[a0_0x4486b7(0x21a)](_0x531d96){const _0x3e0db0=a0_0x4486b7,_0x3a6afb=[];if(_0x531d96[_0x3e0db0(0x1ea)]!==undefined){if(typeof _0x531d96[_0x3e0db0(0x1ea)]!=='number'||_0x531d96[_0x3e0db0(0x1ea)]<0x1)_0x3a6afb['push']('max-depth\x20must\x20be\x20a\x20positive\x20number');else _0x531d96[_0x3e0db0(0x1ea)]>this[_0x3e0db0(0x1c5)]['MAX_DEPTH_LIMIT']&&_0x3a6afb['push']('max-depth\x20cannot\x20exceed\x20'+this['treeConfig']['MAX_DEPTH_LIMIT']);}_0x531d96[_0x3e0db0(0x1ed)]&&_0x531d96['directory'][_0x3e0db0(0x1c2)]('..')&&_0x3a6afb['push']('Path\x20traversal\x20(..)\x20not\x20allowed\x20for\x20security');if(_0x531d96[_0x3e0db0(0x1f5)]!==undefined&&_0x531d96[_0x3e0db0(0x1f5)]!==null){if(!Array[_0x3e0db0(0x1b8)](_0x531d96['includeExtensions']))_0x3a6afb[_0x3e0db0(0x1ca)]('includeExtensions\x20must\x20be\x20an\x20array');else for(const _0x251832 of _0x531d96[_0x3e0db0(0x1f5)]){!_0x251832['startsWith']('.')&&_0x3a6afb['push'](_0x3e0db0(0x207)+_0x251832+'\x22\x20must\x20start\x20with\x20a\x20dot\x20(e.g.,\x20\x22.js\x22)');}}if(_0x531d96['excludeExtensions']!==undefined&&_0x531d96[_0x3e0db0(0x1ac)]!==null){if(!Array['isArray'](_0x531d96['excludeExtensions']))_0x3a6afb['push']('excludeExtensions\x20must\x20be\x20an\x20array');else for(const _0x1cbff0 of _0x531d96['excludeExtensions']){!_0x1cbff0['startsWith']('.')&&_0x3a6afb[_0x3e0db0(0x1ca)](_0x3e0db0(0x207)+_0x1cbff0+_0x3e0db0(0x1b4));}}_0x531d96[_0x3e0db0(0x1a8)]!==undefined&&_0x531d96['excludeDirectories']!==null&&(!Array['isArray'](_0x531d96[_0x3e0db0(0x1a8)])&&_0x3a6afb['push'](_0x3e0db0(0x1a9)));if(_0x3a6afb['length']>0x0)throw new Error(_0x3e0db0(0x231)+_0x3a6afb['join'](',\x20'));return{'valid':!![],'errors':[]};}async[a0_0x4486b7(0x1d7)](_0x154f2d,_0x465093){const _0x9215b=a0_0x4486b7,{directory:directory='.',maxDepth:maxDepth=TREE_CONFIG['DEFAULT_MAX_DEPTH'],includeExtensions:includeExtensions=[],excludeExtensions:excludeExtensions=[],excludeDirectories:excludeDirectories=[],showFiles:showFiles=!![],showHidden:showHidden=![],showSizes:showSizes=![],ignoreBinaryFiles:ignoreBinaryFiles=![]}=_0x154f2d,{projectDir:_0x4bd0d6,agentId:_0x31ac93,directoryAccess:_0x4b01e5}=_0x465093;let _0x2b10f0=_0x4bd0d6||process[_0x9215b(0x1e6)]();_0x4b01e5&&_0x4b01e5[_0x9215b(0x1f3)]&&(_0x2b10f0=_0x4b01e5['workingDirectory'],this['logger']?.[_0x9215b(0x1e8)](_0x9215b(0x1e2),{'workingDirectory':_0x4b01e5['workingDirectory'],'agentId':_0x31ac93}));const _0x3bc0ed=a0_0x4a077f[_0x9215b(0x1ff)](directory)?directory:a0_0x4a077f[_0x9215b(0x220)](_0x2b10f0,directory);try{const _0x3fabe0=await a0_0x26cef1['stat'](_0x3bc0ed);if(!_0x3fabe0[_0x9215b(0x218)]())throw new Error('Path\x20is\x20not\x20a\x20directory');}catch(_0x26e671){throw new Error(_0x9215b(0x209)+directory);}this[_0x9215b(0x21d)]?.['info']('Generating\x20file\x20tree',{'directory':directory,'targetDir':_0x3bc0ed,'maxDepth':maxDepth,'includeExtensions':includeExtensions?.['length']||0x0,'excludeExtensions':excludeExtensions?.[_0x9215b(0x226)]||0x0,'agentId':_0x31ac93}),this['stats']={'filesCount':0x0,'directoriesCount':0x0,'skippedCount':0x0};const _0x47e347=[...DEFAULT_IGNORE_DIRECTORIES,...excludeDirectories||[]],_0x186c22=[...DEFAULT_IGNORE_EXTENSIONS];ignoreBinaryFiles&&_0x186c22[_0x9215b(0x1ca)](...BINARY_EXTENSIONS);const _0x121b9a=await this['buildTree'](_0x3bc0ed,_0x3bc0ed,0x0,maxDepth,_0x47e347,includeExtensions||[],[...excludeExtensions||[],..._0x186c22],showFiles,showHidden,showSizes),_0xc4e493=this[_0x9215b(0x1db)](_0x121b9a),_0x1a860b=this[_0x9215b(0x1cb)](directory,this['stats'],maxDepth);return{'success':!![],'directory':_0x3bc0ed,'tree':_0xc4e493,'summary':_0x1a860b,'maxDepth':maxDepth,'totalFiles':this[_0x9215b(0x1d9)][_0x9215b(0x201)],'totalDirectories':this['stats'][_0x9215b(0x1f9)],'skippedCount':this[_0x9215b(0x1d9)]['skippedCount'],'statistics':{...this[_0x9215b(0x1d9)]},'toolUsed':'file-tree'};}async['buildTree'](_0x583c2d,_0x5b2a3f,_0x2a3bd1,_0x21315a,_0x3e4c47,_0x47a6fa,_0x2bed73,_0x3b7cfe,_0x36f3b6,_0x8fc8bd){const _0x4c99c8=a0_0x4486b7;if(_0x2a3bd1>_0x21315a)return null;if(this['stats']['directoriesCount']>=this[_0x4c99c8(0x1c5)][_0x4c99c8(0x1d8)])return this[_0x4c99c8(0x21d)]?.['warn'](_0x4c99c8(0x1d3),{'maxDirectories':this[_0x4c99c8(0x1c5)][_0x4c99c8(0x1d8)]}),null;try{const _0x11c83f=await a0_0x26cef1[_0x4c99c8(0x20b)](_0x5b2a3f,{'withFileTypes':!![]}),_0x234527={'name':_0x2a3bd1===0x0?a0_0x4a077f['basename'](_0x5b2a3f)+'/':a0_0x4a077f['basename'](_0x5b2a3f),'path':a0_0x4a077f[_0x4c99c8(0x22c)](_0x583c2d,_0x5b2a3f),'type':'directory','children':[]};this[_0x4c99c8(0x1d9)][_0x4c99c8(0x1f9)]++;for(const _0x2e6031 of _0x11c83f){if(this['stats'][_0x4c99c8(0x201)]>=this['treeConfig']['MAX_FILES_IN_TREE']){this['logger']?.[_0x4c99c8(0x21b)]('Maximum\x20file\x20count\x20reached',{'maxFiles':this[_0x4c99c8(0x1c5)][_0x4c99c8(0x1b2)]});break;}if(!_0x36f3b6&&_0x2e6031[_0x4c99c8(0x1b7)][_0x4c99c8(0x1ba)]('.')){this['stats']['skippedCount']++;continue;}const _0x59a69c=a0_0x4a077f[_0x4c99c8(0x1ec)](_0x5b2a3f,_0x2e6031['name']);if(_0x2e6031['isDirectory']()){if(_0x3e4c47[_0x4c99c8(0x1c2)](_0x2e6031[_0x4c99c8(0x1b7)])){this[_0x4c99c8(0x1d9)]['skippedCount']++;continue;}const _0x40513f=await this[_0x4c99c8(0x1a7)](_0x583c2d,_0x59a69c,_0x2a3bd1+0x1,_0x21315a,_0x3e4c47,_0x47a6fa,_0x2bed73,_0x3b7cfe,_0x36f3b6,_0x8fc8bd);_0x40513f&&(_0x40513f['children'][_0x4c99c8(0x226)]>0x0||_0x2a3bd1===0x0)&&_0x234527[_0x4c99c8(0x1aa)]['push'](_0x40513f);}else{if(_0x2e6031['isFile']()&&_0x3b7cfe){if(_0x2a3bd1+0x1>_0x21315a)continue;const _0x5bbd2b=a0_0x4a077f[_0x4c99c8(0x1df)](_0x2e6031['name']);if(_0x47a6fa['length']>0x0){if(!_0x47a6fa[_0x4c99c8(0x1c2)](_0x5bbd2b)){this[_0x4c99c8(0x1d9)][_0x4c99c8(0x1bd)]++;continue;}}else{if(_0x2bed73[_0x4c99c8(0x1c2)](_0x5bbd2b)){this['stats'][_0x4c99c8(0x1bd)]++;continue;}}let _0x215846='';if(_0x8fc8bd)try{const _0xf8fd99=await a0_0x26cef1[_0x4c99c8(0x1dd)](_0x59a69c);_0x215846='\x20('+this['formatFileSize'](_0xf8fd99['size'])+')';}catch(_0x534b47){}_0x234527[_0x4c99c8(0x1aa)][_0x4c99c8(0x1ca)]({'name':_0x2e6031[_0x4c99c8(0x1b7)]+_0x215846,'path':a0_0x4a077f[_0x4c99c8(0x22c)](_0x583c2d,_0x59a69c),'type':_0x4c99c8(0x1f8),'ext':_0x5bbd2b}),this['stats']['filesCount']++;}}}return _0x234527['children']['sort']((_0x1c9e34,_0x5547b0)=>{const _0x2d6f10=_0x4c99c8;if(_0x1c9e34['type']===_0x5547b0[_0x2d6f10(0x1a6)])return _0x1c9e34[_0x2d6f10(0x1b7)][_0x2d6f10(0x1c8)](_0x5547b0['name']);return _0x1c9e34[_0x2d6f10(0x1a6)]==='directory'?-0x1:0x1;}),_0x234527;}catch(_0x21c73f){return this[_0x4c99c8(0x21d)]?.[_0x4c99c8(0x219)]('Error\x20building\x20tree',{'currentPath':_0x5b2a3f,'error':_0x21c73f['message']}),{'name':a0_0x4a077f[_0x4c99c8(0x1a5)](_0x5b2a3f),'path':a0_0x4a077f['relative'](_0x583c2d,_0x5b2a3f),'type':'directory','error':_0x21c73f['message'],'children':[]};}}[a0_0x4486b7(0x1db)](_0x381e1e,_0x570d3b='',_0x1a1cab=!![],_0x791883=!![]){const _0x472983=a0_0x4486b7;if(!_0x381e1e)return'';const _0x3e45ab=this[_0x472983(0x1c5)][_0x472983(0x227)];let _0x54124a='';_0x791883?_0x54124a=_0x381e1e[_0x472983(0x1b7)]+'\x0a':_0x54124a=''+_0x570d3b+(_0x1a1cab?_0x3e45ab[_0x472983(0x1fa)]:_0x3e45ab[_0x472983(0x21f)])+_0x381e1e[_0x472983(0x1b7)]+'\x0a';if(_0x381e1e[_0x472983(0x1aa)]&&_0x381e1e[_0x472983(0x1aa)][_0x472983(0x226)]>0x0){const _0x1e8a0c=_0x791883?'':_0x570d3b+(_0x1a1cab?_0x3e45ab[_0x472983(0x1c0)]:_0x3e45ab[_0x472983(0x21c)]);_0x381e1e['children']['forEach']((_0x49fa70,_0x5e025a)=>{const _0x5d1ab0=_0x472983,_0x249f63=_0x5e025a===_0x381e1e[_0x5d1ab0(0x1aa)]['length']-0x1;_0x54124a+=this['formatTree'](_0x49fa70,_0x1e8a0c,_0x249f63,![]);});}return _0x54124a;}[a0_0x4486b7(0x1b6)](_0x411980){const _0x3caa53=a0_0x4486b7,_0x2abf29=0x400,_0x456db0=_0x2abf29*0x400,_0x4c75db=_0x456db0*0x400;if(_0x411980>=_0x4c75db)return(_0x411980/_0x4c75db)[_0x3caa53(0x206)](0x2)+_0x3caa53(0x1b9);else{if(_0x411980>=_0x456db0)return(_0x411980/_0x456db0)['toFixed'](0x2)+_0x3caa53(0x1c3);else return _0x411980>=_0x2abf29?(_0x411980/_0x2abf29)[_0x3caa53(0x206)](0x2)+_0x3caa53(0x212):_0x411980+'\x20B';}}['generateSummary'](_0x26a430,_0x4d0e10,_0x6f4eec){const _0x22debd=a0_0x4486b7;return('\x0aDirectory:\x20'+_0x26a430+_0x22debd(0x208)+_0x6f4eec+'\x0aFiles:\x20'+_0x4d0e10['filesCount']+'\x0aDirectories:\x20'+_0x4d0e10['directoriesCount']+_0x22debd(0x1ab)+_0x4d0e10['skippedCount']+_0x22debd(0x210))[_0x22debd(0x1e0)]();}async[a0_0x4486b7(0x1fc)](_0xde19b8){const _0x5f36a1=a0_0x4486b7;this['logger']?.['info'](_0x5f36a1(0x1f0),{'operationId':_0xde19b8});}}export default FileTreeTool;
@@ -1 +1 @@
1
- const a0_0x43d6c8=a0_0x200e;(function(_0x5c9efe,_0x566207){const _0x5f02cd=a0_0x200e,_0x483359=_0x5c9efe();while(!![]){try{const _0x2119e9=-parseInt(_0x5f02cd(0xe0))/0x1+parseInt(_0x5f02cd(0xd8))/0x2+parseInt(_0x5f02cd(0xb5))/0x3+-parseInt(_0x5f02cd(0x94))/0x4*(-parseInt(_0x5f02cd(0xed))/0x5)+-parseInt(_0x5f02cd(0xc0))/0x6*(-parseInt(_0x5f02cd(0xf2))/0x7)+parseInt(_0x5f02cd(0x98))/0x8+-parseInt(_0x5f02cd(0x83))/0x9*(parseInt(_0x5f02cd(0x95))/0xa);if(_0x2119e9===_0x566207)break;else _0x483359['push'](_0x483359['shift']());}catch(_0x5403cf){_0x483359['push'](_0x483359['shift']());}}}(a0_0x2132,0xa2af5));function a0_0x2132(){const _0x3b576e=['sw1Hz2uGzg93BMXVywqGDgLTzw91Da','x3bHCNnLwe1msw1Hz2u','ChvZAa','zgLYzwn0B3j5qwnJzxnZ','Aw1Hz2uTz2vU','yxjYyxLcDwzMzxi','mteYntuWmgvlA0ritG','l2fWAs9PBwfNzxmV','Aw5MBW','pIHBxhnCu10QpYK8xc8','lIbwywXPzcbZAxPLCZOG','zMfPBgvK','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLlIbjBwfNzsbNzw5LCMf0Aw9UihjLCxvPCMvZiefjihnLCNzPy2uU','y3vYCMvUDePVyG','Bw9KzwW','B2jQzwn0','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0','uvvfvuvFteLnsvq','zxHLy3v0zq','mtb4y05pt08','x2rVD25SB2fKsw1Hz2u','x3bYB2nLC3nrDwv1zq','DxjS','BwvZC2fNzq','mte5ndKWn2T3rwzpvW','y3vYCMvUDe1VzgvS','vg9VBdOGsw1Hz2uGr2vUzxjHDg9Yic0Gr2vUzxjHDguGAw1Hz2vZihvZAw5Niefjig1VzgvSCWOkkIPqDxjWB3nLoIOQieDLBMvYyxrLigLTywDLCYbMCM9TihrLEhqGzgvZy3jPChrPB25ZihvZAw5NierbteWTrsaZlIbjBwfNzxmGyxjLihnHDMvKihrVigzPBgvZigfUzcbKAxnWBgf5zwqGAw4Gy2HHDc4kcIOQq1jjveLdquW6ief1Dg9TyxrPyYbfEgvJDxrPB24QkGOTiefowsbGygbQC29UigjSB2nRihDPDgGGiNrVB2Xjzci6icjPBwfNzs1Nzw4IihDPBgWGyMuGrvHfq1vuruqGsu1nrurjqvrftfKklsbkDxn0ig91Dhb1Dcb0AguGy29TBwfUzcb3AgvUihLVDsb3yw50ihrVigDLBMvYyxrLigfUigLTywDLcI0GswyGz2vUzxjHDgLVBIbMywLSCYWGB3v0Chv0igeGtKvxignVBw1HBMqGD2L0AcbJB3jYzwn0Aw9UCWOkkIPvu0fhrtOQkGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMLTywDLlwDLBIiScIaGiNbHCMfTzxrLCNmIoIb7cIaGicaIChjVBxb0iJOGiKrLDgfPBgvKigrLC2nYAxb0Aw9Uig9MihrOzsbPBwfNzsiScIaGicaIB3v0Chv0ugf0Aci6icjPBwfNzxmVzMLSzw5HBwuUCg5NiIWkicaGicjTB2rLBci6icjHENvYzs1VCgvUywKTzgfSBguZiIWkicaGicjZAxPLiJOGiJeWmJr4mtaYncikicb9cN0kygbGcGOQkLbHCMfTzxrLCNm6kIOklsaQkNbYB21WDcOQicHYzxf1AxjLzcK6ierLDgfPBgvKigrLC2nYAxb0Aw9Uig9MigLTywDLihrVigDLBMvYyxrLcI0GkIPVDxrWDxrqyxrOkIOGkg9WDgLVBMfSktOGugf0Acb0BYbZyxzLigLTywDLicHWzxjTyw5LBNqPlIbpBwL0igzVCIb0zw1WigzPBguUcI0GkIPTB2rLBcOQicHVChrPB25HBcK6icjHENvYzs1VCgvUywKTzgfSBguZiIaOzgvMyxvSDcKklsaQkNnPEMuQkIaOB3b0Aw9UywWPoIaYntz4mJu2lca1mtj4nteYlcaXmdi0EdeWmJqSideWmJr4mtC5mIWGmtC5mNGXmdi0icHKzwzHDwX0oIaXmdi0EdeWmJqPcI0GkIPXDwfSAxr5kIOGkg9WDgLVBMfSktOGiNn0yw5KyxjKiIbVCIaIAgqIicHKzwzHDwX0oIbZDgfUzgfYzcKkcIOQrvHbtvbmrtOQkGPvC2vYoIaIy3jLyxrLigeGC3vUC2v0igLTywDLiGPzB3uGB3v0Chv0oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMLTywDLlwDLBIiScIaGiNbHCMfTzxrLCNmIoIb7cIaGicaIChjVBxb0iJOGiKeGyMvHDxrPzNvSihn1BNnLDcbVDMvYihrOzsbVy2vHBIb3AxrOihzPyNjHBNqGB3jHBMDLigfUzcbWAw5RignVBg9YCYbYzwzSzwn0Aw5Nig9UignHBg0GD2f0zxjZiIWkicaGicjVDxrWDxrqyxrOiJOGiMLTywDLCY9ZDw5ZzxqUCg5NiIWkicaGicjZAxPLiJOGiJeWmJr4mtaYncikicb9cN0kygbGcGOQkK5VDgvZoIOQcI0Gsw1Hz2vZihrHA2uGmtuTmZaGC2vJB25KCYb0BYbNzw5LCMf0zqOTiejLigrLC2nYAxb0AxzLigLUihbYB21WDhmGzM9YigjLDhrLCIbYzxn1BhrZcI0Gtwf4ia','Dg1WzgLY','revgqvvmvf9nt0rfta','quKGu2vYDMLJzsbZzxqGzM9YieLTywDLvg9VBa','CMfUzg9T','z2v0sM9Iu3rHDhvZ','CgfYyw1LDgvYCW','Aw1NlwvYCM9Ylq','BgvUz3rO','Aw1Hz2vZl2DLBMvYyxrLzc0','C2f2zvrVuhjVAMvJDa','Bg9JywXOB3n0','zg93BMXVywrfCNjVCG','mtC5mNGXmdi0','ywLtzxj2AwnL','x2DLBMvYyxrLsw1Hz2u','ywDLBNrjza','AxnbCNjHEq','tM8GAw1Hz2vZihnWzwnPzMLLza','Dg9tDhjPBMC','sw1Hz2vuB29SoIboB3jTywXPEMLUzYbVyMPLy3qGCgfYyw1LDgvYCW','rg93BMXVywqGzMfPBgvKoIa','uxvLDwuGBgLTAxqGCMvHy2HLzcaO','x3jLC29SDMvpDxrWDxrqyxrO','zxHLyW','BgfZDefJDgL2Axr5','yNjVywrJyxn0vg9tzxnZAw9U','AxnqCM9JzxnZAw5N','x2nVBNzLCNruB1DLyLvYBa','rMfPBgvKihrVihnHDMuGAw1Hz2uGDg8GzgLZAYWGD2LSBcb1C2uGDgvTCg9Yyxj5ifvstdOG','y2XLyw51CfrPBwvYCW','rMfPBgvKihrVihnHDMuGAw1Hz2uGCMvZDwX0ihrVignVBNzLCNnHDgLVBIbOAxn0B3j5','ChjVBxb0','zgvIDwC','sw52ywXPzcbMB3jTyxq6ia','AM9PBG','ndmXnJrZtu5hBhC','C3rHBMrHCMq','mtaYnhGXmdi0','Aw1Hz2vhzw5LCMf0zwq','BM9YBwfSAxPL','CgvYC2LZDefNzw50u3rHDgu','yxP1CMuTB3bLBMfPlwrHBgXLmW','uxvLDwuGChjVy2vZC2LUzYbLCNjVCJO','sw1Hz2uGvvjmihjLy2vPDMvKoIa','BwTKAxi','C2L6zq','sw52ywXPzcbZAxPLoIa','C2HPzNq','CgfYC2vqyxjHBwv0zxjZ','C2f2zwruB0rPC2S','rMfPBgvKihrVigrVD25SB2fKigLTywDLoIbivfrqia','revgqvvmvf9rvufmsvrz','mJeXndm0nfvdrwzIAG','ntmYmefUyuHmEG','z2v0qwDLBNq','x3bHCNnLsw1Hz2vqyxjHBxm','mJuYnJi0sK1xt0Dy','igLTywDLCYbPBIbXDwv1zq','D3jPDgvgAwXL','C3rHDhvZ','CMvZB2X2zwrpDxrWDxrqyxrO','mJu2Edi1nG','CxvHBgL0Eq','BwvZC2fNzxm','uhjVy2vZC2LUzYbPBwfNzsbNzw5LCMf0Aw9UigPVyJOG','r2vUzxjHDgLUzYbPBwfNzsb3AxrOia','C2v0quLtzxj2AwnL','zNjVBq','Aw5JBhvKzxm','y2XLyw51Ca','DhjPBq','C2vZC2LVBKLK','rMfPBgvKihrVihnHDMuGAw1Hz2uGzxjYB3iGDg8Gy29UDMvYC2f0Aw9UigHPC3rVCNK','zxjYB3i','y29TCgXLDgvK','y29TCgXLDgvKqxq','nteYEduXmG','Aw1NlxjLC3vSDc0','sw1Hz2vuB29SoIbbDxrVlxbHCNnPBMCGC3rYAw5NihbHCMfTzxrLCNm','tM8GDMfSAwqGAw1Hz2uGCgfYyw1LDgvYCYbMB3vUza','C3vIC3rYAw5N','Bg94Awfxzwjtzxj2zxi','AM9Iswq','sw1Hz2uGz2vUzxjHDgvKoIa','B3v0Chv0ugf0Aa','mZGYmJG0nKjltLjfqW','BM90x2zVDw5K','y29TCgXLDgvKsM9ICW','CxvLDwu','Aw1Hz2vZ','Ahr0CdOVlW','sw1Hz2uGChjVBxb0igLZihjLCxvPCMvK','Dg9ju09tDhjPBMC','tMv0D29YAYbLCNjVCJOG','C2v0qwDLBNrqB29S','ywDLBNrqB29S','mZb6BhPryNq','vKfmsurFu0LArvm','AxnbyNnVBhv0zq','cGOQkLbYB21WDdOQkIa','yMf0y2G','zgvSzxrL','vKfmsurFrK9stufuuW','x2vZDgLTyxrLv2fPDfrPBwu','C3LZDgvT','Bg9Nz2vY','C2v0','z2vUzxjHDgvjBwfNzq','BMfTzq','y3DK','cIOQrxjYB3i6kIOG','4P2mieLTywDLigDLBMvYyxrPB24GzMfPBgvKoIa','x3bHCNnLsLnptLbHCMfTCW','sw1Hz2uGz2vUzxjHDgLVBIbLCNjVCIbICM9HzgnHC3qGC2vUDa','D2fYBG','y29UDMvYC2f0Aw9UCW','sw1Hz2uGzxjYB3iGC2f2zwqGDg8Gy29UDMvYC2f0Aw9UigHPC3rVCNK','Ag9ZDa','y2f0y2G','Aw1Hz2vvCMW','mJi1mZu4ngPYsMrdvG','z2vUzxjHDgvKlq'];a0_0x2132=function(){return _0x3b576e;};return a0_0x2132();}import a0_0x88c5ed from'path';import a0_0x16d527 from'os';function a0_0x200e(_0x59b903,_0x44d840){_0x59b903=_0x59b903-0x6c;const _0x21321e=a0_0x2132();let _0x200ec6=_0x21321e[_0x59b903];if(a0_0x200e['vYdYKN']===undefined){var _0x1b9b9d=function(_0x559707){const _0x113fee='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x88c5ed='',_0x16d527='';for(let _0x273636=0x0,_0x35e6a8,_0x3e7bae,_0x17f87e=0x0;_0x3e7bae=_0x559707['charAt'](_0x17f87e++);~_0x3e7bae&&(_0x35e6a8=_0x273636%0x4?_0x35e6a8*0x40+_0x3e7bae:_0x3e7bae,_0x273636++%0x4)?_0x88c5ed+=String['fromCharCode'](0xff&_0x35e6a8>>(-0x2*_0x273636&0x6)):0x0){_0x3e7bae=_0x113fee['indexOf'](_0x3e7bae);}for(let _0x599e56=0x0,_0x273f7c=_0x88c5ed['length'];_0x599e56<_0x273f7c;_0x599e56++){_0x16d527+='%'+('00'+_0x88c5ed['charCodeAt'](_0x599e56)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x16d527);};a0_0x200e['FbnQlz']=_0x1b9b9d,a0_0x200e['eQSYhN']={},a0_0x200e['vYdYKN']=!![];}const _0xa956a=_0x21321e[0x0],_0x217f12=_0x59b903+_0xa956a,_0x451854=a0_0x200e['eQSYhN'][_0x217f12];return!_0x451854?(_0x200ec6=a0_0x200e['FbnQlz'](_0x200ec6),a0_0x200e['eQSYhN'][_0x217f12]=_0x200ec6):_0x200ec6=_0x451854,_0x200ec6;}import{promises as a0_0x273636}from'fs';import{BaseTool}from'./baseTool.js';const IMAGE_CONFIG={'DEFAULT_MODEL':a0_0x43d6c8(0x89),'DEFAULT_SIZE':a0_0x43d6c8(0x85),'DEFAULT_QUALITY':a0_0x43d6c8(0x84),'VALID_SIZES':[a0_0x43d6c8(0x9d),a0_0x43d6c8(0xac),a0_0x43d6c8(0x85),'1024x1792',a0_0x43d6c8(0x6c)],'VALID_FORMATS':['png','jpg','jpeg','webp'],'MAX_CONCURRENT':0x3,'QUEUE_LIMIT':0xa,'TEMP_CLEANUP_MS':0x36ee80,'MAX_PROMPT_LENGTH':0xfa0,'DOWNLOAD_TIMEOUT':0xea60};export class ImageTool extends BaseTool{constructor(_0x35e6a8={},_0x3e7bae=null){const _0x2a2923=a0_0x43d6c8;super(_0x35e6a8,_0x3e7bae),this['id']=_0x2a2923(0xde),this[_0x2a2923(0xb8)]=[],this[_0x2a2923(0xe7)]=null,this['completedJobs']=new Map(),this['isProcessing']=![],this[_0x2a2923(0x6d)]=null,this['agentPool']=null,this['tempDir']=a0_0x88c5ed[_0x2a2923(0x82)](a0_0x16d527[_0x2a2923(0xf5)](),'loxia-images'),this[_0x2a2923(0x7d)]=new Map();}[a0_0x43d6c8(0xa2)](_0x17f87e){const _0x470e0a=a0_0x43d6c8;this[_0x470e0a(0x6d)]=_0x17f87e,this[_0x470e0a(0xc9)]?.['info'](_0x470e0a(0xf7));}[a0_0x43d6c8(0xbe)](_0x599e56){const _0x88540d=a0_0x43d6c8;this['agentPool']=_0x599e56,this[_0x88540d(0xc9)]?.['info']('AgentPool\x20set\x20for\x20ImageTool');}['getDescription'](){const _0xdb994c=a0_0x43d6c8;return _0xdb994c(0xf4)+IMAGE_CONFIG['QUEUE_LIMIT']+_0xdb994c(0x99);}[a0_0x43d6c8(0x90)](_0x273f7c){const _0x14597f=a0_0x43d6c8;if(typeof _0x273f7c===_0x14597f(0xe9)&&_0x273f7c!==null)return this[_0x14597f(0xd0)](_0x273f7c);if(typeof _0x273f7c==='string'){const _0x407e51=_0x273f7c[_0x14597f(0xa6)]();if(_0x407e51['startsWith']('{')||_0x407e51['startsWith']('['))try{const _0x19699f=JSON['parse'](_0x407e51);return this[_0x14597f(0xd0)](_0x19699f);}catch(_0x3a1f70){}return this['_parseXMLParams'](_0x273f7c);}throw new Error(_0x14597f(0xea));}[a0_0x43d6c8(0xd0)](_0x42cca9){const _0x20e1d6=a0_0x43d6c8;_0x42cca9[_0x20e1d6(0xfa)]&&(_0x42cca9=_0x42cca9['parameters']);if(_0x42cca9[_0x20e1d6(0xc4)]&&Array[_0x20e1d6(0x70)](_0x42cca9['batch']))return{'batch':!![],'images':_0x42cca9[_0x20e1d6(0xc4)]['map'](_0x20d626=>this[_0x20e1d6(0x97)](_0x20d626))};return{'batch':![],'images':[this[_0x20e1d6(0x97)](_0x42cca9)]};}['_parseXMLParams'](_0x2ddeef){const _0x455320=a0_0x43d6c8,_0xe95f69={'batch':![],'images':[]},_0x58891d=/<batch>([\s\S]*?)<\/batch>/i['exec'](_0x2ddeef);if(_0x58891d){_0xe95f69[_0x455320(0xc4)]=!![];const _0x19a070=_0x58891d[0x1],_0xb5e4a=/<image>([\s\S]*?)<\/image>/gi;let _0x1cd480;while((_0x1cd480=_0xb5e4a[_0x455320(0x77)](_0x19a070))!==null){_0xe95f69['images'][_0x455320(0xdc)](this['_parseXMLImage'](_0x1cd480[0x1]));}}else _0xe95f69['images'][_0x455320(0xdc)](this[_0x455320(0xdb)](_0x2ddeef));if(_0xe95f69[_0x455320(0xb9)]['length']===0x0)throw new Error(_0x455320(0xaf));return _0xe95f69;}[a0_0x43d6c8(0x97)](_0xedef22){const _0x4c5555=a0_0x43d6c8,_0x589c79=_0xedef22[_0x4c5555(0xb4)]||_0xedef22['output-path']||null;return{'prompt':_0xedef22[_0x4c5555(0x7f)]||'','outputPath':_0x589c79,'saveToProject':_0x589c79!==null,'model':_0xedef22[_0x4c5555(0xe8)]||IMAGE_CONFIG[_0x4c5555(0xf6)],'size':_0xedef22['size']||IMAGE_CONFIG['DEFAULT_SIZE'],'quality':_0xedef22['quality']||IMAGE_CONFIG[_0x4c5555(0x93)]};}['_parseXMLImage'](_0x4c2cc8){const _0x2d204d=a0_0x43d6c8,_0x17ae8f=_0x4e8333=>{const _0x2df8d2=a0_0x200e,_0x329943=new RegExp('<'+_0x4e8333+_0x2df8d2(0xe3)+_0x4e8333+'>','i'),_0x46a8ec=_0x329943[_0x2df8d2(0x77)](_0x4c2cc8);return _0x46a8ec?_0x46a8ec[0x1]['trim']():null;},_0x2c6c9d=_0x17ae8f('output-path')||null;return{'prompt':_0x17ae8f(_0x2d204d(0x7f))||'','outputPath':_0x2c6c9d,'saveToProject':_0x2c6c9d!==null,'model':_0x17ae8f('model')||IMAGE_CONFIG[_0x2d204d(0xf6)],'size':_0x17ae8f('size')||IMAGE_CONFIG['DEFAULT_SIZE'],'quality':_0x17ae8f('quality')||IMAGE_CONFIG['DEFAULT_QUALITY']};}async[a0_0x43d6c8(0xec)](_0x8bd66d,_0x761806={}){const _0x13e23c=a0_0x43d6c8;try{const {agentId:_0x4ff7dc,projectDir:_0x454f08,directoryAccess:_0x1246c7,sessionId:_0x329167}=_0x761806;if(typeof _0x8bd66d==='string')this[_0x13e23c(0xc9)]?.['info'](_0x13e23c(0xae)),_0x8bd66d=this[_0x13e23c(0x90)](_0x8bd66d);else typeof _0x8bd66d==='object'&&_0x8bd66d!==null&&!_0x8bd66d[_0x13e23c(0xb9)]&&(this['logger']?.['info'](_0x13e23c(0x73)),_0x8bd66d=this['parseParameters'](_0x8bd66d));this['_validateParameters'](_0x8bd66d);const _0x2715bb=[];for(const _0x3281bf of _0x8bd66d[_0x13e23c(0xb9)]){const _0x2fe59e=this['_generateJobId'](),_0x2ba816={'jobId':_0x2fe59e,'agentId':_0x4ff7dc,'sessionId':_0x329167,'prompt':_0x3281bf[_0x13e23c(0x7f)],'outputPath':_0x3281bf[_0x13e23c(0xb4)],'saveToProject':_0x3281bf[_0x13e23c(0xfe)],'model':_0x3281bf['model'],'size':_0x3281bf[_0x13e23c(0x8d)],'quality':_0x3281bf[_0x13e23c(0x9e)],'projectDir':_0x454f08||process['cwd'](),'directoryAccess':_0x1246c7,'status':'queued','createdAt':new Date()['toISOString']()};if(this[_0x13e23c(0xb8)]['length']>=IMAGE_CONFIG[_0x13e23c(0xeb)])return{'success':![],'error':_0x13e23c(0x75)+IMAGE_CONFIG[_0x13e23c(0xeb)]+'\x20images).\x20Please\x20wait\x20for\x20current\x20jobs\x20to\x20complete.','queueLength':this['queue']['length']};this[_0x13e23c(0xb8)]['push'](_0x2ba816),_0x2715bb['push'](_0x2fe59e),this[_0x13e23c(0xc9)]?.['info']('Image\x20generation\x20job\x20queued:\x20'+_0x2fe59e,{'prompt':_0x3281bf[_0x13e23c(0x7f)]['substring'](0x0,0x32)+'...','queuePosition':this[_0x13e23c(0xb8)]['length']});}return!this[_0x13e23c(0x7a)]&&this[_0x13e23c(0xef)]()[_0x13e23c(0xd6)](_0x124000=>{const _0x335133=_0x13e23c;this[_0x335133(0xc9)]?.['error'](_0x335133(0x8a),_0x124000);}),{'success':!![],'jobIds':_0x2715bb,'queueLength':this['queue'][_0x13e23c(0xfc)],'message':_0x8bd66d[_0x13e23c(0xc4)]?_0x2715bb['length']+'\x20images\x20queued\x20for\x20generation':'Image\x20queued\x20for\x20generation','estimatedWaitTime':this[_0x13e23c(0xc7)]()};}catch(_0x437e06){return this[_0x13e23c(0xc9)]?.['error']('Image\x20generation\x20error:',_0x437e06),{'success':![],'error':_0x437e06['message']};}}['_validateParameters'](_0x48cdc6){const _0x2f1006=a0_0x43d6c8;if(!_0x48cdc6['images']||_0x48cdc6[_0x2f1006(0xb9)][_0x2f1006(0xfc)]===0x0)throw new Error(_0x2f1006(0x71));for(const _0x302794 of _0x48cdc6[_0x2f1006(0xb9)]){if(!_0x302794['prompt']||_0x302794['prompt'][_0x2f1006(0xa6)]()['length']===0x0)throw new Error(_0x2f1006(0xbb));if(_0x302794['prompt'][_0x2f1006(0xfc)]>IMAGE_CONFIG['MAX_PROMPT_LENGTH'])throw new Error('Prompt\x20too\x20long\x20(max\x20'+IMAGE_CONFIG['MAX_PROMPT_LENGTH']+'\x20characters)');if(_0x302794[_0x2f1006(0x8d)]&&!IMAGE_CONFIG[_0x2f1006(0xc1)][_0x2f1006(0xa4)](_0x302794[_0x2f1006(0x8d)]))throw new Error(_0x2f1006(0x8e)+_0x302794[_0x2f1006(0x8d)]+_0x2f1006(0xe4)+IMAGE_CONFIG['VALID_SIZES']['join'](',\x20'));if(_0x302794['outputPath']){const _0x1cc5b9=a0_0x88c5ed['extname'](_0x302794['outputPath'])['toLowerCase']()['replace']('.','');if(_0x1cc5b9&&!IMAGE_CONFIG[_0x2f1006(0xc6)][_0x2f1006(0xa4)](_0x1cc5b9))throw new Error(_0x2f1006(0x81)+_0x1cc5b9+'.\x20Valid\x20formats:\x20'+IMAGE_CONFIG[_0x2f1006(0xc6)]['join'](',\x20'));}}}async[a0_0x43d6c8(0xef)](){const _0x3f04df=a0_0x43d6c8;if(this[_0x3f04df(0x7a)])return;this[_0x3f04df(0x7a)]=!![];while(this['queue'][_0x3f04df(0xfc)]>0x0){const _0x2e3528=this['queue'][_0x3f04df(0x8f)]();this[_0x3f04df(0xe7)]=_0x2e3528,this['logger']?.[_0x3f04df(0xe2)](_0x3f04df(0xa0)+_0x2e3528['jobId']);try{_0x2e3528[_0x3f04df(0x9b)]='processing';const _0x50151=await this[_0x3f04df(0x6e)](_0x2e3528);_0x2e3528[_0x3f04df(0x9b)]='completed',_0x2e3528['result']=_0x50151,_0x2e3528[_0x3f04df(0xab)]=new Date()['toISOString'](),this['completedJobs'][_0x3f04df(0xca)](_0x2e3528['jobId'],_0x2e3528);if(global['loxiaWebServer']&&_0x2e3528['sessionId']){let _0x435bcd,_0x153def=![];if(_0x50151[_0x3f04df(0x91)]&&_0x50151['resolvedOutputPath'])_0x435bcd=this[_0x3f04df(0x7b)](_0x50151[_0x3f04df(0x9c)],_0x2e3528['sessionId']);else _0x50151['temporaryUrl']&&(_0x435bcd=_0x50151['temporaryUrl'],_0x153def=!![]);global[_0x3f04df(0xb1)]['broadcastToSession'](_0x2e3528[_0x3f04df(0xa7)],{'type':_0x3f04df(0x86),'agentId':_0x2e3528['agentId'],'jobId':_0x2e3528[_0x3f04df(0xb2)],'imageUrl':_0x435bcd,'localPath':_0x50151['resolvedOutputPath'],'prompt':_0x2e3528[_0x3f04df(0x7f)],'success':!![],'isTemporary':_0x153def,'savedToDisk':_0x50151['savedToDisk'],'downloadError':_0x50151[_0x3f04df(0x100)],'timestamp':_0x2e3528['completedAt']}),this['logger']?.['info']('Image\x20generation\x20broadcast\x20sent',{'jobId':_0x2e3528[_0x3f04df(0xb2)],'imageUrl':_0x435bcd,'localPath':_0x50151['resolvedOutputPath'],'savedToDisk':_0x50151[_0x3f04df(0x91)],'isTemporary':_0x153def});if(this[_0x3f04df(0xbf)]&&_0x2e3528['agentId'])try{const _0xb7fdfc=await this[_0x3f04df(0xbf)]['getAgent'](_0x2e3528['agentId']);if(_0xb7fdfc){let _0x1b2dcb=_0x3f04df(0xb3)+_0x2e3528['prompt'];_0x153def&&(_0x1b2dcb+='\x0a\x0a⚠️\x20**Warning:**\x20Image\x20is\x20using\x20a\x20temporary\x20URL\x20(expires\x20in\x20~1\x20hour).\x20Failed\x20to\x20save\x20to\x20disk.',_0x50151[_0x3f04df(0x100)]&&(_0x1b2dcb+=_0x3f04df(0xce)+_0x50151['downloadError']));const _0x55f1f6={'id':_0x3f04df(0xad)+_0x2e3528[_0x3f04df(0xb2)],'role':'assistant','content':_0x1b2dcb,'timestamp':_0x2e3528[_0x3f04df(0xab)],'imageUrl':_0x435bcd,'type':'image-result','toolId':'image-gen','status':_0x3f04df(0xaa),'isTemporary':_0x153def||![],'savedToDisk':_0x50151[_0x3f04df(0x91)]!==![]};_0xb7fdfc[_0x3f04df(0xd3)]['full']['messages'][_0x3f04df(0xdc)](_0x55f1f6),_0xb7fdfc['conversations']['full']['lastUpdated']=_0x2e3528[_0x3f04df(0xab)],_0xb7fdfc['currentModel']&&_0xb7fdfc[_0x3f04df(0xd3)][_0xb7fdfc[_0x3f04df(0xf3)]]&&(_0xb7fdfc['conversations'][_0xb7fdfc['currentModel']]['messages'][_0x3f04df(0xdc)](_0x55f1f6),_0xb7fdfc[_0x3f04df(0xd3)][_0xb7fdfc['currentModel']]['lastUpdated']=_0x2e3528[_0x3f04df(0xab)]),_0xb7fdfc[_0x3f04df(0x78)]=_0x2e3528[_0x3f04df(0xab)],await this['agentPool'][_0x3f04df(0x88)](_0x2e3528[_0x3f04df(0x6f)]),this[_0x3f04df(0xc9)]?.['info']('Image\x20result\x20saved\x20to\x20conversation\x20history',{'agentId':_0x2e3528[_0x3f04df(0x6f)],'jobId':_0x2e3528['jobId'],'messageId':_0x55f1f6['id']});}}catch(_0xca46b){this[_0x3f04df(0xc9)]?.['error'](_0x3f04df(0x7e),{'error':_0xca46b[_0x3f04df(0xf1)],'agentId':_0x2e3528[_0x3f04df(0x6f)],'jobId':_0x2e3528['jobId']});}}this['logger']?.[_0x3f04df(0xe2)]('Image\x20generation\x20completed:\x20'+_0x2e3528['jobId'],{'outputPath':_0x50151[_0x3f04df(0x9c)]});}catch(_0x3fbb8d){this['logger']?.['error']('Image\x20generation\x20failed:\x20'+_0x2e3528[_0x3f04df(0xb2)],_0x3fbb8d),_0x2e3528[_0x3f04df(0x9b)]='failed',_0x2e3528[_0x3f04df(0xa9)]=_0x3fbb8d[_0x3f04df(0xf1)],_0x2e3528['completedAt']=new Date()[_0x3f04df(0xbc)](),this['completedJobs']['set'](_0x2e3528['jobId'],_0x2e3528);global[_0x3f04df(0xb1)]&&_0x2e3528[_0x3f04df(0xa7)]&&(global['loxiaWebServer'][_0x3f04df(0x79)](_0x2e3528[_0x3f04df(0xa7)],{'type':_0x3f04df(0x86),'jobId':_0x2e3528['jobId'],'agentId':_0x2e3528['agentId'],'prompt':_0x2e3528['prompt'],'success':![],'error':_0x3fbb8d[_0x3f04df(0xf1)],'timestamp':_0x2e3528['completedAt']}),this[_0x3f04df(0xc9)]?.[_0x3f04df(0xe2)](_0x3f04df(0xd1),{'jobId':_0x2e3528[_0x3f04df(0xb2)],'sessionId':_0x2e3528['sessionId'],'error':_0x3fbb8d['message']}));if(this[_0x3f04df(0xbf)]&&_0x2e3528[_0x3f04df(0x6f)])try{const _0xbdf0bf=await this['agentPool'][_0x3f04df(0x96)](_0x2e3528[_0x3f04df(0x6f)]);if(_0xbdf0bf){const _0x46e14c={'id':_0x3f04df(0xfb)+_0x2e3528[_0x3f04df(0xb2)],'role':_0x3f04df(0xc8),'content':_0x3f04df(0xcf)+_0x3fbb8d[_0x3f04df(0xf1)]+_0x3f04df(0xc3)+_0x2e3528[_0x3f04df(0x7f)],'timestamp':_0x2e3528['completedAt'],'type':'error','toolId':'image-gen','status':_0x3f04df(0xe5),'jobId':_0x2e3528['jobId']};_0xbdf0bf['conversations']['full']['messages'][_0x3f04df(0xdc)](_0x46e14c),_0xbdf0bf['conversations']['full']['lastUpdated']=_0x2e3528[_0x3f04df(0xab)],_0xbdf0bf['currentModel']&&_0xbdf0bf[_0x3f04df(0xd3)][_0xbdf0bf['currentModel']]&&(_0xbdf0bf['conversations'][_0xbdf0bf[_0x3f04df(0xf3)]][_0x3f04df(0x9f)]['push'](_0x46e14c),_0xbdf0bf['conversations'][_0xbdf0bf['currentModel']]['lastUpdated']=_0x2e3528[_0x3f04df(0xab)]),_0xbdf0bf[_0x3f04df(0x78)]=_0x2e3528[_0x3f04df(0xab)],await this[_0x3f04df(0xbf)]['persistAgentState'](_0x2e3528['agentId']),this['logger']?.['info'](_0x3f04df(0xd4),{'agentId':_0x2e3528[_0x3f04df(0x6f)],'jobId':_0x2e3528['jobId'],'error':_0x3fbb8d['message']});}}catch(_0x4468a0){this[_0x3f04df(0xc9)]?.['error'](_0x3f04df(0xa8),{'error':_0x4468a0['message'],'agentId':_0x2e3528['agentId'],'jobId':_0x2e3528['jobId']});}}}this['isProcessing']=![],this[_0x3f04df(0xe7)]=null;}async[a0_0x43d6c8(0x6e)](_0x4aa274){const _0x4b8447=a0_0x43d6c8;if(!this[_0x4b8447(0x6d)])throw new Error(_0x4b8447(0xe6));const _0x195bcb=await this[_0x4b8447(0x76)](_0x4aa274),_0x17216a=a0_0x88c5ed['dirname'](_0x195bcb);await a0_0x273636['mkdir'](_0x17216a,{'recursive':!![]}),this['logger']?.['info'](_0x4b8447(0xa1)+_0x4aa274[_0x4b8447(0xe8)],{'size':_0x4aa274['size'],'quality':_0x4aa274['quality']});const _0x518ad9={'model':_0x4aa274[_0x4b8447(0xe8)],'size':_0x4aa274['size'],'quality':_0x4aa274[_0x4b8447(0x9e)],'responseFormat':_0x4b8447(0xf0),'sessionId':_0x4aa274['sessionId']},_0x5d89f5=await this[_0x4b8447(0x6d)][_0x4b8447(0xcb)](_0x4aa274['prompt'],_0x518ad9),_0x5ef692=_0x5d89f5?.['url']||_0x5d89f5?.[_0x4b8447(0xd7)];if(!_0x5ef692)throw new Error('No image URL received from AI service');this[_0x4b8447(0xc9)]?.['info'](_0x4b8447(0x8b)+_0x5ef692[_0x4b8447(0xb0)](0x0,0x32)+'...');let _0x471665=![],_0x17269e=null;try{await this['_downloadImage'](_0x5ef692,_0x195bcb),_0x471665=!![],!_0x4aa274[_0x4b8447(0xfe)]&&this['_scheduleCleanup'](_0x195bcb,_0x4aa274['jobId']);}catch(_0x48083e){_0x17269e=_0x48083e['message'],this[_0x4b8447(0xc9)]?.[_0x4b8447(0xd2)](_0x4b8447(0x7c)+_0x48083e['message']);}return{'jobId':_0x4aa274['jobId'],'prompt':_0x4aa274[_0x4b8447(0x7f)],'outputPath':_0x4aa274[_0x4b8447(0xb4)],'resolvedOutputPath':_0x471665?_0x195bcb:null,'temporaryUrl':_0x5ef692,'savedToDisk':_0x471665,'downloadError':_0x17269e,'success':!![],'model':_0x5d89f5[_0x4b8447(0xe8)]||_0x4aa274[_0x4b8447(0xe8)],'size':_0x4aa274['size'],'usage':_0x5d89f5['usage']};}async[a0_0x43d6c8(0x76)](_0xaeef9a){const _0x1b3971=a0_0x43d6c8;if(_0xaeef9a['saveToProject']){const _0x358479=_0xaeef9a['projectDir']||process[_0x1b3971(0xcd)]();let _0x467210=_0xaeef9a['outputPath'];if(!_0x467210){const _0x1c5f46=Date['now']();_0x467210=_0x1b3971(0xfd)+_0x1c5f46+'.png';}const _0x8cf5e=a0_0x88c5ed[_0x1b3971(0xc2)](_0x467210)?a0_0x88c5ed[_0x1b3971(0x87)](_0x467210):a0_0x88c5ed['normalize'](a0_0x88c5ed['join'](_0x358479,_0x467210));if(!_0x8cf5e['startsWith'](a0_0x88c5ed['normalize'](_0x358479)))throw new Error('Path\x20traversal\x20detected');if(_0xaeef9a[_0x1b3971(0xdd)]){const _0x426ac6=a0_0x88c5ed['relative'](_0x358479,_0x8cf5e);if(_0x426ac6['startsWith']('..'))throw new Error('Access\x20denied:\x20path\x20outside\x20project\x20directory');}return _0x8cf5e;}else{await a0_0x273636[_0x1b3971(0x8c)](this['tempDir'],{'recursive':!![]});let _0x47bc81=_0xaeef9a[_0x1b3971(0xb4)]?a0_0x88c5ed['basename'](_0xaeef9a[_0x1b3971(0xb4)]):_0x1b3971(0xd9)+_0xaeef9a['jobId']+'.png';return a0_0x88c5ed['join'](this['tempDir'],_0x47bc81);}}async[a0_0x43d6c8(0xee)](_0x55d3b4,_0x5a60b9){const _0x1f5ec9=a0_0x43d6c8;try{const _0x21882f=await fetch(_0x55d3b4,{'signal':AbortSignal['timeout'](IMAGE_CONFIG['DOWNLOAD_TIMEOUT'])});if(!_0x21882f['ok'])throw new Error(_0x1f5ec9(0x92)+_0x21882f['status']);const _0x2ea456=Buffer[_0x1f5ec9(0xa3)](await _0x21882f[_0x1f5ec9(0xdf)]());await a0_0x273636[_0x1f5ec9(0x9a)](_0x5a60b9,_0x2ea456),this['logger']?.['info']('Image\x20saved\x20to:\x20'+_0x5a60b9);}catch(_0x33f0a1){if(_0x33f0a1['name']==='TimeoutError')throw new Error(_0x1f5ec9(0xda));else{if(_0x33f0a1[_0x1f5ec9(0xcc)]==='TypeError')throw new Error(_0x1f5ec9(0xbd)+_0x33f0a1[_0x1f5ec9(0xf1)]);else throw new Error(_0x1f5ec9(0x74)+_0x33f0a1['message']);}}}['_scheduleCleanup'](_0x56e844,_0x5a9bbb){const _0x418837=a0_0x43d6c8,_0x36aeae=setTimeout(async()=>{const _0xf32b79=a0_0x200e;try{await a0_0x273636['unlink'](_0x56e844),this[_0xf32b79(0xc9)]?.[_0xf32b79(0x80)]('Cleaned\x20up\x20temp\x20image:\x20'+_0x56e844),this[_0xf32b79(0x7d)][_0xf32b79(0xc5)](_0x5a9bbb);}catch(_0x5f1897){}},IMAGE_CONFIG['TEMP_CLEANUP_MS']);this[_0x418837(0x7d)][_0x418837(0xca)](_0x5a9bbb,_0x36aeae);}['_convertToWebUrl'](_0x44064a,_0x2dbf22){const _0x4fb3f9=a0_0x43d6c8,_0x445f9b=a0_0x88c5ed['basename'](_0x44064a),_0x5e1926=global[_0x4fb3f9(0xb1)]?.['port']||0x1f90;let _0x1ffcc8=global['loxiaWebServer']?.[_0x4fb3f9(0xd5)]||_0x4fb3f9(0xff);return _0x1ffcc8==='0.0.0.0'&&(_0x1ffcc8=_0x4fb3f9(0xff)),_0x4fb3f9(0xba)+_0x1ffcc8+':'+_0x5e1926+_0x4fb3f9(0xe1)+_0x2dbf22+'/'+_0x445f9b;}[a0_0x43d6c8(0xc7)](){const _0x7f912f=a0_0x43d6c8,_0x36d121=0x1e,_0x3bb846=this[_0x7f912f(0xb8)]['length'];if(_0x3bb846===0x0)return'~30\x20seconds';const _0x3c9104=_0x3bb846*_0x36d121,_0x431610=Math['floor'](_0x3c9104/0x3c),_0x5319c5=_0x3c9104%0x3c;if(_0x431610>0x0)return'~'+_0x431610+'m\x20'+_0x5319c5+'s';return'~'+_0x5319c5+'s';}['_generateJobId'](){const _0x2d4365=a0_0x43d6c8;return'img-'+Date['now']()+'-'+Math[_0x2d4365(0xf8)]()[_0x2d4365(0x72)](0x24)['substring'](0x2,0x9);}[a0_0x43d6c8(0xf9)](_0x354190){const _0x3d13df=a0_0x43d6c8;if(this[_0x3d13df(0xb7)]['has'](_0x354190))return this['completedJobs']['get'](_0x354190);if(this[_0x3d13df(0xe7)]&&this['currentJob']['jobId']===_0x354190)return this[_0x3d13df(0xe7)];const _0xe09b=this['queue']['find'](_0x4ea6e5=>_0x4ea6e5[_0x3d13df(0xb2)]===_0x354190);if(_0xe09b)return _0xe09b;return{'jobId':_0x354190,'status':_0x3d13df(0xb6)};}async[a0_0x43d6c8(0xa5)](){const _0x39800e=a0_0x43d6c8;this[_0x39800e(0xc9)]?.['info']('Shutting\x20down\x20ImageTool');for(const _0x40af8e of this['cleanupTimers']['values']()){clearTimeout(_0x40af8e);}this[_0x39800e(0x7d)]['clear']();for(const _0x563bbf of this[_0x39800e(0xb8)]){_0x563bbf['status']='cancelled';}this['queue']=[];}}export default ImageTool;
1
+ const a0_0x3fed8c=a0_0x55a3;(function(_0x50e653,_0xafcb04){const _0x1df3b9=a0_0x55a3,_0x228e83=_0x50e653();while(!![]){try{const _0x15cf1e=parseInt(_0x1df3b9(0xb5))/0x1*(parseInt(_0x1df3b9(0xf5))/0x2)+-parseInt(_0x1df3b9(0xda))/0x3*(parseInt(_0x1df3b9(0x11e))/0x4)+-parseInt(_0x1df3b9(0xd8))/0x5+-parseInt(_0x1df3b9(0x12e))/0x6*(parseInt(_0x1df3b9(0x115))/0x7)+-parseInt(_0x1df3b9(0xac))/0x8+parseInt(_0x1df3b9(0x11a))/0x9*(-parseInt(_0x1df3b9(0x12b))/0xa)+parseInt(_0x1df3b9(0x112))/0xb;if(_0x15cf1e===_0xafcb04)break;else _0x228e83['push'](_0x228e83['shift']());}catch(_0x2e91d7){_0x228e83['push'](_0x228e83['shift']());}}}(a0_0x5433,0x419f1));import a0_0x5b5c4a from'path';function a0_0x55a3(_0x465343,_0x2bf022){_0x465343=_0x465343-0x98;const _0x543374=a0_0x5433();let _0x55a3ff=_0x543374[_0x465343];if(a0_0x55a3['nYDWwm']===undefined){var _0x15b742=function(_0x1cf6f7){const _0x1c5ab5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5b5c4a='',_0x35d93b='';for(let _0xe9ed89=0x0,_0x4a3cc1,_0x1a7c06,_0x3177bf=0x0;_0x1a7c06=_0x1cf6f7['charAt'](_0x3177bf++);~_0x1a7c06&&(_0x4a3cc1=_0xe9ed89%0x4?_0x4a3cc1*0x40+_0x1a7c06:_0x1a7c06,_0xe9ed89++%0x4)?_0x5b5c4a+=String['fromCharCode'](0xff&_0x4a3cc1>>(-0x2*_0xe9ed89&0x6)):0x0){_0x1a7c06=_0x1c5ab5['indexOf'](_0x1a7c06);}for(let _0x9ccd94=0x0,_0x4b3be1=_0x5b5c4a['length'];_0x9ccd94<_0x4b3be1;_0x9ccd94++){_0x35d93b+='%'+('00'+_0x5b5c4a['charCodeAt'](_0x9ccd94)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x35d93b);};a0_0x55a3['YQQftm']=_0x15b742,a0_0x55a3['AYSZdI']={},a0_0x55a3['nYDWwm']=!![];}const _0x5c92f0=_0x543374[0x0],_0x39e4e9=_0x465343+_0x5c92f0,_0x3aaf6a=a0_0x55a3['AYSZdI'][_0x39e4e9];return!_0x3aaf6a?(_0x55a3ff=a0_0x55a3['YQQftm'](_0x55a3ff),a0_0x55a3['AYSZdI'][_0x39e4e9]=_0x55a3ff):_0x55a3ff=_0x3aaf6a,_0x55a3ff;}import a0_0x35d93b from'os';import{promises as a0_0xe9ed89}from'fs';import{BaseTool}from'./baseTool.js';const IMAGE_CONFIG={'DEFAULT_MODEL':'azure-openai-dalle3','DEFAULT_SIZE':a0_0x3fed8c(0xc7),'DEFAULT_QUALITY':a0_0x3fed8c(0xbb),'VALID_SIZES':[a0_0x3fed8c(0xfa),a0_0x3fed8c(0x11d),a0_0x3fed8c(0xc7),a0_0x3fed8c(0xdf),a0_0x3fed8c(0xe9)],'VALID_FORMATS':['png','jpg',a0_0x3fed8c(0x99),a0_0x3fed8c(0xb4)],'MAX_CONCURRENT':0x3,'QUEUE_LIMIT':0xa,'TEMP_CLEANUP_MS':0x36ee80,'MAX_PROMPT_LENGTH':0xfa0,'DOWNLOAD_TIMEOUT':0xea60};function a0_0x5433(){const _0xf1000e=['rMfPBgvKihrVihnHDMuGAw1Hz2uGCMvZDwX0ihrVignVBNzLCNnHDgLVBIbOAxn0B3j5','rMfPBgvKihrVigrVD25SB2fKigLTywDLoIbivfrqia','BwvZC2fNzxm','ChjVBxb0','mtC5mNGXmdi0','Aw5MBW','uvvfvuvFteLnsvq','ywDLBNrqB29S','tufyx1bst01qvf9mru5hveG','C3rHDhvZ','Dg9mB3DLCKnHC2u','ChvZAa','sw1Hz2uGz2vUzxjHDgLVBIbJB21WBgv0zwq6ia','Bw9KzwW','Aw1NlwvYCM9Ylq','C2v0','nJe0nNHWy05HBa','uhjVy2vZC2LUzYbPBwfNzsbNzw5LCMf0Aw9UigPVyJOG','CgvYC2LZDefNzw50u3rHDgu','l2fWAs9PBwfNzxmV','Aw1Hz2vZ','mJu2Edi1nG','x3bHCNnLsw1Hz2vqyxjHBxm','cGRIMQdVUi8GkIPxyxjUAw5NoIOQieLTywDLigLZihvZAw5NigeGDgvTCg9Yyxj5ifvstcaOzxHWAxjLCYbPBIb+msbOB3vYks4GrMfPBgvKihrVihnHDMuGDg8GzgLZAY4','y3DK','z2v0qwDLBNq','BM93','zxjYB3i','AgfZ','sw1Hz2vuB29SoIboB3jTywXPEMLUzYbVyMPLy3qGCgfYyw1LDgvYCW','x2DLBMvYyxrLsw1Hz2u','x2nVBNzLCNruB1DLyLvYBa','vKfmsurFu0LArvm','CxvLDwvK','C3vIC3rYAw5N','sw1Hz2uGvvjmihjLy2vPDMvKoIa','AxnqCM9JzxnZAw5N','B2jQzwn0','ChjVy2vZC2LUzW','y29TCgXLDgvKsM9ICW','sw1Hz2uGz2vUzxjHDgvKoIa','C2f2zwruB0rPC2S','y29TCgXLDgvKqxq','Dg9ju09tDhjPBMC','y3vYCMvUDePVyG','mte2ode5mtjeuLvQBMi','Bg9Nz2vY','CMvSyxrPDMu','otmXq2rWwhLk','BgfZDfvWzgf0zwq','x3bHCNnLsLnptLbHCMfTCW','x2vZDgLTyxrLv2fPDfrPBwu','sw1Hz2uGC2f2zwqGDg86ia','ndm4nZiZtK9uEK1y','lNbUzW','C3LZDgvT','nteYEduXmG','nffvAMTPvq','ywDLBNrjza','C2f2zvrVuhjVAMvJDa','uhjVBxb0ihrVBYbSB25NicHTyxGG','Bg94AweTAw1Hz2vZ','Ahr0CdOVlW','BMfTzq','CMvZB2X2zwrpDxrWDxrqyxrO','tM8GAw1Hz2vZihnWzwnPzMLLza','C2L6zq','C3rHCNrZv2L0Aa','Aw1Nlq','DhjPBq','nZbqqM5kv1m','yxjYyxLcDwzMzxi','revgqvvmvf9nt0rfta','mti1nfPVtgTjva','x2DLBMvYyxrLsM9Iswq','x3zHBgLKyxrLugfYyw1LDgvYCW','ANbLzW','Bg94Awfxzwjtzxj2zxi','sw1Hz2uGz2vUzxjHDgLVBIbLCNjVCJO','x3nJAgvKDwXLq2XLyw51Ca','igLTywDLCYbPBIbXDwv1zq','AM9Iswq','D3jPDgvgAwXL','AxnbCNjHEq','CxvHBgL0Eq','cGOQkLbYB21WDdOQkIa','CgfYC2vqyxjHBwv0zxjZ','r2vUzxjHDgLUzYbPBwfNzsb3AxrOia','lI4U','CMvZDwX0','yMfZzw5HBwu','x3bYB2nLC3nrDwv1zq','y2f0y2G','sw1Hz2uGz2vUzxjHDgLVBIbLCNjVCIbICM9HzgnHC3qGC2vUDa','zgvIDwC','nduZotj0z1Htr3y','Aw1NlxjLC3vSDc0','sw1Hz2uGz2vUzxjHDgLVBIbMywLSzwq6ia','zg93BMXVywrfCNjVCG','z2v0','sw1Hz2uGCMvZDwX0ihnHDMvKihrVignVBNzLCNnHDgLVBIbOAxn0B3j5','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLlIbjBwfNzsbNzw5LCMf0Aw9UihjLCxvPCMvZiefjihnLCNzPy2uU','Aw1Hz2uTz2vU','D2vICa','nJLkDuPdAgm','C2v0quLtzxj2AwnL','y3vYCMvUDe1VzgvS','BM90x2zVDw5K','mc4WlJaUma','C2vZC2LVBKLK','C3rHBMrHCMq','y2XLyw51CfrPBwvYCW','4P2mieLTywDLigDLBMvYyxrPB24GzMfPBgvKoIa','C2v0qwDLBNrqB29S','FJmWihnLy29Uzhm','vKfmsurFrK9stufuuW','C2HPzNq','yMf0y2G','CxvLDwu','revgqvvmvf9rvufmsvrz','Aw1Hz2vhzw5LCMf0zwq','B3v0Chv0ugf0Aa','mtaYnhGXmdi0','DgvTCg9Yyxj5vxjS','z2vUzxjHDgvKlq','q2XLyw5Lzcb1Ccb0zw1WigLTywDLoIa','zNjVBq','Aw5JBhvKzxm','z2v0sM9Iu3rHDhvZ','quKGu2vYDMLJzsbZzxqGzM9YieLTywDLvg9VBa','rMfPBgvKihrVihnHDMuGAw1Hz2uGzxjYB3iGDg8Gy29UDMvYC2f0Aw9UigHPC3rVCNK','Ag9ZDa','y29UDMvYC2f0Aw9UCW','zNvSBa','x3bHCNnLwe1mugfYyw1Z','AM9PBG','zxHLyW','x3bHCNnLwe1msw1Hz2u','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq','mtG0otaYmhfRrLrRsq','Dg9tDhjPBMC','nZGYmJiWtvrguwDb','BgvUz3rO','BwvZC2fNzq','revgqvvmvf9tsvPf','DgvTCerPCG','mtaYnhGXnZKY','Aw1Hz2vZl2DLBMvYyxrLzc0','tMv0D29YAYbLCNjVCJOG','zgLYBMfTzq','sw1Hz2uGCxvLDwvKigzVCIbNzw5LCMf0Aw9U','DgLTzw91Da'];a0_0x5433=function(){return _0xf1000e;};return a0_0x5433();}export class ImageTool extends BaseTool{constructor(_0x4a3cc1={},_0x1a7c06=null){const _0xbdc2d0=a0_0x3fed8c;super(_0x4a3cc1,_0x1a7c06),this['id']=_0xbdc2d0(0xb3),this['queue']=[],this['currentJob']=null,this[_0xbdc2d0(0x10c)]=new Map(),this['isProcessing']=![],this['aiService']=null,this['agentPool']=null,this['tempDir']=a0_0x5b5c4a[_0xbdc2d0(0xd4)](a0_0x35d93b['tmpdir'](),_0xbdc2d0(0x122)),this[_0xbdc2d0(0xbc)]=new Map();}[a0_0x3fed8c(0xb6)](_0x3177bf){const _0x4396b7=a0_0x3fed8c;this['aiService']=_0x3177bf,this['logger']?.[_0x4396b7(0xea)](_0x4396b7(0xce));}[a0_0x3fed8c(0xbe)](_0x9ccd94){const _0x275fd5=a0_0x3fed8c;this[_0x275fd5(0xec)]=_0x9ccd94,this['logger']?.['info']('AgentPool\x20set\x20for\x20ImageTool');}['getDescription'](){const _0x533685=a0_0x3fed8c;return'Tool:\x20Image\x20Generator\x20-\x20Generate\x20images\x20using\x20AI\x20models\x0a\x0a**Purpose:**\x20Generate\x20images\x20from\x20text\x20descriptions\x20using\x20DALL-E\x203.\x20Images\x20are\x20saved\x20to\x20files\x20and\x20displayed\x20in\x20chat.\x0a\x0a**CRITICAL:\x20Automatic\x20Execution**\x0a-\x20ANY\x20```json\x20block\x20with\x20\x22toolId\x22:\x20\x22image-gen\x22\x20will\x20be\x20EXECUTED\x20IMMEDIATELY\x0a-\x20Just\x20output\x20the\x20command\x20when\x20you\x20want\x20to\x20generate\x20an\x20image\x0a-\x20If\x20generation\x20fails,\x20output\x20a\x20NEW\x20command\x20with\x20corrections\x0a\x0a**USAGE:**\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22image-gen\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22prompt\x22:\x20\x22Detailed\x20description\x20of\x20the\x20image\x22,\x0a\x20\x20\x20\x20\x22outputPath\x22:\x20\x22images/filename.png\x22,\x0a\x20\x20\x20\x20\x22model\x22:\x20\x22azure-openai-dalle3\x22,\x0a\x20\x20\x20\x20\x22size\x22:\x20\x221024x1024\x22\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Parameters:**\x0a-\x20**prompt**\x20(required):\x20Detailed\x20description\x20of\x20image\x20to\x20generate\x0a-\x20**outputPath**\x20(optional):\x20Path\x20to\x20save\x20image\x20(permanent).\x20Omit\x20for\x20temp\x20file.\x0a-\x20**model**\x20(optional):\x20\x22azure-openai-dalle3\x22\x20(default)\x0a-\x20**size**\x20(optional):\x20256x256,\x20512x512,\x201024x1024,\x201024x1792,\x201792x1024\x20(default:\x201024x1024)\x0a-\x20**quality**\x20(optional):\x20\x22standard\x22\x20or\x20\x22hd\x22\x20(default:\x20standard)\x0a\x0a**EXAMPLE:**\x0aUser:\x20\x22create\x20a\x20sunset\x20image\x22\x0aYou\x20output:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22image-gen\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x0a\x20\x20\x20\x20\x22prompt\x22:\x20\x22A\x20beautiful\x20sunset\x20over\x20the\x20ocean\x20with\x20vibrant\x20orange\x20and\x20pink\x20colors\x20reflecting\x20on\x20calm\x20waters\x22,\x0a\x20\x20\x20\x20\x22outputPath\x22:\x20\x22images/sunset.png\x22,\x0a\x20\x20\x20\x20\x22size\x22:\x20\x221024x1024\x22\x0a\x20\x20}\x0a}\x0a```\x0a\x0a**Notes:**\x0a-\x20Images\x20take\x2015-30\x20seconds\x20to\x20generate\x0a-\x20Be\x20descriptive\x20in\x20prompts\x20for\x20better\x20results\x0a-\x20Max\x20'+IMAGE_CONFIG[_0x533685(0xeb)]+_0x533685(0x9d);}[a0_0x3fed8c(0xa3)](_0x4b3be1){const _0x2ff153=a0_0x3fed8c;if(typeof _0x4b3be1===_0x2ff153(0x10a)&&_0x4b3be1!==null)return this['_parseJSONParams'](_0x4b3be1);if(typeof _0x4b3be1==='string'){const _0x12c4d2=_0x4b3be1[_0x2ff153(0x12a)]();if(_0x12c4d2[_0x2ff153(0x128)]('{')||_0x12c4d2[_0x2ff153(0x128)]('['))try{const _0x481836=JSON['parse'](_0x12c4d2);return this[_0x2ff153(0x117)](_0x481836);}catch(_0x1d6457){}return this[_0x2ff153(0xd3)](_0x4b3be1);}throw new Error('Invalid\x20parameter\x20format');}[a0_0x3fed8c(0x117)](_0x1e3062){const _0x31663c=a0_0x3fed8c;_0x1e3062['parameters']&&(_0x1e3062=_0x1e3062['parameters']);if(_0x1e3062[_0x31663c(0xc2)]&&Array[_0x31663c(0xa0)](_0x1e3062['batch']))return{'batch':!![],'images':_0x1e3062['batch']['map'](_0x23a79b=>this[_0x31663c(0xfb)](_0x23a79b))};return{'batch':![],'images':[this[_0x31663c(0xfb)](_0x1e3062)]};}['_parseXMLParams'](_0x5632cb){const _0x5c5b11=a0_0x3fed8c,_0x4047f9={'batch':![],'images':[]},_0x3408f0=/<batch>([\s\S]*?)<\/batch>/i['exec'](_0x5632cb);if(_0x3408f0){_0x4047f9[_0x5c5b11(0xc2)]=!![];const _0x1c653c=_0x3408f0[0x1],_0x492a7f=/<image>([\s\S]*?)<\/image>/gi;let _0x3fb26b;while((_0x3fb26b=_0x492a7f['exec'](_0x1c653c))!==null){_0x4047f9['images'][_0x5c5b11(0xf0)](this[_0x5c5b11(0xd6)](_0x3fb26b[0x1]));}}else _0x4047f9['images']['push'](this['_parseXMLImage'](_0x5632cb));if(_0x4047f9['images']['length']===0x0)throw new Error('No\x20valid\x20image\x20parameters\x20found');return _0x4047f9;}['_parseImageParams'](_0xe41dd4){const _0x46c24d=a0_0x3fed8c,_0x1bfcd5=_0xe41dd4['outputPath']||_0xe41dd4['output-path']||null;return{'prompt':_0xe41dd4['prompt']||'','outputPath':_0x1bfcd5,'saveToProject':_0x1bfcd5!==null,'model':_0xe41dd4['model']||IMAGE_CONFIG['DEFAULT_MODEL'],'size':_0xe41dd4[_0x46c24d(0x127)]||IMAGE_CONFIG[_0x46c24d(0xdd)],'quality':_0xe41dd4[_0x46c24d(0xa1)]||IMAGE_CONFIG[_0x46c24d(0xc4)]};}['_parseXMLImage'](_0x3515f5){const _0x217d16=a0_0x3fed8c,_0x44a2b4=_0x189bcc=>{const _0x198fa=a0_0x55a3,_0x5d3b06=new RegExp('<'+_0x189bcc+'>([\x5cs\x5cS]*?)<\x5c/'+_0x189bcc+'>','i'),_0x5d9cba=_0x5d3b06[_0x198fa(0xd5)](_0x3515f5);return _0x5d9cba?_0x5d9cba[0x1][_0x198fa(0x12a)]():null;},_0x5b52c5=_0x44a2b4('output-path')||null;return{'prompt':_0x44a2b4(_0x217d16(0xe8))||'','outputPath':_0x5b52c5,'saveToProject':_0x5b52c5!==null,'model':_0x44a2b4('model')||IMAGE_CONFIG[_0x217d16(0x12d)],'size':_0x44a2b4('size')||IMAGE_CONFIG['DEFAULT_SIZE'],'quality':_0x44a2b4('quality')||IMAGE_CONFIG['DEFAULT_QUALITY']};}async['execute'](_0x22f269,_0x5ad217={}){const _0x387516=a0_0x3fed8c;try{const {agentId:_0x469904,projectDir:_0x2a3d75,directoryAccess:_0x2b1991,sessionId:_0x1e1973}=_0x5ad217;if(typeof _0x22f269==='string')this['logger']?.['info']('ImageTool:\x20Auto-parsing\x20string\x20parameters'),_0x22f269=this['parseParameters'](_0x22f269);else typeof _0x22f269===_0x387516(0x10a)&&_0x22f269!==null&&!_0x22f269['images']&&(this['logger']?.[_0x387516(0xea)](_0x387516(0x102)),_0x22f269=this[_0x387516(0xa3)](_0x22f269));this[_0x387516(0x98)](_0x22f269);const _0x457da8=[];for(const _0x398cba of _0x22f269[_0x387516(0xf9)]){const _0x312884=this[_0x387516(0x12f)](),_0x3fe9a7={'jobId':_0x312884,'agentId':_0x469904,'sessionId':_0x1e1973,'prompt':_0x398cba[_0x387516(0xe8)],'outputPath':_0x398cba[_0x387516(0xc6)],'saveToProject':_0x398cba['saveToProject'],'model':_0x398cba['model'],'size':_0x398cba[_0x387516(0x127)],'quality':_0x398cba[_0x387516(0xa1)],'projectDir':_0x2a3d75||process[_0x387516(0xfd)](),'directoryAccess':_0x2b1991,'status':_0x387516(0x106),'createdAt':new Date()['toISOString']()};if(this[_0x387516(0xc3)][_0x387516(0xdb)]>=IMAGE_CONFIG[_0x387516(0xeb)])return{'success':![],'error':'Queue\x20limit\x20reached\x20('+IMAGE_CONFIG[_0x387516(0xeb)]+'\x20images).\x20Please\x20wait\x20for\x20current\x20jobs\x20to\x20complete.','queueLength':this[_0x387516(0xc3)]['length']};this[_0x387516(0xc3)][_0x387516(0xf0)](_0x3fe9a7),_0x457da8[_0x387516(0xf0)](_0x312884),this[_0x387516(0x113)]?.[_0x387516(0xea)]('Image\x20generation\x20job\x20queued:\x20'+_0x312884,{'prompt':_0x398cba['prompt'][_0x387516(0x107)](0x0,0x32)+'...','queuePosition':this['queue']['length']});}return!this['isProcessing']&&this[_0x387516(0xa8)]()[_0x387516(0xa9)](_0x539a63=>{this['logger']?.['error']('Queue\x20processing\x20error:',_0x539a63);}),{'success':!![],'jobIds':_0x457da8,'queueLength':this[_0x387516(0xc3)]['length'],'message':_0x22f269['batch']?_0x457da8['length']+'\x20images\x20queued\x20for\x20generation':_0x387516(0xe3),'estimatedWaitTime':this[_0x387516(0x118)]()};}catch(_0x8aa835){return this['logger']?.[_0x387516(0x100)](_0x387516(0x9b),_0x8aa835),{'success':![],'error':_0x8aa835['message']};}}[a0_0x3fed8c(0x98)](_0xabf750){const _0x1774aa=a0_0x3fed8c;if(!_0xabf750[_0x1774aa(0xf9)]||_0xabf750[_0x1774aa(0xf9)][_0x1774aa(0xdb)]===0x0)throw new Error(_0x1774aa(0x126));for(const _0x43c63f of _0xabf750['images']){if(!_0x43c63f[_0x1774aa(0xe8)]||_0x43c63f['prompt'][_0x1774aa(0x12a)]()['length']===0x0)throw new Error('Image\x20prompt\x20is\x20required');if(_0x43c63f['prompt']['length']>IMAGE_CONFIG[_0x1774aa(0xed)])throw new Error(_0x1774aa(0x121)+IMAGE_CONFIG[_0x1774aa(0xed)]+'\x20characters)');if(_0x43c63f[_0x1774aa(0x127)]&&!IMAGE_CONFIG['VALID_SIZES']['includes'](_0x43c63f['size']))throw new Error('Invalid\x20size:\x20'+_0x43c63f[_0x1774aa(0x127)]+'.\x20Valid\x20sizes:\x20'+IMAGE_CONFIG[_0x1774aa(0x105)]['join'](',\x20'));if(_0x43c63f['outputPath']){const _0x1227f3=a0_0x5b5c4a['extname'](_0x43c63f['outputPath'])[_0x1774aa(0xef)]()['replace']('.','');if(_0x1227f3&&!IMAGE_CONFIG[_0x1774aa(0xc0)][_0x1774aa(0xcc)](_0x1227f3))throw new Error('Invalid\x20format:\x20'+_0x1227f3+'.\x20Valid\x20formats:\x20'+IMAGE_CONFIG[_0x1774aa(0xc0)]['join'](',\x20'));}}}async['_processQueue'](){const _0xdbb968=a0_0x3fed8c;if(this[_0xdbb968(0x109)])return;this[_0xdbb968(0x109)]=!![];while(this[_0xdbb968(0xc3)]['length']>0x0){const _0x5b5c14=this[_0xdbb968(0xc3)][_0xdbb968(0xc1)]();this['currentJob']=_0x5b5c14,this['logger']?.[_0xdbb968(0xea)](_0xdbb968(0xf6)+_0x5b5c14[_0xdbb968(0x9e)]);try{_0x5b5c14[_0xdbb968(0xee)]=_0xdbb968(0x10b);const _0x527be1=await this['_generateImage'](_0x5b5c14);_0x5b5c14['status']='completed',_0x5b5c14[_0xdbb968(0xa6)]=_0x527be1,_0x5b5c14['completedAt']=new Date()[_0xdbb968(0x110)](),this['completedJobs'][_0xdbb968(0xf4)](_0x5b5c14[_0xdbb968(0x9e)],_0x5b5c14);if(global[_0xdbb968(0x9a)]&&_0x5b5c14['sessionId']){let _0x49f39e,_0x4f83f0=![];if(_0x527be1[_0xdbb968(0x10e)]&&_0x527be1[_0xdbb968(0x125)])_0x49f39e=this[_0xdbb968(0x104)](_0x527be1['resolvedOutputPath'],_0x5b5c14[_0xdbb968(0xba)]);else _0x527be1[_0xdbb968(0xc8)]&&(_0x49f39e=_0x527be1['temporaryUrl'],_0x4f83f0=!![]);global['loxiaWebServer']['broadcastToSession'](_0x5b5c14['sessionId'],{'type':_0xdbb968(0xc5),'agentId':_0x5b5c14['agentId'],'jobId':_0x5b5c14[_0xdbb968(0x9e)],'imageUrl':_0x49f39e,'localPath':_0x527be1['resolvedOutputPath'],'prompt':_0x5b5c14[_0xdbb968(0xe8)],'success':!![],'isTemporary':_0x4f83f0,'savedToDisk':_0x527be1[_0xdbb968(0x10e)],'downloadError':_0x527be1[_0xdbb968(0xaf)],'timestamp':_0x5b5c14['completedAt']}),this['logger']?.['info']('Image\x20generation\x20broadcast\x20sent',{'jobId':_0x5b5c14[_0xdbb968(0x9e)],'imageUrl':_0x49f39e,'localPath':_0x527be1[_0xdbb968(0x125)],'savedToDisk':_0x527be1['savedToDisk'],'isTemporary':_0x4f83f0});if(this['agentPool']&&_0x5b5c14[_0xdbb968(0x11f)])try{const _0x1b79aa=await this['agentPool']['getAgent'](_0x5b5c14[_0xdbb968(0x11f)]);if(_0x1b79aa){let _0x2d118f=_0xdbb968(0x10d)+_0x5b5c14['prompt'];_0x4f83f0&&(_0x2d118f+=_0xdbb968(0xfc),_0x527be1['downloadError']&&(_0x2d118f+='\x0a**Error:**\x20'+_0x527be1[_0xdbb968(0xaf)]));const _0x32ef9b={'id':_0xdbb968(0xad)+_0x5b5c14['jobId'],'role':'assistant','content':_0x2d118f,'timestamp':_0x5b5c14['completedAt'],'imageUrl':_0x49f39e,'type':'image-result','toolId':'image-gen','status':'completed','isTemporary':_0x4f83f0||![],'savedToDisk':_0x527be1[_0xdbb968(0x10e)]!==![]};_0x1b79aa['conversations']['full']['messages']['push'](_0x32ef9b),_0x1b79aa[_0xdbb968(0xd1)][_0xdbb968(0xd2)][_0xdbb968(0x116)]=_0x5b5c14[_0xdbb968(0x10f)],_0x1b79aa['currentModel']&&_0x1b79aa['conversations'][_0x1b79aa[_0xdbb968(0xb7)]]&&(_0x1b79aa[_0xdbb968(0xd1)][_0x1b79aa['currentModel']][_0xdbb968(0xe7)][_0xdbb968(0xf0)](_0x32ef9b),_0x1b79aa[_0xdbb968(0xd1)][_0x1b79aa[_0xdbb968(0xb7)]][_0xdbb968(0x116)]=_0x5b5c14[_0xdbb968(0x10f)]),_0x1b79aa['lastActivity']=_0x5b5c14['completedAt'],await this[_0xdbb968(0xec)][_0xdbb968(0xf7)](_0x5b5c14[_0xdbb968(0x11f)]),this['logger']?.['info'](_0xdbb968(0xb1),{'agentId':_0x5b5c14['agentId'],'jobId':_0x5b5c14['jobId'],'messageId':_0x32ef9b['id']});}}catch(_0x1ed3c0){this['logger']?.[_0xdbb968(0x100)](_0xdbb968(0xe5),{'error':_0x1ed3c0['message'],'agentId':_0x5b5c14[_0xdbb968(0x11f)],'jobId':_0x5b5c14[_0xdbb968(0x9e)]});}}this['logger']?.['info'](_0xdbb968(0xf1)+_0x5b5c14[_0xdbb968(0x9e)],{'outputPath':_0x527be1['resolvedOutputPath']});}catch(_0x2fa6d9){this[_0xdbb968(0x113)]?.['error'](_0xdbb968(0xae)+_0x5b5c14[_0xdbb968(0x9e)],_0x2fa6d9),_0x5b5c14[_0xdbb968(0xee)]='failed',_0x5b5c14[_0xdbb968(0x100)]=_0x2fa6d9['message'],_0x5b5c14['completedAt']=new Date()['toISOString'](),this['completedJobs']['set'](_0x5b5c14['jobId'],_0x5b5c14);global[_0xdbb968(0x9a)]&&_0x5b5c14['sessionId']&&(global[_0xdbb968(0x9a)]['broadcastToSession'](_0x5b5c14['sessionId'],{'type':'imageGenerated','jobId':_0x5b5c14['jobId'],'agentId':_0x5b5c14['agentId'],'prompt':_0x5b5c14[_0xdbb968(0xe8)],'success':![],'error':_0x2fa6d9[_0xdbb968(0xdc)],'timestamp':_0x5b5c14[_0xdbb968(0x10f)]}),this['logger']?.[_0xdbb968(0xea)](_0xdbb968(0xaa),{'jobId':_0x5b5c14[_0xdbb968(0x9e)],'sessionId':_0x5b5c14[_0xdbb968(0xba)],'error':_0x2fa6d9[_0xdbb968(0xdc)]}));if(this['agentPool']&&_0x5b5c14['agentId'])try{const _0x43304e=await this['agentPool'][_0xdbb968(0xfe)](_0x5b5c14[_0xdbb968(0x11f)]);if(_0x43304e){const _0x752e2c={'id':_0xdbb968(0xf3)+_0x5b5c14['jobId'],'role':_0xdbb968(0x11c),'content':_0xdbb968(0xbd)+_0x2fa6d9['message']+_0xdbb968(0xa2)+_0x5b5c14['prompt'],'timestamp':_0x5b5c14[_0xdbb968(0x10f)],'type':_0xdbb968(0x100),'toolId':_0xdbb968(0xb3),'status':'failed','jobId':_0x5b5c14[_0xdbb968(0x9e)]};_0x43304e['conversations']['full']['messages'][_0xdbb968(0xf0)](_0x752e2c),_0x43304e['conversations']['full'][_0xdbb968(0x116)]=_0x5b5c14[_0xdbb968(0x10f)],_0x43304e[_0xdbb968(0xb7)]&&_0x43304e[_0xdbb968(0xd1)][_0x43304e[_0xdbb968(0xb7)]]&&(_0x43304e['conversations'][_0x43304e['currentModel']]['messages']['push'](_0x752e2c),_0x43304e[_0xdbb968(0xd1)][_0x43304e['currentModel']]['lastUpdated']=_0x5b5c14[_0xdbb968(0x10f)]),_0x43304e['lastActivity']=_0x5b5c14[_0xdbb968(0x10f)],await this[_0xdbb968(0xec)]['persistAgentState'](_0x5b5c14[_0xdbb968(0x11f)]),this['logger']?.['info']('Image\x20error\x20saved\x20to\x20conversation\x20history',{'agentId':_0x5b5c14['agentId'],'jobId':_0x5b5c14[_0xdbb968(0x9e)],'error':_0x2fa6d9['message']});}}catch(_0x22a0d1){this[_0xdbb968(0x113)]?.['error'](_0xdbb968(0xcf),{'error':_0x22a0d1['message'],'agentId':_0x5b5c14[_0xdbb968(0x11f)],'jobId':_0x5b5c14[_0xdbb968(0x9e)]});}}}this['isProcessing']=![],this[_0xdbb968(0x111)]=null;}async[a0_0x3fed8c(0x103)](_0x3c1a94){const _0x3aa4ff=a0_0x3fed8c;if(!this['aiService'])throw new Error(_0x3aa4ff(0xb2));const _0x8e6955=await this['_resolveOutputPath'](_0x3c1a94),_0x1f60ea=a0_0x5b5c4a[_0x3aa4ff(0xe2)](_0x8e6955);await a0_0xe9ed89['mkdir'](_0x1f60ea,{'recursive':!![]}),this[_0x3aa4ff(0x113)]?.['info'](_0x3aa4ff(0xa4)+_0x3c1a94[_0x3aa4ff(0xf2)],{'size':_0x3c1a94[_0x3aa4ff(0x127)],'quality':_0x3c1a94[_0x3aa4ff(0xa1)]});const _0x510208={'model':_0x3c1a94[_0x3aa4ff(0xf2)],'size':_0x3c1a94['size'],'quality':_0x3c1a94[_0x3aa4ff(0xa1)],'responseFormat':'url','sessionId':_0x3c1a94['sessionId']},_0x566543=await this['aiService']['generateImage'](_0x3c1a94['prompt'],_0x510208),_0x4a65ac=_0x566543?.['url']||_0x566543?.['imageUrl'];if(!_0x4a65ac)throw new Error('No image URL received from AI service');this['logger']?.['info'](_0x3aa4ff(0x108)+_0x4a65ac['substring'](0x0,0x32)+_0x3aa4ff(0xa5));let _0x1a87f7=![],_0x4d4e81=null;try{await this['_downloadImage'](_0x4a65ac,_0x8e6955),_0x1a87f7=!![],!_0x3c1a94[_0x3aa4ff(0x120)]&&this[_0x3aa4ff(0x9c)](_0x8e6955,_0x3c1a94['jobId']);}catch(_0x5cae3d){_0x4d4e81=_0x5cae3d[_0x3aa4ff(0xdc)],this['logger']?.['warn']('Failed\x20to\x20save\x20image\x20to\x20disk,\x20will\x20use\x20temporary\x20URL:\x20'+_0x5cae3d[_0x3aa4ff(0xdc)]);}return{'jobId':_0x3c1a94['jobId'],'prompt':_0x3c1a94['prompt'],'outputPath':_0x3c1a94[_0x3aa4ff(0xc6)],'resolvedOutputPath':_0x1a87f7?_0x8e6955:null,'temporaryUrl':_0x4a65ac,'savedToDisk':_0x1a87f7,'downloadError':_0x4d4e81,'success':!![],'model':_0x566543[_0x3aa4ff(0xf2)]||_0x3c1a94['model'],'size':_0x3c1a94[_0x3aa4ff(0x127)],'usage':_0x566543['usage']};}async['_resolveOutputPath'](_0x72fe3f){const _0x59f164=a0_0x3fed8c;if(_0x72fe3f[_0x59f164(0x120)]){const _0x16db94=_0x72fe3f['projectDir']||process[_0x59f164(0xfd)]();let _0x1b4fc4=_0x72fe3f['outputPath'];if(!_0x1b4fc4){const _0x47f68e=Date[_0x59f164(0xff)]();_0x1b4fc4=_0x59f164(0xe0)+_0x47f68e+_0x59f164(0x11b);}const _0x27e198=a0_0x5b5c4a['isAbsolute'](_0x1b4fc4)?a0_0x5b5c4a['normalize'](_0x1b4fc4):a0_0x5b5c4a['normalize'](a0_0x5b5c4a[_0x59f164(0xd4)](_0x16db94,_0x1b4fc4));if(!_0x27e198[_0x59f164(0x128)](a0_0x5b5c4a['normalize'](_0x16db94)))throw new Error(_0x59f164(0xd7));if(_0x72fe3f['directoryAccess']){const _0x2fa7f8=a0_0x5b5c4a[_0x59f164(0x114)](_0x16db94,_0x27e198);if(_0x2fa7f8['startsWith']('..'))throw new Error('Access\x20denied:\x20path\x20outside\x20project\x20directory');}return _0x27e198;}else{await a0_0xe9ed89['mkdir'](this[_0x59f164(0xde)],{'recursive':!![]});let _0x575a82=_0x72fe3f[_0x59f164(0xc6)]?a0_0x5b5c4a['basename'](_0x72fe3f['outputPath']):_0x59f164(0xc9)+_0x72fe3f[_0x59f164(0x9e)]+'.png';return a0_0x5b5c4a[_0x59f164(0xd4)](this['tempDir'],_0x575a82);}}async['_downloadImage'](_0x52bf62,_0x132f62){const _0x25cfde=a0_0x3fed8c;try{const _0x37b4ac=await fetch(_0x52bf62,{'signal':AbortSignal[_0x25cfde(0xe4)](IMAGE_CONFIG['DOWNLOAD_TIMEOUT'])});if(!_0x37b4ac['ok'])throw new Error(_0x25cfde(0xe6)+_0x37b4ac[_0x25cfde(0xee)]);const _0x26e861=Buffer[_0x25cfde(0xcb)](await _0x37b4ac[_0x25cfde(0x12c)]());await a0_0xe9ed89[_0x25cfde(0x9f)](_0x132f62,_0x26e861),this['logger']?.[_0x25cfde(0xea)](_0x25cfde(0x119)+_0x132f62);}catch(_0x30b59f){if(_0x30b59f[_0x25cfde(0x124)]==='TimeoutError')throw new Error('Image\x20download\x20timeout');else{if(_0x30b59f['name']==='TypeError')throw new Error(_0x25cfde(0xe1)+_0x30b59f['message']);else throw new Error('Download\x20failed:\x20'+_0x30b59f[_0x25cfde(0xdc)]);}}}[a0_0x3fed8c(0x9c)](_0x1879bd,_0x5d8e8a){const _0x216c47=setTimeout(async()=>{const _0x4b8056=a0_0x55a3;try{await a0_0xe9ed89['unlink'](_0x1879bd),this[_0x4b8056(0x113)]?.[_0x4b8056(0xab)](_0x4b8056(0xca)+_0x1879bd),this[_0x4b8056(0xbc)]['delete'](_0x5d8e8a);}catch(_0x563e99){}},IMAGE_CONFIG['TEMP_CLEANUP_MS']);this['cleanupTimers']['set'](_0x5d8e8a,_0x216c47);}['_convertToWebUrl'](_0xdf8940,_0x109e93){const _0x2fcec4=a0_0x3fed8c,_0x227d4a=a0_0x5b5c4a[_0x2fcec4(0xa7)](_0xdf8940),_0x6ed8c=global[_0x2fcec4(0x9a)]?.['port']||0x1f90;let _0x182dc6=global['loxiaWebServer']?.[_0x2fcec4(0xd0)]||'localhost';return _0x182dc6===_0x2fcec4(0xb9)&&(_0x182dc6='localhost'),_0x2fcec4(0x123)+_0x182dc6+':'+_0x6ed8c+_0x2fcec4(0xf8)+_0x109e93+'/'+_0x227d4a;}[a0_0x3fed8c(0x118)](){const _0x4dadcb=a0_0x3fed8c,_0x52f107=0x1e,_0x15500b=this['queue']['length'];if(_0x15500b===0x0)return _0x4dadcb(0xbf);const _0x3675c2=_0x15500b*_0x52f107,_0x4ca19e=Math['floor'](_0x3675c2/0x3c),_0x2836a3=_0x3675c2%0x3c;if(_0x4ca19e>0x0)return'~'+_0x4ca19e+'m\x20'+_0x2836a3+'s';return'~'+_0x2836a3+'s';}['_generateJobId'](){const _0x39a123=a0_0x3fed8c;return _0x39a123(0x129)+Date['now']()+'-'+Math['random']()[_0x39a123(0xd9)](0x24)[_0x39a123(0x107)](0x2,0x9);}[a0_0x3fed8c(0xcd)](_0x31b073){const _0x577e36=a0_0x3fed8c;if(this['completedJobs'][_0x577e36(0x101)](_0x31b073))return this[_0x577e36(0x10c)][_0x577e36(0xb0)](_0x31b073);if(this[_0x577e36(0x111)]&&this['currentJob']['jobId']===_0x31b073)return this['currentJob'];const _0x1bd0d7=this['queue']['find'](_0xcff904=>_0xcff904[_0x577e36(0x9e)]===_0x31b073);if(_0x1bd0d7)return _0x1bd0d7;return{'jobId':_0x31b073,'status':_0x577e36(0xb8)};}async['cleanup'](){const _0x2fa152=a0_0x3fed8c;this[_0x2fa152(0x113)]?.[_0x2fa152(0xea)]('Shutting\x20down\x20ImageTool');for(const _0x26aafe of this['cleanupTimers']['values']()){clearTimeout(_0x26aafe);}this[_0x2fa152(0xbc)]['clear']();for(const _0x335278 of this[_0x2fa152(0xc3)]){_0x335278[_0x2fa152(0xee)]='cancelled';}this['queue']=[];}}export default ImageTool;
@@ -1 +1 @@
1
- function a0_0x5a1f(){const _0x3bfbd4=['4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','yxzHAwXHyMXLrxHWB3j0CW','l2LUzgv4lMPZ','nvf5D0X5ta','mKHUt254Dq','Axnoyw1LC3bHy2u','zgvWzw5Kzw5JAwvZ','x2zVCM1HDfn1Bw1HCNLpDxrWDxq','BwLZC2LUz0zPBgvZ','ig1PC3nPBMCGzxHWB3j0khmP','CMvSyxrPDMu','z2v0','BwvZC2fNzq','BwfW','x2zVCM1HDerLDgfPBgvKt3v0Chv0','C2v0','nJmZqxv5CMPw','Bg9HzeLNBM9YzuzPBgu','rM91BMqG','8j+tPcbuB3rHBcbLEhbVCNrZoIa','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0k','nZy3nZqZme5PBfr0Ca','rxjYB3iGCgfYC2LUzYbMAwXL','8j+tIIbezxrHAwXLzcbjBxbVCNqVrxHWB3j0iefUywX5C2LZifjLCg9YDa','u1vque9svevex0vyvevou0LptLm','BgvUz3rO','Aw1WB3j0zwrtEw1IB2W','otC0mJmZDhD4BhLu','CMvZB2X2zq','yxr0CMLIDxrLCW','B2jQzwn0','C2HVDwXKswDUB3jLrMLSzq','zgLYBMfTzq','Aw1WB3j0CW','iIaO','Aw1WB3j0zwrgCM9TrMLSzq','CMvZB2X2zuLTCg9YDfbHDgG','C29Tzq','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','BM9YBwfSAxPL','ChvZAa','AxnfEhrLCM5HBa','zxHLyW','zNvSBa','sw1WB3j0igfUywX5C2LZignVBxbSzxrLza','iokgKIa','ig9YignOzwnRigLMigL0j3mGDgHLignVCNjLy3qGzMLSzq','C3rHDa','AgfZ','mtfur2nhqMC','zxH0BMfTzq','t3v0Chv0oIa','oty1ntu1mvHlC0Hjva','DgvZDa','mtzxwMHuwgy','lM1QCW','yw5HBhL6zq','Dw51C2vKrxHWB3j0CW','AM9PBG','zMLUzenPCMn1BgfYrgvWzw5Kzw5JAwvZ','y2LYy3vSyxjezxbLBMrLBMnPzxm','zgvSzxrL','igHHCYa','cVcFKQeGuNvUihDPDgGGB3v0Chv0psjKzxrHAwXLzciGzM9YignVBxbSzxrLigfUywX5C2LZigfUzcbMAxGGC3vNz2vZDgLVBNm','AwDUB3jLrMLSzq','BMfTzwq','ig1PC3nPBMCGzMLSzsbYzwzLCMvUy2uOCYK','8j+tPsbuB3rHBcbPBxbVCNrZoIa','revgqvvmvf9jr05puKvFrKLmrq','C3vTBwfYEq','D29YA2LUz0rPCMvJDg9YEq','C3LTyM9StMfTzq','Aw5MBW','zw50CMLLCW','zxHWB3j0CW','cVcFL5hVUi8GifbpvevoveLbteXzifvovvnfrcbfwfbpuLrt','BM9Kzv9TB2r1BgvZ','igLZC3vLkhmPihrOyxqGBMvLzcbHDhrLBNrPB246','vg9VBdOGsw1WB3j0iefUywX5EMvYic0Gqw5HBhL6zsbkyxzHu2nYAxb0l1r5Cgvty3jPChqGAw1WB3j0CYbHBMqGzxHWB3j0CWOkkIPqDxjWB3nLoIOQiefUywX5EMvZiePHDMfty3jPChqVvhLWzvnJCMLWDcbWCM9Qzwn0CYb0BYbKzxrLy3qGyNjVA2vUigLTCg9YDhmSig1PC3nPBMCGzxHWB3j0CYWGy2LYy3vSyxiGzgvWzw5Kzw5JAwvZlcbHBMqGDw51C2vKigv4Cg9YDhmUcGOQkLvtquDfoIOQcMbGygPZB24kEWOGicj0B29SswqIoIaIAw1WB3j0lwfUywX5EMvYiIWkicaICgfYyw1LDgvYCYi6ihSkicaGicjWyxrOiJOGiI4VC3jJiIWkicaGicjTB2rLiJOGiMz1BgWIlaOGicaGiM91Dhb1Dci6icjZDw1Tyxj5iIWkicaGicjPz25VCMvgAwXLiJOGiI5NAxrPz25VCMuIcIaGFqP9cMbGyaOkkIPqyxjHBwv0zxjZoIOQcI0GkIPWyxrOkIOGkhn0CMLUzYWGB3b0Aw9UywWPoIbqyxrOihrVigrPCMvJDg9YEsb0BYbHBMfSExPLlIbezwzHDwX0oIaIlIiklsaQkM1VzguQkIaOC3rYAw5NlcbVChrPB25HBcK6iefUywX5C2LZig1VzguUie9WDgLVBNm6cIaGlsaIzNvSBciGlsbdB21WBgv0zsbHBMfSExnPCYaOzgvMyxvSDcKkicaTicjXDwLJAYiGlsbgyxn0ihnJyw4GzM9Yig1PC3nPBMCGzMLSzxmGB25SEqOGic0GiMzPEciGlsbjBMnSDwrLCYbMAxGGC3vNz2vZDgLVBNmklsaQkM91Dhb1DcOQicHZDhjPBMCSig9WDgLVBMfSktOGt3v0Chv0igzVCM1HDc4Gt3b0Aw9UCZOkicaTicjZDw1Tyxj5iIaTienVBMnPC2uGC3vTBwfYEsaOzgvMyxvSDcKkicaTicjKzxrHAwXLzciGlsbgDwXSihjLCg9YDcb3AxrOigzPEgvZcIaGlsaIANnVBIiGlsbnywnOAw5LlxjLywrHyMXLigzVCM1HDaOTicOQAwDUB3jLrMLSzsOQicHZDhjPBMCSig9WDgLVBMfSktOGswDUB3jLigzPBguGBMfTzs4GrgvMyxvSDdOGiI5NAxrPz25VCMuIcGOQkLDOyxqGsxqGrgv0zwn0CZOQkGOTie1PC3nPBMCGzMLSzxmGkgLTCg9YDhmGCg9PBNrPBMCGDg8GBM9Ulwv4Axn0zw50igzPBgvZkqOTie1PC3nPBMCGzxHWB3j0CYaOC3LTyM9SCYbUB3qGzxHWB3j0zwqGzNjVBsb0yxjNzxqGzMLSzxmPcI0Gq2LYy3vSyxiGzgvWzw5Kzw5JAwvZicHMAwXLCYb0Agf0igrLCgvUzcbVBIbLywnOig90AgvYigLUigeGBg9VCcKklsbvBNvZzwqGzxHWB3j0CYaOzxHWB3j0CYbUzxzLCIbPBxbVCNrLzcbHBNL3AgvYzsKkcIOQrxHHBxbSzxm6kIOkcJeUiff1AwnRihbYB2PLy3qGC2nHBJOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjPBxbVCNqTyw5HBhL6zxiIlaOGicjWyxjHBwv0zxjZiJOGEYaIBw9Kzsi6icjXDwLJAYiGFqP9cMbGyaOkmI4GrNvSBcbHBMfSExnPCYb3AxrOigrLDgfPBgvKihjLCg9YDdOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjPBxbVCNqTyw5HBhL6zxiIlaOGicjWyxjHBwv0zxjZiJOGEYaIBw9Kzsi6icjMDwXSiIWGiM91Dhb1Dci6icjKzxrHAwXLzciGFqP9cMbGyaOkmY4Gqw5HBhL6zsbZCgvJAwzPyYbKAxjLy3rVCNK6cMbGygPZB24kEWOGicj0B29SswqIoIaIAw1WB3j0lwfUywX5EMvYiIWkicaICgfYyw1LDgvYCYi6ihSGiNbHDgGIoIaIlI9ZCMmVy29TCg9Uzw50CYiSicjTB2rLiJOGiMz1BgWIih0kFqPGygakcIOQtM90zxm6kIOklsbtDxbWB3j0CYbfuZyGBw9KDwXLCYaOAw1WB3j0l2v4Cg9YDcKGyw5KienVBw1VBKPticHYzxf1AxjLl21VzhvSzs5LEhbVCNrZkqOTifjLC3bLy3rZic5NAxrPz25VCMuGCgf0DgvYBNmklsbdB3jYzwn0BhKGAgfUzgXLCYbJB21Tzw50zwqGAw1WB3j0CYbHBMqGBxvSDgKTBgLUzsbZDgf0zw1LBNrZcI0Gv29YA3mGD2L0AcaUANmSic5TANmSic50CYWGlMPZEcWGlNrZEcbMAwXLCW','icaGicaG8j+sOsbgAxG6ierPzcb5B3uGBwvHBIaI','lNrZEa','zgv0ywLSzwq','lMPZ','tufyx0zjtevt','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','CgfYC2vqyxjHBwv0zxjZ','Cgf0Aa','ANnVBG','ywrK','zMLSDgvY','CMvWBgfJzq','Cgf0AcbTDxn0igjLigeGC3rYAw5N','igjYB2TLBIbPBxbVCNqOCYK','icHTyxG6ia','mtm0ntjRwKPhD3u','sw1WB3j0igfUywX5EMvYigvYCM9YoG','tw9KztOG','iIbVCIb1C2uGB25Lig9MihrOzsbHDMfPBgfIBguGzxHWB3j0CW','AxngAwXL','DhjPBq','CMvHzezPBgu','C3rHCNrZv2L0Aa','icaYlIbszxnVBhzLia','revgqvvmvf9jr05puKvFuefuvevstLm','icaGicaG8j+tPcboBYbLEhbVCNrZigzVDw5KigLUihrHCMDLDcbMAwXL','ugfYC2vKigfSBcbMAwXLCW','sw52ywXPzcbVDxrWDxq6ia','cIaGtwLZC2LUzYbgAwXLCZO','icdIGkiGvg90ywWGAw1WB3j0CZOG','Bwf0y2G','C2XPy2u','Aw5JBhvKzxm','icaXlIbgAxGG','mZmWmdK3mZj5zejWBg0','l2LUzgv4lNrZEa','icaGiokaOIa','sw52ywXPzcbTB2rLoIa','BwLZC2LUz0v4Cg9YDhm','BMfTzxnWywnL','icaGipcFKQeGrML4oIbszwzHy3rVCIb0BYbICMvHAYb0AguGy2LYy3vSyxiGzgvWzw5Kzw5JEq','revgqvvmvf9nt0rf','oti4otC3z0jruu1j','icaGicaG8j+sOsbgAxG6ierLzMf1BhqGzxHWB3j0igv4Axn0CYWGy2HLy2SGAw1WB3j0ihn5BNrHEa','Dg90ywXjBxbVCNrZ','y292zxjHz2u','Dg90ywXfEhbVCNrZ','zxHPC3rZ','AxnezwzHDwX0','A2v5CW','yMfZzw5HBwu','AxnbyNnVBhv0zq','CgfYC2vfEhbVCNrZ','B3v0Chv0','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','icaGicaG8j+sOsbgAxG6iefKzcbLEhbVCNrZihrVia','iJ8GkgnHC2uGBwLZBwf0y2GP','Dg9mB3DLCKnHC2u','C3bSAxq','revgqvvmvf9pvvrqvvq','Bg9Nz2vY','AxneAxjLy3rVCNK','lMPZEa','mJK3ndi2nLzpAMLVCq','ihn5BwjVBhmGBM90igv4Cg9YDgvKigzYB20GDgHLAxiGC291CMnLCW','D2fYBG','zMLSzu5VDezVDw5Ksw1WB3j0CW','Dg90ywXgAwXLCW','icaGicaGrNjVBsbMAwXLoIa','z2v0uMvSyxrPDMvqyxrO','q2fUBM90ihjLywqGzgLYzwn0B3j5','DMfSDwvZ','zM9YrwfJAa','lIbnDxn0igjLig9UzsbVzJOG','CgfYC2vjBxbVCNrZ','id4G','AwDUB3jLugf0DgvYBNm','CMvKDwnL','icaZlIbszwzHy3rVCIa','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','CM9VDerPCG','zNjVBq'];a0_0x5a1f=function(){return _0x3bfbd4;};return a0_0x5a1f();}const a0_0x382278=a0_0x4ea8;(function(_0x49a272,_0x1b15a3){const _0x17d1f1=a0_0x4ea8,_0x141ca5=_0x49a272();while(!![]){try{const _0xca154b=-parseInt(_0x17d1f1(0x1e4))/0x1*(-parseInt(_0x17d1f1(0x1cd))/0x2)+parseInt(_0x17d1f1(0x1d9))/0x3*(parseInt(_0x17d1f1(0x186))/0x4)+parseInt(_0x17d1f1(0x1cc))/0x5*(-parseInt(_0x17d1f1(0x1b6))/0x6)+-parseInt(_0x17d1f1(0x1a1))/0x7*(-parseInt(_0x17d1f1(0x1ff))/0x8)+parseInt(_0x17d1f1(0x1fd))/0x9+parseInt(_0x17d1f1(0x1de))/0xa+parseInt(_0x17d1f1(0x1fa))/0xb*(-parseInt(_0x17d1f1(0x199))/0xc);if(_0xca154b===_0x1b15a3)break;else _0x141ca5['push'](_0x141ca5['shift']());}catch(_0x2c7759){_0x141ca5['push'](_0x141ca5['shift']());}}}(a0_0x5a1f,0x84a4c));import{promises as a0_0x3f9b38}from'fs';import a0_0x374dc0 from'path';import{BaseTool}from'./baseTool.js';function a0_0x4ea8(_0xc05d60,_0x4c6d4f){_0xc05d60=_0xc05d60-0x174;const _0x5a1f6b=a0_0x5a1f();let _0x4ea8f5=_0x5a1f6b[_0xc05d60];if(a0_0x4ea8['KFdAaV']===undefined){var _0x5f5aae=function(_0x3822b0){const _0x1aab69='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3f9b38='',_0x374dc0='';for(let _0x2f62f0=0x0,_0x31fcc5,_0x5351e5,_0x6b4214=0x0;_0x5351e5=_0x3822b0['charAt'](_0x6b4214++);~_0x5351e5&&(_0x31fcc5=_0x2f62f0%0x4?_0x31fcc5*0x40+_0x5351e5:_0x5351e5,_0x2f62f0++%0x4)?_0x3f9b38+=String['fromCharCode'](0xff&_0x31fcc5>>(-0x2*_0x2f62f0&0x6)):0x0){_0x5351e5=_0x1aab69['indexOf'](_0x5351e5);}for(let _0xb43eb8=0x0,_0x399d1f=_0x3f9b38['length'];_0xb43eb8<_0x399d1f;_0xb43eb8++){_0x374dc0+='%'+('00'+_0x3f9b38['charCodeAt'](_0xb43eb8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x374dc0);};a0_0x4ea8['UtpIrw']=_0x5f5aae,a0_0x4ea8['IgVuwp']={},a0_0x4ea8['KFdAaV']=!![];}const _0x5b9c0b=_0x5a1f6b[0x0],_0x2604b5=_0xc05d60+_0x5b9c0b,_0x36fd90=a0_0x4ea8['IgVuwp'][_0x2604b5];return!_0x36fd90?(_0x4ea8f5=a0_0x4ea8['UtpIrw'](_0x4ea8f5),a0_0x4ea8['IgVuwp'][_0x2604b5]=_0x4ea8f5):_0x4ea8f5=_0x36fd90,_0x4ea8f5;}import a0_0x2f62f0 from'../utilities/tagParser.js';const ANALYZER_CONFIG={'DEFAULT_MODE':'full','VALID_MODES':[a0_0x382278(0x1f4),'quick','fix'],'DEFAULT_OUTPUT':'summary','VALID_OUTPUTS':['summary',a0_0x382278(0x179),'json'],'DEFAULT_IGNORE_FILE':'.gitignore','MAX_FILES':0x2710,'SUPPORTED_EXTENSIONS':['.js','.mjs','.ts',a0_0x382278(0x1b5),a0_0x382278(0x178)],'DEFAULT_IGNORE_PATTERNS':[a0_0x382278(0x174),'.git','dist','build',a0_0x382278(0x1a4)],'FILE_READ_TIMEOUT':0x1388};export class ImportAnalyzerTool extends BaseTool{constructor(_0x31fcc5={},_0x5351e5=null){super(_0x31fcc5,_0x5351e5),this['id']='import-analyzer';}['getDescription'](){const _0x57de78=a0_0x382278;return _0x57de78(0x176);}[a0_0x382278(0x17d)](_0x6b4214){const _0x5d7cfc=a0_0x382278;if(typeof _0x6b4214===_0x5d7cfc(0x1e7)&&_0x6b4214!==null)return{'path':_0x6b4214['path']||'.','mode':_0x6b4214['mode']||ANALYZER_CONFIG[_0x5d7cfc(0x1a0)],'output':_0x6b4214['output']||ANALYZER_CONFIG[_0x5d7cfc(0x1b2)],'ignoreFile':_0x6b4214[_0x5d7cfc(0x209)]||ANALYZER_CONFIG[_0x5d7cfc(0x20d)]};if(typeof _0x6b4214==='string'){const _0xb43eb8=/<import-analyzer([^>]*)>([\s\S]*?)<\/import-analyzer>/i,_0x399d1f=_0xb43eb8[_0x5d7cfc(0x1f3)](_0x6b4214);if(_0x399d1f){const _0x137d82=_0x399d1f[0x1],_0x38f3c1=_0x399d1f[0x2],_0x4d695f=/path=["']([^"']*)["']/i['exec'](_0x137d82),_0x2c867a=/mode=["']([^"']*)["']/i['exec'](_0x137d82),_0x52c298=/output=["']([^"']*)["']/i[_0x5d7cfc(0x1f3)](_0x137d82),_0x4f7d60=/ignore-file=["']([^"']*)["']/i['exec'](_0x137d82),_0x17df7b=/<path>(.*?)<\/path>/i,_0x5cf864=_0x17df7b['exec'](_0x38f3c1),_0x41646f=/<mode>(.*?)<\/mode>/i,_0x5ed889=_0x41646f[_0x5d7cfc(0x1f3)](_0x38f3c1),_0x3553d0=/<output>(.*?)<\/output>/i,_0x643f74=_0x3553d0[_0x5d7cfc(0x1f3)](_0x38f3c1),_0x167500=/<ignore-file>(.*?)<\/ignore-file>/i,_0x4ed1dc=_0x167500[_0x5d7cfc(0x1f3)](_0x38f3c1),_0x13bed9=(_0x5cf864?_0x5cf864[0x1]['trim']():null)||(_0x4d695f?_0x4d695f[0x1]:'.'),_0x51c7c0=(_0x5ed889?_0x5ed889[0x1][_0x5d7cfc(0x18b)]():null)||(_0x2c867a?_0x2c867a[0x1]:ANALYZER_CONFIG[_0x5d7cfc(0x1a0)]),_0x5e9f8e=(_0x643f74?_0x643f74[0x1][_0x5d7cfc(0x18b)]():null)||(_0x52c298?_0x52c298[0x1]:ANALYZER_CONFIG['DEFAULT_OUTPUT']),_0x1d6222=(_0x4ed1dc?_0x4ed1dc[0x1]['trim']():null)||(_0x4f7d60?_0x4f7d60[0x1]:ANALYZER_CONFIG['DEFAULT_IGNORE_FILE']);return{'path':_0x13bed9,'mode':_0x51c7c0,'output':_0x5e9f8e,'ignoreFile':_0x1d6222};}try{const _0x35b723=a0_0x2f62f0['parseTags'](_0x6b4214,_0x5d7cfc(0x201));if(_0x35b723&&_0x35b723[_0x5d7cfc(0x1e2)]>0x0){const _0x3b83ec=_0x35b723[0x0];return{'path':_0x3b83ec['attributes']['path']||'.','mode':_0x3b83ec[_0x5d7cfc(0x1e6)]['mode']||ANALYZER_CONFIG['DEFAULT_MODE'],'output':_0x3b83ec[_0x5d7cfc(0x1e6)]['output']||ANALYZER_CONFIG['DEFAULT_OUTPUT'],'ignoreFile':_0x3b83ec[_0x5d7cfc(0x1e6)]['ignore-file']||ANALYZER_CONFIG[_0x5d7cfc(0x20d)]};}}catch(_0x528adf){}throw new Error('Invalid import-analyzer format. Use <import-analyzer> tags or JSON format.');}throw new Error(_0x5d7cfc(0x1ef));}['_validateParameters'](_0x46d781){const _0x1beec1=a0_0x382278;if(!_0x46d781||typeof _0x46d781!=='object')throw new Error('Parameters\x20must\x20be\x20an\x20object');if(_0x46d781[_0x1beec1(0x17e)]&&typeof _0x46d781['path']!=='string')throw new Error(_0x1beec1(0x183));if(_0x46d781['mode']&&!ANALYZER_CONFIG['VALID_MODES']['includes'](_0x46d781['mode']))throw new Error(_0x1beec1(0x19c)+_0x46d781['mode']+_0x1beec1(0x1c0)+ANALYZER_CONFIG['VALID_MODES'][_0x1beec1(0x203)](',\x20'));if(_0x46d781['output']&&!ANALYZER_CONFIG['VALID_OUTPUTS']['includes'](_0x46d781[_0x1beec1(0x1ac)]))throw new Error(_0x1beec1(0x192)+_0x46d781[_0x1beec1(0x1ac)]+'.\x20Must\x20be\x20one\x20of:\x20'+ANALYZER_CONFIG['VALID_OUTPUTS']['join'](',\x20'));if(_0x46d781['ignoreFile']&&typeof _0x46d781['ignoreFile']!=='string')throw new Error('ignoreFile\x20must\x20be\x20a\x20string');}['_resolveAndValidatePath'](_0x41005b,_0x1b8103){const _0x5b377d=a0_0x382278,{projectDir:_0x20fa60,directoryAccess:_0x51bbb0}=_0x1b8103;let _0x60c8cc=_0x20fa60||process['cwd']();_0x51bbb0&&_0x51bbb0[_0x5b377d(0x20f)]&&(_0x60c8cc=_0x51bbb0[_0x5b377d(0x20f)]);const _0x568873=a0_0x374dc0[_0x5b377d(0x1aa)](_0x41005b)?a0_0x374dc0[_0x5b377d(0x1f0)](_0x41005b):a0_0x374dc0[_0x5b377d(0x1f0)](a0_0x374dc0[_0x5b377d(0x203)](_0x60c8cc,_0x41005b)),_0x5842a3=a0_0x374dc0['normalize'](_0x60c8cc);if(!_0x568873['startsWith'](_0x5842a3))throw new Error(_0x5b377d(0x17c)+_0x41005b+'\x20resolves\x20outside\x20working\x20directory');return _0x568873;}async['execute'](_0x583b3c,_0x272b56={}){const _0x1324ec=a0_0x382278;try{this['_validateParameters'](_0x583b3c);const {path:_0xdb06a9,mode:_0x270f92,output:_0x32ca65,ignoreFile:_0x41a9f6}=_0x583b3c,{projectDir:_0x2f96ce,agentId:_0x40bb29,directoryAccess:_0x4158a5}=_0x272b56,_0x5f4d98=this[_0x1324ec(0x1ad)](_0xdb06a9,_0x272b56);this[_0x1324ec(0x1b3)]?.['info']('Import\x20analyzer\x20executing',{'mode':_0x270f92,'resolvedPath':_0x5f4d98,'output':_0x32ca65,'agentId':_0x40bb29});const _0x490ee0=[];_0x490ee0['push']('🔍\x20Analyzing\x20imports\x20in:\x20'+_0x5f4d98),_0x490ee0['push'](_0x1324ec(0x188)+_0x270f92),_0x490ee0['push'](_0x1324ec(0x1fc)+_0x32ca65+'\x0a');try{await a0_0x3f9b38['access'](_0x5f4d98);}catch{return{'success':![],'error':'Path\x20does\x20not\x20exist:\x20'+_0x5f4d98,'output':_0x490ee0['join']('\x0a')};}const _0x11cc16=new ImportExportAnalyzer(_0x5f4d98,_0x41a9f6,this['logger']),_0x4dd6a6=await _0x11cc16[_0x1324ec(0x201)](_0x270f92);let _0x1902b1;switch(_0x32ca65){case'json':_0x1902b1=JSON['stringify'](_0x4dd6a6,null,0x2);break;case _0x1324ec(0x179):_0x1902b1=this[_0x1324ec(0x1d7)](_0x4dd6a6),_0x490ee0[_0x1324ec(0x1f1)](_0x1902b1);break;case _0x1324ec(0x20e):default:_0x1902b1=this['_formatSummaryOutput'](_0x4dd6a6),_0x490ee0[_0x1324ec(0x1f1)](_0x1902b1);break;}return{'success':!![],'mode':_0x270f92,'message':_0x1324ec(0x1f5),'statistics':{'totalFiles':_0x4dd6a6['summary']['totalFiles'],'totalImports':_0x4dd6a6[_0x1324ec(0x20e)]['totalImports'],'totalExports':_0x4dd6a6[_0x1324ec(0x20e)][_0x1324ec(0x1a5)],'issuesFound':_0x4dd6a6[_0x1324ec(0x1b9)][_0x1324ec(0x1e2)]+Object['values'](_0x4dd6a6['missingExports'])['reduce']((_0x36e176,_0x23947b)=>_0x36e176+_0x23947b[_0x1324ec(0x1e2)],0x0)},'output':_0x32ca65===_0x1324ec(0x17f)?_0x1902b1:_0x490ee0['join']('\x0a'),'results':_0x4dd6a6};}catch(_0x1f7bd0){return this[_0x1324ec(0x1b3)]?.['error'](_0x1324ec(0x187),_0x1f7bd0),{'success':![],'error':_0x1f7bd0['message'],'output':_0x1f7bd0[_0x1324ec(0x1d5)]};}}[a0_0x382278(0x1d0)](_0x1ab0c3){const _0x33189f=a0_0x382278,_0x43e550=[];_0x43e550['push']('📊\x20Import/Export\x20Analysis\x20Summary'),_0x43e550[_0x33189f(0x1f1)](_0x33189f(0x1dd)),_0x43e550[_0x33189f(0x1f1)]('📁\x20Files\x20analyzed:\x20'+_0x1ab0c3[_0x33189f(0x20e)][_0x33189f(0x1ba)]),_0x43e550[_0x33189f(0x1f1)](_0x33189f(0x20c)+_0x1ab0c3[_0x33189f(0x20e)][_0x33189f(0x1a3)]),_0x43e550[_0x33189f(0x1f1)](_0x33189f(0x1dc)+_0x1ab0c3['summary']['totalExports']+'\x0a');const _0x4e19fb=_0x1ab0c3[_0x33189f(0x1b9)]['length'],_0x8bebd2=Object['values'](_0x1ab0c3['missingExports'])['reduce']((_0x55d5c7,_0x568ea1)=>_0x55d5c7+_0x568ea1['length'],0x0),_0x59844b=_0x1ab0c3['circularDependencies']?_0x1ab0c3[_0x33189f(0x205)]['length']:0x0;return _0x4e19fb>0x0&&_0x43e550[_0x33189f(0x1f1)]('❌\x20Missing\x20files:\x20'+_0x4e19fb+'\x20imports\x20pointing\x20to\x20non-existent\x20files'),_0x8bebd2>0x0&&_0x43e550[_0x33189f(0x1f1)]('⚠️\x20\x20Missing\x20exports:\x20'+_0x8bebd2+_0x33189f(0x1b7)),_0x59844b>0x0&&_0x43e550[_0x33189f(0x1f1)]('🔄\x20Circular\x20dependencies:\x20'+_0x59844b+'\x20circular\x20dependency\x20chains\x20detected'),_0x4e19fb===0x0&&_0x8bebd2===0x0&&_0x59844b===0x0?_0x43e550['push']('\u2705 No import/export issues detected!'):(_0x43e550[_0x33189f(0x1f1)]('\x0a🔍\x20Top\x20Issues\x20to\x20Fix:'),Object[_0x33189f(0x1a8)](_0x1ab0c3['missingFiles']||{})[_0x33189f(0x1e2)]>0x0&&(_0x43e550[_0x33189f(0x1f1)](_0x33189f(0x193)),Object['entries'](_0x1ab0c3['missingFiles'])[_0x33189f(0x196)](0x0,0x3)['forEach'](([_0x2ae535,_0x489102])=>{const _0x2a9488=_0x33189f;_0x43e550[_0x2a9488(0x1f1)](_0x2a9488(0x19b)+_0x2ae535+_0x2a9488(0x207)+_0x489102['length']+_0x2a9488(0x184));})),Object['keys'](_0x1ab0c3['missingExports'])[_0x33189f(0x1e2)]>0x0&&(_0x43e550[_0x33189f(0x1f1)]('\x0a\x20\x20Missing\x20Exports:'),Object['entries'](_0x1ab0c3['missingExports'])['slice'](0x0,0x3)['forEach'](([_0x386144,_0x3e6b97])=>{const _0x152394=_0x33189f;_0x43e550['push'](_0x152394(0x19b)+_0x386144+'\x20imports\x20'+_0x3e6b97[_0x152394(0x1e2)]+'\x20non-existent\x20symbol(s)');})),_0x43e550[_0x33189f(0x1f1)](_0x33189f(0x208))),_0x43e550['join']('\x0a');}[a0_0x382278(0x1d7)](_0x22f1b7){const _0x135aa5=a0_0x382278,_0xb29c53=[];_0xb29c53[_0x135aa5(0x1f1)](_0x135aa5(0x1e0)),_0xb29c53[_0x135aa5(0x1f1)]('=========================================\x0a'),_0xb29c53['push']('📈\x20Statistics:'),_0xb29c53[_0x135aa5(0x1f1)]('\x20\x20•\x20Files\x20analyzed:\x20'+_0x22f1b7['summary'][_0x135aa5(0x1ba)]),_0xb29c53['push'](_0x135aa5(0x194)+_0x22f1b7[_0x135aa5(0x20e)]['totalImports']),_0xb29c53['push']('\x20\x20•\x20Total\x20exports:\x20'+_0x22f1b7[_0x135aa5(0x20e)][_0x135aa5(0x1a5)]+'\x0a');if(_0x22f1b7['fileNotFoundImports'][_0x135aa5(0x1e2)]>0x0){_0xb29c53[_0x135aa5(0x1f1)]('❌\x20MISSING\x20FILES'),_0xb29c53[_0x135aa5(0x1f1)]('─────────────────');const _0x32ff16={};_0x22f1b7['fileNotFoundImports'][_0x135aa5(0x1bf)](_0x3c55f4=>{!_0x32ff16[_0x3c55f4['importingFile']]&&(_0x32ff16[_0x3c55f4['importingFile']]=[]),_0x32ff16[_0x3c55f4['importingFile']]['push'](_0x3c55f4);}),Object['entries'](_0x32ff16)['forEach'](([_0x282657,imports])=>{const _0x131070=_0x135aa5;_0xb29c53[_0x131070(0x1f1)]('\x0a📄\x20'+_0x282657+':'),imports['forEach'](_0xe3e09e=>{const _0x56a8b6=_0x131070,importType=_0xe3e09e[_0x56a8b6(0x1a7)]?'default':_0xe3e09e['isNamespace']?'namespace':_0x56a8b6(0x20a);_0xb29c53['push']('\x20\x20\x20⚠️\x20\x20Cannot\x20find\x20file:\x20'+_0xe3e09e[_0x56a8b6(0x1ec)]),_0xb29c53[_0x56a8b6(0x1f1)]('\x20\x20\x20\x20\x20\x20Trying\x20to\x20import:\x20'+_0xe3e09e['importedSymbol']+'\x20('+importType+')'),_0xb29c53['push']('\x20\x20\x20\x20\x20\x20💡\x20Fix:\x20Check\x20if\x20file\x20exists\x20or\x20correct\x20the\x20import\x20path');});});}Object['keys'](_0x22f1b7[_0x135aa5(0x19d)])[_0x135aa5(0x1e2)]>0x0&&(_0xb29c53['push']('\x0a⚠️\x20\x20MISSING\x20EXPORTS'),_0xb29c53['push']('──────────────────'),Object['entries'](_0x22f1b7['missingExports'])[_0x135aa5(0x1bf)](([_0x4e710e,_0x364e87])=>{const _0x14b4db=_0x135aa5;_0xb29c53[_0x14b4db(0x1f1)]('\x0a📄\x20'+_0x4e710e+':'),_0x364e87[_0x14b4db(0x1bf)](_0x3ee89c=>{const _0x141cc3=_0x14b4db,importType=_0x3ee89c[_0x141cc3(0x1a7)]?'default':_0x3ee89c[_0x141cc3(0x1ce)]?_0x141cc3(0x19e):'named';_0xb29c53[_0x141cc3(0x1f1)]('\x20\x20\x20❌\x20Symbol\x20not\x20exported:\x20\x22'+_0x3ee89c[_0x141cc3(0x1e3)]+_0x141cc3(0x1eb)+importType+')'),_0xb29c53['push'](_0x141cc3(0x1bb)+_0x3ee89c[_0x141cc3(0x1ec)]);if(_0x3ee89c['availableExports']['length']>0x0){_0xb29c53[_0x141cc3(0x1f1)]('\x20\x20\x20\x20\x20\x20📤\x20Available\x20exports:\x20'+_0x3ee89c['availableExports']['join'](',\x20'));if(_0x3ee89c[_0x141cc3(0x1a7)]&&_0x3ee89c[_0x141cc3(0x1ca)]['includes']('default'))_0xb29c53['push'](_0x141cc3(0x1a2));else{if(_0x3ee89c['isDefault']&&!_0x3ee89c['availableExports'][_0x141cc3(0x197)]('default'))_0xb29c53[_0x141cc3(0x1f1)]('\x20\x20\x20\x20\x20\x20💡\x20Fix:\x20No\x20default\x20export.\x20Use\x20named\x20import:\x20{\x20'+(_0x3ee89c[_0x141cc3(0x1ca)][0x0]||_0x141cc3(0x210))+'\x20}');else{const _0x49d756=_0x3ee89c[_0x141cc3(0x1ca)]['find'](_0x5426b1=>_0x5426b1[_0x141cc3(0x1b0)]()===_0x3ee89c['importedSymbol']['toLowerCase']());_0x49d756?_0xb29c53[_0x141cc3(0x1f1)](_0x141cc3(0x177)+_0x49d756+_0x141cc3(0x1af)):_0xb29c53[_0x141cc3(0x1f1)]('\x20\x20\x20\x20\x20\x20💡\x20Fix:\x20Add\x20export\x20for\x20\x22'+_0x3ee89c['importedSymbol']+_0x141cc3(0x189));}}}else _0xb29c53['push'](_0x141cc3(0x190)),_0xb29c53[_0x141cc3(0x1f1)](_0x141cc3(0x1ae)+_0x3ee89c['importedFromFile']+_0x141cc3(0x1f7));});}));_0x22f1b7[_0x135aa5(0x205)]&&_0x22f1b7['circularDependencies']['length']>0x0&&(_0xb29c53[_0x135aa5(0x1f1)]('\x0a🔄\x20CIRCULAR\x20DEPENDENCIES'),_0xb29c53['push']('────────────────────────'),_0x22f1b7[_0x135aa5(0x205)]['forEach']((_0x590a99,_0x4c9931)=>{const _0x6bcde4=_0x135aa5;_0xb29c53[_0x6bcde4(0x1f1)]('\x0a\x20\x20Cycle\x20'+(_0x4c9931+0x1)+':'),_0x590a99['forEach']((_0x5e5341,_0x534e35)=>{const _0x30c14a=_0x6bcde4;_0x534e35<_0x590a99['length']-0x1&&_0xb29c53[_0x30c14a(0x1f1)]('\x20\x20\x20\x20'+_0x5e5341+_0x30c14a(0x1f6)+_0x590a99[_0x534e35+0x1]);}),_0xb29c53[_0x6bcde4(0x1f1)](_0x6bcde4(0x19f));}));_0x22f1b7[_0x135aa5(0x202)]&&Object[_0x135aa5(0x1a8)](_0x22f1b7[_0x135aa5(0x202)])['length']>0x0&&(_0xb29c53['push'](_0x135aa5(0x214)),_0xb29c53[_0x135aa5(0x1f1)](_0x135aa5(0x1c9)),Object[_0x135aa5(0x212)](_0x22f1b7[_0x135aa5(0x202)])[_0x135aa5(0x196)](0x0,0xa)['forEach'](([_0x4e4f01,exports])=>{const _0x2c501d=_0x135aa5;_0xb29c53['push']('\x0a📄\x20'+_0x4e4f01+':'),_0xb29c53['push']('\x20\x20\x20Unused:\x20'+exports[_0x2c501d(0x203)](',\x20'));}),_0xb29c53['push']('\n \uD83D\uDCA1 Note: These exports are not imported within this project'),_0xb29c53['push']('\x20\x20\x20\x20\x20\x20They\x20might\x20be\x20used\x20by\x20external\x20packages\x20or\x20could\x20be\x20removed'));_0xb29c53['push']('\x0a📋\x20RECOMMENDATIONS'),_0xb29c53[_0x135aa5(0x1f1)](_0x135aa5(0x1c6));const _0x305ffc=_0x22f1b7[_0x135aa5(0x1b9)]['length']+Object[_0x135aa5(0x1be)](_0x22f1b7[_0x135aa5(0x19d)])[_0x135aa5(0x1c4)]((_0x54c9b4,_0x5d30f6)=>_0x54c9b4+_0x5d30f6['length'],0x0);return _0x305ffc===0x0?_0xb29c53[_0x135aa5(0x1f1)]('\u2705 Your import/export structure looks good!'):(_0xb29c53['push'](_0x135aa5(0x1db)+_0x305ffc+_0x135aa5(0x175)),_0x22f1b7['fileNotFoundImports'][_0x135aa5(0x1e2)]>0x0&&_0xb29c53['push'](_0x135aa5(0x198)+_0x22f1b7['fileNotFoundImports']['length']+_0x135aa5(0x20b)),Object['keys'](_0x22f1b7[_0x135aa5(0x19d)])['length']>0x0&&_0xb29c53[_0x135aa5(0x1f1)](_0x135aa5(0x18e)+Object[_0x135aa5(0x1be)](_0x22f1b7['missingExports'])[_0x135aa5(0x1c4)]((_0x8eeed2,_0x36f3ad)=>_0x8eeed2+_0x36f3ad['length'],0x0)+_0x135aa5(0x1d2)),_0x22f1b7[_0x135aa5(0x205)]&&_0x22f1b7[_0x135aa5(0x205)][_0x135aa5(0x1e2)]>0x0&&_0xb29c53[_0x135aa5(0x1f1)](_0x135aa5(0x1c5)+_0x22f1b7[_0x135aa5(0x205)]['length']+'\x20circular\x20dependency\x20chain(s)')),_0xb29c53['join']('\x0a');}}class ImportExportAnalyzer{constructor(_0x2c31ef,_0x334e5b='.gitignore',_0x3fb010=null){const _0x2a4cf4=a0_0x382278;this['rootDir']=a0_0x374dc0['resolve'](_0x2c31ef),this[_0x2a4cf4(0x209)]=_0x334e5b,this['logger']=_0x3fb010,this[_0x2a4cf4(0x1c3)]=[...ANALYZER_CONFIG[_0x2a4cf4(0x18f)]],this['imports']=[],this['exports']=new Map(),this[_0x2a4cf4(0x1cf)]=new Map();}async[a0_0x382278(0x1da)](){const _0x37bd20=a0_0x382278;try{const _0x26438c=a0_0x374dc0[_0x37bd20(0x203)](this[_0x37bd20(0x1c7)],this[_0x37bd20(0x209)]),_0x5cc498=await a0_0x3f9b38[_0x37bd20(0x18c)](_0x26438c,'utf-8'),_0x5a3d06=_0x5cc498[_0x37bd20(0x1b1)]('\x0a')['map'](_0x518076=>_0x518076[_0x37bd20(0x18b)]())[_0x37bd20(0x181)](_0x2dec0c=>_0x2dec0c&&!_0x2dec0c['startsWith']('#'));this[_0x37bd20(0x1c3)]['push'](..._0x5a3d06),this['logger']?.['debug']('Loaded\x20ignore\x20patterns',{'count':_0x5a3d06[_0x37bd20(0x1e2)]});}catch{this['logger']?.['debug']('No ignore file found, using defaults');}}[a0_0x382278(0x1e8)](_0x554d7d){const _0x5b871b=a0_0x382278,_0x5e4d2b=a0_0x374dc0[_0x5b871b(0x1d3)](this['rootDir'],_0x554d7d);return this['ignorePatterns'][_0x5b871b(0x1ee)](_0x38951b=>{const _0x41b162=_0x5b871b;if(_0x38951b['includes']('*')){const _0x473aeb=new RegExp(_0x38951b['replace'](/\*/g,'.*'));return _0x473aeb['test'](_0x5e4d2b)||_0x473aeb['test'](a0_0x374dc0[_0x41b162(0x1a9)](_0x554d7d));}return _0x5e4d2b['includes'](_0x38951b)||a0_0x374dc0['basename'](_0x554d7d)===_0x38951b;});}async['getAllFiles'](_0x35a342){const _0x29b276=a0_0x382278,_0x1a5d4d=[],_0x2bcabd=async _0x3a2bbe=>{const _0x4c2998=a0_0x4ea8;try{const _0x59fb4a=await a0_0x3f9b38['readdir'](_0x3a2bbe,{'withFileTypes':!![]});for(const _0x214f21 of _0x59fb4a){const _0x50c278=a0_0x374dc0['join'](_0x3a2bbe,_0x214f21['name']);if(this[_0x4c2998(0x1e8)](_0x50c278))continue;if(_0x214f21[_0x4c2998(0x1b4)]())await _0x2bcabd(_0x50c278);else{if(_0x214f21['isFile']()){const _0x4c6fcb=a0_0x374dc0[_0x4c2998(0x1fb)](_0x214f21['name']);ANALYZER_CONFIG[_0x4c2998(0x1e1)]['includes'](_0x4c6fcb)&&_0x1a5d4d[_0x4c2998(0x1f1)](_0x50c278);}}}}catch(_0x4d9283){this['logger']?.['warn'](_0x4c2998(0x1bd),{'dir':_0x3a2bbe,'error':_0x4d9283['message']});}};await _0x2bcabd(_0x35a342);if(_0x1a5d4d['length']>ANALYZER_CONFIG[_0x29b276(0x17b)]){this['logger']?.['warn']('File\x20count\x20exceeds\x20limit:\x20'+_0x1a5d4d[_0x29b276(0x1e2)]+_0x29b276(0x1c2)+ANALYZER_CONFIG[_0x29b276(0x17b)]);throw new Error('Too\x20many\x20files\x20to\x20analyze:\x20'+_0x1a5d4d[_0x29b276(0x1e2)]+_0x29b276(0x185)+ANALYZER_CONFIG['MAX_FILES']+')');}return _0x1a5d4d;}async[a0_0x382278(0x1c1)](_0xddf1c9,_0xfeec13){const _0x4a075e=a0_0x382278,imports=[],_0x41aeac=_0xddf1c9[_0x4a075e(0x1b1)]('\x0a'),_0x316a61=this[_0x4a075e(0x1bc)](_0xfeec13);!this['dependencies'][_0x4a075e(0x1f9)](_0x316a61)&&this['dependencies'][_0x4a075e(0x1d8)](_0x316a61,new Set());for(let _0x3fc1fa=0x0;_0x3fc1fa<_0x41aeac[_0x4a075e(0x1e2)];_0x3fc1fa++){const _0x44f9e8=_0x41aeac[_0x3fc1fa]['trim']();if(_0x44f9e8[_0x4a075e(0x18d)]('//')||_0x44f9e8['startsWith']('/*'))continue;let _0x56253a=_0x44f9e8,_0x347ea9=_0x3fc1fa;while(!_0x56253a[_0x4a075e(0x197)](';')&&!_0x56253a['match'](/from\s+['"`][^'"`]+['"`]/)&&_0x347ea9<_0x41aeac[_0x4a075e(0x1e2)]-0x1){_0x347ea9++;const _0x100c67=_0x41aeac[_0x347ea9][_0x4a075e(0x18b)]();if(_0x100c67[_0x4a075e(0x18d)]('//')||_0x100c67[_0x4a075e(0x18d)]('/*'))continue;_0x56253a+='\x20'+_0x100c67;}const importRegex=/import\s+(?:(?:\{([^}]+)\})|(?:([^,\s]+)(?:\s*,\s*\{([^}]+)\})?)|(?:\*\s+as\s+([^,\s]+)))\s+from\s+['"`]([^'"`]+)['"`]/g;let _0x5a0c24;while((_0x5a0c24=importRegex['exec'](_0x56253a))!==null){const [,_0xc0254d,defaultImport,_0x50f031,_0x4a9f80,_0x37664a]=_0x5a0c24,_0x59dc4b=await this[_0x4a075e(0x1ed)](_0x37664a,_0xfeec13);!_0x59dc4b['isExternal']&&_0x59dc4b['exists']&&this[_0x4a075e(0x1cf)]['get'](_0x316a61)[_0x4a075e(0x180)](_0x59dc4b['path']);defaultImport&&imports['push']({'importingFile':_0x316a61,'importedSymbol':defaultImport[_0x4a075e(0x18b)](),'importedFromFile':_0x59dc4b['path'],'fileExists':_0x59dc4b[_0x4a075e(0x1a6)],'isExternal':_0x59dc4b['isExternal']||![],'isDefault':!![]});_0x4a9f80&&imports[_0x4a075e(0x1f1)]({'importingFile':_0x316a61,'importedSymbol':_0x4a9f80['trim'](),'importedFromFile':_0x59dc4b['path'],'fileExists':_0x59dc4b[_0x4a075e(0x1a6)],'isExternal':_0x59dc4b[_0x4a075e(0x1f2)]||![],'isNamespace':!![]});const _0x2bcf89=[_0xc0254d,_0x50f031][_0x4a075e(0x181)](Boolean)['join'](',');if(_0x2bcf89){const _0x5a23af=_0x2bcf89[_0x4a075e(0x1b1)](',')['map'](_0x19b2c8=>{const _0x155112=_0x4a075e,_0x405d88=_0x19b2c8[_0x155112(0x18b)]()['split'](/\s+as\s+/);return _0x405d88[0x0]['trim']();});_0x5a23af[_0x4a075e(0x1bf)](_0xa69998=>{_0xa69998&&imports['push']({'importingFile':_0x316a61,'importedSymbol':_0xa69998,'importedFromFile':_0x59dc4b['path'],'fileExists':_0x59dc4b['exists'],'isExternal':_0x59dc4b['isExternal']||![],'isDefault':![]});});}}const requireRegex=/(?:const|let|var)\s+(?:\{([^}]+)\}|([^=\s]+))\s*=\s*require\(['"`]([^'"`]+)['"`]\)/g;while((_0x5a0c24=requireRegex[_0x4a075e(0x1f3)](_0x56253a))!==null){const [,_0xaf9730,_0x42e2dc,_0x2a37a0]=_0x5a0c24,_0x14529a=await this['resolveImportPath'](_0x2a37a0,_0xfeec13);!_0x14529a['isExternal']&&_0x14529a[_0x4a075e(0x1a6)]&&this['dependencies']['get'](_0x316a61)['add'](_0x14529a[_0x4a075e(0x17e)]);if(_0xaf9730){const _0x20cb27=_0xaf9730[_0x4a075e(0x1b1)](',')[_0x4a075e(0x1d6)](_0x51cde8=>_0x51cde8['trim']()[_0x4a075e(0x1b1)](':')[0x0]['trim']());_0x20cb27['forEach'](_0xde040=>{const _0x3635f7=_0x4a075e;_0xde040&&imports[_0x3635f7(0x1f1)]({'importingFile':_0x316a61,'importedSymbol':_0xde040,'importedFromFile':_0x14529a['path'],'fileExists':_0x14529a['exists'],'isExternal':_0x14529a['isExternal']||![],'isDefault':![]});});}else _0x42e2dc&&imports[_0x4a075e(0x1f1)]({'importingFile':_0x316a61,'importedSymbol':_0x42e2dc[_0x4a075e(0x18b)](),'importedFromFile':_0x14529a['path'],'fileExists':_0x14529a[_0x4a075e(0x1a6)],'isExternal':_0x14529a['isExternal']||![],'isDefault':!![]});}_0x3fc1fa=_0x347ea9;}return imports;}[a0_0x382278(0x1ab)](_0x50e83f){const _0x397890=a0_0x382278,exports=new Set(),_0x2259af=_0x50e83f[_0x397890(0x1b1)]('\x0a');for(const _0x826db6 of _0x2259af){const _0x357425=_0x826db6['trim']();if(_0x357425[_0x397890(0x18d)]('//')||_0x357425[_0x397890(0x18d)]('/*'))continue;/export\s+default\s+/[_0x397890(0x1fe)](_0x357425)&&exports['add']('default');const _0x23a34e=_0x357425[_0x397890(0x195)](/export\s+\{([^}]+)\}/);if(_0x23a34e){const _0x3e4366=_0x23a34e[0x1][_0x397890(0x1b1)](',')[_0x397890(0x1d6)](_0x106beb=>{const _0x207f8d=_0x397890,_0x3c1f7b=_0x106beb['trim']()[_0x207f8d(0x1b1)](/\s+as\s+/);return _0x3c1f7b[_0x3c1f7b[_0x207f8d(0x1e2)]-0x1]['trim']();});_0x3e4366[_0x397890(0x1bf)](_0x4aa775=>exports['add'](_0x4aa775));}const _0x56aed4=_0x357425[_0x397890(0x195)](/export\s+(?:const|let|var|function|class|async\s+function)\s+([^=\s(]+)/);_0x56aed4&&exports[_0x397890(0x180)](_0x56aed4[0x1]);const exportFromMatch=_0x357425['match'](/export\s+\{([^}]+)\}\s+from/);if(exportFromMatch){const _0x124105=exportFromMatch[0x1]['split'](',')[_0x397890(0x1d6)](_0x34b3c7=>{const _0x472310=_0x397890,_0x241595=_0x34b3c7['trim']()[_0x472310(0x1b1)](/\s+as\s+/);return _0x241595[_0x241595['length']-0x1]['trim']();});_0x124105['forEach'](_0x183ba1=>exports['add'](_0x183ba1));}/export\s+\*\s+from/[_0x397890(0x1fe)](_0x357425)&&exports['add']('*');const moduleExportsMatch=_0x357425[_0x397890(0x195)](/module\.exports\s*=\s*\{([^}]+)\}/);if(moduleExportsMatch){const _0x8e6288=moduleExportsMatch[0x1]['split'](',')['map'](_0x4ba506=>{const _0x51b9eb=_0x4ba506['trim']()['split'](':');return _0x51b9eb[0x0]['trim']();});_0x8e6288[_0x397890(0x1bf)](_0x4cfd9c=>exports[_0x397890(0x180)](_0x4cfd9c));}/module\.exports\s*=\s*[^{]/['test'](_0x357425)&&exports[_0x397890(0x180)]('default');const moduleExportsPropMatch=_0x357425[_0x397890(0x195)](/module\.exports\.([^=\s]+)\s*=/);moduleExportsPropMatch&&exports[_0x397890(0x180)](moduleExportsPropMatch[0x1]);const exportsPropMatch=_0x357425[_0x397890(0x195)](/exports\.([^=\s]+)\s*=/);exportsPropMatch&&exports[_0x397890(0x180)](exportsPropMatch[0x1]);}return exports;}async['resolveImportPath'](importPath,_0x5ee73c){const _0x21be19=a0_0x382278;if(importPath['startsWith']('.')){const _0x306a1a=a0_0x374dc0[_0x21be19(0x1e9)](_0x5ee73c),_0x23d840=a0_0x374dc0[_0x21be19(0x1e5)](_0x306a1a,importPath);if(a0_0x374dc0[_0x21be19(0x1fb)](importPath))try{const _0x584934=await a0_0x3f9b38[_0x21be19(0x1f8)](_0x23d840);if(_0x584934[_0x21be19(0x18a)]())return{'path':this[_0x21be19(0x1bc)](_0x23d840),'exists':!![]};}catch{}const _0x3867b9=['',_0x21be19(0x17a),_0x21be19(0x200),'.ts',_0x21be19(0x1b5),'.tsx',_0x21be19(0x1cb),'/index.ts','/index.jsx',_0x21be19(0x19a)];for(const _0x50a02a of _0x3867b9){const _0x4df4db=_0x23d840+_0x50a02a;try{const _0x5eb45e=await a0_0x3f9b38[_0x21be19(0x1f8)](_0x4df4db);if(_0x5eb45e[_0x21be19(0x18a)]())return{'path':this['getRelativePath'](_0x4df4db),'exists':!![]};}catch{}}return{'path':this['getRelativePath'](_0x23d840),'exists':![]};}return{'path':importPath,'exists':!![],'isExternal':!![]};}[a0_0x382278(0x1bc)](_0x1adc9c){const _0x198366=a0_0x382278;return a0_0x374dc0['relative'](this['rootDir'],_0x1adc9c)[_0x198366(0x182)](/\\/g,'/');}[a0_0x382278(0x204)](){const _0x3c0367=a0_0x382278,_0x3c0e1c=[],_0x578503=new Set(),_0xc9ffe9=new Set(),_0x489aec=(_0x1019b2,_0xc4eda6=[])=>{const _0x2e451d=a0_0x4ea8;if(_0xc9ffe9['has'](_0x1019b2)){const _0x452bfa=_0xc4eda6['indexOf'](_0x1019b2);_0x452bfa!==-0x1&&_0x3c0e1c['push']([..._0xc4eda6['slice'](_0x452bfa),_0x1019b2]);return;}if(_0x578503[_0x2e451d(0x1f9)](_0x1019b2))return;_0x578503[_0x2e451d(0x180)](_0x1019b2),_0xc9ffe9[_0x2e451d(0x180)](_0x1019b2),_0xc4eda6[_0x2e451d(0x1f1)](_0x1019b2);const _0x952d0c=this['dependencies']['get'](_0x1019b2)||new Set();for(const _0xd87a0 of _0x952d0c){_0x489aec(_0xd87a0,[..._0xc4eda6]);}_0xc9ffe9[_0x2e451d(0x206)](_0x1019b2);};for(const _0x2a6928 of this[_0x3c0367(0x1cf)][_0x3c0367(0x1a8)]()){!_0x578503[_0x3c0367(0x1f9)](_0x2a6928)&&_0x489aec(_0x2a6928);}return _0x3c0e1c;}['findUnusedExports'](){const _0x42a3c3=a0_0x382278,_0x2713e6=new Map();for(const _0x14736f of this[_0x42a3c3(0x1ea)]){!_0x14736f[_0x42a3c3(0x1f2)]&&(!_0x2713e6['has'](_0x14736f[_0x42a3c3(0x1ec)])&&_0x2713e6['set'](_0x14736f['importedFromFile'],new Set()),_0x2713e6['get'](_0x14736f[_0x42a3c3(0x1ec)])['add'](_0x14736f[_0x42a3c3(0x1e3)]));}const _0x1a51d1={};for(const [_0x49cb4e,exports]of this['exports'][_0x42a3c3(0x212)]()){const _0x27328d=_0x2713e6[_0x42a3c3(0x1d4)](_0x49cb4e)||new Set(),_0x3885fe=Array['from'](exports)['filter'](_0x25c528=>!_0x27328d[_0x42a3c3(0x1f9)](_0x25c528)&&_0x25c528!=='*');_0x3885fe['length']>0x0&&(_0x1a51d1[_0x49cb4e]=_0x3885fe);}return _0x1a51d1;}async[a0_0x382278(0x201)](_0x55ddc4=a0_0x382278(0x1f4)){const _0xfe5e94=a0_0x382278;this[_0xfe5e94(0x1b3)]?.['info']('Starting import analysis',{'mode':_0x55ddc4,'rootDir':this['rootDir']}),await this[_0xfe5e94(0x1da)]();const _0x2dc7d9=await this['getAllFiles'](this['rootDir']);this['logger']?.['info']('Found\x20files',{'count':_0x2dc7d9['length']});for(const _0x39e9ab of _0x2dc7d9){try{const _0x2ffe50=await a0_0x3f9b38['readFile'](_0x39e9ab,'utf-8'),_0x202b6c=this[_0xfe5e94(0x1bc)](_0x39e9ab),_0x2c2cca=await this[_0xfe5e94(0x1c1)](_0x2ffe50,_0x39e9ab);this[_0xfe5e94(0x1ea)][_0xfe5e94(0x1f1)](..._0x2c2cca);const _0x406d99=this['parseExports'](_0x2ffe50);this[_0xfe5e94(0x213)][_0xfe5e94(0x1d8)](_0x202b6c,_0x406d99);}catch(_0x3e1dbf){this['logger']?.[_0xfe5e94(0x1b8)](_0xfe5e94(0x1df),{'file':_0x39e9ab,'error':_0x3e1dbf['message']});}}this['logger']?.['info'](_0xfe5e94(0x191),{'imports':this['imports']['length'],'exports':this['exports']['size']});const _0x83e5bf={'summary':{'totalFiles':_0x2dc7d9['length'],'totalImports':this[_0xfe5e94(0x1ea)]['length'],'totalExports':Array['from'](this[_0xfe5e94(0x213)]['values']())[_0xfe5e94(0x1c4)]((_0x1b7f16,exports)=>_0x1b7f16+exports['size'],0x0)},'missingExports':{},'missingFiles':{},'fileNotFoundImports':[]};for(const importEntry of this['imports']){const {importingFile:importingFile,importedSymbol:importedSymbol,importedFromFile:importedFromFile,isDefault:_0x226349,isNamespace:_0x282a5a,fileExists:_0x52958a,isExternal:_0x45d820}=importEntry;if(!_0x52958a&&!_0x45d820){_0x83e5bf['fileNotFoundImports']['push']({'importingFile':importingFile,'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'isDefault':_0x226349||![],'isNamespace':_0x282a5a||![]});!_0x83e5bf[_0xfe5e94(0x1d1)][importingFile]&&(_0x83e5bf[_0xfe5e94(0x1d1)][importingFile]=[]);_0x83e5bf['missingFiles'][importingFile][_0xfe5e94(0x1f1)]({'missingFile':importedFromFile,'importedSymbol':importedSymbol,'isDefault':_0x226349||![],'isNamespace':_0x282a5a||![]});continue;}if(_0x45d820)continue;const exportingFileExports=this['exports']['get'](importedFromFile);let _0x32d6be=![];if(exportingFileExports){if(_0x282a5a)_0x32d6be=exportingFileExports['size']>0x0;else _0x226349?_0x32d6be=exportingFileExports[_0xfe5e94(0x1f9)]('default'):_0x32d6be=exportingFileExports[_0xfe5e94(0x1f9)](importedSymbol)||exportingFileExports['has']('*');}!_0x32d6be&&(!_0x83e5bf['missingExports'][importingFile]&&(_0x83e5bf['missingExports'][importingFile]=[]),_0x83e5bf['missingExports'][importingFile]['push']({'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'availableExports':exportingFileExports?Array[_0xfe5e94(0x1c8)](exportingFileExports):[],'isDefault':_0x226349||![],'isNamespace':_0x282a5a||![]}));}return(_0x55ddc4===_0xfe5e94(0x1f4)||_0x55ddc4==='fix')&&(this['logger']?.[_0xfe5e94(0x211)]('Running\x20full\x20analysis'),_0x83e5bf['circularDependencies']=this['findCircularDependencies'](),_0x83e5bf['unusedExports']=this['findUnusedExports']()),this[_0xfe5e94(0x1b3)]?.[_0xfe5e94(0x211)]('Analysis\x20complete',{'missingFiles':_0x83e5bf[_0xfe5e94(0x1b9)]['length'],'missingExports':Object['keys'](_0x83e5bf['missingExports'])[_0xfe5e94(0x1e2)]}),_0x83e5bf;}}export default ImportAnalyzerTool;
1
+ const a0_0x48a07b=a0_0x4203;(function(_0x1febcd,_0x52f88e){const _0xf65e04=a0_0x4203,_0x645275=_0x1febcd();while(!![]){try{const _0x6393e2=parseInt(_0xf65e04(0xd2))/0x1+parseInt(_0xf65e04(0xb5))/0x2*(-parseInt(_0xf65e04(0x12f))/0x3)+-parseInt(_0xf65e04(0x103))/0x4+parseInt(_0xf65e04(0x106))/0x5+-parseInt(_0xf65e04(0xc0))/0x6+-parseInt(_0xf65e04(0x114))/0x7*(-parseInt(_0xf65e04(0xf0))/0x8)+-parseInt(_0xf65e04(0xe8))/0x9;if(_0x6393e2===_0x52f88e)break;else _0x645275['push'](_0x645275['shift']());}catch(_0x141cca){_0x645275['push'](_0x645275['shift']());}}}(a0_0x2c62,0x37a75));import{promises as a0_0x21ecb9}from'fs';import a0_0x17e15c from'path';import{BaseTool}from'./baseTool.js';import a0_0x295621 from'../utilities/tagParser.js';const ANALYZER_CONFIG={'DEFAULT_MODE':'full','VALID_MODES':['full',a0_0x48a07b(0xc5),'fix'],'DEFAULT_OUTPUT':'summary','VALID_OUTPUTS':['summary','detailed',a0_0x48a07b(0xf9)],'DEFAULT_IGNORE_FILE':'.gitignore','MAX_FILES':0x2710,'SUPPORTED_EXTENSIONS':[a0_0x48a07b(0xd9),a0_0x48a07b(0xf1),a0_0x48a07b(0xed),a0_0x48a07b(0xe3),a0_0x48a07b(0xa5)],'DEFAULT_IGNORE_PATTERNS':['node_modules',a0_0x48a07b(0x11f),a0_0x48a07b(0xaa),a0_0x48a07b(0xc2),'coverage'],'FILE_READ_TIMEOUT':0x1388};export class ImportAnalyzerTool extends BaseTool{constructor(_0x1720ff={},_0x1d3a26=null){super(_0x1720ff,_0x1d3a26),this['id']='import-analyzer';}[a0_0x48a07b(0x146)](){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**USAGE:**\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```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22import-analyzer\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22quick\x22\x20}\x0a}\x0a```\x0a\x0a2.\x20Full\x20analysis\x20with\x20detailed\x20report:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22import-analyzer\x22,\x0a\x20\x20\x22parameters\x22:\x20{\x20\x22mode\x22:\x20\x22full\x22,\x20\x22output\x22:\x20\x22detailed\x22\x20}\x0a}\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';}[a0_0x48a07b(0xee)](_0x27fb6b){const _0x16d61a=a0_0x48a07b;if(typeof _0x27fb6b===_0x16d61a(0x11e)&&_0x27fb6b!==null)return{'path':_0x27fb6b['path']||'.','mode':_0x27fb6b[_0x16d61a(0x10f)]||ANALYZER_CONFIG[_0x16d61a(0xd8)],'output':_0x27fb6b['output']||ANALYZER_CONFIG['DEFAULT_OUTPUT'],'ignoreFile':_0x27fb6b[_0x16d61a(0xdd)]||ANALYZER_CONFIG['DEFAULT_IGNORE_FILE']};if(typeof _0x27fb6b==='string'){const _0x26b00d=/<import-analyzer([^>]*)>([\s\S]*?)<\/import-analyzer>/i,_0x8cd108=_0x26b00d['exec'](_0x27fb6b);if(_0x8cd108){const _0x470e3e=_0x8cd108[0x1],_0x3b2bb9=_0x8cd108[0x2],_0x1a454c=/path=["']([^"']*)["']/i['exec'](_0x470e3e),_0x5939c2=/mode=["']([^"']*)["']/i['exec'](_0x470e3e),_0xb410bf=/output=["']([^"']*)["']/i[_0x16d61a(0xf5)](_0x470e3e),_0x5be3bd=/ignore-file=["']([^"']*)["']/i['exec'](_0x470e3e),_0x44e070=/<path>(.*?)<\/path>/i,_0x20d64d=_0x44e070['exec'](_0x3b2bb9),_0x2a753a=/<mode>(.*?)<\/mode>/i,_0x323a71=_0x2a753a[_0x16d61a(0xf5)](_0x3b2bb9),_0x75ca0e=/<output>(.*?)<\/output>/i,_0x5df639=_0x75ca0e[_0x16d61a(0xf5)](_0x3b2bb9),_0x4379bb=/<ignore-file>(.*?)<\/ignore-file>/i,_0x117086=_0x4379bb[_0x16d61a(0xf5)](_0x3b2bb9),_0x487f73=(_0x20d64d?_0x20d64d[0x1][_0x16d61a(0xc4)]():null)||(_0x1a454c?_0x1a454c[0x1]:'.'),_0x40158e=(_0x323a71?_0x323a71[0x1][_0x16d61a(0xc4)]():null)||(_0x5939c2?_0x5939c2[0x1]:ANALYZER_CONFIG['DEFAULT_MODE']),_0x25ebc0=(_0x5df639?_0x5df639[0x1][_0x16d61a(0xc4)]():null)||(_0xb410bf?_0xb410bf[0x1]:ANALYZER_CONFIG['DEFAULT_OUTPUT']),_0x582882=(_0x117086?_0x117086[0x1]['trim']():null)||(_0x5be3bd?_0x5be3bd[0x1]:ANALYZER_CONFIG[_0x16d61a(0x108)]);return{'path':_0x487f73,'mode':_0x40158e,'output':_0x25ebc0,'ignoreFile':_0x582882};}try{const _0x707f83=a0_0x295621['parseTags'](_0x27fb6b,'analyze');if(_0x707f83&&_0x707f83['length']>0x0){const _0x2321df=_0x707f83[0x0];return{'path':_0x2321df[_0x16d61a(0x148)]['path']||'.','mode':_0x2321df[_0x16d61a(0x148)]['mode']||ANALYZER_CONFIG[_0x16d61a(0xd8)],'output':_0x2321df[_0x16d61a(0x148)][_0x16d61a(0xa3)]||ANALYZER_CONFIG[_0x16d61a(0x141)],'ignoreFile':_0x2321df['attributes'][_0x16d61a(0xd3)]||ANALYZER_CONFIG[_0x16d61a(0x108)]};}}catch(_0x29b257){}throw new Error('Invalid import-analyzer format. Use <import-analyzer> tags or JSON format.');}throw new Error(_0x16d61a(0x132));}['_validateParameters'](_0x599af1){const _0x4f1203=a0_0x48a07b;if(!_0x599af1||typeof _0x599af1!==_0x4f1203(0x11e))throw new Error(_0x4f1203(0xc6));if(_0x599af1[_0x4f1203(0xc7)]&&typeof _0x599af1['path']!==_0x4f1203(0x12c))throw new Error(_0x4f1203(0x143));if(_0x599af1[_0x4f1203(0x10f)]&&!ANALYZER_CONFIG['VALID_MODES'][_0x4f1203(0xa6)](_0x599af1[_0x4f1203(0x10f)]))throw new Error(_0x4f1203(0xfb)+_0x599af1['mode']+_0x4f1203(0x127)+ANALYZER_CONFIG['VALID_MODES'][_0x4f1203(0xbd)](',\x20'));if(_0x599af1[_0x4f1203(0xa3)]&&!ANALYZER_CONFIG['VALID_OUTPUTS'][_0x4f1203(0xa6)](_0x599af1['output']))throw new Error('Invalid\x20output:\x20'+_0x599af1['output']+_0x4f1203(0x127)+ANALYZER_CONFIG['VALID_OUTPUTS']['join'](',\x20'));if(_0x599af1['ignoreFile']&&typeof _0x599af1['ignoreFile']!=='string')throw new Error(_0x4f1203(0x104));}['_resolveAndValidatePath'](_0x42a1b9,_0x4c6e8d){const _0x371f8b=a0_0x48a07b,{projectDir:_0x4cd528,directoryAccess:_0x4f668a}=_0x4c6e8d;let _0x27dcf0=_0x4cd528||process['cwd']();_0x4f668a&&_0x4f668a['workingDirectory']&&(_0x27dcf0=_0x4f668a['workingDirectory']);const _0x9976c0=a0_0x17e15c[_0x371f8b(0x115)](_0x42a1b9)?a0_0x17e15c['normalize'](_0x42a1b9):a0_0x17e15c[_0x371f8b(0xb8)](a0_0x17e15c['join'](_0x27dcf0,_0x42a1b9)),_0x238e2f=a0_0x17e15c[_0x371f8b(0xb8)](_0x27dcf0);if(!_0x9976c0[_0x371f8b(0xca)](_0x238e2f))throw new Error(_0x371f8b(0x134)+_0x42a1b9+_0x371f8b(0x121));return _0x9976c0;}async[a0_0x48a07b(0x140)](_0x4a3a44,_0x1fccbc={}){const _0x4b940a=a0_0x48a07b;try{this['_validateParameters'](_0x4a3a44);const {path:_0x444f6f,mode:_0x198635,output:_0xcaa13b,ignoreFile:_0x11924f}=_0x4a3a44,{projectDir:_0x2cad63,agentId:_0x2e98ce,directoryAccess:_0x4e1915}=_0x1fccbc,_0x3af2c2=this[_0x4b940a(0x102)](_0x444f6f,_0x1fccbc);this['logger']?.['info']('Import\x20analyzer\x20executing',{'mode':_0x198635,'resolvedPath':_0x3af2c2,'output':_0xcaa13b,'agentId':_0x2e98ce});const _0x40b98f=[];_0x40b98f['push']('🔍\x20Analyzing\x20imports\x20in:\x20'+_0x3af2c2),_0x40b98f[_0x4b940a(0xb9)]('Mode:\x20'+_0x198635),_0x40b98f['push']('Output:\x20'+_0xcaa13b+'\x0a');try{await a0_0x21ecb9[_0x4b940a(0xb3)](_0x3af2c2);}catch{return{'success':![],'error':_0x4b940a(0xe4)+_0x3af2c2,'output':_0x40b98f['join']('\x0a')};}const _0x4ca40d=new ImportExportAnalyzer(_0x3af2c2,_0x11924f,this[_0x4b940a(0x10e)]),_0x39872a=await _0x4ca40d[_0x4b940a(0x113)](_0x198635);let _0x1a59c2;switch(_0xcaa13b){case _0x4b940a(0xf9):_0x1a59c2=JSON['stringify'](_0x39872a,null,0x2);break;case'detailed':_0x1a59c2=this[_0x4b940a(0x10b)](_0x39872a),_0x40b98f['push'](_0x1a59c2);break;case'summary':default:_0x1a59c2=this[_0x4b940a(0x125)](_0x39872a),_0x40b98f['push'](_0x1a59c2);break;}return{'success':!![],'mode':_0x198635,'message':'Import\x20analysis\x20completed','statistics':{'totalFiles':_0x39872a['summary']['totalFiles'],'totalImports':_0x39872a[_0x4b940a(0xa4)]['totalImports'],'totalExports':_0x39872a[_0x4b940a(0xa4)]['totalExports'],'issuesFound':_0x39872a[_0x4b940a(0x117)]['length']+Object[_0x4b940a(0x107)](_0x39872a[_0x4b940a(0x13b)])[_0x4b940a(0x11d)]((_0x10c54b,_0x5d3b08)=>_0x10c54b+_0x5d3b08[_0x4b940a(0xac)],0x0)},'output':_0xcaa13b===_0x4b940a(0xf9)?_0x1a59c2:_0x40b98f[_0x4b940a(0xbd)]('\x0a'),'results':_0x39872a};}catch(_0x344443){return this[_0x4b940a(0x10e)]?.[_0x4b940a(0x144)]('Import\x20analyzer\x20error:',_0x344443),{'success':![],'error':_0x344443['message'],'output':_0x344443[_0x4b940a(0x131)]};}}['_formatSummaryOutput'](_0x26d62e){const _0x188aca=a0_0x48a07b,_0x77afbf=[];_0x77afbf['push'](_0x188aca(0x135)),_0x77afbf['push'](_0x188aca(0xba)),_0x77afbf[_0x188aca(0xb9)](_0x188aca(0x110)+_0x26d62e['summary']['totalFiles']),_0x77afbf['push'](_0x188aca(0xda)+_0x26d62e[_0x188aca(0xa4)]['totalImports']),_0x77afbf['push'](_0x188aca(0x11b)+_0x26d62e[_0x188aca(0xa4)]['totalExports']+'\x0a');const _0x40843c=_0x26d62e[_0x188aca(0x117)][_0x188aca(0xac)],_0x4c86ac=Object['values'](_0x26d62e['missingExports'])['reduce']((_0x7e1b5b,_0x1f8376)=>_0x7e1b5b+_0x1f8376['length'],0x0),_0x1b2eab=_0x26d62e['circularDependencies']?_0x26d62e[_0x188aca(0x12d)]['length']:0x0;return _0x40843c>0x0&&_0x77afbf['push'](_0x188aca(0xef)+_0x40843c+_0x188aca(0xde)),_0x4c86ac>0x0&&_0x77afbf['push'](_0x188aca(0x100)+_0x4c86ac+'\x20symbols\x20not\x20exported\x20from\x20their\x20sources'),_0x1b2eab>0x0&&_0x77afbf['push']('🔄\x20Circular\x20dependencies:\x20'+_0x1b2eab+_0x188aca(0x116)),_0x40843c===0x0&&_0x4c86ac===0x0&&_0x1b2eab===0x0?_0x77afbf['push']('\u2705 No import/export issues detected!'):(_0x77afbf['push'](_0x188aca(0xff)),Object[_0x188aca(0xd0)](_0x26d62e[_0x188aca(0x10c)]||{})[_0x188aca(0xac)]>0x0&&(_0x77afbf[_0x188aca(0xb9)]('\x0a\x20\x20Missing\x20Files:'),Object['entries'](_0x26d62e[_0x188aca(0x10c)])[_0x188aca(0xf2)](0x0,0x3)['forEach'](([_0x181614,_0x5d804d])=>{const _0xd74d50=_0x188aca;_0x77afbf[_0xd74d50(0xb9)]('\x20\x20\x20\x20•\x20'+_0x181614+'\x20has\x20'+_0x5d804d['length']+'\x20broken\x20import(s)');})),Object['keys'](_0x26d62e['missingExports'])['length']>0x0&&(_0x77afbf['push'](_0x188aca(0xe7)),Object[_0x188aca(0xec)](_0x26d62e['missingExports'])['slice'](0x0,0x3)['forEach'](([_0x52a619,_0x52270a])=>{const _0x3d655f=_0x188aca;_0x77afbf[_0x3d655f(0xb9)](_0x3d655f(0xb2)+_0x52a619+'\x20imports\x20'+_0x52270a[_0x3d655f(0xac)]+_0x3d655f(0xa9));})),_0x77afbf['push']('\x0a💡\x20Run\x20with\x20output=\x22detailed\x22\x20for\x20complete\x20analysis\x20and\x20fix\x20suggestions')),_0x77afbf['join']('\x0a');}['_formatDetailedOutput'](_0x20e078){const _0xe76b49=a0_0x48a07b,_0x4f1fec=[];_0x4f1fec[_0xe76b49(0xb9)]('📊\x20Detailed\x20Import/Export\x20Analysis\x20Report'),_0x4f1fec[_0xe76b49(0xb9)]('=========================================\x0a'),_0x4f1fec[_0xe76b49(0xb9)]('📈\x20Statistics:'),_0x4f1fec['push'](_0xe76b49(0xf3)+_0x20e078[_0xe76b49(0xa4)]['totalFiles']),_0x4f1fec[_0xe76b49(0xb9)]('\x20\x20•\x20Total\x20imports:\x20'+_0x20e078['summary'][_0xe76b49(0xbe)]),_0x4f1fec[_0xe76b49(0xb9)]('\x20\x20•\x20Total\x20exports:\x20'+_0x20e078['summary']['totalExports']+'\x0a');if(_0x20e078['fileNotFoundImports'][_0xe76b49(0xac)]>0x0){_0x4f1fec['push'](_0xe76b49(0xd4)),_0x4f1fec[_0xe76b49(0xb9)]('─────────────────');const _0x40a043={};_0x20e078[_0xe76b49(0x117)]['forEach'](_0x3446dc=>{const _0x445998=_0xe76b49;!_0x40a043[_0x3446dc[_0x445998(0xf7)]]&&(_0x40a043[_0x3446dc['importingFile']]=[]),_0x40a043[_0x3446dc[_0x445998(0xf7)]]['push'](_0x3446dc);}),Object['entries'](_0x40a043)[_0xe76b49(0xd7)](([_0x3fdfa7,imports])=>{const _0x1d1035=_0xe76b49;_0x4f1fec['push']('\x0a📄\x20'+_0x3fdfa7+':'),imports[_0x1d1035(0xd7)](_0x1edadf=>{const _0xfbc218=_0x1d1035,importType=_0x1edadf['isDefault']?'default':_0x1edadf[_0xfbc218(0xdb)]?'namespace':_0xfbc218(0x136);_0x4f1fec[_0xfbc218(0xb9)](_0xfbc218(0xab)+_0x1edadf[_0xfbc218(0x13e)]),_0x4f1fec['push'](_0xfbc218(0xcd)+_0x1edadf['importedSymbol']+'\x20('+importType+')'),_0x4f1fec[_0xfbc218(0xb9)](_0xfbc218(0x12b));});});}Object['keys'](_0x20e078[_0xe76b49(0x13b)])[_0xe76b49(0xac)]>0x0&&(_0x4f1fec['push']('\x0a⚠️\x20\x20MISSING\x20EXPORTS'),_0x4f1fec['push'](_0xe76b49(0xdf)),Object[_0xe76b49(0xec)](_0x20e078['missingExports'])[_0xe76b49(0xd7)](([_0x35805e,_0x49541a])=>{const _0x5e0cba=_0xe76b49;_0x4f1fec[_0x5e0cba(0xb9)]('\x0a📄\x20'+_0x35805e+':'),_0x49541a[_0x5e0cba(0xd7)](_0x255fc8=>{const _0x38facc=_0x5e0cba,importType=_0x255fc8[_0x38facc(0x122)]?'default':_0x255fc8['isNamespace']?_0x38facc(0x109):_0x38facc(0x136);_0x4f1fec['push'](_0x38facc(0xae)+_0x255fc8['importedSymbol']+'\x22\x20('+importType+')'),_0x4f1fec['push'](_0x38facc(0x147)+_0x255fc8['importedFromFile']);if(_0x255fc8['availableExports'][_0x38facc(0xac)]>0x0){_0x4f1fec[_0x38facc(0xb9)]('\x20\x20\x20\x20\x20\x20📤\x20Available\x20exports:\x20'+_0x255fc8[_0x38facc(0x133)]['join'](',\x20'));if(_0x255fc8['isDefault']&&_0x255fc8['availableExports'][_0x38facc(0xa6)]('default'))_0x4f1fec[_0x38facc(0xb9)](_0x38facc(0xce));else{if(_0x255fc8[_0x38facc(0x122)]&&!_0x255fc8[_0x38facc(0x133)]['includes']('default'))_0x4f1fec['push'](_0x38facc(0xcf)+(_0x255fc8['availableExports'][0x0]||_0x38facc(0xfa))+'\x20}');else{const _0x3f4028=_0x255fc8[_0x38facc(0x133)]['find'](_0x38d48e=>_0x38d48e['toLowerCase']()===_0x255fc8[_0x38facc(0xf4)]['toLowerCase']());_0x3f4028?_0x4f1fec['push']('\x20\x20\x20\x20\x20\x20💡\x20Fix:\x20Did\x20you\x20mean\x20\x22'+_0x3f4028+_0x38facc(0xc3)):_0x4f1fec[_0x38facc(0xb9)](_0x38facc(0xb0)+_0x255fc8[_0x38facc(0xf4)]+'\x22\x20or\x20use\x20one\x20of\x20the\x20available\x20exports');}}}else _0x4f1fec[_0x38facc(0xb9)]('\x20\x20\x20\x20\x20\x20📤\x20No\x20exports\x20found\x20in\x20target\x20file'),_0x4f1fec['push']('\x20\x20\x20\x20\x20\x20💡\x20Fix:\x20Add\x20exports\x20to\x20'+_0x255fc8['importedFromFile']+'\x20or\x20check\x20if\x20it\x27s\x20the\x20correct\x20file');});}));_0x20e078[_0xe76b49(0x12d)]&&_0x20e078[_0xe76b49(0x12d)]['length']>0x0&&(_0x4f1fec['push'](_0xe76b49(0x128)),_0x4f1fec[_0xe76b49(0xb9)]('────────────────────────'),_0x20e078[_0xe76b49(0x12d)]['forEach']((_0x356d9b,_0x1d1a9e)=>{const _0x7255dc=_0xe76b49;_0x4f1fec[_0x7255dc(0xb9)](_0x7255dc(0xe0)+(_0x1d1a9e+0x1)+':'),_0x356d9b[_0x7255dc(0xd7)]((_0x4280e4,_0x1e5302)=>{const _0x358cc5=_0x7255dc;_0x1e5302<_0x356d9b['length']-0x1&&_0x4f1fec['push'](_0x358cc5(0xd5)+_0x4280e4+_0x358cc5(0xe5)+_0x356d9b[_0x1e5302+0x1]);}),_0x4f1fec[_0x7255dc(0xb9)](_0x7255dc(0xb4));}));_0x20e078['unusedExports']&&Object['keys'](_0x20e078['unusedExports'])['length']>0x0&&(_0x4f1fec['push'](_0xe76b49(0xaf)),_0x4f1fec[_0xe76b49(0xb9)](_0xe76b49(0xc8)),Object['entries'](_0x20e078['unusedExports'])['slice'](0x0,0xa)['forEach'](([_0x1ef6d7,exports])=>{const _0x5c2440=_0xe76b49;_0x4f1fec[_0x5c2440(0xb9)]('\x0a📄\x20'+_0x1ef6d7+':'),_0x4f1fec[_0x5c2440(0xb9)](_0x5c2440(0xcb)+exports[_0x5c2440(0xbd)](',\x20'));}),_0x4f1fec[_0xe76b49(0xb9)]('\n \uD83D\uDCA1 Note: These exports are not imported within this project'),_0x4f1fec[_0xe76b49(0xb9)]('\x20\x20\x20\x20\x20\x20They\x20might\x20be\x20used\x20by\x20external\x20packages\x20or\x20could\x20be\x20removed'));_0x4f1fec['push'](_0xe76b49(0x101)),_0x4f1fec[_0xe76b49(0xb9)](_0xe76b49(0xdf));const _0xcd4188=_0x20e078[_0xe76b49(0x117)]['length']+Object['values'](_0x20e078['missingExports'])['reduce']((_0x539a9c,_0x2c61c4)=>_0x539a9c+_0x2c61c4[_0xe76b49(0xac)],0x0);return _0xcd4188===0x0?_0x4f1fec['push']('\u2705 Your import/export structure looks good!'):(_0x4f1fec[_0xe76b49(0xb9)]('Found\x20'+_0xcd4188+_0xe76b49(0x11a)),_0x20e078[_0xe76b49(0x117)]['length']>0x0&&_0x4f1fec['push'](_0xe76b49(0xf6)+_0x20e078['fileNotFoundImports']['length']+'\x20missing\x20file\x20reference(s)'),Object[_0xe76b49(0xd0)](_0x20e078['missingExports'])[_0xe76b49(0xac)]>0x0&&_0x4f1fec['push'](_0xe76b49(0x145)+Object['values'](_0x20e078[_0xe76b49(0x13b)])[_0xe76b49(0x11d)]((_0x36254d,_0x400c4d)=>_0x36254d+_0x400c4d['length'],0x0)+_0xe76b49(0xc1)),_0x20e078['circularDependencies']&&_0x20e078['circularDependencies']['length']>0x0&&_0x4f1fec['push']('\x20\x203.\x20Refactor\x20'+_0x20e078[_0xe76b49(0x12d)][_0xe76b49(0xac)]+'\x20circular\x20dependency\x20chain(s)')),_0x4f1fec[_0xe76b49(0xbd)]('\x0a');}}class ImportExportAnalyzer{constructor(_0x18584a,_0x5e8bab='.gitignore',_0x3b0eaf=null){const _0x2639f7=a0_0x48a07b;this['rootDir']=a0_0x17e15c[_0x2639f7(0x13f)](_0x18584a),this['ignoreFile']=_0x5e8bab,this[_0x2639f7(0x10e)]=_0x3b0eaf,this[_0x2639f7(0xd6)]=[...ANALYZER_CONFIG['DEFAULT_IGNORE_PATTERNS']],this['imports']=[],this['exports']=new Map(),this['dependencies']=new Map();}async['loadIgnoreFile'](){const _0x294d5f=a0_0x48a07b;try{const _0x1862d4=a0_0x17e15c[_0x294d5f(0xbd)](this['rootDir'],this['ignoreFile']),_0x79528c=await a0_0x21ecb9['readFile'](_0x1862d4,'utf-8'),_0x1bd565=_0x79528c['split']('\x0a')['map'](_0x1473dd=>_0x1473dd['trim']())[_0x294d5f(0xad)](_0x422821=>_0x422821&&!_0x422821[_0x294d5f(0xca)]('#'));this['ignorePatterns'][_0x294d5f(0xb9)](..._0x1bd565),this[_0x294d5f(0x10e)]?.[_0x294d5f(0x10d)]('Loaded\x20ignore\x20patterns',{'count':_0x1bd565[_0x294d5f(0xac)]});}catch{this[_0x294d5f(0x10e)]?.['debug']('No ignore file found, using defaults');}}[a0_0x48a07b(0x130)](_0x301a9e){const _0x505c7b=a0_0x48a07b,_0x572bc4=a0_0x17e15c[_0x505c7b(0x111)](this[_0x505c7b(0x11c)],_0x301a9e);return this[_0x505c7b(0xd6)][_0x505c7b(0xcc)](_0x1f94c4=>{const _0x20a7e0=_0x505c7b;if(_0x1f94c4[_0x20a7e0(0xa6)]('*')){const _0x49b79e=new RegExp(_0x1f94c4[_0x20a7e0(0x14b)](/\*/g,'.*'));return _0x49b79e['test'](_0x572bc4)||_0x49b79e['test'](a0_0x17e15c['basename'](_0x301a9e));}return _0x572bc4['includes'](_0x1f94c4)||a0_0x17e15c[_0x20a7e0(0xfe)](_0x301a9e)===_0x1f94c4;});}async['getAllFiles'](_0x2ca53b){const _0x132723=a0_0x48a07b,_0x4b660c=[],_0x16c464=async _0x1cf839=>{const _0x27ece1=a0_0x4203;try{const _0x504e62=await a0_0x21ecb9[_0x27ece1(0xe9)](_0x1cf839,{'withFileTypes':!![]});for(const _0x435fae of _0x504e62){const _0x162c13=a0_0x17e15c[_0x27ece1(0xbd)](_0x1cf839,_0x435fae['name']);if(this[_0x27ece1(0x130)](_0x162c13))continue;if(_0x435fae['isDirectory']())await _0x16c464(_0x162c13);else{if(_0x435fae['isFile']()){const _0x4d37a=a0_0x17e15c[_0x27ece1(0x129)](_0x435fae['name']);ANALYZER_CONFIG['SUPPORTED_EXTENSIONS'][_0x27ece1(0xa6)](_0x4d37a)&&_0x4b660c[_0x27ece1(0xb9)](_0x162c13);}}}}catch(_0x41e660){this[_0x27ece1(0x10e)]?.[_0x27ece1(0xd1)](_0x27ece1(0x137),{'dir':_0x1cf839,'error':_0x41e660[_0x27ece1(0x131)]});}};await _0x16c464(_0x2ca53b);if(_0x4b660c['length']>ANALYZER_CONFIG[_0x132723(0xa8)]){this[_0x132723(0x10e)]?.[_0x132723(0xd1)]('File\x20count\x20exceeds\x20limit:\x20'+_0x4b660c[_0x132723(0xac)]+'\x20>\x20'+ANALYZER_CONFIG[_0x132723(0xa8)]);throw new Error('Too\x20many\x20files\x20to\x20analyze:\x20'+_0x4b660c[_0x132723(0xac)]+'\x20(max:\x20'+ANALYZER_CONFIG[_0x132723(0xa8)]+')');}return _0x4b660c;}async[a0_0x48a07b(0xb7)](_0xa64f20,_0x177c11){const _0x4a2c78=a0_0x48a07b,imports=[],_0x50b671=_0xa64f20['split']('\x0a'),_0x589ab7=this[_0x4a2c78(0xbc)](_0x177c11);!this[_0x4a2c78(0x105)]['has'](_0x589ab7)&&this['dependencies'][_0x4a2c78(0xf8)](_0x589ab7,new Set());for(let _0x531fdc=0x0;_0x531fdc<_0x50b671[_0x4a2c78(0xac)];_0x531fdc++){const _0x4fd822=_0x50b671[_0x531fdc][_0x4a2c78(0xc4)]();if(_0x4fd822[_0x4a2c78(0xca)]('//')||_0x4fd822[_0x4a2c78(0xca)]('/*'))continue;let _0x3f9cd5=_0x4fd822,_0x4716b2=_0x531fdc;while(!_0x3f9cd5['includes'](';')&&!_0x3f9cd5[_0x4a2c78(0x142)](/from\s+['"`][^'"`]+['"`]/)&&_0x4716b2<_0x50b671['length']-0x1){_0x4716b2++;const _0x52aa8d=_0x50b671[_0x4716b2][_0x4a2c78(0xc4)]();if(_0x52aa8d[_0x4a2c78(0xca)]('//')||_0x52aa8d[_0x4a2c78(0xca)]('/*'))continue;_0x3f9cd5+='\x20'+_0x52aa8d;}const importRegex=/import\s+(?:(?:\{([^}]+)\})|(?:([^,\s]+)(?:\s*,\s*\{([^}]+)\})?)|(?:\*\s+as\s+([^,\s]+)))\s+from\s+['"`]([^'"`]+)['"`]/g;let _0x777fb3;while((_0x777fb3=importRegex['exec'](_0x3f9cd5))!==null){const [,_0x1cde0b,defaultImport,_0x462bda,_0x8b32e3,_0x50f260]=_0x777fb3,_0x1e86ff=await this[_0x4a2c78(0xe6)](_0x50f260,_0x177c11);!_0x1e86ff['isExternal']&&_0x1e86ff[_0x4a2c78(0x14a)]&&this[_0x4a2c78(0x105)][_0x4a2c78(0x124)](_0x589ab7)['add'](_0x1e86ff['path']);defaultImport&&imports['push']({'importingFile':_0x589ab7,'importedSymbol':defaultImport['trim'](),'importedFromFile':_0x1e86ff['path'],'fileExists':_0x1e86ff['exists'],'isExternal':_0x1e86ff['isExternal']||![],'isDefault':!![]});_0x8b32e3&&imports[_0x4a2c78(0xb9)]({'importingFile':_0x589ab7,'importedSymbol':_0x8b32e3[_0x4a2c78(0xc4)](),'importedFromFile':_0x1e86ff['path'],'fileExists':_0x1e86ff['exists'],'isExternal':_0x1e86ff[_0x4a2c78(0xea)]||![],'isNamespace':!![]});const _0x48e17b=[_0x1cde0b,_0x462bda]['filter'](Boolean)['join'](',');if(_0x48e17b){const _0x3def6e=_0x48e17b[_0x4a2c78(0xfd)](',')['map'](_0x463571=>{const _0x4f354f=_0x4a2c78,_0x1006aa=_0x463571[_0x4f354f(0xc4)]()['split'](/\s+as\s+/);return _0x1006aa[0x0]['trim']();});_0x3def6e['forEach'](_0x19f956=>{const _0x54c367=_0x4a2c78;_0x19f956&&imports['push']({'importingFile':_0x589ab7,'importedSymbol':_0x19f956,'importedFromFile':_0x1e86ff['path'],'fileExists':_0x1e86ff[_0x54c367(0x14a)],'isExternal':_0x1e86ff[_0x54c367(0xea)]||![],'isDefault':![]});});}}const requireRegex=/(?:const|let|var)\s+(?:\{([^}]+)\}|([^=\s]+))\s*=\s*require\(['"`]([^'"`]+)['"`]\)/g;while((_0x777fb3=requireRegex[_0x4a2c78(0xf5)](_0x3f9cd5))!==null){const [,_0x5a9e88,_0x112a38,_0x77cbda]=_0x777fb3,_0xcd39c6=await this[_0x4a2c78(0xe6)](_0x77cbda,_0x177c11);!_0xcd39c6[_0x4a2c78(0xea)]&&_0xcd39c6['exists']&&this['dependencies'][_0x4a2c78(0x124)](_0x589ab7)['add'](_0xcd39c6['path']);if(_0x5a9e88){const _0x59707c=_0x5a9e88['split'](',')[_0x4a2c78(0xa7)](_0x35f9af=>_0x35f9af['trim']()['split'](':')[0x0]['trim']());_0x59707c['forEach'](_0x570fac=>{const _0x51de8f=_0x4a2c78;_0x570fac&&imports[_0x51de8f(0xb9)]({'importingFile':_0x589ab7,'importedSymbol':_0x570fac,'importedFromFile':_0xcd39c6[_0x51de8f(0xc7)],'fileExists':_0xcd39c6[_0x51de8f(0x14a)],'isExternal':_0xcd39c6['isExternal']||![],'isDefault':![]});});}else _0x112a38&&imports[_0x4a2c78(0xb9)]({'importingFile':_0x589ab7,'importedSymbol':_0x112a38[_0x4a2c78(0xc4)](),'importedFromFile':_0xcd39c6['path'],'fileExists':_0xcd39c6[_0x4a2c78(0x14a)],'isExternal':_0xcd39c6['isExternal']||![],'isDefault':!![]});}_0x531fdc=_0x4716b2;}return imports;}[a0_0x48a07b(0x139)](_0x1b1295){const _0x117f71=a0_0x48a07b,exports=new Set(),_0x161c0a=_0x1b1295[_0x117f71(0xfd)]('\x0a');for(const _0x3ceb6c of _0x161c0a){const _0xed0c71=_0x3ceb6c['trim']();if(_0xed0c71['startsWith']('//')||_0xed0c71[_0x117f71(0xca)]('/*'))continue;/export\s+default\s+/[_0x117f71(0x12a)](_0xed0c71)&&exports[_0x117f71(0x13a)]('default');const _0x3def7a=_0xed0c71['match'](/export\s+\{([^}]+)\}/);if(_0x3def7a){const _0x575955=_0x3def7a[0x1]['split'](',')['map'](_0x95332=>{const _0x391cb4=_0x117f71,_0xbd4773=_0x95332[_0x391cb4(0xc4)]()[_0x391cb4(0xfd)](/\s+as\s+/);return _0xbd4773[_0xbd4773[_0x391cb4(0xac)]-0x1]['trim']();});_0x575955['forEach'](_0x5e1226=>exports[_0x117f71(0x13a)](_0x5e1226));}const _0x5d080c=_0xed0c71[_0x117f71(0x142)](/export\s+(?:const|let|var|function|class|async\s+function)\s+([^=\s(]+)/);_0x5d080c&&exports[_0x117f71(0x13a)](_0x5d080c[0x1]);const exportFromMatch=_0xed0c71[_0x117f71(0x142)](/export\s+\{([^}]+)\}\s+from/);if(exportFromMatch){const _0x1cb9fa=exportFromMatch[0x1][_0x117f71(0xfd)](',')[_0x117f71(0xa7)](_0x5d2a68=>{const _0x562045=_0x117f71,_0x3aa657=_0x5d2a68[_0x562045(0xc4)]()['split'](/\s+as\s+/);return _0x3aa657[_0x3aa657[_0x562045(0xac)]-0x1]['trim']();});_0x1cb9fa['forEach'](_0x1fff4d=>exports['add'](_0x1fff4d));}/export\s+\*\s+from/[_0x117f71(0x12a)](_0xed0c71)&&exports['add']('*');const moduleExportsMatch=_0xed0c71[_0x117f71(0x142)](/module\.exports\s*=\s*\{([^}]+)\}/);if(moduleExportsMatch){const _0x36124d=moduleExportsMatch[0x1]['split'](',')['map'](_0x20c392=>{const _0x430fbe=_0x117f71,_0x2f1559=_0x20c392[_0x430fbe(0xc4)]()[_0x430fbe(0xfd)](':');return _0x2f1559[0x0][_0x430fbe(0xc4)]();});_0x36124d['forEach'](_0x25076d=>exports['add'](_0x25076d));}/module\.exports\s*=\s*[^{]/[_0x117f71(0x12a)](_0xed0c71)&&exports[_0x117f71(0x13a)]('default');const moduleExportsPropMatch=_0xed0c71['match'](/module\.exports\.([^=\s]+)\s*=/);moduleExportsPropMatch&&exports['add'](moduleExportsPropMatch[0x1]);const exportsPropMatch=_0xed0c71[_0x117f71(0x142)](/exports\.([^=\s]+)\s*=/);exportsPropMatch&&exports[_0x117f71(0x13a)](exportsPropMatch[0x1]);}return exports;}async[a0_0x48a07b(0xe6)](importPath,_0x5e6a90){const _0x10032d=a0_0x48a07b;if(importPath['startsWith']('.')){const _0x22dac5=a0_0x17e15c['dirname'](_0x5e6a90),_0x2d42b6=a0_0x17e15c['resolve'](_0x22dac5,importPath);if(a0_0x17e15c['extname'](importPath))try{const _0x3f88b0=await a0_0x21ecb9['stat'](_0x2d42b6);if(_0x3f88b0['isFile']())return{'path':this['getRelativePath'](_0x2d42b6),'exists':!![]};}catch{}const _0x14c7e5=['','.js',_0x10032d(0xf1),'.ts','.jsx',_0x10032d(0xa5),_0x10032d(0xfc),_0x10032d(0x10a),_0x10032d(0x120),_0x10032d(0xdc)];for(const _0x4cb4c3 of _0x14c7e5){const _0x29efa8=_0x2d42b6+_0x4cb4c3;try{const _0x555d28=await a0_0x21ecb9[_0x10032d(0x138)](_0x29efa8);if(_0x555d28['isFile']())return{'path':this['getRelativePath'](_0x29efa8),'exists':!![]};}catch{}}return{'path':this[_0x10032d(0xbc)](_0x2d42b6),'exists':![]};}return{'path':importPath,'exists':!![],'isExternal':!![]};}['getRelativePath'](_0x40e3cb){const _0x249ab8=a0_0x48a07b;return a0_0x17e15c[_0x249ab8(0x111)](this[_0x249ab8(0x11c)],_0x40e3cb)['replace'](/\\/g,'/');}[a0_0x48a07b(0x12e)](){const _0x26fc23=a0_0x48a07b,_0xfe1a20=[],_0x366350=new Set(),_0x4ceb79=new Set(),_0x32a6a6=(_0x5c88ca,_0x1b1b42=[])=>{const _0x1a93d4=a0_0x4203;if(_0x4ceb79['has'](_0x5c88ca)){const _0x5a9f0e=_0x1b1b42[_0x1a93d4(0x149)](_0x5c88ca);_0x5a9f0e!==-0x1&&_0xfe1a20['push']([..._0x1b1b42['slice'](_0x5a9f0e),_0x5c88ca]);return;}if(_0x366350['has'](_0x5c88ca))return;_0x366350['add'](_0x5c88ca),_0x4ceb79['add'](_0x5c88ca),_0x1b1b42['push'](_0x5c88ca);const _0x5ad675=this[_0x1a93d4(0x105)]['get'](_0x5c88ca)||new Set();for(const _0x1f98c6 of _0x5ad675){_0x32a6a6(_0x1f98c6,[..._0x1b1b42]);}_0x4ceb79[_0x1a93d4(0xc9)](_0x5c88ca);};for(const _0x1f8fb2 of this[_0x26fc23(0x105)]['keys']()){!_0x366350[_0x26fc23(0xb6)](_0x1f8fb2)&&_0x32a6a6(_0x1f8fb2);}return _0xfe1a20;}[a0_0x48a07b(0x118)](){const _0x27f2c9=a0_0x48a07b,_0x4846d1=new Map();for(const _0x248f2f of this[_0x27f2c9(0x13c)]){!_0x248f2f[_0x27f2c9(0xea)]&&(!_0x4846d1['has'](_0x248f2f[_0x27f2c9(0x13e)])&&_0x4846d1[_0x27f2c9(0xf8)](_0x248f2f[_0x27f2c9(0x13e)],new Set()),_0x4846d1[_0x27f2c9(0x124)](_0x248f2f[_0x27f2c9(0x13e)])[_0x27f2c9(0x13a)](_0x248f2f['importedSymbol']));}const _0x454be9={};for(const [_0x28fe55,exports]of this['exports'][_0x27f2c9(0xec)]()){const _0x418c9d=_0x4846d1['get'](_0x28fe55)||new Set(),_0x1408d3=Array[_0x27f2c9(0x123)](exports)['filter'](_0x15a253=>!_0x418c9d['has'](_0x15a253)&&_0x15a253!=='*');_0x1408d3[_0x27f2c9(0xac)]>0x0&&(_0x454be9[_0x28fe55]=_0x1408d3);}return _0x454be9;}async['analyze'](_0xd7b3=a0_0x48a07b(0x13d)){const _0x2727cc=a0_0x48a07b;this['logger']?.['info']('Starting import analysis',{'mode':_0xd7b3,'rootDir':this[_0x2727cc(0x11c)]}),await this[_0x2727cc(0xe2)]();const _0x246569=await this['getAllFiles'](this['rootDir']);this[_0x2727cc(0x10e)]?.[_0x2727cc(0xb1)](_0x2727cc(0x119),{'count':_0x246569[_0x2727cc(0xac)]});for(const _0x3d3412 of _0x246569){try{const _0xf9a409=await a0_0x21ecb9['readFile'](_0x3d3412,_0x2727cc(0x112)),_0x37fc8c=this['getRelativePath'](_0x3d3412),_0x44add7=await this['parseImports'](_0xf9a409,_0x3d3412);this['imports']['push'](..._0x44add7);const _0x2314e0=this['parseExports'](_0xf9a409);this['exports']['set'](_0x37fc8c,_0x2314e0);}catch(_0x4b90ea){this['logger']?.[_0x2727cc(0xd1)]('Error\x20parsing\x20file',{'file':_0x3d3412,'error':_0x4b90ea['message']});}}this['logger']?.['info'](_0x2727cc(0xbb),{'imports':this['imports']['length'],'exports':this[_0x2727cc(0xbf)][_0x2727cc(0xe1)]});const _0x3f59fc={'summary':{'totalFiles':_0x246569[_0x2727cc(0xac)],'totalImports':this[_0x2727cc(0x13c)][_0x2727cc(0xac)],'totalExports':Array[_0x2727cc(0x123)](this['exports']['values']())[_0x2727cc(0x11d)]((_0x3ae528,exports)=>_0x3ae528+exports['size'],0x0)},'missingExports':{},'missingFiles':{},'fileNotFoundImports':[]};for(const importEntry of this['imports']){const {importingFile:importingFile,importedSymbol:importedSymbol,importedFromFile:importedFromFile,isDefault:_0x501b5a,isNamespace:_0x500362,fileExists:_0x38d3c6,isExternal:_0x21e969}=importEntry;if(!_0x38d3c6&&!_0x21e969){_0x3f59fc['fileNotFoundImports']['push']({'importingFile':importingFile,'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'isDefault':_0x501b5a||![],'isNamespace':_0x500362||![]});!_0x3f59fc['missingFiles'][importingFile]&&(_0x3f59fc[_0x2727cc(0x10c)][importingFile]=[]);_0x3f59fc[_0x2727cc(0x10c)][importingFile]['push']({'missingFile':importedFromFile,'importedSymbol':importedSymbol,'isDefault':_0x501b5a||![],'isNamespace':_0x500362||![]});continue;}if(_0x21e969)continue;const exportingFileExports=this['exports'][_0x2727cc(0x124)](importedFromFile);let _0x52f278=![];if(exportingFileExports){if(_0x500362)_0x52f278=exportingFileExports[_0x2727cc(0xe1)]>0x0;else _0x501b5a?_0x52f278=exportingFileExports[_0x2727cc(0xb6)]('default'):_0x52f278=exportingFileExports[_0x2727cc(0xb6)](importedSymbol)||exportingFileExports[_0x2727cc(0xb6)]('*');}!_0x52f278&&(!_0x3f59fc['missingExports'][importingFile]&&(_0x3f59fc[_0x2727cc(0x13b)][importingFile]=[]),_0x3f59fc['missingExports'][importingFile]['push']({'importedSymbol':importedSymbol,'importedFromFile':importedFromFile,'availableExports':exportingFileExports?Array['from'](exportingFileExports):[],'isDefault':_0x501b5a||![],'isNamespace':_0x500362||![]}));}return(_0xd7b3==='full'||_0xd7b3==='fix')&&(this['logger']?.[_0x2727cc(0xb1)](_0x2727cc(0xeb)),_0x3f59fc['circularDependencies']=this[_0x2727cc(0x12e)](),_0x3f59fc['unusedExports']=this['findUnusedExports']()),this['logger']?.['info'](_0x2727cc(0x126),{'missingFiles':_0x3f59fc[_0x2727cc(0x117)][_0x2727cc(0xac)],'missingExports':Object['keys'](_0x3f59fc['missingExports'])['length']}),_0x3f59fc;}}function a0_0x4203(_0x16a778,_0xc98c72){_0x16a778=_0x16a778-0xa3;const _0x2c62e8=a0_0x2c62();let _0x4203d3=_0x2c62e8[_0x16a778];if(a0_0x4203['dbuPOT']===undefined){var _0x1724a3=function(_0x1c6466){const _0x59c255='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x21ecb9='',_0x17e15c='';for(let _0x295621=0x0,_0x1720ff,_0x1d3a26,_0x27fb6b=0x0;_0x1d3a26=_0x1c6466['charAt'](_0x27fb6b++);~_0x1d3a26&&(_0x1720ff=_0x295621%0x4?_0x1720ff*0x40+_0x1d3a26:_0x1d3a26,_0x295621++%0x4)?_0x21ecb9+=String['fromCharCode'](0xff&_0x1720ff>>(-0x2*_0x295621&0x6)):0x0){_0x1d3a26=_0x59c255['indexOf'](_0x1d3a26);}for(let _0x26b00d=0x0,_0x8cd108=_0x21ecb9['length'];_0x26b00d<_0x8cd108;_0x26b00d++){_0x17e15c+='%'+('00'+_0x21ecb9['charCodeAt'](_0x26b00d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x17e15c);};a0_0x4203['DzeWZS']=_0x1724a3,a0_0x4203['oqdSBY']={},a0_0x4203['dbuPOT']=!![];}const _0xfadadf=_0x2c62e8[0x0],_0xc4717d=_0x16a778+_0xfadadf,_0x112aaf=a0_0x4203['oqdSBY'][_0xc4717d];return!_0x112aaf?(_0x4203d3=a0_0x4203['DzeWZS'](_0x4203d3),a0_0x4203['oqdSBY'][_0xc4717d]=_0x4203d3):_0x4203d3=_0x112aaf,_0x4203d3;}function a0_0x2c62(){const _0x4d6751=['icaGiokaOIa','ywnJzxnZ','icaGipcFKQeGrML4oIbszwzHy3rVCIb0BYbICMvHAYb0AguGy2LYy3vSyxiGzgvWzw5Kzw5JEq','mJmWohjssvDVAG','AgfZ','CgfYC2vjBxbVCNrZ','BM9YBwfSAxPL','ChvZAa','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0k','ugfYC2vKigfSBcbMAwXLCW','z2v0uMvSyxrPDMvqyxrO','AM9PBG','Dg90ywXjBxbVCNrZ','zxHWB3j0CW','mZuXmJe2zhvVBhrY','ig1PC3nPBMCGzxHWB3j0khmP','yNvPBgq','iJ8GkgnHC2uGBwLZBwf0y2GP','DhjPBq','CxvPy2S','ugfYyw1LDgvYCYbTDxn0igjLigfUig9IAMvJDa','Cgf0Aa','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','zgvSzxrL','C3rHCNrZv2L0Aa','icaGvw51C2vKoIa','C29Tzq','icaGicaGvhj5Aw5NihrVigLTCg9YDdOG','icaGicaG8j+sOsbgAxG6ierLzMf1BhqGzxHWB3j0igv4Axn0CYWGy2HLy2SGAw1WB3j0ihn5BNrHEa','icaGicaG8j+sOsbgAxG6ie5VigrLzMf1BhqGzxHWB3j0lIbvC2uGBMfTzwqGAw1WB3j0oIb7ia','A2v5CW','D2fYBG','mtKWmduXy3nvsLjM','AwDUB3jLlwzPBgu','4P2mie1ju1njtKCGrKLmrvm','icaGia','AwDUB3jLugf0DgvYBNm','zM9YrwfJAa','revgqvvmvf9nt0rf','lMPZ','8j+tPsbuB3rHBcbPBxbVCNrZoIa','Axnoyw1LC3bHy2u','l2LUzgv4lNrZEa','AwDUB3jLrMLSzq','igLTCg9YDhmGCg9PBNrPBMCGDg8GBM9Ulwv4Axn0zw50igzPBgvZ','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa','cIaGq3LJBguG','C2L6zq','Bg9HzeLNBM9YzuzPBgu','lMPZEa','ugf0AcbKB2vZig5VDcbLEgLZDdOG','iokgKIa','CMvZB2X2zuLTCg9YDfbHDgG','cIaGtwLZC2LUzYbfEhbVCNrZoG','nduXndq1nhHlrKPrCG','CMvHzgrPCG','AxnfEhrLCM5HBa','uNvUBMLUzYbMDwXSigfUywX5C2LZ','zw50CMLLCW','lNrZ','CgfYC2vqyxjHBwv0zxjZ','4P2mie1PC3nPBMCGzMLSzxm6ia','ofnpr1rksq','lM1QCW','C2XPy2u','icdIGkiGrMLSzxmGyw5HBhL6zwq6ia','Aw1WB3j0zwrtEw1IB2W','zxHLyW','icaXlIbgAxGG','Aw1WB3j0Aw5NrMLSzq','C2v0','ANnVBG','C3LTyM9StMfTzq','sw52ywXPzcbTB2rLoIa','l2LUzgv4lMPZ','C3bSAxq','yMfZzw5HBwu','cVcFLi0Gvg9WieLZC3vLCYb0BYbgAxG6','4PQG77IpicbnAxnZAw5Nigv4Cg9YDhm6ia','cVcFK4SGuKvdt01nru5eqvrjt05t','x3jLC29SDMvbBMrwywXPzgf0zvbHDgG','mZi1ndG4z0DYzwrL','AwDUB3jLrMLSzsbTDxn0igjLigeGC3rYAw5N','zgvWzw5Kzw5JAwvZ','mJa5ntyZmfLfueLnwq','DMfSDwvZ','revgqvvmvf9jr05puKvFrKLmrq','BMfTzxnWywnL','l2LUzgv4lNrZ','x2zVCM1HDerLDgfPBgvKt3v0Chv0','BwLZC2LUz0zPBgvZ','zgvIDwC','Bg9Nz2vY','Bw9Kzq','8j+tGsbgAwXLCYbHBMfSExPLzdOG','CMvSyxrPDMu','DxrMltG','yw5HBhL6zq','mtGZmdeZnKjWBNLdwG','AxnbyNnVBhv0zq','ignPCMn1BgfYigrLCgvUzgvUy3KGy2HHAw5ZigrLDgvJDgvK','zMLSzu5VDezVDw5Ksw1WB3j0CW','zMLUzfvUDxnLzev4Cg9YDhm','rM91BMqGzMLSzxm','igLZC3vLkhmPihrOyxqGBMvLzcbHDhrLBNrPB246','8j+tPcbuB3rHBcbLEhbVCNrZoIa','CM9VDerPCG','CMvKDwnL','B2jQzwn0','lMDPDa','l2LUzgv4lMPZEa','ihjLC29SDMvZig91DhnPzguGD29YA2LUzYbKAxjLy3rVCNK','AxnezwzHDwX0','zNjVBq','z2v0','x2zVCM1HDfn1Bw1HCNLpDxrWDxq','qw5HBhLZAxmGy29TCgXLDgu','lIbnDxn0igjLig9UzsbVzJOG','cVcFLiqGq0Lsq1vmqviGrevqru5eru5dsuvt','zxH0BMfTzq','DgvZDa','icaGicaG8j+sOsbgAxG6ienOzwnRigLMigzPBguGzxHPC3rZig9YignVCNjLy3qGDgHLigLTCg9YDcbWyxrO','C3rYAw5N','y2LYy3vSyxjezxbLBMrLBMnPzxm','zMLUzenPCMn1BgfYrgvWzw5Kzw5JAwvZ','m0T2CKTksG','C2HVDwXKswDUB3jLrMLSzq','BwvZC2fNzq','sw52ywXPzcbWyxjHBwv0zxiGzM9YBwf0lIbfEhbLy3rLzcbZDhjPBMCGkfHntcKGB3iGB2jQzwn0icHku09oks4','yxzHAwXHyMXLrxHWB3j0CW','ugf0Acb0CMf2zxjZywWGzgv0zwn0zwq6ia','8j+tIIbjBxbVCNqVrxHWB3j0iefUywX5C2LZifn1Bw1HCNK','BMfTzwq','q2fUBM90ihjLywqGzgLYzwn0B3j5','C3rHDa','CgfYC2vfEhbVCNrZ','ywrK','BwLZC2LUz0v4Cg9YDhm','Aw1WB3j0CW','zNvSBa','Aw1WB3j0zwrgCM9TrMLSzq','CMvZB2X2zq','zxHLy3v0zq','revgqvvmvf9pvvrqvvq','Bwf0y2G','Cgf0AcbTDxn0igjLigeGC3rYAw5N','zxjYB3i','icaYlIbszxnVBhzLia','z2v0rgvZy3jPChrPB24','icaGicaGrNjVBsbMAwXLoIa','yxr0CMLIDxrLCW','Aw5KzxHpzG','zxHPC3rZ','CMvWBgfJzq','B3v0Chv0','C3vTBwfYEq','lNrZEa','Aw5JBhvKzxm','BwfW','tufyx0zjtevt','ig5VBI1LEgLZDgvUDcbZEw1IB2WOCYK','zgLZDa','icaG4PQG77Ipicbdyw5UB3qGzMLUzcbMAwXLoIa','BgvUz3rO','zMLSDgvY','icaG4P2mifn5BwjVBcbUB3qGzxHWB3j0zwq6ici','cVcFL5hVUi8GifbpvevoveLbteXzifvovvnfrcbfwfbpuLrt','icaGicaG8j+sOsbgAxG6iefKzcbLEhbVCNqGzM9Yici','Aw5MBW'];a0_0x2c62=function(){return _0x4d6751;};return a0_0x2c62();}export default ImportAnalyzerTool;
@@ -1 +1 @@
1
- const a0_0x1398f5=a0_0x3801;(function(_0x116c53,_0x1e526b){const _0x43916b=a0_0x3801,_0x29fdff=_0x116c53();while(!![]){try{const _0x3476cd=parseInt(_0x43916b(0x17f))/0x1+-parseInt(_0x43916b(0x16f))/0x2+-parseInt(_0x43916b(0x15f))/0x3+-parseInt(_0x43916b(0x162))/0x4*(parseInt(_0x43916b(0x154))/0x5)+parseInt(_0x43916b(0x185))/0x6*(parseInt(_0x43916b(0x17c))/0x7)+-parseInt(_0x43916b(0x183))/0x8+parseInt(_0x43916b(0x171))/0x9;if(_0x3476cd===_0x1e526b)break;else _0x29fdff['push'](_0x29fdff['shift']());}catch(_0x2740e8){_0x29fdff['push'](_0x29fdff['shift']());}}}(a0_0x19b1,0x40c7a));import{BaseTool}from'./baseTool.js';import a0_0xf0ea5a from'../utilities/tagParser.js';class JobDoneTool extends BaseTool{constructor(){const _0x18b046=a0_0x3801;super(),this['id']=_0x18b046(0x16c),this[_0x18b046(0x187)]='Job\x20Done',this[_0x18b046(0x153)]='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[_0x18b046(0x161)]=_0x18b046(0x160),this['capabilities']=['task-completion',_0x18b046(0x188)],this['requiresProject']=![],this['async']=![];}[a0_0x1398f5(0x17e)](){const _0x124f5e=a0_0x1398f5;return'\x0aJob\x20Done\x20Tool:\x20Signal\x20task\x20completion\x20in\x20autonomous\x20mode\x20and\x20exit\x20to\x20chat\x20mode.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Task\x20completion\x20summary\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20true,\x0a\x20\x20\x20\x20\x22details\x22:\x20\x22Optional\x20additional\x20details\x22\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a-\x20action:\x20Always\x20\x22complete\x22\x0a-\x20summary:\x20Clear\x20summary\x20of\x20what\x20was\x20accomplished\x20OR\x20what\x20prevented\x20completion\x20(required)\x0a-\x20success:\x20true\x20if\x20completed\x20successfully,\x20false\x20if\x20stuck/failed\x20(default:\x20true)\x0a-\x20details:\x20Optional\x20additional\x20information\x20about\x20the\x20task\x0a\x0aEXAMPLES:\x0a\x0a1.\x20Successful\x20completion:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Created\x205\x20song\x20files\x20successfully\x20with\x20lyrics\x20and\x20melodies\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20true\x0a\x20\x20}]\x0a}\x0a```\x0a\x0a2.\x20Unable\x20to\x20proceed:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Unable\x20to\x20proceed:\x20missing\x20API\x20credentials\x20for\x20the\x20service\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20false\x0a\x20\x20}]\x0a}\x0a```\x0a\x0a3.\x20Partial\x20completion:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Task\x20partially\x20complete:\x20implemented\x202\x20of\x203\x20requested\x20features\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20false,\x0a\x20\x20\x20\x20\x22details\x22:\x20\x22The\x20third\x20feature\x20requires\x20additional\x20dependencies\x20not\x20available\x22\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aWHEN\x20TO\x20USE:\x0a-\x20Call\x20when\x20you\x20have\x20SUCCESSFULLY\x20completed\x20the\x20assigned\x20task\x0a-\x20Call\x20if\x20you\x20are\x20STUCK\x20or\x20UNABLE\x20to\x20proceed\x20after\x20multiple\x20failed\x20attempts\x0a-\x20This\x20will\x20immediately\x20exit\x20autonomous\x20mode\x20and\x20return\x20control\x20to\x20the\x20user\x0a\x20\x20\x20\x20'[_0x124f5e(0x173)]();}['parseParameters'](_0x46392f){const _0x213cd4=a0_0x1398f5;try{const _0x561696=a0_0xf0ea5a[_0x213cd4(0x156)](_0x46392f,'summary'),_0x226701=a0_0xf0ea5a['extractContent'](_0x46392f,_0x213cd4(0x165)),_0x17f950=a0_0xf0ea5a['extractContent'](_0x46392f,'success');let _0x1ba39a='',_0x328790='',_0x314ed5=!![];return _0x561696['length']>0x0?(_0x1ba39a=_0x561696[0x0]['trim'](),_0x328790=_0x226701['length']>0x0?_0x226701[0x0]['trim']():'',_0x314ed5=_0x17f950[_0x213cd4(0x15c)]>0x0?_0x17f950[0x0][_0x213cd4(0x157)]()!=='false':!![]):_0x1ba39a=_0x46392f['trim']()||'Task\x20completed',{'actions':[{'action':_0x213cd4(0x176),'summary':_0x1ba39a,'success':_0x314ed5,'details':_0x328790||undefined}]};}catch(_0x3761b8){return{'actions':[{'action':'complete','summary':_0x46392f[_0x213cd4(0x173)]()||'Task\x20completed','success':!![]}]};}}[a0_0x1398f5(0x169)](){const _0x797531=a0_0x1398f5;return{'type':_0x797531(0x15e),'properties':{'actions':{'type':'array','items':{'type':_0x797531(0x15e),'properties':{'action':{'type':'string','enum':[_0x797531(0x176)],'description':'Mark\x20task\x20as\x20complete\x20-\x20always\x20use\x20\x22complete\x22'},'summary':{'type':'string','description':_0x797531(0x184)},'success':{'type':'boolean','default':!![],'description':_0x797531(0x17b)},'details':{'type':'string','description':'Optional:\x20Additional\x20details\x20about\x20what\x20was\x20done,\x20what\x20failed,\x20any\x20files\x20created,\x20or\x20next\x20steps\x20for\x20the\x20user'}},'required':[_0x797531(0x170),_0x797531(0x16a)],'additionalProperties':![]},'minItems':0x1,'maxItems':0x1}},'required':[_0x797531(0x179)],'additionalProperties':![]};}async['execute'](_0x3fc670,_0x18ee08={}){const _0x2098ab=a0_0x1398f5;try{const {actions:_0x23484e}=_0x3fc670;if(!_0x23484e||!Array[_0x2098ab(0x163)](_0x23484e)||_0x23484e[_0x2098ab(0x15c)]===0x0)throw new Error(_0x2098ab(0x16e));const _0xd99419=_0x23484e[0x0];if(_0xd99419[_0x2098ab(0x170)]!==_0x2098ab(0x176))throw new Error('Invalid\x20action.\x20Only\x20\x22complete\x22\x20is\x20supported');if(!_0xd99419['summary'])throw new Error('Completion\x20summary\x20is\x20required');const _0x51cb5c=_0x18ee08[_0x2098ab(0x16b)];let _0x24ee28='';if(_0x51cb5c&&_0x18ee08['toolsRegistry'])try{if(this['agentPool']){const _0xa6004f=await this[_0x2098ab(0x174)][_0x2098ab(0x16d)](_0x51cb5c);_0xa6004f&&(_0x24ee28=_0x2098ab(0x15b)+_0xa6004f['name']+'\x22');}}catch(_0x10a0b0){}const _0x2a65c3=_0x2098ab(0x158)+_0x24ee28+(_0xd99419['success']!==![]?_0x2098ab(0x182):'\x20with\x20issues')+_0x2098ab(0x17a)+_0xd99419['summary']+(_0xd99419[_0x2098ab(0x165)]?_0x2098ab(0x159)+_0xd99419[_0x2098ab(0x165)]:'')+'\x0a\x0a*Autonomous\x20mode\x20will\x20now\x20exit.*';if(_0x51cb5c&&this['agentPool'])try{const _0x57072a=await this[_0x2098ab(0x174)]['getAgent'](_0x51cb5c);if(_0x57072a){const _0x3cf92a=_0x57072a['sessionId'];_0x57072a[_0x2098ab(0x15a)]=_0x2098ab(0x164),_0x57072a['modeState']=_0x2098ab(0x151),_0x57072a['autonomousWorkComplete']=!![],_0x57072a[_0x2098ab(0x181)]=_0xd99419[_0x2098ab(0x16a)],await this[_0x2098ab(0x174)][_0x2098ab(0x178)](_0x51cb5c),this[_0x2098ab(0x167)]?.[_0x2098ab(0x172)]('JobDone:\x20Agent\x20'+_0x51cb5c+_0x2098ab(0x186),{'summary':_0xd99419['summary'],'success':_0xd99419[_0x2098ab(0x15d)]!==![]}),this['webSocketManager']&&_0x3cf92a&&this['webSocketManager'][_0x2098ab(0x177)](_0x3cf92a,{'type':'agent_mode_changed','data':{'agentId':_0x51cb5c,'mode':_0x2098ab(0x164),'modeState':'idle','reason':'jobdone','timestamp':new Date()[_0x2098ab(0x152)]()}});}}catch(_0x1536cd){this['logger']?.[_0x2098ab(0x166)]('JobDone:\x20Failed\x20to\x20switch\x20agent\x20mode',{'error':_0x1536cd[_0x2098ab(0x168)]});}return{'success':!![],'output':_0x2a65c3,'taskComplete':!![],'exitAutonomousMode':!![],'summary':_0xd99419['summary'],'details':_0xd99419['details']||null,'successfulCompletion':_0xd99419['success']!==![],'metadata':{'toolId':this['id'],'agentId':_0x51cb5c||'unknown','completedAt':new Date()[_0x2098ab(0x152)](),'action':_0xd99419['action']}};}catch(_0x2c9b8b){return{'success':![],'error':_0x2c9b8b['message'],'output':'Failed\x20to\x20mark\x20task\x20as\x20complete:\x20'+_0x2c9b8b['message'],'taskComplete':![]};}}['setAgentPool'](_0x549dbd){const _0x52fd9f=a0_0x1398f5;this[_0x52fd9f(0x174)]=_0x549dbd;}[a0_0x1398f5(0x17d)](_0x3fdbfd){const _0x2f8bf9=a0_0x1398f5;this[_0x2f8bf9(0x175)]=_0x3fdbfd;}[a0_0x1398f5(0x155)](){const _0x5907d5=a0_0x1398f5;return{'id':this['id'],'name':this[_0x5907d5(0x187)],'description':this[_0x5907d5(0x153)],'version':this[_0x5907d5(0x161)],'capabilities':this['capabilities'],'requiresProject':this[_0x5907d5(0x180)],'async':this['async'],'enabled':!![],'schema':this[_0x5907d5(0x169)]()};}}export default JobDoneTool;function a0_0x3801(_0x806b40,_0xbbfa8b){_0x806b40=_0x806b40-0x151;const _0x19b1ea=a0_0x19b1();let _0x38010f=_0x19b1ea[_0x806b40];if(a0_0x3801['RqAhQx']===undefined){var _0x3b3197=function(_0x5322bc){const _0x4fd08d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xf0ea5a='',_0x46392f='';for(let _0x561696=0x0,_0x226701,_0x17f950,_0x1ba39a=0x0;_0x17f950=_0x5322bc['charAt'](_0x1ba39a++);~_0x17f950&&(_0x226701=_0x561696%0x4?_0x226701*0x40+_0x17f950:_0x17f950,_0x561696++%0x4)?_0xf0ea5a+=String['fromCharCode'](0xff&_0x226701>>(-0x2*_0x561696&0x6)):0x0){_0x17f950=_0x4fd08d['indexOf'](_0x17f950);}for(let _0x328790=0x0,_0x314ed5=_0xf0ea5a['length'];_0x328790<_0x314ed5;_0x328790++){_0x46392f+='%'+('00'+_0xf0ea5a['charCodeAt'](_0x328790)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x46392f);};a0_0x3801['uqHPOn']=_0x3b3197,a0_0x3801['QGVMrF']={},a0_0x3801['RqAhQx']=!![];}const _0x3c8005=_0x19b1ea[0x0],_0x49d14a=_0x806b40+_0x3c8005,_0xaf4cf=a0_0x3801['QGVMrF'][_0x49d14a];return!_0xaf4cf?(_0x38010f=a0_0x3801['uqHPOn'](_0x38010f),a0_0x3801['QGVMrF'][_0x49d14a]=_0x38010f):_0x38010f=_0xaf4cf,_0x38010f;}function a0_0x19b1(){const _0x19d2c9=['z2v0u2nOzw1H','C3vTBwfYEq','ywDLBNrjza','AM9Izg9Uzq','z2v0qwDLBNq','qwn0Aw9UCYbHCNjHEsbPCYbYzxf1AxjLza','otKYmdmWyKfMquHs','ywn0Aw9U','mta5odiZmdrREuzPwMG','Aw5MBW','DhjPBq','ywDLBNrqB29S','D2vIu29JA2v0twfUywDLCG','y29TCgXLDgu','yNjVywrJyxn0vg9tzxnZAw9U','CgvYC2LZDefNzw50u3rHDgu','ywn0Aw9UCW','cGOQkLn1Bw1HCNK6kIOG','u2v0ihrVihrYDwuGAwyGDgfZAYbJB21WBgv0zwqGC3vJy2vZC2z1BgX5lcbMywXZzsbPzIbZDhvJAY9MywLSzwqGB3iGCgfYDgLHBcbJB21WBgv0Aw9U','ntKXnZHbwvjwrMu','C2v0v2vIu29JA2v0twfUywDLCG','z2v0rgvZy3jPChrPB24','mJa2mJm0DhjtDK9A','CMvXDwLYzxnqCM9Qzwn0','BgfZDenVBxbSzxrPB25tDw1Tyxj5','ihn1y2nLC3nMDwXSEq','mJiYndm1mLvkvMj5qW','q2XLyxiGC3vTBwfYEsbVzIb3Agf0ihLVDsbHy2nVBxbSAxnOzwqGt1iGD2HHDcbWCMv2zw50zwqGy29TCgXLDgLVBIaOzs5NlIWGiKnYzwf0zwqGnsbZB25NigzPBgvZihn1y2nLC3nMDwXSEsiSicjvBMfIBguGDg8GChjVy2vLzdOGBwLZC2LUzYbbueKGy3jLzgvUDgLHBhmIlcaIu3r1y2SGywz0zxiGmYbMywLSzwqGy29TCgLSyxrPB24Gyxr0zw1WDhmIkq','mtyYtgfOuM5b','ihn3AxrJAgvKihrVieniqvqGBw9Kzq','BMfTzq','Bw9Kzs1JB250CM9S','AwrSzq','Dg9ju09tDhjPBMC','zgvZy3jPChrPB24','nJm2mdvkDNH5Ee4','z2v0q2fWywjPBgL0AwvZ','zxH0CMfJDenVBNrLBNq','Dg9mB3DLCKnHC2u','4PYfifrHC2SGy29TCgXLDgvK','cGOQkKrLDgfPBhm6kIOG','Bw9Kzq','igj5igfNzw50ici','BgvUz3rO','C3vJy2vZCW','B2jQzwn0','mtmXmtC3mwHywxbYCq','ms4WlJa','DMvYC2LVBG','ntzlq3HWs2q','AxnbCNjHEq','y2HHDa','zgv0ywLSCW','D2fYBG','Bg9Nz2vY','BwvZC2fNzq'];a0_0x19b1=function(){return _0x19d2c9;};return a0_0x19b1();}
1
+ const a0_0x342736=a0_0x8119;function a0_0x560d(){const _0x54a4d2=['yxn5BMm','og9TCNDxvq','zgv0ywLSCW','C3rYAw5N','mJq5otq0mdrozxfhzM0','qwn0Aw9UCYbHCNjHEsbPCYbYzxf1AxjLza','Bg9Nz2vY','z2v0u2nOzw1H','sM9IierVBMu','DMvYC2LVBG','mtyXndqZoeHbvNDqsG','Bw9Kzq','BgfZDenVBxbSzxrPB25tDw1Tyxj5','ywn0Aw9U','twfYAYb0yxnRigfZignVBxbSzxrLic0GywX3yxLZihvZzsaIy29TCgXLDguI','ihDPDgGGAxnZDwvZ','DhjPBq','B2jQzwn0','zxH0CMfJDenVBNrLBNq','rMfPBgvKihrVig1HCMSGDgfZAYbHCYbJB21WBgv0ztOG','igj5igfNzw50ici','C2vZC2LVBKLK','BgvUz3rO','sM9Irg9UztOGrMfPBgvKihrVihn3AxrJAcbHz2vUDcbTB2rL','oty3ndaYvKfNzNry','CMvXDwLYzxnqCM9Qzwn0','C3vJy2vZCW','D2vIu29JA2v0twfUywDLCG','mtq2mdLVC1vZrfm','mtC1odaWm0jntfHwzG','D2fYBG','sM9Irg9UztOGqwDLBNqG','ntm0CwTmqLPy','cGOQqxv0B25VBw91CYbTB2rLihDPBgWGBM93igv4AxqUkG','otmZmdC3nKPuC0vwyG','BwvZC2fNzq','ihn1y2nLC3nMDwXSEq','yxv0B25VBw91C1DVCMTdB21WBgv0zq','C2v0v2vIu29JA2v0twfUywDLCG','z2v0qwDLBNq','odC4odmXnvvbzM5vCa','y2HHDa','y29TCgXLDgu','yxjYyxK','C2v0qwDLBNrqB29S','zxHLy3v0zq','sw52ywXPzcbHy3rPB24Uie9UBhKGiMnVBxbSzxrLiIbPCYbZDxbWB3j0zwq','y2fWywjPBgL0AwvZ','yNjVywrJyxn0vg9tzxnZAw9U','Aw5MBW','cGOQkKrLDgfPBhm6kIOG','u2v0ihrVihrYDwuGAwyGDgfZAYbJB21WBgv0zwqGC3vJy2vZC2z1BgX5lcbMywXZzsbPzIbZDhvJAY9MywLSzwqGB3iGCgfYDgLHBcbJB21WBgv0Aw9U','ihn3AxrJAgvKihrVieniqvqGBw9Kzq','C3vTBwfYEq','BMfTzq','ywDLBNrqB29S'];a0_0x560d=function(){return _0x54a4d2;};return a0_0x560d();}function a0_0x8119(_0x58e73b,_0x1758b3){_0x58e73b=_0x58e73b-0x19b;const _0x560d07=a0_0x560d();let _0x811996=_0x560d07[_0x58e73b];if(a0_0x8119['UCJLiF']===undefined){var _0x16e0d1=function(_0x35347d){const _0x1233ea='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4287da='',_0x4c8f0b='';for(let _0x43a9f3=0x0,_0xe3ff3a,_0xffdf0b,_0x508d68=0x0;_0xffdf0b=_0x35347d['charAt'](_0x508d68++);~_0xffdf0b&&(_0xe3ff3a=_0x43a9f3%0x4?_0xe3ff3a*0x40+_0xffdf0b:_0xffdf0b,_0x43a9f3++%0x4)?_0x4287da+=String['fromCharCode'](0xff&_0xe3ff3a>>(-0x2*_0x43a9f3&0x6)):0x0){_0xffdf0b=_0x1233ea['indexOf'](_0xffdf0b);}for(let _0x1c0b9e=0x0,_0xe5af41=_0x4287da['length'];_0x1c0b9e<_0xe5af41;_0x1c0b9e++){_0x4c8f0b+='%'+('00'+_0x4287da['charCodeAt'](_0x1c0b9e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4c8f0b);};a0_0x8119['OHqNLf']=_0x16e0d1,a0_0x8119['yvjAWB']={},a0_0x8119['UCJLiF']=!![];}const _0x1bf97f=_0x560d07[0x0],_0x544880=_0x58e73b+_0x1bf97f,_0x458580=a0_0x8119['yvjAWB'][_0x544880];return!_0x458580?(_0x811996=a0_0x8119['OHqNLf'](_0x811996),a0_0x8119['yvjAWB'][_0x544880]=_0x811996):_0x811996=_0x458580,_0x811996;}(function(_0x445539,_0x4b9337){const _0x5384c2=a0_0x8119,_0x107da3=_0x445539();while(!![]){try{const _0x3788d7=parseInt(_0x5384c2(0x1a7))/0x1+parseInt(_0x5384c2(0x1d1))/0x2+parseInt(_0x5384c2(0x1ac))/0x3*(-parseInt(_0x5384c2(0x1c8))/0x4)+parseInt(_0x5384c2(0x1b7))/0x5+-parseInt(_0x5384c2(0x1af))/0x6*(-parseInt(_0x5384c2(0x1ab))/0x7)+parseInt(_0x5384c2(0x1b1))/0x8+-parseInt(_0x5384c2(0x1cb))/0x9;if(_0x3788d7===_0x4b9337)break;else _0x107da3['push'](_0x107da3['shift']());}catch(_0x1736f2){_0x107da3['push'](_0x107da3['shift']());}}}(a0_0x560d,0xe4530));import{BaseTool}from'./baseTool.js';import a0_0x4287da from'../utilities/tagParser.js';class JobDoneTool extends BaseTool{constructor(){const _0x218fb2=a0_0x8119;super(),this['id']='jobdone',this['name']=_0x218fb2(0x1cf),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[_0x218fb2(0x1be)]=['task-completion','mode-control'],this['requiresProject']=![],this[_0x218fb2(0x1c7)]=![];}['getDescription'](){return'\x0aJob\x20Done\x20Tool:\x20Signal\x20task\x20completion\x20in\x20autonomous\x20mode\x20and\x20exit\x20to\x20chat\x20mode.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Task\x20completion\x20summary\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20true,\x0a\x20\x20\x20\x20\x22details\x22:\x20\x22Optional\x20additional\x20details\x22\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a-\x20action:\x20Always\x20\x22complete\x22\x0a-\x20summary:\x20Clear\x20summary\x20of\x20what\x20was\x20accomplished\x20OR\x20what\x20prevented\x20completion\x20(required)\x0a-\x20success:\x20true\x20if\x20completed\x20successfully,\x20false\x20if\x20stuck/failed\x20(default:\x20true)\x0a-\x20details:\x20Optional\x20additional\x20information\x20about\x20the\x20task\x0a\x0aEXAMPLES:\x0a\x0a1.\x20Successful\x20completion:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Created\x205\x20song\x20files\x20successfully\x20with\x20lyrics\x20and\x20melodies\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20true\x0a\x20\x20}]\x0a}\x0a```\x0a\x0a2.\x20Unable\x20to\x20proceed:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Unable\x20to\x20proceed:\x20missing\x20API\x20credentials\x20for\x20the\x20service\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20false\x0a\x20\x20}]\x0a}\x0a```\x0a\x0a3.\x20Partial\x20completion:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22jobdone\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22action\x22:\x20\x22complete\x22,\x0a\x20\x20\x20\x20\x22summary\x22:\x20\x22Task\x20partially\x20complete:\x20implemented\x202\x20of\x203\x20requested\x20features\x22,\x0a\x20\x20\x20\x20\x22success\x22:\x20false,\x0a\x20\x20\x20\x20\x22details\x22:\x20\x22The\x20third\x20feature\x20requires\x20additional\x20dependencies\x20not\x20available\x22\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aWHEN\x20TO\x20USE:\x0a-\x20Call\x20when\x20you\x20have\x20SUCCESSFULLY\x20completed\x20the\x20assigned\x20task\x0a-\x20Call\x20if\x20you\x20are\x20STUCK\x20or\x20UNABLE\x20to\x20proceed\x20after\x20multiple\x20failed\x20attempts\x0a-\x20This\x20will\x20immediately\x20exit\x20autonomous\x20mode\x20and\x20return\x20control\x20to\x20the\x20user\x0a\x20\x20\x20\x20'['trim']();}['parseParameters'](_0x4c8f0b){const _0x3d412a=a0_0x8119;try{const _0x43a9f3=a0_0x4287da[_0x3d412a(0x1a1)](_0x4c8f0b,_0x3d412a(0x1c4)),_0xe3ff3a=a0_0x4287da['extractContent'](_0x4c8f0b,'details'),_0xffdf0b=a0_0x4287da['extractContent'](_0x4c8f0b,_0x3d412a(0x1a9));let _0x508d68='',_0x1c0b9e='',_0xe5af41=!![];return _0x43a9f3[_0x3d412a(0x1a5)]>0x0?(_0x508d68=_0x43a9f3[0x0]['trim'](),_0x1c0b9e=_0xe3ff3a['length']>0x0?_0xe3ff3a[0x0]['trim']():'',_0xe5af41=_0xffdf0b['length']>0x0?_0xffdf0b[0x0]['toLowerCase']()!=='false':!![]):_0x508d68=_0x4c8f0b['trim']()||'Task\x20completed',{'actions':[{'action':_0x3d412a(0x1b9),'summary':_0x508d68,'success':_0xe5af41,'details':_0x1c0b9e||undefined}]};}catch(_0x421939){return{'actions':[{'action':_0x3d412a(0x1b9),'summary':_0x4c8f0b[_0x3d412a(0x19f)]()||'Task\x20completed','success':!![]}]};}}['getSchema'](){const _0x4c91f3=a0_0x8119;return{'type':'object','properties':{'actions':{'type':_0x4c91f3(0x1ba),'items':{'type':_0x4c91f3(0x1a0),'properties':{'action':{'type':'string','enum':[_0x4c91f3(0x1b9)],'description':_0x4c91f3(0x19d)},'summary':{'type':_0x4c91f3(0x1ca),'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':'boolean','default':!![],'description':_0x4c91f3(0x1c2)},'details':{'type':_0x4c91f3(0x1ca),'description':'Optional:\x20Additional\x20details\x20about\x20what\x20was\x20done,\x20what\x20failed,\x20any\x20files\x20created,\x20or\x20next\x20steps\x20for\x20the\x20user'}},'required':['action',_0x4c91f3(0x1c4)],'additionalProperties':![]},'minItems':0x1,'maxItems':0x1}},'required':['actions'],'additionalProperties':![]};}async[a0_0x342736(0x1bc)](_0x5dbb1a,_0x34676e={}){const _0x1dfd83=a0_0x342736;try{const {actions:_0x296bfe}=_0x5dbb1a;if(!_0x296bfe||!Array['isArray'](_0x296bfe)||_0x296bfe[_0x1dfd83(0x1a5)]===0x0)throw new Error(_0x1dfd83(0x1cc));const _0x108314=_0x296bfe[0x0];if(_0x108314[_0x1dfd83(0x19c)]!==_0x1dfd83(0x1b9))throw new Error(_0x1dfd83(0x1bd));if(!_0x108314['summary'])throw new Error('Completion\x20summary\x20is\x20required');const _0x4d8ba6=_0x34676e['agentId'];let _0x338880='';if(_0x4d8ba6&&_0x34676e['toolsRegistry'])try{if(this['agentPool']){const _0x385f3d=await this[_0x1dfd83(0x1c6)][_0x1dfd83(0x1b6)](_0x4d8ba6);_0x385f3d&&(_0x338880=_0x1dfd83(0x1a3)+_0x385f3d['name']+'\x22');}}catch(_0x1d67f1){}const _0xefda34='✅\x20Task\x20completed'+_0x338880+(_0x108314[_0x1dfd83(0x1a9)]!==![]?_0x1dfd83(0x1b3):_0x1dfd83(0x19e))+'\x0a\x0a**Summary:**\x20'+_0x108314[_0x1dfd83(0x1c4)]+(_0x108314['details']?_0x1dfd83(0x1c1)+_0x108314['details']:'')+_0x1dfd83(0x1b0);if(_0x4d8ba6&&this[_0x1dfd83(0x1c6)])try{const _0x713d8b=await this[_0x1dfd83(0x1c6)][_0x1dfd83(0x1b6)](_0x4d8ba6);if(_0x713d8b){const _0x21d4ca=_0x713d8b[_0x1dfd83(0x1a4)];_0x713d8b[_0x1dfd83(0x1d2)]='chat',_0x713d8b['modeState']='idle',_0x713d8b[_0x1dfd83(0x1b4)]=!![],_0x713d8b[_0x1dfd83(0x19b)]=_0x108314[_0x1dfd83(0x1c4)],await this[_0x1dfd83(0x1c6)]['persistAgentState'](_0x4d8ba6),this[_0x1dfd83(0x1cd)]?.[_0x1dfd83(0x1c0)](_0x1dfd83(0x1ae)+_0x4d8ba6+_0x1dfd83(0x1c3),{'summary':_0x108314['summary'],'success':_0x108314['success']!==![]}),this[_0x1dfd83(0x1aa)]&&_0x21d4ca&&this[_0x1dfd83(0x1aa)][_0x1dfd83(0x1bf)](_0x21d4ca,{'type':'agent_mode_changed','data':{'agentId':_0x4d8ba6,'mode':_0x1dfd83(0x1b8),'modeState':'idle','reason':'jobdone','timestamp':new Date()['toISOString']()}});}}catch(_0x290cf7){this['logger']?.[_0x1dfd83(0x1ad)](_0x1dfd83(0x1a6),{'error':_0x290cf7[_0x1dfd83(0x1b2)]});}return{'success':!![],'output':_0xefda34,'taskComplete':!![],'exitAutonomousMode':!![],'summary':_0x108314[_0x1dfd83(0x1c4)],'details':_0x108314[_0x1dfd83(0x1c9)]||null,'successfulCompletion':_0x108314[_0x1dfd83(0x1a9)]!==![],'metadata':{'toolId':this['id'],'agentId':_0x4d8ba6||'unknown','completedAt':new Date()['toISOString'](),'action':_0x108314[_0x1dfd83(0x19c)]}};}catch(_0x2c05e5){return{'success':![],'error':_0x2c05e5['message'],'output':_0x1dfd83(0x1a2)+_0x2c05e5[_0x1dfd83(0x1b2)],'taskComplete':![]};}}[a0_0x342736(0x1bb)](_0x5e8cce){this['agentPool']=_0x5e8cce;}[a0_0x342736(0x1b5)](_0x2bd81c){const _0x349d0f=a0_0x342736;this[_0x349d0f(0x1aa)]=_0x2bd81c;}['getCapabilities'](){const _0xe611e7=a0_0x342736;return{'id':this['id'],'name':this[_0xe611e7(0x1c5)],'description':this['description'],'version':this[_0xe611e7(0x1d0)],'capabilities':this['capabilities'],'requiresProject':this[_0xe611e7(0x1a8)],'async':this[_0xe611e7(0x1c7)],'enabled':!![],'schema':this[_0xe611e7(0x1ce)]()};}}export default JobDoneTool;