const pages = dv.pages("").where(p => p.doc_type === "deep-dive");
if (pages.length === 0) {
dv.paragraph("⚠️ Nessun documento Deep Dive trovato.");
} else {
const groupedById = {};
for (let page of pages) {
const id = page.id;
if (!groupedById[id]) {
groupedById[id] = [];
}
groupedById[id].push(page);
}
const latestVersions = [];
for (let id in groupedById) {
const versions = groupedById[id];
const sortedVersions = versions.sort((a, b) =>
parseFloat(b.version) - parseFloat(a.version)
);
latestVersions.push(sortedVersions[0]);
}
const sortedLatest = latestVersions.sort((a, b) => {
const titleA = a.title || a.file.name || "";
const titleB = b.title || b.file.name || "";
return titleA.localeCompare(titleB);
});
// Rendering lineare
for (let page of sortedLatest) {
dv.paragraph(`### ${page.file.link} (v${page.version})`);
if (page.summary) {
dv.paragraph(`**Scopo:** ${page.summary}`);
}
if (page.tags && page.tags.length > 0) {
dv.paragraph(`**Tag:** ${page.tags.join(', ')}`);
}
dv.paragraph("---");
}
}