Spaces:
Sleeping
Sleeping
DocUA commited on
Commit ·
a13df7f
1
Parent(s): e97fe1b
Tell the user the cloud OCR takes ~90 s instead of leaving them guessing
Browse files
livemedcard/static/index.html
CHANGED
|
@@ -448,6 +448,7 @@ const I18N = {
|
|
| 448 |
toastSamples:'Demo card loaded', toastReset:'Card reset',
|
| 449 |
toastExport:'FHIR bundle downloaded', toastNeedInput:'Enter text or choose a photo',
|
| 450 |
ocrReading:'Reading (OCR)…', processing:'Processing…',
|
|
|
|
| 451 |
toastEscalated:'Processed · escalated to human', toastAuto:'Processed · auto',
|
| 452 |
toastNoFacts:'Document saved, but no measurements were extracted',
|
| 453 |
errorPrefix:'Error: ', selected:name=>`Selected: ${name}`,
|
|
@@ -491,6 +492,7 @@ const I18N = {
|
|
| 491 |
toastSamples:'Демо-картку завантажено', toastReset:'Картку скинуто',
|
| 492 |
toastExport:'FHIR Bundle завантажено', toastNeedInput:'Введіть текст або виберіть фото',
|
| 493 |
ocrReading:'Зчитування (OCR)…', processing:'Опрацювання…',
|
|
|
|
| 494 |
toastEscalated:'Оброблено · ескалація до людини', toastAuto:'Оброблено · авто',
|
| 495 |
toastNoFacts:'Документ збережено, але жодного показника не витягнуто',
|
| 496 |
errorPrefix:'Помилка: ', selected:name=>`Вибрано: ${name}`,
|
|
@@ -793,6 +795,9 @@ $('#add-submit').onclick=async()=>{
|
|
| 793 |
let rep;
|
| 794 |
if(file){
|
| 795 |
btn.textContent=t.ocrReading;
|
|
|
|
|
|
|
|
|
|
| 796 |
const base64=await new Promise((res,rej)=>{const rd=new FileReader();rd.onload=()=>res(rd.result);rd.onerror=rej;rd.readAsDataURL(file);});
|
| 797 |
rep=await api('/ingest/image',{method:'POST',headers:{'Content-Type':'application/json'},
|
| 798 |
body:JSON.stringify({image_base64:base64,kind:$('#add-kind').value})});
|
|
|
|
| 448 |
toastSamples:'Demo card loaded', toastReset:'Card reset',
|
| 449 |
toastExport:'FHIR bundle downloaded', toastNeedInput:'Enter text or choose a photo',
|
| 450 |
ocrReading:'Reading (OCR)…', processing:'Processing…',
|
| 451 |
+
toastOcrWait:'Reading the photo on the cloud OCR lab — up to ~90 s',
|
| 452 |
toastEscalated:'Processed · escalated to human', toastAuto:'Processed · auto',
|
| 453 |
toastNoFacts:'Document saved, but no measurements were extracted',
|
| 454 |
errorPrefix:'Error: ', selected:name=>`Selected: ${name}`,
|
|
|
|
| 492 |
toastSamples:'Демо-картку завантажено', toastReset:'Картку скинуто',
|
| 493 |
toastExport:'FHIR Bundle завантажено', toastNeedInput:'Введіть текст або виберіть фото',
|
| 494 |
ocrReading:'Зчитування (OCR)…', processing:'Опрацювання…',
|
| 495 |
+
toastOcrWait:'Фото читає хмарний OCR-лаб — до ~90 с',
|
| 496 |
toastEscalated:'Оброблено · ескалація до людини', toastAuto:'Оброблено · авто',
|
| 497 |
toastNoFacts:'Документ збережено, але жодного показника не витягнуто',
|
| 498 |
errorPrefix:'Помилка: ', selected:name=>`Вибрано: ${name}`,
|
|
|
|
| 795 |
let rep;
|
| 796 |
if(file){
|
| 797 |
btn.textContent=t.ocrReading;
|
| 798 |
+
// Хмарний OCR — це ~70–90 с. Без попередження мовчазне очікування читається
|
| 799 |
+
// як зависання (і саме так виглядає для журі, що клікне демо самостійно).
|
| 800 |
+
toast(t.toastOcrWait);
|
| 801 |
const base64=await new Promise((res,rej)=>{const rd=new FileReader();rd.onload=()=>res(rd.result);rd.onerror=rej;rd.readAsDataURL(file);});
|
| 802 |
rep=await api('/ingest/image',{method:'POST',headers:{'Content-Type':'application/json'},
|
| 803 |
body:JSON.stringify({image_base64:base64,kind:$('#add-kind').value})});
|