Compare commits

...

39 Commits

Author SHA1 Message Date
Mark Dumay
9d59c0ba0d Merge pull request #774 from gethinode/develop
Refactor download button
2024-02-15 05:50:58 +01:00
Mark Dumay
22bfb75c82 Merge branch 'main' into develop 2024-02-15 05:39:03 +01:00
Mark Dumay
2b9a0aa085 Merge pull request #773 from gethinode/hugo-mod-dependencies
Update Hugo module dependencies
2024-02-15 05:38:04 +01:00
Mark Dumay
d36c70b98e Refactor download button 2024-02-15 05:37:36 +01:00
markdumay
941c0f4954 fix: update Hugo module dependencies 2024-02-15 03:18:23 +00:00
Mark Dumay
94867de265 Merge pull request #772 from gethinode/develop
Improve rendering of TOC dropdown
2024-02-14 06:12:55 +01:00
Mark Dumay
02d4aafd10 Merge branch 'main' into develop 2024-02-14 06:07:59 +01:00
Mark Dumay
fcb64b9e77 Bump package release 2024-02-14 06:04:26 +01:00
Mark Dumay
ed764e14f5 Improve rendering of TOC dropdown 2024-02-14 06:03:35 +01:00
Mark Dumay
0b20d24918 Merge pull request #771 from gethinode/develop
Support preloading of local font
2024-02-13 05:05:35 +01:00
Mark Dumay
00ef30b768 Merge branch 'main' into develop 2024-02-13 04:55:56 +01:00
Mark Dumay
cb6402ac92 Support preloading of local font 2024-02-13 04:55:19 +01:00
Mark Dumay
89758426a9 Merge pull request #770 from deining/dependabot-github-actions
dependabot: check for updates to GitHub actions
2024-02-13 04:18:28 +01:00
Andreas Deininger
d48c6ab314 dependabot: check for updates to GitHub actions 2024-02-12 20:22:45 +01:00
Mark Dumay
aa5e6c6189 Merge pull request #766 from gethinode/develop
Fix navbar on reload and include version data
2024-02-11 12:08:54 +01:00
Mark Dumay
5bf7712307 Merge branch 'main' into develop 2024-02-11 11:56:23 +01:00
Mark Dumay
ddb847c974 Include Hinode version in metadata 2024-02-11 11:22:29 +01:00
Mark Dumay
9e52107dbf Fix navbar style on page reloads and theme updates 2024-02-11 08:28:16 +01:00
Mark Dumay
e1011919a5 Merge pull request #765 from gethinode/develop
Refactor navbar to use color themes in overlay mode
2024-02-11 07:30:57 +01:00
Mark Dumay
7c3aed4822 Merge branch 'main' into develop 2024-02-11 07:24:21 +01:00
Mark Dumay
dbe2c6bb59 Bump package release 2024-02-11 07:23:46 +01:00
Mark Dumay
9e644185f2 Refactor navbar to use color themes in overlay mode 2024-02-11 07:23:01 +01:00
Mark Dumay
9a12ce32d3 Merge pull request #762 from gethinode/develop
Update Netlify build environment
2024-02-11 05:11:13 +01:00
Mark Dumay
66d6a89431 Merge branch 'main' into develop 2024-02-09 07:36:50 +01:00
Mark Dumay
b7a605ea9c Update Netlify build environment 2024-02-09 07:36:19 +01:00
Mark Dumay
a2b1cca1ab Merge pull request #761 from gethinode/develop
Use placeholder when button title is missing
2024-02-09 07:36:01 +01:00
Mark Dumay
b8cd3dbee6 Merge branch 'main' into develop 2024-02-09 07:27:00 +01:00
Mark Dumay
fe46126e19 Use placeholder when title is missing 2024-02-09 07:25:43 +01:00
Mark Dumay
a439623119 Restore macOS lint and build 2024-02-09 07:19:32 +01:00
Mark Dumay
86713488b4 Merge pull request #760 from gethinode/develop
Fix sidebar rendering
2024-02-08 05:54:47 +01:00
Mark Dumay
fbaa5bcfa7 Merge branch 'main' into develop 2024-02-08 05:45:59 +01:00
Mark Dumay
23deaf6df3 Fix sidebar rendering 2024-02-08 05:45:34 +01:00
Mark Dumay
4db9c6fde8 Merge pull request #759 from gethinode/develop
Refactor single page template
2024-02-08 05:22:42 +01:00
Mark Dumay
67ad2fe076 Merge branch 'main' into develop 2024-02-08 05:16:39 +01:00
Mark Dumay
00e169512c Refactor single page template 2024-02-08 05:16:04 +01:00
Mark Dumay
3171f065eb Merge pull request #758 from gethinode/develop
Refactor optional scripts
2024-02-07 19:10:52 +01:00
Mark Dumay
5dcb44b2d0 Merge branch 'main' into develop 2024-02-07 19:03:04 +01:00
Mark Dumay
b54c415f39 Bump package release 2024-02-07 19:02:22 +01:00
Mark Dumay
7ecc818ca1 Refactor optional scripts 2024-02-07 19:01:56 +01:00
26 changed files with 188 additions and 132 deletions

View File

@@ -3,6 +3,11 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
- package-ecosystem: "npm"
directory: "/"
schedule:

View File

@@ -41,10 +41,7 @@ jobs:
strategy:
matrix:
os: [windows-latest, ubuntu-latest]
# 2024-02-07: temp disabled macOS due to Dart Sass installation error
# see https://github.com/sass/homebrew-sass/issues/57
# os: [macos-latest, windows-latest, ubuntu-latest]
os: [macos-latest, windows-latest, ubuntu-latest]
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
node-version: [18.x, 20.x]

View File

@@ -3,7 +3,36 @@ const togglers = document.querySelectorAll('.main-nav-toggler')
const modeSelectors = document.querySelectorAll('.switch-mode-collapsed')
const colorsBG = ['body', 'secondary', 'tertiary']
function updateNavbar () {
if (window.scrollY > 75) {
navbar.classList.add('nav-active')
const storedTheme = localStorage.getItem('theme')
navbar.setAttribute('data-bs-theme', storedTheme)
} else {
navbar.classList.remove('nav-active')
const defaultTheme = navbar.getAttribute('data-bs-overlay')
navbar.setAttribute('data-bs-theme', defaultTheme)
}
}
if ((navbar !== null) && (window.performance.getEntriesByType)) {
if (window.performance.getEntriesByType('navigation')[0].type === 'reload') {
updateNavbar()
}
}
if (navbar !== null && togglers !== null) {
// observe state changes to the site's color mode
const html = document.querySelector('html')
const config = {
attributes: true,
attributeFilter: ['data-bs-theme']
}
const Observer = new MutationObserver((mutationrecords) => {
updateNavbar()
})
Observer.observe(html, config)
// initialize background color
const color = (navbar.getAttribute('data-navbar-color') || 'body')
const bg = colorsBG.includes(color) ? `var(--bs-${color}-bg)` : `var(--bs-navbar-color-${color})`
@@ -11,11 +40,7 @@ if (navbar !== null && togglers !== null) {
// set the navbar background color to opaque when scrolling past a breakpoint
window.onscroll = () => {
if (window.scrollY > 75) {
navbar.classList.add('nav-active')
} else {
navbar.classList.remove('nav-active')
}
updateNavbar()
}
// set the navbar background color to opaque when expanded

View File

@@ -41,28 +41,6 @@
box-shadow: $box-shadow-sm;
}
.navbar-overlay-dark {
--bs-navbar-color: #{$navbar-dark-color};
--bs-navbar-hover-color: #{$navbar-dark-hover-color};
--bs-navbar-disabled-color: #{$navbar-dark-disabled-color};
--bs-navbar-active-color: #{$navbar-dark-active-color};
--bs-navbar-brand-color: #{$navbar-dark-brand-color};
--bs-navbar-brand-hover-color: #{$navbar-dark-brand-hover-color};
--bs-navbar-toggler-border-color: #{$navbar-dark-toggler-border-color};
--bs-navbar-toggler-color: white;
}
.navbar-overlay-light, .navbar-overlay-dark.nav-active, .navbar-overlay-dark.navbar-expanded {
--bs-navbar-color: #{$navbar-light-color};
--bs-navbar-hover-color: #{$navbar-light-hover-color};
--bs-navbar-disabled-color: #{$navbar-light-disabled-color};
--bs-navbar-active-color: #{$navbar-light-active-color};
--bs-navbar-brand-color: #{$navbar-light-brand-color};
--bs-navbar-brand-hover-color: #{$navbar-light-brand-hover-color};
--bs-navbar-toggler-border-color: #{$navbar-light-toggler-border-color};
--bs-navbar-toggler-color: black;
}
.nav-item .vr {
color: var(--bs-navbar-color);
}

View File

@@ -50,6 +50,9 @@
#toc-collapse {
border-color: var(--bs-secondary-color) !important;
border-radius: 0 0 var(--bs-border-radius) var(--bs-border-radius) !important;
margin-top: -1.5rem;
padding-top: 1.5rem !important;
}
.toc-button {
@@ -60,6 +63,8 @@
--bs-btn-active-bg: var(--bs-body-bg);
--bs-btn-active-border-color: var(--bs-primary);
background-color: var(--#{$prefix}body-bg) !important;
&.active,
&:hover,
&:focus {

View File

@@ -162,6 +162,7 @@
themeFont = "Inter"
# themeFontPath = "https://fonts.googleapis.com/css2?family=Inter:wght@200;300;600&display=swap" # external path
themeFontPath = "/fonts" # local path
themeFontPreload = "/fonts/inter-v12-latin-regular.woff2"
fontSizeBase = "1rem" # assumes the browser default, typically '16px'
# toml-docs-end font
# toml-docs-start build

View File

@@ -157,6 +157,7 @@
themeFont = "Inter"
# themeFontPath = "https://fonts.googleapis.com/css2?family=Inter:wght@200;300;600&display=swap" # external path
themeFontPath = "/fonts" # local path
themeFontPreload = "/fonts/inter-v12-latin-regular.woff2"
purge = true
# toml-docs-end theme-colors

View File

@@ -15,6 +15,7 @@
"form",
"h2",
"h3",
"h5",
"head",
"hr",
"html",
@@ -307,6 +308,11 @@
"navbar-toggler",
"next",
"no-js",
"offcanvas",
"offcanvas-body",
"offcanvas-header",
"offcanvas-start",
"offcanvas-title",
"order-0",
"order-1",
"order-first",
@@ -520,6 +526,8 @@
"navbar-sample-collapse",
"navigation",
"notification",
"offcanvas-label",
"offcanvass-sidebar",
"persona",
"projecten",
"projects",

2
go.mod
View File

@@ -10,7 +10,7 @@ require (
github.com/gethinode/mod-katex v1.0.5 // indirect
github.com/gethinode/mod-leaflet v1.0.0 // indirect
github.com/gethinode/mod-lottie v1.4.2 // indirect
github.com/gethinode/mod-utils/v2 v2.0.3 // indirect
github.com/gethinode/mod-utils/v2 v2.1.0 // indirect
github.com/nextapps-de/flexsearch v0.0.0-20240110101704-4c3966709f85 // indirect
github.com/twbs/bootstrap v5.3.2+incompatible // indirect
)

2
go.sum
View File

@@ -144,6 +144,8 @@ github.com/gethinode/mod-utils/v2 v2.0.2 h1:pocFT/mWPcfmABltZwe76D1IB3TZIrD1k1kH
github.com/gethinode/mod-utils/v2 v2.0.2/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
github.com/gethinode/mod-utils/v2 v2.0.3 h1:4BsRNGi+0a3Mq021Gq/TwDNiyuIfZ8xnpYU0DkNbUYI=
github.com/gethinode/mod-utils/v2 v2.0.3/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
github.com/gethinode/mod-utils/v2 v2.1.0 h1:5I0IN/AX5qPFYx7tjWXk59GBevTJzixxZUGj9MJ0b8M=
github.com/gethinode/mod-utils/v2 v2.1.0/go.mod h1:GTYeknoLujNjfDxI+V9Dcug26CYJSTJ0B/U2dagw9oY=
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3 h1:H/qVR5O4BXjRjD+5PZB+r4ug2BSJ2Of4RtwOntd+OKo=
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
github.com/nextapps-de/flexsearch v0.0.0-20240108021025-afd75f742f22 h1:re7L8FxbXQpnX8BgzkdUnDpsUmloGNyLmiy2ZCln8pg=

View File

@@ -1,31 +1,3 @@
{{- define "partials/optional-scripts.html" -}}
{{ $page_modules := slice }}
{{ if reflect.IsMap .Params.modules }}
{{ $page_modules = .Params.modules }}
{{ else }}
{{ $page_modules = $page_modules | append .Params.modules }}
{{ end }}
{{- $modules := site.Params.modules.optional | intersect $page_modules -}}
{{- range $index, $mod := $modules -}}
{{- $filename := printf "js/%s.bundle.js" $mod -}}
{{- $match := printf "js/modules/%s/**.js" $mod -}}
{{- $skipTemplate := false -}}
{{- if reflect.IsSlice site.Params.modules.disableTemplate -}}
{{- if in site.Params.modules.disableTemplate $mod}}
{{- $skipTemplate = true -}}
{{- end -}}
{{- end -}}
{{ $state := "" }}
{{- with (index site.Params.modules $mod) -}}
{{- with index . "state" }}{{ $state = . }}{{ end -}}
{{- end -}}
{{- partial "footer/scripts.html" (dict "filename" $filename "match" $match "header" false "skipTemplate" $skipTemplate "state" $state "page" .) }}
{{- end -}}
{{- end -}}
{{- /* Set version-aware sidebar menu */ -}}
{{- $version := partial "utilities/GetVersion.html" (dict "page" . "base" true) -}}
{{- $.Scratch.Set "version" $version -}}
@@ -99,6 +71,6 @@
{{- partial "footer/toast-container.html" . -}}
{{- partialCached "footer/scripts.html" (dict "header" false "page" . "core" true) }}
{{- partial "partials/optional-scripts.html" . -}}
{{- partial "footer/optional-scripts.html" . -}}
</body>
</html>

View File

@@ -1,29 +1,9 @@
{{- define "partials/single-main.html" -}}
{{- $breakpoint := $.Scratch.Get "breakpoint" -}}
{{ if .Site.Params.navigation.breadcrumb }}{{ partial "assets/breadcrumb.html" (dict "page" .) }}{{ end -}}
{{ .Render "single/header" }}
{{- if and .Site.Params.navigation.toc .Params.includeToc | default true -}}
<div class="d-{{ $breakpoint.current }}-none pb-5">{{ partial "assets/toc-dropdown.html" (dict "page" .) }}</div>
{{- end -}}
{{ .Render "single/body" }}
{{ .Render "single/footer" }}
{{ end -}}
{{ define "main" -}}
{{- $menu := .Scratch.Get "sidebar" -}}
{{- $version := .Scratch.Get "version" -}}
{{- $breakpoint := $.Scratch.Get "breakpoint" -}}
{{ $sidebar := "" }}
{{- $hasSidebar := .Site.Params.navigation.sidebar | default true -}}
{{ if and $menu $hasSidebar }}{{ $sidebar = partial "assets/sidebar.html" (dict "page" . "menu" $menu "version" $version) }}{{ end }}
{{ $sidebar := .Render "single/sidebar" }}
{{ $toc := .Render "single/panel-toc" }}
{{ with $sidebar -}}
{{ with $sidebar }}
<div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvass-sidebar" aria-inledby="offcanvas-label">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="offcanvas-label">{{ strings.FirstUpper $.Section }}</h5>
@@ -36,13 +16,13 @@
{{ end }}
<div class="container-xxl flex-fill p-4 px-xxl-0">
{{ if $hasSidebar -}}
{{ if $sidebar -}}
<div class="row row-cols-1 row-cols-{{ $breakpoint.current }}-2 row-cols-{{ $breakpoint.next }}-3">
<div class="col col-{{ $breakpoint.next }}-2 d-none d-{{ $breakpoint.next }}-block sidebar-overflow sticky-top pt-5">
{{ $sidebar | safeHTML }}
</div>
<div class="col-12 col-{{ $breakpoint.current }}-9 col-{{ $breakpoint.next }}-8 mb-5 p-4">
{{ partial "partials/single-main.html" . }}
{{ .Render "single/main" }}
</div>
<div class="col col-{{ $breakpoint.current }}-3 col-{{ $breakpoint.next }}-2 d-none d-{{ $breakpoint.current }}-block pt-5">
{{ $toc | safeHTML }}
@@ -51,7 +31,7 @@
{{ else }}
<div class="row row-cols-1 row-cols-{{ $breakpoint.current }}-2">
<div class="col col-{{ $breakpoint.prev }}-12 col-{{ $breakpoint.current }}-9">
{{ partial "partials/single-main.html" . }}
{{ .Render "single/main" }}
</div>
<div class="col col-{{ $breakpoint.current }}-3 d-none d-{{ $breakpoint.current }}-block">
{{ $toc | safeHTML }}

View File

@@ -0,0 +1,11 @@
{{- $breakpoint := $.Scratch.Get "breakpoint" -}}
{{ if .Site.Params.navigation.breadcrumb }}{{ partial "assets/breadcrumb.html" (dict "page" .) }}{{ end -}}
{{ .Render "single/header" }}
{{- if and .Site.Params.navigation.toc .Params.includeToc | default true -}}
<div class="d-{{ $breakpoint.current }}-none pb-5">{{ partial "assets/toc-dropdown.html" (dict "page" .) }}</div>
{{- end -}}
{{ .Render "single/body" }}
{{ .Render "single/footer" }}

View File

@@ -1,17 +1,15 @@
{{- $download := .Params.download -}}
{{- if and $download (not (fileExists (path.Join "static" $download))) -}}
{{- errorf "Cannot find download file for page '%s': %s" .File.Path $download -}}
{{- end -}}
{{- $toc := .Site.Params.navigation.toc -}}
{{ if $toc }}
{{- $includeToc := false -}}
{{- if .Site.Params.navigation.toc -}}
{{ $includeToc = true }}
{{ if isset .Params "includeToc" }}
{{ $toc = .Params.includeToc }}
{{ $includeToc = .Params.includeToc }}
{{ else }}
{{- with (index site.Params.pages .Type) -}}
{{ if isset . "includetoc" }}
{{ $toc = index . "includetoc" }}
{{ if ne (printf "%T" $toc) "bool" }}
{{ $includeToc = index . "includetoc" }}
{{ if ne (printf "%T" $includeToc) "bool" }}
{{ errorf "Expected bool value in site parameters: pages.%s.includeToc" $.Type }}
{{ end }}
{{ end }}
@@ -19,24 +17,20 @@
{{ end }}
{{ end }}
<div class="toc toc-sidebar mb-5 my-md-0 ps-xl-3 mb-lg-5 p-3 text-body-secondary sticky-top">
{{ with $download }}
{{ $title := (T "download" ) }}
{{ $lang := strings.TrimPrefix "." (path.Ext (path.BaseName .)) }}
{{ if and $lang (ne (string site.LanguageCode) $lang) }}
{{ range site.Languages }}
{{ if eq .LanguageCode $lang }}
{{ $title = printf "%s (%s)" (T "download") (T (printf "lang_%s" .LanguageCode)) }}
{{ end }}
{{ end }}
{{ end }}
<div class="mb-5 text-center">
{{ $attr := dict "download" (path.Base .) }}
{{ partial "assets/button.html" (dict "href" . "title" $title "color" "primary" "outline" "true" "icon" "fas download" "size" "sm" "attributes" $attr) }}
<div class="toc toc-sidebar mb-5 my-md-0 mb-lg-5 p-3 text-body-secondary sticky-top">
{{ if $download }}
<div class="mb-5 p-0">
{{ partial "assets/download.html" (dict
"download" $download
"outline" true
"size" "sm"
"order" "last"
) }}
</div>
{{ end }}
{{ if $toc }}
{{ partial "assets/toc.html" (dict "page" .) }}
{{ if $includeToc }}
{{ $index := partial "assets/toc.html" (dict "page" .) }}
{{ $index | safeHTML }}
{{ end -}}
</div>

View File

@@ -0,0 +1,7 @@
{{- $menu := .Scratch.Get "sidebar" -}}
{{- $version := .Scratch.Get "version" -}}
{{ $sidebar := "" }}
{{- $hasSidebar := .Site.Params.navigation.sidebar | default true -}}
{{ if and $menu $hasSidebar }}
{{ partial "assets/sidebar.html" (dict "page" . "menu" $menu "version" $version) }}
{{ end }}

View File

@@ -16,8 +16,8 @@
{{- $title := trim .title " \r\n" -}}
{{- $icon := .icon }}
{{- if not (or $title $icon) -}}
{{- errorf "partial [assets/button.html] - Missing element title or icon" -}}
{{ $error = true }}
{{- warnf "partial [assets/button.html] - Missing element title or icon" -}}
{{ $title = T "linkPlaceholder" }}
{{- end -}}
{{- $id := .id }}

View File

@@ -0,0 +1,38 @@
{{- $download := partial "utilities/GetTargetPath.html" (dict "path" .download "page" page) -}}
{{- $color := .color | default "primary" -}}
{{- $outline := .outline | default true -}}
{{- $icon := .icon | default "fas download" -}}
{{- $size := .size | default "sm" -}}
{{- $justify := .justify -}}
{{- $class := .class -}}
{{- $minimal := .minimal | default false -}}
{{- if and $download (not (fileExists (path.Join "static" $download))) -}}
{{- errorf "Cannot find download file for page '%s': %s" page.File.Path $download -}}
{{- end -}}
{{ with $download }}
{{ $title := "" }}
{{ if not $minimal }}{{ $title = (T "download" ) }}{{ end }}
{{ $lang := strings.TrimPrefix "." (path.Ext (path.BaseName .)) }}
{{ if and $lang (ne (string site.LanguageCode) $lang) }}
{{ range site.Languages }}
{{ if eq .LanguageCode $lang }}
{{ $title = printf "%s (%s)" (T "download") (T (printf "lang_%s" .LanguageCode)) }}
{{ end }}
{{ end }}
{{ end }}
{{ $attr := dict "download" (path.Base .) }}
{{ partial "assets/button.html" (dict
"href" .
"title" $title
"color" $color
"outline" $outline
"icon" $icon
"size" $size
"justify" $justify
"class" $class
"attributes" $attr
) }}
{{ end }}

View File

@@ -173,10 +173,13 @@
<div class="container-fluid {{ if $fixed }}fixed-top{{ end }} p-0{{ with $class }} {{ . }}{{ end }}">
{{- partial "assets/page-alert.html" (dict "page" $page) -}}
<nav class="navbar p-4
{{ if $overlay }}navbar-overlay-{{ $overlayMode }}{{ else }}{{ with $color }}bg-{{ . }}{{ end }}{{ end }}
{{ if $fixed }}navbar-fixed-top{{ end }} navbar-expand-{{ $size }}
{{ if $contrast }}navbar-contrast{{ end }}"
{{ with $theme }}data-bs-theme="{{ . }}"{{ end }}
{{- if not $overlay }}{{ with $color }} bg-{{ . }}{{ end }}{{ end -}}
{{ if $fixed }} navbar-fixed-top{{ end }} navbar-expand-{{ $size -}}
{{ if $contrast }} navbar-contrast{{ end }}"
{{ if $overlay }}
data-bs-theme="{{ $overlayMode }}"
data-bs-overlay="{{ $overlayMode }}"
{{ else }}{{ with $theme }}data-bs-theme="{{ . }}"{{ end }}{{ end }}
{{ if $overlay }}data-navbar-color="{{ $color }}"{{ end }}
>
<div class="container-xxl p-0">

View File

@@ -35,7 +35,7 @@
{{- $sort := $page.Site.Params.sharing.sort | default "weight" -}}
{{- $list = sort $list $sort $order -}}
{{- $download := $page.Params.download -}}
{{- $download := partial "utilities/GetTargetPath.html" (dict "path" $page.Params.download "page" $page) -}}
{{- if and $download (not (fileExists (path.Join "static" $download))) -}}
{{- errorf "Cannot find download file for page '%s': %s" $page.File.Path $download -}}
{{- end -}}

View File

@@ -26,15 +26,14 @@
"icon" "fas sort"
"justify" "between"
"collapse" "toc-collapse"
"order" "last")
-}}
"order" "last"
"spacing" false
) -}}
</div>
<p>
<div class="collapse border bg-body-tertiary rounded p-1 navbar-nav-scroll" id="toc-collapse">
<div class="toc toc-panel text-body p-2">
<small>{{ $page.TableOfContents }}</small>
</div>
<div class="collapse border bg-body-tertiary rounded p-1 navbar-nav-scroll" id="toc-collapse">
<div class="toc toc-panel text-body p-2">
<small>{{ $page.TableOfContents }}</small>
</div>
</p>
</div>
{{ end -}}

View File

@@ -18,6 +18,6 @@
<!-- Main code -->
{{ if and (not $error) (gt $items 1) -}}
<strong class="d-block h6 my-2 pb-2 border-bottom">{{ T "toc" }}</strong>
<strong class="d-block h6 my-2 pb-2">{{ T "toc" }}:</strong>
{{ $page.TableOfContents }}
{{ end -}}

View File

@@ -0,0 +1,25 @@
{{ $page_modules := slice }}
{{ if reflect.IsMap .Params.modules }}
{{ $page_modules = .Params.modules }}
{{ else }}
{{ $page_modules = $page_modules | append .Params.modules }}
{{ end }}
{{- $modules := site.Params.modules.optional | intersect $page_modules -}}
{{- range $index, $mod := $modules -}}
{{- $filename := printf "js/%s.bundle.js" $mod -}}
{{- $match := printf "js/modules/%s/**.js" $mod -}}
{{- $skipTemplate := false -}}
{{- if reflect.IsSlice site.Params.modules.disableTemplate -}}
{{- if in site.Params.modules.disableTemplate $mod}}
{{- $skipTemplate = true -}}
{{- end -}}
{{- end -}}
{{ $state := "" }}
{{- with (index site.Params.modules $mod) -}}
{{- with index . "state" }}{{ $state = . }}{{ end -}}
{{- end -}}
{{- partial "footer/scripts.html" (dict "filename" $filename "match" $match "header" false "skipTemplate" $skipTemplate "state" $state "page" .) }}
{{- end -}}

View File

@@ -1,8 +1,10 @@
{{ define "head" }}
{{- $version := strings.TrimPrefix "v" (partialCached "assets/version.html" .) -}}
{{ $desc := .Page.Description | default (.Page.Content | safeHTML | truncate 150) -}}
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
{{ hugo.Generator}}
{{ hugo.Generator }}
<meta name="theme" content="{{ printf "Hinode %s" $version }}">
{{ partialCached "head/stylesheet-core.html" . -}}
{{ $page_modules := slice | append .Page.Params.modules }}
@@ -16,6 +18,9 @@
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="{{ .Site.Params.style.themeFontPath | default "https://fonts.googleapis.com/css2?family=Inter:wght@200;300;600&display=swap" }}">
{{ else if .Site.Params.style.themeFontPreload }}
{{ $font := .Site.Params.style.themeFontPreload }}
<link rel="preload" href="{{ $font }}" as="font" type="font/{{ strings.TrimPrefix "." (path.Ext $font) }}" crossorigin>
{{- end -}}
{{ partial "head/seo.html" . }}
{{ partialCached "head/favicon.html" . -}}

View File

@@ -4,8 +4,8 @@
command = "npm run build:example"
[build.environment]
DART_SASS_VERSION = "1.69.7"
HUGO_VERSION = "0.121.1"
DART_SASS_VERSION = "1.70.0"
HUGO_VERSION = "0.122.0"
HUGO_ENV = "production"
HUGO_ENABLEGITINFO = "true"
NODE_VERSION = "18.19.0"

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@gethinode/hinode",
"version": "0.23.0-beta",
"version": "0.23.0-beta5",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@gethinode/hinode",
"version": "0.23.0-beta",
"version": "0.23.0-beta5",
"license": "MIT",
"devDependencies": {
"@fullhuman/postcss-purgecss": "^5.0.0",

View File

@@ -1,6 +1,6 @@
{
"name": "@gethinode/hinode",
"version": "0.23.0-beta",
"version": "0.23.0-beta5",
"description": "Hinode is a clean documentation and blog theme for Hugo, an open-source static site generator",
"keywords": [
"hugo",