feat: clicking arquivo-fonte opens the original document, row click opens the résumé
This commit is contained in:
+33
-9
@@ -267,6 +267,8 @@
|
|||||||
border-radius:999px; padding:2px 9px;
|
border-radius:999px; padding:2px 9px;
|
||||||
}
|
}
|
||||||
.resumo-file{ font-size:10.5px; color:var(--ink-3); line-height:1.5; overflow-wrap:anywhere; }
|
.resumo-file{ font-size:10.5px; color:var(--ink-3); line-height:1.5; overflow-wrap:anywhere; }
|
||||||
|
.resumo-file a{ color:inherit; text-decoration:none; }
|
||||||
|
.resumo-file a:hover{ color:var(--accent); text-decoration:underline; }
|
||||||
|
|
||||||
.resumo-processo-btn{
|
.resumo-processo-btn{
|
||||||
width:100%; text-align:center; font:inherit; font-size:12.5px; font-weight:600; color:var(--accent);
|
width:100%; text-align:center; font:inherit; font-size:12.5px; font-weight:600; color:var(--accent);
|
||||||
@@ -357,6 +359,7 @@
|
|||||||
thead th:hover{ color:var(--ink); }
|
thead th:hover{ color:var(--ink); }
|
||||||
thead th .arrow{ opacity:.5; margin-left:3px; }
|
thead th .arrow{ opacity:.5; margin-left:3px; }
|
||||||
tbody td{ padding:9px 12px; border-bottom:1px solid var(--grid); vertical-align:top; color:var(--ink-2); }
|
tbody td{ padding:9px 12px; border-bottom:1px solid var(--grid); vertical-align:top; color:var(--ink-2); }
|
||||||
|
tbody tr{ cursor:pointer; }
|
||||||
tbody tr:hover td{ background:var(--accent-wash); }
|
tbody tr:hover td{ background:var(--accent-wash); }
|
||||||
td.date{ font-family:"IBM Plex Mono",monospace; font-size:12px; white-space:nowrap; color:var(--ink); }
|
td.date{ font-family:"IBM Plex Mono",monospace; font-size:12px; white-space:nowrap; color:var(--ink); }
|
||||||
td.lane{ white-space:nowrap; }
|
td.lane{ white-space:nowrap; }
|
||||||
@@ -367,9 +370,10 @@
|
|||||||
td.text{ color:var(--ink); max-width:520px; }
|
td.text{ color:var(--ink); max-width:520px; }
|
||||||
td.file{
|
td.file{
|
||||||
font-family:"IBM Plex Mono",monospace; font-size:10.5px; color:var(--ink-3); max-width:220px;
|
font-family:"IBM Plex Mono",monospace; font-size:10.5px; color:var(--ink-3); max-width:220px;
|
||||||
overflow-wrap:anywhere; cursor:pointer;
|
overflow-wrap:anywhere;
|
||||||
}
|
}
|
||||||
td.file:hover{ color:var(--accent); text-decoration:underline; }
|
td.file a{ color:inherit; text-decoration:none; }
|
||||||
|
td.file a:hover{ color:var(--accent); text-decoration:underline; }
|
||||||
.table-foot{ display:flex; align-items:center; justify-content:center; gap:12px; padding:14px; }
|
.table-foot{ display:flex; align-items:center; justify-content:center; gap:12px; padding:14px; }
|
||||||
.table-foot button{
|
.table-foot button{
|
||||||
border:1px solid var(--border); background:var(--page); color:var(--ink);
|
border:1px solid var(--border); background:var(--page); color:var(--ink);
|
||||||
@@ -1309,7 +1313,13 @@
|
|||||||
document.getElementById("resumoId").textContent = p.id;
|
document.getElementById("resumoId").textContent = p.id;
|
||||||
document.getElementById("resumoType").textContent = p.type;
|
document.getElementById("resumoType").textContent = p.type;
|
||||||
document.getElementById("resumoText").textContent = p.text;
|
document.getElementById("resumoText").textContent = p.text;
|
||||||
document.getElementById("resumoFile").textContent = p.file;
|
var fileEl = document.getElementById("resumoFile");
|
||||||
|
fileEl.innerHTML = "";
|
||||||
|
var fileLink = document.createElement("a");
|
||||||
|
fileLink.href = originalMdUrl(p.file);
|
||||||
|
fileLink.target = "_blank"; fileLink.rel = "noopener noreferrer";
|
||||||
|
fileLink.textContent = p.file;
|
||||||
|
fileEl.appendChild(fileLink);
|
||||||
|
|
||||||
var peopleBlock = document.getElementById("resumoPeopleBlock");
|
var peopleBlock = document.getElementById("resumoPeopleBlock");
|
||||||
var peopleWrap = document.getElementById("resumoPeople");
|
var peopleWrap = document.getElementById("resumoPeople");
|
||||||
@@ -1410,6 +1420,13 @@
|
|||||||
return out.join("\n");
|
return out.join("\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// r.file (docs.json) is always a path under originals/Parte2/ — every lane
|
||||||
|
// in docs.json has a matching folder there (verified: no lane needs Parte1).
|
||||||
|
function originalMdUrl(file){
|
||||||
|
return "https://git.rodado.xyz/rodado/pet16704/src/branch/main/originals/Parte2/"
|
||||||
|
+ file.split("/").map(encodeURIComponent).join("/");
|
||||||
|
}
|
||||||
|
|
||||||
var processoCache = {}; // process number -> rendered HTML, or null if not found
|
var processoCache = {}; // process number -> rendered HTML, or null if not found
|
||||||
// resumos/parte1/ and resumos/parte2/ live one level above web/ in the
|
// resumos/parte1/ and resumos/parte2/ live one level above web/ in the
|
||||||
// intended (repo-root) deployment, but a local server started from inside
|
// intended (repo-root) deployment, but a local server started from inside
|
||||||
@@ -1668,6 +1685,11 @@
|
|||||||
slice.forEach(function(r){
|
slice.forEach(function(r){
|
||||||
var lane = LANES[laneIndex[r.lane]];
|
var lane = LANES[laneIndex[r.lane]];
|
||||||
var tr = document.createElement("tr");
|
var tr = document.createElement("tr");
|
||||||
|
tr.title = "Ver resumo deste documento";
|
||||||
|
tr.addEventListener("click", function(){
|
||||||
|
setView("chart");
|
||||||
|
openResumo(r, laneIndex[r.lane]);
|
||||||
|
});
|
||||||
|
|
||||||
var tdDate = document.createElement("td");
|
var tdDate = document.createElement("td");
|
||||||
tdDate.className = "date";
|
tdDate.className = "date";
|
||||||
@@ -1694,12 +1716,14 @@
|
|||||||
tdPeople.textContent = (r.people && r.people.length) ? r.people.join(", ") : "—";
|
tdPeople.textContent = (r.people && r.people.length) ? r.people.join(", ") : "—";
|
||||||
tr.appendChild(tdPeople);
|
tr.appendChild(tdPeople);
|
||||||
|
|
||||||
var tdFile = document.createElement("td"); tdFile.className="file"; tdFile.textContent = r.file;
|
var tdFile = document.createElement("td"); tdFile.className="file";
|
||||||
tdFile.title = "Ver resumo deste documento";
|
tdFile.title = "Abrir o documento original";
|
||||||
tdFile.addEventListener("click", function(){
|
var fileLink = document.createElement("a");
|
||||||
setView("chart");
|
fileLink.href = originalMdUrl(r.file);
|
||||||
openResumo(r, laneIndex[r.lane]);
|
fileLink.target = "_blank"; fileLink.rel = "noopener noreferrer";
|
||||||
});
|
fileLink.textContent = r.file;
|
||||||
|
fileLink.addEventListener("click", function(e){ e.stopPropagation(); });
|
||||||
|
tdFile.appendChild(fileLink);
|
||||||
tr.appendChild(tdFile);
|
tr.appendChild(tdFile);
|
||||||
|
|
||||||
frag.appendChild(tr);
|
frag.appendChild(tr);
|
||||||
|
|||||||
Reference in New Issue
Block a user