Skip to content

Commit ad327fe

Browse files
committed
improved page layout
1 parent da7eea8 commit ad327fe

File tree

7 files changed

+58
-26
lines changed

7 files changed

+58
-26
lines changed

src/partials/navbar.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@
99
<span class="navbar-toggler-icon"></span>
1010
</button>
1111
<div class="collapse navbar-collapse" tabindex="-1" id="navbar-collapse">
12-
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
12+
<ul class="navbar-nav me-auto mb-2 mb-md-0">
1313
<li class="nav-item d-none d-md-inline-block"><a class="nav-link" href="/">
1414
<img class="bi" width="32" height="32" src="/img/icon32.svg" alt="webOS Homebrew"/>
1515
</a></li>
16-
<li class="nav-item"><a class="nav-link my-md-1" href="https://repo.webosbrew.org/">Apps</a></li>
17-
<li class="nav-item"><a class="nav-link my-md-1" href="/develop">Develop</a></li>
16+
<li class="nav-item"><a class="nav-link" href="https://repo.webosbrew.org/">Apps</a></li>
17+
<li class="nav-item"><a class="nav-link" href="/develop">Develop</a></li>
1818
</ul>
1919
</div>
2020
</div>

src/partials/page.hbs

Lines changed: 21 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,27 @@
1010
</head>
1111
<body data-bs-theme="dark" data-bs-spy="scroll" data-bs-target="#toc-nav">
1212
{{> navbar }}
13-
<main class="bg-dark-subtle page">
14-
{{#if sidebar}}
15-
<aside class="sidebar">
16-
{{{sidebar}}}
17-
</aside>
18-
{{/if}}
19-
<article class="page-container container py-4 {{#if toc}}with-toc{{/if}}">
20-
{{> @partial-block }}
21-
</article>
13+
<main class="bg-dark-subtle">
14+
<div class="page container">
15+
{{#if sidebar}}
16+
<aside id="page-sidebar" class="sidebar pe-2 offcanvas-lg offcanvas-start">
17+
<div class="sidebar-content offcanvas-body">
18+
{{{sidebar}}}
19+
</div>
20+
</aside>
21+
{{/if}}
22+
<article class="page-container py-4 {{#if toc}}with-toc{{/if}}">
23+
{{#if sidebar}}
24+
<div class="page-sidebar-toggle d-lg-none">
25+
<button class="btn btn-sm btn-outline-secondary" type="button" data-bs-toggle="offcanvas"
26+
data-bs-target="#page-sidebar">
27+
<i class="bi bi-list"></i> Pages
28+
</button>
29+
</div>
30+
{{/if}}
31+
{{> @partial-block }}
32+
</article>
33+
</div>
2234
</main>
2335
{{> footer }}
2436
</body>

src/scss/page/_index.scss

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,40 @@
66
@import "bootstrap/scss/utilities";
77

88

9-
main.page {
9+
main .page {
1010
img {
1111
max-width: 100%;
1212
}
1313

1414
@import "sidebar";
1515
@import "toc";
1616

17+
.hljs {
18+
background-color: var(--code-bg);
19+
@extend .border;
20+
@extend .rounded-3;
21+
}
22+
23+
.tabbed-code-blocks {
24+
.hljs {
25+
background: none !important;
26+
@extend .border-0;
27+
@extend .rounded-0;
28+
}
29+
30+
.tab-content {
31+
background-color: var(--code-bg) !important;
32+
}
33+
}
1734

1835
article.page-container {
1936
width: 100%;
2037

2138
&.with-toc {
2239
@include media-breakpoint-up(md) {
2340
display: grid;
24-
grid-template-areas: "intro toc" "content toc";
25-
grid-template-rows: auto 1fr;
41+
grid-template-areas: "sb-toggle toc" "intro toc" "content toc";
42+
grid-template-rows: auto auto 1fr;
2643
grid-template-columns: 3fr 1fr;
2744

2845
.page-intro {

src/scss/page/_sidebar.scss

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@
66
@import "bootstrap/scss/utilities";
77

88
aside.sidebar {
9-
display: none;
10-
@extend .mt-md-3;
11-
@extend .ms-3;
9+
@extend .mt-lg-3;
10+
@extend .ms-lg-3;
1211

13-
> ul, ol {
12+
width: min(300px, 80vw);
13+
14+
.sidebar-content > ul, ol {
1415

1516
> li {
1617
@extend .fw-semibold;
@@ -67,16 +68,16 @@ aside.sidebar {
6768
}
6869
}
6970

70-
@include media-breakpoint-up(md) {
71+
@include media-breakpoint-up(lg) {
7172
& {
7273
display: block;
7374
width: 25%;
74-
height: 100%;
75+
height: min-content;
7576

7677
min-width: unset;
7778

7879
position: sticky;
79-
top: var(--navbar-height);
80+
top: calc(1.5rem + var(--navbar-height));
8081
}
8182
}
8283
}

src/scss/styles.scss

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ $primary: #cf0652;
2222

2323
:root {
2424
--navbar-height: 65px;
25+
--code-bg: #111112;
2526
}
2627

2728
html {

src/views/develop/guides/_sidebar.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
* Startup Script
99
* System Mods
1010
* :bi-bug:Debugging
11+
* Inspecting Web App
1112
* GDB
1213
* :bi-upload:Publishing
1314
* Requirements

webpack/remark/tabbed-code-block.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,28 +32,28 @@ export default function tabbedCodeBlock() {
3232
const tabs = parent.children.slice(firstTab, index + 1);
3333
const prefix = `code-${tabs[0].position?.start?.offset}`;
3434
elem.value = toHtml(html`
35-
<div>
35+
<div class="tabbed-code-blocks">
3636
<ul class="nav nav-tabs" role="tablist">
3737
${tabs.map((tab, index) => {
3838
const tabId = `${prefix}-${tab.tabId}-tab`;
3939
const paneId = `${prefix}-${tab.tabId}-pane`;
4040
return html`
41-
<li class="nav-item" role="presentation">
41+
<li class="nav-item text-nowrap" role="presentation">
4242
<button class="nav-link ${index === 0 ? 'active' : ''}" type="button" role="tab" id=${tabId}
4343
data-bs-toggle="tab" data-bs-target="#${paneId}" aria-controls=${paneId}
4444
aria-selected="${index === 0}">${tab.tab}
4545
</button>
4646
</li>`;
4747
})}
4848
</ul>
49-
<div class="tab-content bg-dark border-start border-end border-bottom rounded-bottom">
49+
<div class="tab-content border-start border-end border-bottom rounded-bottom mb-3">
5050
${tabs.map((tab, index) => {
5151
const tabId = `${prefix}-${tab.tabId}-tab`;
5252
const paneId = `${prefix}-${tab.tabId}-pane`;
5353
return html`
5454
<div class="tab-pane fade ${index === 0 ? 'show active' : ''}" id=${paneId} role="tabpanel"
5555
aria-labelledby=${tabId} tabindex="0">
56-
<pre class="p-3 mb-0"><code class="lang-${tab.lang}">${tab.value}</code></pre>
56+
<pre class="m-0"><code class="lang-${tab.lang}">${tab.value}</code></pre>
5757
</div>`;
5858
})}
5959
</div>

0 commit comments

Comments
 (0)