diff --git a/frontend/runtime.html b/frontend/runtime.html index 5e966f3..279fca7 100644 --- a/frontend/runtime.html +++ b/frontend/runtime.html @@ -5,7 +5,7 @@ DevConsole Runtime @@ -15,7 +15,7 @@ body{margin:0;background:#0f1115;color:#fff;font-family:Arial,sans-serif}.layout

Проекты

Загрузка проектов...

Android устройства

Поиск устройств...
-
Runtime сценарии
Изменения делаем через GitHub commit/pull. Flutter output идёт live.
Ожидание
DevConsole runtime initialized...
Ошибки для передачи AI
Ошибок пока нет
Здесь появятся ошибки из Flutter, Gradle, ADB, API и stderr.
+
Runtime сценарии
Изменения делаем через GitHub commit/pull. Flutter output идёт live.
Ожидание
DevConsole runtime initialized...
Системы
Загрузка статусов...
Ошибки для передачи AI
Ошибок пока нет
Здесь появятся ошибки из Flutter, Gradle, ADB, API и stderr.
@@ -26,7 +26,6 @@ function closeAddProjectModal(){document.getElementById('addProjectModal').style function toggleAuthFields(){document.getElementById('authFields').style.display=document.getElementById('repoNeedsAuth').checked?'block':'none';} function setAnalysisProgress(percent,message){const wrap=document.getElementById('analysisProgressWrap');const bar=document.getElementById('analysisProgressBar');const label=document.getElementById('analysisProgressLabel');if(wrap){wrap.style.display='block';}if(bar){bar.style.width=percent+'%';}if(label){label.innerText=percent+'% — '+message;}appendLog(percent+'% — '+message);} async function analyzeProject(){const repo_url=document.getElementById('repoUrl').value.trim();if(!repo_url){appendLog('0% — Укажи Git URL');return;}if(document.getElementById('repoNeedsAuth').checked){await saveGitHubSettings();}setAnalysisProgress(5,'Проверяю Git URL');setAnalysisProgress(20,'Готовлю workspace');setAnalysisProgress(35,'Клонирую или обновляю репозиторий');const data=await api('/api/projects/analyze',{repo_url});if(data.detail){setAnalysisProgress(100,'Ошибка анализа: '+data.detail);return;}setAnalysisProgress(65,'Репозиторий получен, сканирую структуру');if(data.analysis?.detected_stack?.length){setAnalysisProgress(76,'Стек: '+data.analysis.detected_stack.join(', '));}else{setAnalysisProgress(76,'Стек не определён автоматически');}if(data.analysis?.workspace){setAnalysisProgress(88,'Workspace: '+data.analysis.workspace);document.getElementById('workspacePath').value=data.analysis.workspace;setAnalysisProgress(94,'Регистрирую проект');await registerCurrentProject(repo_url,data.analysis.workspace,data.analysis.detected_stack?.join(', ')||'unknown');}setAnalysisProgress(100,'Проект добавлен');closeAddProjectModal();} -async function installDependencies(){const repo_url=document.getElementById('repoUrl').value;const data=await api('/api/projects/install-dependencies',{repo_url});appendLog(JSON.stringify(data,null,2));} async function buildApk(){await runRuntimeScenario('build');}