(row)
| 3525 | } |
| 3526 | |
| 3527 | function fillHoverPreviewForRow(row) { |
| 3528 | if (isHoverPreviewDisabled()) { |
| 3529 | hideHoverPreview(); |
| 3530 | return; |
| 3531 | } |
| 3532 | |
| 3533 | const el = ensureHoverPreviewEl(); |
| 3534 | const titleEl = el.querySelector(".hover-preview-title"); |
| 3535 | const metaEl = el.querySelector(".hover-preview-meta"); |
| 3536 | const thumbEl = el.querySelector(".hover-preview-thumb"); |
| 3537 | const propsEl = el.querySelector(".hover-preview-props"); |
| 3538 | const snippetEl = el.querySelector(".hover-preview-snippet"); |
| 3539 | |
| 3540 | |
| 3541 | |
| 3542 | if (!titleEl || !metaEl || !thumbEl || !propsEl || !snippetEl) return; |
| 3543 | |
| 3544 | // Reset content |
| 3545 | thumbEl.innerHTML = ""; |
| 3546 | propsEl.innerHTML = ""; |
| 3547 | snippetEl.textContent = ""; |
| 3548 | snippetEl.style.display = "none"; |
| 3549 | metaEl.textContent = ""; |
| 3550 | titleEl.textContent = ""; |
| 3551 | |
| 3552 | // reset snippet style defaults (for file previews) |
| 3553 | snippetEl.style.whiteSpace = "pre-wrap"; |
| 3554 | snippetEl.style.overflowX = "auto"; |
| 3555 | snippetEl.style.textOverflow = "clip"; |
| 3556 | snippetEl.style.wordBreak = "break-word"; |
| 3557 | |
| 3558 | // Reset per-row sizing... |
| 3559 | thumbEl.style.minHeight = "0"; |
| 3560 | |
| 3561 | const isFolder = row.classList.contains("folder-row"); |
| 3562 | |
| 3563 | if (isFolder) { |
| 3564 | // ========================= |
| 3565 | // FOLDER HOVER PREVIEW |
| 3566 | // ========================= |
| 3567 | const folderPath = row.dataset.folder || ""; |
| 3568 | const folderName = folderPath.split("/").pop() || folderPath || "(root)"; |
| 3569 | |
| 3570 | titleEl.textContent = folderName; |
| 3571 | |
| 3572 | hoverPreviewContext = { |
| 3573 | type: "folder", |
| 3574 | folder: folderPath |
| 3575 | }; |
| 3576 | |
| 3577 | // Right column: icon + path (start props array so we can append later) |
| 3578 | const props = []; |
| 3579 | |
| 3580 | props.push(` |
| 3581 | <div class="hover-prop-line" style="display:flex;align-items:center;margin-bottom:4px;"> |
| 3582 | <span class="hover-preview-icon material-icons" style="margin-right:6px;">folder</span> |
| 3583 | <strong>${t("folder") || "Folder"}</strong> |
| 3584 | </div> |
no test coverage detected