|↑| Metaviews | Resolving State (A)﹕ Set Member
let pages = dv.pages('"Concepts/Concepts"')
.where(p => p.file.path.includes("/(A)/"));
// Group by the directory immediately before "/(A)/"
let grouped = pages.groupBy(p => {
let path = p.file.path;
let match = path.match(/([^\/]+)\/\(A\)\//);
return match ? match[1] : "Unknown";
});
// Display grouped results with sub-grouping
for (let group of grouped) {
dv.header(3, group.key);
// Sub-group by immediate parent directory of the file
let subGrouped = group.rows.groupBy(p => {
let path = p.file.path;
let parts = path.split('/');
// Get the parent directory (second to last element)
return parts.length >= 2 ? parts[parts.length - 2] : "Root";
});
for (let subGroup of subGrouped) {
dv.header(6, subGroup.key);
dv.list(subGroup.rows.map(p => p.file.link));
}
}