Skip to content

Commit 2bb63f3

Browse files
committed
fix(docs): rebalance navigation hierarchy
1 parent 68bc94d commit 2bb63f3

2 files changed

Lines changed: 10 additions & 6 deletions

File tree

‎scripts/build-docs.mjs‎

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -308,14 +308,16 @@ function layout({ title, body, breadcrumb, sidebar, hasMermaid }) {
308308
.docs-sidebar .docs-nav-overview { margin-bottom: 0.3rem; color: var(--ink); font-weight: 700; }
309309
.docs-nav-section > summary, .docs-nav-branch > summary { list-style: none; cursor: pointer; }
310310
.docs-nav-section > summary::-webkit-details-marker, .docs-nav-branch > summary::-webkit-details-marker { display: none; }
311-
.docs-nav-section > summary { display: flex; align-items: center; gap: 0.4rem; padding: 0.42rem 0.62rem; color: var(--ink); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
311+
.docs-nav-section > summary { display: flex; align-items: center; gap: 0.4rem; padding: 0.42rem 0.62rem 0.42rem 0.25rem; color: var(--ink); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
312312
.docs-nav-section > summary::before, .docs-nav-branch > summary::before { content: ""; width: 0; height: 0; flex: 0 0 auto; border-top: 0.25rem solid transparent; border-bottom: 0.25rem solid transparent; border-left: 0.35rem solid currentColor; transition: transform 120ms ease; }
313+
.docs-nav-branch > summary::before { position: absolute; left: 0.45rem; }
313314
.docs-nav-section[open] > summary::before, .docs-nav-branch[open] > summary::before { transform: rotate(90deg); }
314315
.docs-nav-section-items { display: grid; gap: 0.12rem; padding-bottom: 0.35rem; }
315316
.docs-nav-item { display: grid; gap: 0.12rem; }
316-
.docs-nav-branch > summary { display: flex; align-items: center; gap: 0.4rem; color: var(--muted); }
317-
.docs-nav-branch > summary > a { min-width: 0; flex: 1; }
318-
.docs-nav-children { display: grid; gap: 0.08rem; margin: 0.05rem 0 0.2rem 2rem; padding-left: 0.5rem; border-left: 1px solid var(--border); }
317+
.docs-nav-branch > summary { position: relative; display: flex; align-items: center; color: var(--muted); }
318+
.docs-nav-item > a, .docs-nav-branch > summary > a { min-width: 0; padding-left: 1.35rem; }
319+
.docs-nav-branch > summary > a { flex: 1; }
320+
.docs-nav-children { display: grid; gap: 0.08rem; margin: 0.05rem 0 0.2rem 0.65rem; padding-left: 0.25rem; border-left: 1px solid var(--border); }
319321
.docs-nav-children a { font-size: 0.8rem; }
320322
.docs-page { min-width: 0; }
321323
.doc-shell.docs-page { max-width: none; border: 0; border-radius: 0; background: transparent; box-shadow: none; padding: 0; }

‎tests/docs-build.test.mjs‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -333,8 +333,10 @@ test("documentation generator emits the main routes", async () => {
333333
assert.match(rssHtml, /<details class="docs-nav-section"><summary>Ecosystem<\/summary>/);
334334
assert.match(rssHtml, /<details class="docs-nav-item docs-nav-branch"><summary><a href="\/docs\/reference\/pd-edge\/">pd-edge<\/a><\/summary><div class="docs-nav-children">[\s\S]*href="\/docs\/reference\/pd-edge\/full-dag\/">Full DAG Graphs<\/a>/);
335335
assert.match(rssHtml, /<details class="docs-nav-item docs-nav-branch"><summary><a href="\/docs\/reference\/rustscript\/">RustScript<\/a><\/summary><div class="docs-nav-children">[\s\S]*href="\/docs\/reference\/rustscript\/development\/">Development and tooling<\/a>/);
336-
assert.match(rssHtml, /\.docs-nav-branch > summary \{[^}]*gap: 0\.4rem;/);
337-
assert.match(rssHtml, /\.docs-nav-children \{[^}]*margin: 0\.05rem 0 0\.2rem 2rem;[^}]*padding-left: 0\.5rem;/);
336+
assert.match(rssHtml, /\.docs-nav-section > summary \{[^}]*padding: 0\.42rem 0\.62rem 0\.42rem 0\.25rem;/);
337+
assert.match(rssHtml, /\.docs-nav-item > a, \.docs-nav-branch > summary > a \{[^}]*padding-left: 1\.35rem;/);
338+
assert.match(rssHtml, /\.docs-nav-branch > summary::before \{[^}]*position: absolute;[^}]*left: 0\.45rem;/);
339+
assert.match(rssHtml, /\.docs-nav-children \{[^}]*margin: 0\.05rem 0 0\.2rem 0\.65rem;[^}]*padding-left: 0\.25rem;/);
338340
assert.doesNotMatch(rssHtml, />[^<]*reference<\/h1>/i);
339341
assert.match(rssHtml, /<table class="docs-table">/);
340342
assert.match(rssHtml, /<span class="tok-kw">use<\/span>/);

0 commit comments

Comments
 (0)