Restore working UI from v1.0.12, v1.0.18

This commit is contained in:
2026-07-24 09:10:50 +04:00
parent ada85febe9
commit 981ec66a9a
2 changed files with 6 additions and 10 deletions
+1 -1
View File
@@ -6,7 +6,7 @@ from routes.main import bp as main_bp
from routes.api import bp as api_bp
from routes.api_test import bp as api_test_bp
VERSION = "1.0.16"
VERSION = "1.0.18"
app = Flask(__name__, template_folder="templates", static_folder="static")
app.config["NUBES_API_ENDPOINT"] = os.getenv("NUBES_API_ENDPOINT", "https://lk-api-gateway-dev.ngcloud.ru/api/v1/svc")
+5 -9
View File
@@ -97,15 +97,13 @@ let selectedSvc=null, selectedOp=null, svcInstances=[];
// Load services — only dummy for now
(async function(){
const el=document.getElementById('svc-list');
el.innerHTML='<span style="color:var(--muted);font-size:11px;">Загрузка...</span>';
try{
const r=await fetch('/api/services');
if(!r.ok) throw new Error(r.status+' '+r.statusText);
const data=await r.json();
const dummy=data.find(s=>s.svcId===1);
if(dummy){ el.innerHTML=`<div class="svc-item" data-svc-id="1" onclick="selectService(1)">1. ${dummy.svc}</div>`; }
else el.innerHTML='<span style="color:var(--destructive);font-size:11px;">dummy не найден</span>';
}catch(e){el.innerHTML='<span style="color:var(--destructive);font-size:11px;">Ошибка: '+e.message+'</span>';}
if(dummy) el.innerHTML=`<div class="svc-item active" data-svc-id="1" onclick="selectService(1)">1. ${dummy.svc}</div>`;
selectService(1);
}catch(e){el.innerHTML='<span style="color:var(--destructive);font-size:11px;">Ошибка загрузки</span>';}
})();
async function selectService(svcId){
@@ -142,13 +140,11 @@ async function selectOperation(opId,opName,svcId){
document.getElementById('params-card').style.display='block';
document.getElementById('btn-test').style.display='inline-flex';
const displayName='autotest-'+svcId+'-'+Date.now().toString(36);
const r=await fetch('/api/params/'+opId);
const params=await r.json();
const form=document.getElementById('params-form');
form.innerHTML='<div class="param-row"><label class="req">displayName</label><input type="text" id="param-displayname" value="'+displayName+'"></div>'
+ params.map(p=>{
form.innerHTML=params.map(p=>{
const req=p.isRequired;
const hasDfl=p.defaultValue!==null&&p.defaultValue!==undefined&&p.defaultValue!=='';
const labelCls=req?(hasDfl?'req':'req-nodfl'):'';
@@ -191,7 +187,7 @@ async function runTest(){
svcOperationId:selectedOp.opId,
params,
instanceUid:instUid,
const displayName=document.getElementById('param-displayname')?.value||'autotest-'+selectedOp.svcId;
displayName:'autotest-'+selectedOp.svcId
})});
const d=await r.json();
const cls=d.status==='OK'?'badge badge-success':'badge';