Compare commits

...

8 Commits

Author SHA1 Message Date
Mark Dumay
e0ca123aa2 Merge pull request #520 from gethinode/develop
Support sidebar links
2023-09-08 12:53:52 +02:00
Mark Dumay
ef3636befe Merge branch 'main' into develop 2023-09-08 10:31:13 +02:00
mark
5635f895df Fix #510 2023-09-08 10:30:23 +02:00
Mark Dumay
779f9b11a7 Merge pull request #519 from gethinode/hugo-mod-dependencies
Update Hugo module dependencies
2023-09-08 06:24:08 +02:00
markdumay
b0b8e9d684 fix: update Hugo module dependencies 2023-09-08 03:15:41 +00:00
Mark Dumay
b4f7163913 Merge pull request #518 from gethinode/develop
Bump package version
2023-09-07 06:39:09 +02:00
Mark Dumay
6ef4738619 Merge branch 'main' into develop 2023-09-07 06:28:24 +02:00
mark
333e4c3e07 Bump package version 2023-09-07 06:27:53 +02:00
8 changed files with 62 additions and 22 deletions

View File

@@ -10,6 +10,8 @@ github.com/gethinode/mod-flexsearch v1.3.0 h1:RbfEDw219Y1rOVp9lHmy5ePdF9lyPalDu2
github.com/gethinode/mod-flexsearch v1.3.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4= github.com/gethinode/mod-flexsearch v1.3.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
github.com/gethinode/mod-flexsearch v1.4.0 h1:5e/NVRLyWzUZ9fO/fNsM5o+O7nw+xyln2rfEOtbgfWc= github.com/gethinode/mod-flexsearch v1.4.0 h1:5e/NVRLyWzUZ9fO/fNsM5o+O7nw+xyln2rfEOtbgfWc=
github.com/gethinode/mod-flexsearch v1.4.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4= github.com/gethinode/mod-flexsearch v1.4.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
github.com/gethinode/mod-flexsearch v1.4.1 h1:z+GKvhJ4v6BsZsWVZRgbO9WcmSZEVUkb3Q9a09yXtd8=
github.com/gethinode/mod-flexsearch v1.4.1/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
github.com/gethinode/mod-fontawesome v1.2.4 h1:SqE3CQ+boaBIhrVh3MPu4nz0uoHPfEH5t60nNY1CfsI= github.com/gethinode/mod-fontawesome v1.2.4 h1:SqE3CQ+boaBIhrVh3MPu4nz0uoHPfEH5t60nNY1CfsI=
github.com/gethinode/mod-fontawesome v1.2.4/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= github.com/gethinode/mod-fontawesome v1.2.4/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-fontawesome v1.2.5 h1:RqkLRj6+s+gM4nKd0IwNMMDA8cRmxfp0fxkVH4FdAGU= github.com/gethinode/mod-fontawesome v1.2.5 h1:RqkLRj6+s+gM4nKd0IwNMMDA8cRmxfp0fxkVH4FdAGU=
@@ -18,8 +20,12 @@ github.com/gethinode/mod-fontawesome v1.3.0 h1:oudeDBlAKu8vqYxumWuq5SG5F5itm33Ng
github.com/gethinode/mod-fontawesome v1.3.0/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= github.com/gethinode/mod-fontawesome v1.3.0/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-fontawesome v1.3.1 h1:EdnBuG2B+bi06OcYmcL1NfSxHpRMEGu8TXUqEEpVH4g= github.com/gethinode/mod-fontawesome v1.3.1 h1:EdnBuG2B+bi06OcYmcL1NfSxHpRMEGu8TXUqEEpVH4g=
github.com/gethinode/mod-fontawesome v1.3.1/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= github.com/gethinode/mod-fontawesome v1.3.1/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-fontawesome v1.3.2 h1:qLJSbAFR2T33BuBtC2Iulm9wZql3cy7AhXjxc2YGzBU=
github.com/gethinode/mod-fontawesome v1.3.2/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-katex v1.0.1/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg= github.com/gethinode/mod-katex v1.0.1/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
github.com/gethinode/mod-katex v1.0.2 h1:pIG4n3qLl/IVe7BEiwn+GL8r5lOCtF6FDxlcrPKdAXk= github.com/gethinode/mod-katex v1.0.2 h1:pIG4n3qLl/IVe7BEiwn+GL8r5lOCtF6FDxlcrPKdAXk=
github.com/gethinode/mod-katex v1.0.2/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg= github.com/gethinode/mod-katex v1.0.2/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
github.com/gethinode/mod-leaflet v0.3.4 h1:oY+YQ0JiJuhFQNrk9XgFdg0NMsTUQPXNfnILp4ia4r4= github.com/gethinode/mod-leaflet v0.3.4 h1:oY+YQ0JiJuhFQNrk9XgFdg0NMsTUQPXNfnILp4ia4r4=
github.com/gethinode/mod-leaflet v0.3.4/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk= github.com/gethinode/mod-leaflet v0.3.4/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
github.com/gethinode/mod-leaflet v0.3.5 h1:69Bv/6zRXhbcTzo7TMr58h3ry47srHRpM1k81LrLbYU=
github.com/gethinode/mod-leaflet v0.3.5/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=

6
go.mod
View File

@@ -4,8 +4,8 @@ go 1.19
require ( require (
github.com/gethinode/mod-bootstrap v1.2.1 // indirect github.com/gethinode/mod-bootstrap v1.2.1 // indirect
github.com/gethinode/mod-flexsearch v1.4.0 // indirect github.com/gethinode/mod-flexsearch v1.4.1 // indirect
github.com/gethinode/mod-fontawesome v1.3.1 // indirect github.com/gethinode/mod-fontawesome v1.3.2 // indirect
github.com/gethinode/mod-katex v1.0.2 // indirect github.com/gethinode/mod-katex v1.0.2 // indirect
github.com/gethinode/mod-leaflet v0.3.4 // indirect github.com/gethinode/mod-leaflet v0.3.5 // indirect
) )

6
go.sum
View File

@@ -26,6 +26,8 @@ github.com/gethinode/mod-flexsearch v1.3.0 h1:RbfEDw219Y1rOVp9lHmy5ePdF9lyPalDu2
github.com/gethinode/mod-flexsearch v1.3.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4= github.com/gethinode/mod-flexsearch v1.3.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
github.com/gethinode/mod-flexsearch v1.4.0 h1:5e/NVRLyWzUZ9fO/fNsM5o+O7nw+xyln2rfEOtbgfWc= github.com/gethinode/mod-flexsearch v1.4.0 h1:5e/NVRLyWzUZ9fO/fNsM5o+O7nw+xyln2rfEOtbgfWc=
github.com/gethinode/mod-flexsearch v1.4.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4= github.com/gethinode/mod-flexsearch v1.4.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
github.com/gethinode/mod-flexsearch v1.4.1 h1:z+GKvhJ4v6BsZsWVZRgbO9WcmSZEVUkb3Q9a09yXtd8=
github.com/gethinode/mod-flexsearch v1.4.1/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
github.com/gethinode/mod-fontawesome v1.0.2 h1:ZSK6D20/w4y5GnfYfTBB58uHD0ChIfkpKfRGwioS9rg= github.com/gethinode/mod-fontawesome v1.0.2 h1:ZSK6D20/w4y5GnfYfTBB58uHD0ChIfkpKfRGwioS9rg=
github.com/gethinode/mod-fontawesome v1.0.2/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= github.com/gethinode/mod-fontawesome v1.0.2/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-fontawesome v1.1.0 h1:rsDzUI+3ZlS/do2ff3ne8/z3KwHeysmuA+WsXlumXXk= github.com/gethinode/mod-fontawesome v1.1.0 h1:rsDzUI+3ZlS/do2ff3ne8/z3KwHeysmuA+WsXlumXXk=
@@ -46,6 +48,8 @@ github.com/gethinode/mod-fontawesome v1.3.0 h1:oudeDBlAKu8vqYxumWuq5SG5F5itm33Ng
github.com/gethinode/mod-fontawesome v1.3.0/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= github.com/gethinode/mod-fontawesome v1.3.0/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-fontawesome v1.3.1 h1:EdnBuG2B+bi06OcYmcL1NfSxHpRMEGu8TXUqEEpVH4g= github.com/gethinode/mod-fontawesome v1.3.1 h1:EdnBuG2B+bi06OcYmcL1NfSxHpRMEGu8TXUqEEpVH4g=
github.com/gethinode/mod-fontawesome v1.3.1/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= github.com/gethinode/mod-fontawesome v1.3.1/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-fontawesome v1.3.2 h1:qLJSbAFR2T33BuBtC2Iulm9wZql3cy7AhXjxc2YGzBU=
github.com/gethinode/mod-fontawesome v1.3.2/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-katex v1.0.0 h1:me/3dIIZBkfk1mRIFt8QiAGYwYDoSG5bc2hHRtIutFc= github.com/gethinode/mod-katex v1.0.0 h1:me/3dIIZBkfk1mRIFt8QiAGYwYDoSG5bc2hHRtIutFc=
github.com/gethinode/mod-katex v1.0.0/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg= github.com/gethinode/mod-katex v1.0.0/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
github.com/gethinode/mod-katex v1.0.1 h1:809QUztxmKgMNchU+v03iMO7Ma+ISc3ZzhXYauc21rs= github.com/gethinode/mod-katex v1.0.1 h1:809QUztxmKgMNchU+v03iMO7Ma+ISc3ZzhXYauc21rs=
@@ -60,3 +64,5 @@ github.com/gethinode/mod-leaflet v0.3.3 h1:isnjja6VRFvVWBatYSouh46TXSJg2C4/E2BQT
github.com/gethinode/mod-leaflet v0.3.3/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk= github.com/gethinode/mod-leaflet v0.3.3/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
github.com/gethinode/mod-leaflet v0.3.4 h1:oY+YQ0JiJuhFQNrk9XgFdg0NMsTUQPXNfnILp4ia4r4= github.com/gethinode/mod-leaflet v0.3.4 h1:oY+YQ0JiJuhFQNrk9XgFdg0NMsTUQPXNfnILp4ia4r4=
github.com/gethinode/mod-leaflet v0.3.4/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk= github.com/gethinode/mod-leaflet v0.3.4/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=
github.com/gethinode/mod-leaflet v0.3.5 h1:69Bv/6zRXhbcTzo7TMr58h3ry47srHRpM1k81LrLbYU=
github.com/gethinode/mod-leaflet v0.3.5/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=

View File

@@ -9,9 +9,10 @@
{{- $level := .level -}} {{- $level := .level -}}
{{- $baseURL := .baseURL -}} {{- $baseURL := .baseURL -}}
{{- $group := .group -}} {{- $group := .group -}}
{{- $data := .menu -}}
{{- $doc_slug := $group.title | urlize -}} {{- $doc_slug := $group.title | urlize -}}
{{- $href := printf "%s/" (relLangURL (path.Join $baseURL $doc_slug)) -}} {{- $href := or $group.link (printf "%s/" (relLangURL (path.Join $baseURL $doc_slug))) -}}
{{- $collapsed := strings.HasPrefix $page.RelPermalink $href -}} {{- $collapsed := strings.HasPrefix $page.RelPermalink $href -}}
<li class="mb-1"> <li class="mb-1">
@@ -28,6 +29,7 @@
"level" (add $level 1) "level" (add $level 1)
"baseURL" $href "baseURL" $href
"group" $item "group" $item
"menu" $data
) )
}} }}
{{- else -}} {{- else -}}
@@ -37,6 +39,8 @@
"level" $level "level" $level
"baseURL" $href "baseURL" $href
"title" $item.title "title" $item.title
"href" $item.link
"menu" $data
) )
}} }}
{{ end -}} {{ end -}}
@@ -47,15 +51,17 @@
{{ end -}} {{ end -}}
{{- define "partials/sidebar/item.html" -}} {{- define "partials/sidebar/item.html" -}}
{{ $page := .page }} {{- $page := .page -}}
{{ $sectionBreak := .sectionBreak }} {{- $sectionBreak := .sectionBreak -}}
{{- $level := .level -}} {{- $level := .level -}}
{{ $baseURL := .baseURL}} {{- $baseURL := .baseURL -}}
{{ $title := .title}} {{- $title := .title -}}
{{- $href := .href -}}
{{- $data := .menu -}}
{{- $doc_slug := $title | urlize -}} {{- $doc_slug := $title | urlize -}}
{{- $href := printf "%s/" (relLangURL (path.Join $baseURL $doc_slug)) -}} {{- $href := or $href (printf "%s/" (relLangURL (path.Join $baseURL $doc_slug))) -}}
{{ $active := eq $page.RelPermalink $href }} {{- $active := eq (strings.TrimSuffix "/" $page.RelPermalink) (strings.TrimSuffix "/" $href) -}}
{{ if eq $level 0}} {{ if eq $level 0}}
<li class="mt-1 mb-1 {{ if $sectionBreak }}border-top{{ end }}"></li> <li class="mt-1 mb-1 {{ if $sectionBreak }}border-top{{ end }}"></li>
@@ -63,17 +69,27 @@
<li> <li>
<ul class="btn-toggle-nav list-unstyled fw-bold pb-1"> <ul class="btn-toggle-nav list-unstyled fw-bold pb-1">
<li> <li>
<a href="{{ $href }}" class="sidebar-item text-decoration-none rounded {{ if $active }}active{{ end }}"> {{ $class := "sidebar-item text-decoration-none rounded" }}
{{ $title }} {{ if $active }}{{ $class = printf "%s active" $class }}{{ end }}
</a> {{ $link := partial "utilities/link.html" (dict "destination" $href "text" $title "class" $class "page" $page) }}
{{ if $link }}
{{ print $link | safeHTML }}
{{ else }}
{{- errorf "partial [utilities/sidebar.html] - Invalid link in file: %s" ($page.Scratch.Get "sidebarFilename") -}}
{{ end }}
</li> </li>
</ul> </ul>
</li> </li>
{{ else }} {{ else }}
<li> <li>
<a href="{{ $href }}" class="sidebar-item text-decoration-none rounded small {{ if $active }}active{{ end }}"> {{ $class := "sidebar-item text-decoration-none rounded small" }}
{{ $title }} {{ if $active }}{{ $class = printf "%s active" $class }}{{ end }}
</a> {{ $link := partial "utilities/link.html" (dict "destination" $href "text" $title "class" $class "page" $page) }}
{{ if $link }}
{{ print $link | safeHTML }}
{{ else }}
{{- errorf "partial [utilities/sidebar.html] - Invalid link in file: %s" ($page.Scratch.Get "sidebarFilename") -}}
{{ end }}
</li> </li>
{{ end }} {{ end }}
{{ end -}} {{ end -}}
@@ -94,6 +110,7 @@
"level" (add $level 1) "level" (add $level 1)
"baseURL" $baseURL "baseURL" $baseURL
"group" $item "group" $item
"menu" $data
) )
}} }}
{{- else }} {{- else }}
@@ -103,6 +120,8 @@
"level" $level "level" $level
"baseURL" $baseURL "baseURL" $baseURL
"title" $item.title "title" $item.title
"href" $item.link
"menu" $data
) )
}} }}
{{- end }} {{- end }}

View File

@@ -1,12 +1,17 @@
{{- $page := .page -}} {{- $page := .page -}}
{{- $version := .version -}} {{- $version := .version -}}
{{- $sidebarFilename := "" -}}
{{- $menu := "" -}} {{- $menu := "" -}}
{{- if $page.IsPage -}} {{- if $page.IsPage -}}
{{- $menu = index site.Data (printf "%s-%s" $page.Section $version) -}} {{- $sidebarFilename = printf "%s-%s" $page.Section $version -}}
{{- $menu = index site.Data $sidebarFilename -}}
{{ if not $menu }} {{ if not $menu }}
{{ $menu = index site.Data $page.Section }} {{- $sidebarFilename = $page.Section -}}
{{ $menu = index site.Data $sidebarFilename }}
{{ end }} {{ end }}
{{- end -}} {{- end -}}
{{ if $menu }}{{ with $sidebarFilename }}{{ $page.Scratch.Set "sidebarFilename" (path.Join "data" .) }}{{ end }}{{ end -}}
{{- return $menu -}} {{- return $menu -}}

View File

@@ -3,6 +3,7 @@
{{- errorf "partial [utilities/link.html] - Missing param 'destination'" -}} {{- errorf "partial [utilities/link.html] - Missing param 'destination'" -}}
{{- end -}} {{- end -}}
{{- $error := false -}}
{{- $target := "" -}} {{- $target := "" -}}
{{- $rel := "" -}} {{- $rel := "" -}}
{{- $case := .case | default true }} {{- $case := .case | default true }}
@@ -55,6 +56,7 @@
{{- if not $ref -}} {{- if not $ref -}}
{{- errorf "partial [utilities/link.html] - Cannot find page: %s" $destination -}} {{- errorf "partial [utilities/link.html] - Cannot find page: %s" $destination -}}
{{- $error = true -}}
{{- else -}} {{- else -}}
{{- $destination = $ref.RelPermalink -}} {{- $destination = $ref.RelPermalink -}}
{{- with $anchor }}{{ $destination = printf "%s#%s" (strings.TrimSuffix "/" $destination) . -}}{{ end -}} {{- with $anchor }}{{ $destination = printf "%s#%s" (strings.TrimSuffix "/" $destination) . -}}{{ end -}}
@@ -69,4 +71,6 @@
{{- end -}} {{- end -}}
{{- end -}} {{- end -}}
<a {{ with $class }}class="{{ . }}" {{ end }}href="{{ $destination | safeURL }}"{{ with $target }} target="{{ . }}"{{ end }}{{ with $rel }} rel="{{ . }}"{{ end }}>{{ $text }}</a> {{ if not $error }}
<a {{ with $class }}class="{{ . }}" {{ end }}href="{{ $destination | safeURL }}"{{ with $target }} target="{{ . }}"{{ end }}{{ with $rel }} rel="{{ . }}"{{ end }}>{{ $text }}</a>
{{ end }}

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{ {
"name": "@gethinode/hinode", "name": "@gethinode/hinode",
"version": "0.20.0-alpha2", "version": "0.20.1",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "@gethinode/hinode", "name": "@gethinode/hinode",
"version": "0.20.0-alpha2", "version": "0.20.1",
"license": "MIT", "license": "MIT",
"devDependencies": { "devDependencies": {
"@fullhuman/postcss-purgecss": "^5.0.0", "@fullhuman/postcss-purgecss": "^5.0.0",

View File

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