()
| 2481 | |
| 2482 | // Reference Images functions |
| 2483 | function renderRefImagesList() { |
| 2484 | refImagesList.innerHTML = "" |
| 2485 | refImages.forEach((src, idx) => { |
| 2486 | const wrapper = document.createElement("div") |
| 2487 | wrapper.className = "image-input-wrapper" |
| 2488 | const img = document.createElement("img") |
| 2489 | img.className = "input-image-preview" |
| 2490 | img.src = src |
| 2491 | const indexLabel = document.createElement("span") |
| 2492 | indexLabel.className = "image-input-index" |
| 2493 | indexLabel.textContent = idx + 1 |
| 2494 | const clearBtn = document.createElement("button") |
| 2495 | clearBtn.className = "image_clear_btn" |
| 2496 | clearBtn.innerHTML = '<i class="fa-solid fa-xmark"></i>' |
| 2497 | clearBtn.title = "Remove reference image " + (idx + 1) |
| 2498 | clearBtn.addEventListener("click", () => removeRefImage(idx)) |
| 2499 | wrapper.appendChild(img) |
| 2500 | wrapper.appendChild(indexLabel) |
| 2501 | wrapper.appendChild(clearBtn) |
| 2502 | refImagesList.appendChild(wrapper) |
| 2503 | }) |
| 2504 | if (refImages.length > 0) { |
| 2505 | refImagesClearAllBtn.classList.remove("displayNone") |
| 2506 | } else { |
| 2507 | refImagesClearAllBtn.classList.add("displayNone") |
| 2508 | } |
| 2509 | } |
| 2510 | |
| 2511 | function addRefImage(dataUrl) { |
| 2512 | refImages.push(dataUrl) |
no test coverage detected