Spaces:
Running on Zero
Running on Zero
Use smaller image previews in the editor
Browse files- static/app.js +2 -2
- static/index.html +1 -1
static/app.js
CHANGED
|
@@ -219,7 +219,7 @@ $('detectButton').onclick=()=>runJob('detect');$('refineButton').onclick=()=>run
|
|
| 219 |
$('exampleTargets').onclick=async()=>{if(state.busy||!state.session)return;try{const data=await api(endpoint('targets'));pushHistory();state.regions=data.regions;state.selected=data.regions[0]?.id||null;render();changed();switchView('edit');notice('Example edits loaded.',true);}catch(e){notice(e.message);}};
|
| 220 |
function renderResults(){
|
| 221 |
const result=state.result,base=endpoint('');$('compareView').disabled=false;$('comparePanel').classList.remove('result-stale');
|
| 222 |
-
$('beforeImage').src=state.session.image;$('afterImage').src=base+result.image;
|
| 223 |
$('downloadImage').href=base+result.image;$('downloadRegions').href=base+result.metadata;
|
| 224 |
$('resultSummary').textContent=`${result.elapsed.toFixed(1)}s`;
|
| 225 |
$('resultSummary').title=`${result.model==='meanflow'?'MeanFlow':'Teacher'} · ${result.steps} steps`;
|
|
@@ -245,7 +245,7 @@ async function openStudio(){
|
|
| 245 |
setBusy(true);
|
| 246 |
const job=await api(`/api/sessions/${sid}/jobs/${jid}`);
|
| 247 |
if(job.status!=='done'||job.kind!=='refine')throw new Error('This result is not available.');
|
| 248 |
-
const image=new Image();image.src=`/api/sessions/${sid}/
|
| 249 |
await loadSession({id:sid,image:image.src,width:image.naturalWidth,height:image.naturalHeight,example:params.get('e')});
|
| 250 |
state.regions=job.result.regions.map(r=>({...r,enabled:true,origin:'saved'}));state.selected=state.regions[0]?.id||null;
|
| 251 |
state.model=job.result.model;$('steps').value=job.result.steps;$('seed').value=job.result.seed;$('guidance').value=job.result.guidance;
|
|
|
|
| 219 |
$('exampleTargets').onclick=async()=>{if(state.busy||!state.session)return;try{const data=await api(endpoint('targets'));pushHistory();state.regions=data.regions;state.selected=data.regions[0]?.id||null;render();changed();switchView('edit');notice('Example edits loaded.',true);}catch(e){notice(e.message);}};
|
| 220 |
function renderResults(){
|
| 221 |
const result=state.result,base=endpoint('');$('compareView').disabled=false;$('comparePanel').classList.remove('result-stale');
|
| 222 |
+
$('beforeImage').src=state.session.image;$('afterImage').src=base+(result.preview||result.image);
|
| 223 |
$('downloadImage').href=base+result.image;$('downloadRegions').href=base+result.metadata;
|
| 224 |
$('resultSummary').textContent=`${result.elapsed.toFixed(1)}s`;
|
| 225 |
$('resultSummary').title=`${result.model==='meanflow'?'MeanFlow':'Teacher'} · ${result.steps} steps`;
|
|
|
|
| 245 |
setBusy(true);
|
| 246 |
const job=await api(`/api/sessions/${sid}/jobs/${jid}`);
|
| 247 |
if(job.status!=='done'||job.kind!=='refine')throw new Error('This result is not available.');
|
| 248 |
+
const image=new Image();image.src=`/api/sessions/${sid}/preview.webp`;await image.decode();
|
| 249 |
await loadSession({id:sid,image:image.src,width:image.naturalWidth,height:image.naturalHeight,example:params.get('e')});
|
| 250 |
state.regions=job.result.regions.map(r=>({...r,enabled:true,origin:'saved'}));state.selected=state.regions[0]?.id||null;
|
| 251 |
state.model=job.result.model;$('steps').value=job.result.steps;$('seed').value=job.result.seed;$('guidance').value=job.result.guidance;
|
static/index.html
CHANGED
|
@@ -18,7 +18,7 @@
|
|
| 18 |
|
| 19 |
</section>
|
| 20 |
<section class="start-row">
|
| 21 |
-
<div class="example-selector"><button data-example="english" class="example active"><img src="/examples/english.
|
| 22 |
<div class="upload-area"><button id="uploadButton" class="button secondary"><span class="upload-icon">↥</span> Upload image</button><input id="imageUpload" type="file" accept="image/png,image/jpeg,image/webp" hidden></div>
|
| 23 |
</section>
|
| 24 |
<div id="notice" class="notice" role="status" hidden></div>
|
|
|
|
| 18 |
|
| 19 |
</section>
|
| 20 |
<section class="start-row">
|
| 21 |
+
<div class="example-selector"><button data-example="english" class="example active"><img src="/examples/english.webp" alt="English editorial example"><span>English</span></button><button data-example="chinese" class="example"><img src="/examples/chinese.webp" alt="Chinese New Year example"><span>中文</span></button></div>
|
| 22 |
<div class="upload-area"><button id="uploadButton" class="button secondary"><span class="upload-icon">↥</span> Upload image</button><input id="imageUpload" type="file" accept="image/png,image/jpeg,image/webp" hidden></div>
|
| 23 |
</section>
|
| 24 |
<div id="notice" class="notice" role="status" hidden></div>
|