define(function(require,exports,module){const BeautificationManager=brackets.getModule("features/BeautificationManager"),ProjectManager=brackets.getModule("project/ProjectManager"),NodeUtils=brackets.getModule("utils/NodeUtils"),ServerInstaller=require("./ServerInstaller"),FORMAT_TIMEOUT_MS=2e4;async function _runRuffFormat(text,fileNameHint){const state=await ServerInstaller.installedState();if(!state.installed)throw new Error("ruff is not installed yet");const root=ProjectManager.getProjectRoot(),cwd=root?Phoenix.fs.getTauriPlatformPath(root.fullPath):void 0,stdinName=(fileNameHint||"file.py").split("/").pop(),result=await NodeUtils.execFileWithInput(ServerInstaller.getRuffBinaryPlatformPath(),["format","--stdin-filename",stdinName,"-"],{stdinText:text,cwd:cwd,timeoutMs:FORMAT_TIMEOUT_MS});if(0!==result.code)throw new Error(result.stderr||"ruff format exited with "+result.code);return result.stdout}function beautifyTextProvider(textToBeautify,filePathOrFileName){return _runRuffFormat(textToBeautify,filePathOrFileName).then(function(changedText){return{originalText:textToBeautify,changedText:changedText}})}function beautifyEditorProvider(editor){const text=editor.document.getText();return _runRuffFormat(text,editor.document.file.fullPath).then(function(changedText){return{originalText:text,changedText:changedText}})}function init(){BeautificationManager.registerBeautificationProvider(exports,["python"])}exports.init=init,exports.beautifyEditorProvider=beautifyEditorProvider,exports.beautifyTextProvider=beautifyTextProvider});