Compare commits

..

41 Commits

Author SHA1 Message Date
Mark Dumay
67f1708691 Merge pull request #227 from gethinode/develop
Release v0.12.0
2023-04-25 16:48:00 +02:00
Mark Dumay
c5e5ec0f21 Merge branch 'main' into develop 2023-04-25 16:42:28 +02:00
mark
d461333738 Bump dependencies 2023-04-25 16:37:28 +02:00
mark
32c422a2a8 Bump release version 2023-04-25 16:36:49 +02:00
github-actions[bot]
b66660b557 Merge pull request #225 from gethinode/dependabot/npm_and_yarn/stylelint-config-standard-scss-9.0.0
Bump stylelint-config-standard-scss from 8.0.0 to 9.0.0
2023-04-25 14:09:00 +00:00
dependabot[bot]
be95c3cd68 Bump stylelint-config-standard-scss from 8.0.0 to 9.0.0
Bumps [stylelint-config-standard-scss](https://github.com/stylelint-scss/stylelint-config-standard-scss) from 8.0.0 to 9.0.0.
- [Release notes](https://github.com/stylelint-scss/stylelint-config-standard-scss/releases)
- [Changelog](https://github.com/stylelint-scss/stylelint-config-standard-scss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint-scss/stylelint-config-standard-scss/compare/v8.0.0...v9.0.0)

---
updated-dependencies:
- dependency-name: stylelint-config-standard-scss
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-25 14:04:29 +00:00
mark
74aa32e595 Move partials to assets folder 2023-04-25 15:58:45 +02:00
mark
4c305b38a5 Improve partial error messages 2023-04-25 15:31:36 +02:00
mark
63c609c1d3 Improve configurability of nav partial 2023-04-25 15:24:23 +02:00
mark
d7424d26eb Update i18n keywords 2023-04-25 13:22:57 +02:00
mark
1f66740c19 Refine minimal layout 2023-04-25 13:15:40 +02:00
github-actions[bot]
cb032b4fb8 Merge pull request #224 from gethinode/dependabot/npm_and_yarn/eslint-8.39.0
Bump eslint from 8.38.0 to 8.39.0
2023-04-24 14:21:22 +00:00
dependabot[bot]
3889382e19 Bump eslint from 8.38.0 to 8.39.0
Bumps [eslint](https://github.com/eslint/eslint) from 8.38.0 to 8.39.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.38.0...v8.39.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-24 14:17:25 +00:00
github-actions[bot]
86addfd6dd Merge pull request #223 from gethinode/dependabot/npm_and_yarn/stylelint-15.6.0
Bump stylelint from 15.5.0 to 15.6.0
2023-04-24 14:16:22 +00:00
dependabot[bot]
9110fb5ab4 Bump stylelint from 15.5.0 to 15.6.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 15.5.0 to 15.6.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/15.5.0...15.6.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-24 14:12:08 +00:00
Mark Dumay
fad4cdbfd2 Merge pull request #221 from gethinode/develop
Sections
2023-04-24 15:00:20 +02:00
Mark Dumay
c403d422d9 Merge branch 'main' into develop 2023-04-24 14:52:03 +02:00
mark
0ecfa72864 Update section config 2023-04-24 14:51:00 +02:00
mark
62af498414 Refactor card group 2023-04-24 14:50:19 +02:00
mark
ee37599ded Fix card header and footer 2023-04-24 14:43:57 +02:00
mark
9a4c7c7776 Merge snippets and lists into sections 2023-04-24 14:17:37 +02:00
mark
c05eeb015c Bump release version 2023-04-24 14:09:23 +02:00
mark
d9f898a2e1 Add unique id to each nav 2023-04-24 06:54:01 +02:00
mark
36f31a57ae Fix id 2023-04-24 06:52:40 +02:00
mark
17b3bbaf80 Add body as supported color 2023-04-24 06:52:30 +02:00
mark
26bc4ebb00 Prioritize page title over param title 2023-04-24 04:52:17 +02:00
mark
d13d80af2f Adjust build timeout 2023-04-23 16:35:43 +02:00
Mark Dumay
64abaf8d1e Merge pull request #220 from gethinode/develop
Fixes
2023-04-23 14:55:05 +02:00
Mark Dumay
ffc9c47b45 Merge branch 'main' into develop 2023-04-23 14:43:04 +02:00
mark
092630b030 Fix layout of figures 2023-04-23 14:39:44 +02:00
mark
2ec60a8b71 Adjust top spacing 2023-04-23 14:39:03 +02:00
mark
9af871fee7 Align layout of tags to single page layout 2023-04-23 14:38:43 +02:00
mark
883ab3f7a0 Bump release version 2023-04-23 14:26:30 +02:00
mark
d6a49ccb90 Refine padding 2023-04-23 14:25:41 +02:00
mark
fdc58d52e9 Fix image caption when ratio is set 2023-04-23 13:55:30 +02:00
Mark Dumay
97a829dfff Merge pull request #219 from gethinode/develop
Fixes
2023-04-23 10:14:54 +02:00
Mark Dumay
c7fbc548bb Merge branch 'main' into develop 2023-04-23 09:46:03 +02:00
mark
794510861c Bump release version 2023-04-23 09:45:34 +02:00
mark
da7c70c444 Fix detection of homepage 2023-04-23 09:45:02 +02:00
mark
1571decb8e Update supported colors 2023-04-23 08:44:53 +02:00
mark
835d3e615e Remove obsolete forestry config 2023-04-23 07:56:56 +02:00
34 changed files with 437 additions and 479 deletions

View File

@@ -1,25 +0,0 @@
---
label: Blog post
hide_body: false
fields:
- type: text
name: author
label: author
- type: text
name: title
label: title
- type: text
name: description
label: description
- type: list
name: tags
label: tags
- type: datetime
name: date
label: date
- type: file
name: thumbnail
label: thumbnail
- type: textarea
name: credits
label: credits

View File

@@ -1,25 +0,0 @@
---
label: Project
hide_body: false
fields:
- type: text
name: author
label: author
- type: text
name: title
label: title
- type: datetime
name: date
label: date
- type: text
name: description
label: description
- type: list
name: tags
label: tags
- type: file
name: thumbnail
label: thumbnail
- type: textarea
name: credits
label: credits

View File

@@ -1,40 +0,0 @@
---
new_page_extension: md
auto_deploy: false
admin_path:
webhook_url:
sections:
- type: directory
path: content/en/blog
label: Blog
create: all
match: "**/*"
templates:
- blog-post
- type: directory
path: content/en/projects
label: Projects
create: all
match: "**/*"
templates:
- project
- type: document
path: content/en/about.md
label: About
upload_dir: assets/img
public_path: "/img"
front_matter_path: ''
use_front_matter_path: false
file_template: ":filename:"
build:
preview_env:
- HUGO_ENV=staging
- HUGO_VERSION=0.92.2
- HUGO_ENABLEGITINFO=true
preview_output_directory: public
install_dependencies_command: npm install
preview_docker_image: forestryio/hugo:node16
mount_path: "/srv"
working_dir: "/srv"
instant_preview_command: npm run start
version: 0.81.0

View File

@@ -17,7 +17,7 @@ enableInlineShortcodes = true
ignoreErrors = ["error-remote-getjson"]
# toml-docs-start timeout
timeout = "60s"
timeout = "180s"
# toml-docs-end timeout
# toml-docs-start language

View File

@@ -34,12 +34,12 @@
sidebar = true
# toml-docs-end navigation
# toml-docs-start list
[list]
[blog]
# toml-docs-start sections
[sections]
[sections.blog]
title = "Blog"
sort = "date"
reverse = false
reverse = true
cols = 3
color = ""
padding = "0"
@@ -49,7 +49,7 @@
style = "border-0 card-zoom"
homepage = 3
separator = true
[projects]
[sections.projects]
title = "Projects"
sort = "title"
reverse = false
@@ -62,7 +62,7 @@
style = "border-1 card-emphasize"
homepage = 3
separator = false
# toml-docs-end list
# toml-docs-end sections
[favicon]
logo = "img/favicon.png"

View File

@@ -27,8 +27,14 @@
translation: "Next Post"
- id: recentProjects
translation: "Projects"
- id: moreFeatures
translation: "More Features"
- id: moreGuides
translation: "More Guides"
- id: moreProjects
translation: "More Projects"
- id: moreUsers
translation: "More Users"
- id: read
translation: "read"
- id: minutesShort
@@ -65,6 +71,8 @@
translation: "Auto"
- id: toggleMainNav
translation: "Toggle main navigation"
- id: demo
translation: "Demo"
# 404 page
- id: pageNotFound

View File

@@ -1,11 +1,11 @@
{{- define "partials/header.html" -}}
{{ if site.Params.navigation.breadcrumb }}{{ partial "breadcrumb.html" . }}{{ end -}}
{{ if site.Params.navigation.breadcrumb }}{{ partial "assets/breadcrumb.html" . }}{{ end -}}
{{ if in (slice "docs" "minimal") .Layout }}
{{ with .Title }}<p class="display-4 mt-3">{{ . }}</p>{{ end }}
{{ with .Title }}<p class="display-4 mt-5">{{ . }}</p>{{ end }}
{{ else }}
{{ $lastmodstr := (partial "utilities/date.html" (dict "date" .Lastmod "format" "long")) -}}
{{ $datestr := (partial "utilities/date.html" (dict "date" .Date "format" "long")) -}}
{{ with .Title }}<p class="display-4 mt-3">{{ . }}</p>{{ end }}
{{ with .Title }}<p class="display-4 mt-5">{{ . }}</p>{{ end }}
<small class="text-body-secondary text-uppercase">
{{ $datestr | i18n "postedOnDate" -}}
{{ if ne $datestr $lastmodstr -}}&nbsp;({{ $lastmodstr | i18n "lastModified" }}){{ end }} &bull;
@@ -32,7 +32,7 @@
{{ end -}}
{{ define "partials/body.html" -}}
{{ if eq .Layout "docs"}}
{{ if in (slice "docs" "minimal") .Layout }}
<p class="lead mb-5">{{ .Description }}</p>
{{ .Content }}
{{ else }}
@@ -40,18 +40,18 @@
{{ if .Params.thumbnail -}}
{{- $credits := "" -}}
{{- if .Params.photoCredits }}{{ if .Params.PhotoSource }}{{ $credits = printf "%s %s %s %s" (T "photoBy") .Params.photoCredits (T "photoOn") .Params.PhotoSource }}{{ end }}{{ end -}}
{{- partial "image.html" (dict "url" .Params.thumbnail "ratio" "21x9" "outerClass" "img-wrap" "innerClass" "rounded" "title" .Params.title "caption" $credits) -}}
{{- partial "assets/image.html" (dict "url" .Params.thumbnail "ratio" "21x9" "outerClass" "img-wrap" "innerClass" "rounded" "title" .Params.title "caption" $credits) -}}
{{ end -}}
{{ .Content }}
{{ end }}
{{ end -}}
{{ define "partials/footer.html" -}}
{{ if eq .Layout "docs"}}
{{ if eq .Layout "docs" }}
<div class="mt-5 small">
{{ partial "utilities/git.html" . }}
</div>
{{ else }}
{{ else if ne .Layout "minimal" }}
<div class="row row-cols-2 mt-5 mb-3">
<div class="col">
{{ with .NextInSection -}}
@@ -92,7 +92,7 @@
</div>
</div>
<div class="container-xxl">
<div class="container-xxl px-3 px-xxl-0">
<div class="row row-cols-md-2 row-cols-lg-3">
<div class="col col-md-3 col-lg-2 d-none pt-5 d-md-block sidebar-overflow sticky-top">
{{ partial "assets/sidebar" (dict "page" . "menu" $menu "version" $version) }}
@@ -110,7 +110,7 @@
</div>
</div>
{{ else }}
<div class="container-xxl">
<div class="container-xxl px-3 px-xxl-0">
<div class="row row-cols-1 row-cols-sm-3">
<div class="col col-md-2 d-none d-md-block"></div>
<div class="col col-sm-12 col-md-8">

View File

@@ -8,8 +8,8 @@
{{- range $index, $section := site.Params.home.sections -}}
{{- $pages := where site.RegularPages "Type" "in" $section -}}
{{- $sectionURL := "" -}}
{{- range $page := first 1 $pages -}}
{{- $sectionURL = $page.Parent.RelPermalink -}}
{{- range $p := first 1 $pages -}}
{{- $sectionURL = $p.Parent.RelPermalink -}}
{{- end -}}
{{- $moreTitle := (T (printf "more%s" (strings.FirstUpper $section))) -}}
@@ -22,8 +22,4 @@
"sectionURL" $sectionURL)
-}}
{{- end -}}
{{- range $index, $section := site.Params.home.snippets -}}
{{- partial "assets/snippet-list.html" (dict "page" $page "section" $section) -}}
{{- end -}}
{{- end -}}

View File

@@ -6,7 +6,7 @@
"state" Optional state of the button, either "enabled" (default), "disabled", "active", or "inactive".
"size" Optional size of the button, either "sm", "md" (default), or "lg".
"color" Optional theme color of the element, either "primary" (default), "secondary", "success",
"danger", "warning", "info", "light", "dark", "white", "black", "body", or "body-tertiary".
"danger", "warning", "info", "light", "dark", "white", or "black".
"outline" Optional flag indicating the button should be outlined, either "false" (default) or "true".
"badge" Optional positioned badge to display on top of the button.
"aria-label" Optional assistive label for the badge.
@@ -19,7 +19,7 @@
{{ $title := trim .title " \r\n" -}}
{{ if not $title -}}
{{ errorf "Missing element title" -}}
{{ errorf "partial [assets/button.html] - Missing element title" -}}
{{ end -}}
{{ $id := .id }}
@@ -28,21 +28,21 @@
{{ with .state }}{{ $state = . }}{{ end -}}
{{ $supportedStates := slice "enabled" "disabled" "active" "inactive" -}}
{{ if not (in $supportedStates $state) -}}
{{ errorf "Invalid value for param 'state': %s" $state -}}
{{ errorf "partial [assets/button.html] - Invalid value for param 'state': %s" $state -}}
{{ end -}}
{{ $size := "md" -}}
{{ with .size }}{{ $size = . }}{{ end -}}
{{ $supportedSizes := slice "sm" "md" "lg" -}}
{{ if not (in $supportedSizes $size) -}}
{{ errorf "Invalid value for param 'size': %s" $size -}}
{{ errorf "partial [assets/button.html] - Invalid value for param 'size': %s" $size -}}
{{ end -}}
{{ $color := "primary" -}}
{{ with .color }}{{ $color = . }}{{ end -}}
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body" "body-tertiary" -}}
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" -}}
{{ if not (in $supportedColors $color) -}}
{{ errorf "Invalid value for param 'color': %s" $color -}}
{{ errorf "partial [assets/button.html] - Invalid value for param 'color': %s" $color -}}
{{ end -}}
{{ $outline := false -}}
@@ -68,7 +68,7 @@
{{ if $tooltip -}}
{{ if $collapse -}}
{{ errorf "Cannot use tooltip and collapse at the same time" -}}
{{ errorf "partial [assets/button.html] - Cannot use tooltip and collapse at the same time" -}}
{{ end -}}
{{ end -}}
@@ -76,14 +76,14 @@
{{ with .type }}{{ $type = . }}{{ end -}}
{{ $supportedTypes := slice "button" "link" -}}
{{ if not (in $supportedTypes $type) -}}
{{ errorf "Invalid value for param 'type': %s" $type -}}
{{ errorf "partial [assets/button.html] - Invalid value for param 'type': %s" $type -}}
{{ end -}}
{{ $placement := "top" -}}
{{ with .placement }}{{ $placement = . }}{{ end -}}
{{ $supportedPlacements := slice "top" "bottom" "left" "right" -}}
{{ if not (in $supportedPlacements $placement) -}}
{{ errorf "Invalid value for param 'placement': %s" $placement -}}
{{ errorf "partial [assets/button.html] - Invalid value for param 'placement': %s" $placement -}}
{{ end -}}
<a {{ if ne $state "disabled" }}{{ with $href }}href="{{ . }}"{{ end }}{{ end }}

View File

@@ -31,24 +31,26 @@
{{- $page := .page -}}
{{- if ne (printf "%T" $page) "*hugolib.pageState" -}}
{{- errorf "Invalid value for param 'page'" -}}
{{- errorf "partial [assets/card-group.html] - Invalid value for param 'page'" -}}
{{- end -}}
{{- $supportedTypes := slice "page.Pages" "resource.Resources" -}}
{{ $list := .list }}
{{- if ne (printf "%T" $list) "page.Pages" -}}
{{- errorf "Invalid value for param 'items'" -}}
{{- if not (in $supportedTypes (printf "%T" $list)) -}}
{{ warnf "Type: %T" $list }}
{{- errorf "partial [assets/card-group.html] - Invalid value for param 'list'" -}}
{{- end -}}
{{- $count := len $list -}}
{{- $max := .max -}}
{{- if ne (printf "%T" $max) "int" -}}
{{- errorf "Invalid value for param 'max'" -}}
{{- errorf "partial [assets/card-group.html] - Invalid value for param 'max'" -}}
{{- end -}}
{{- $max = math.Min $max $count -}}
{{- $cols := .cols -}}
{{- if or (lt $cols 1) (gt $cols 5) -}}
{{- errorf "Invalid value for param 'cols': %d" $cols -}}
{{- errorf "partial [assets/card-group.html] - Invalid value for param 'cols': %d" $cols -}}
{{- end -}}
{{- $colGrid := "row-cols-1" -}}
{{- if eq $cols 2 }}{{ $colGrid = "row-cols-1 row-cols-sm-1 row-cols-md-2" -}}
@@ -61,7 +63,7 @@
{{- $paginate := false -}}
{{- with .paginate -}}
{{- if ne (printf "%T" .) "bool" -}}
{{- errorf "Invalid value for param 'paginate'" -}}
{{- errorf "partial [assets/card-group.html] - Invalid value for param 'paginate'" -}}
{{- end -}}
{{- $paginate = . -}}
{{- end -}}
@@ -75,7 +77,7 @@
{{- $separator := false -}}
{{- with .separator -}}
{{- if ne (printf "%T" .) "bool" -}}
{{- errorf "Invalid value for param 'separator'" -}}
{{- errorf "partial [assets/card-group.html] - Invalid value for param 'separator'" -}}
{{- end -}}
{{- $separator = . -}}
{{- end -}}
@@ -87,56 +89,52 @@
{{- $footer := .footer -}}
{{- $orientation := .orientation -}}
<div class="container-fluid p-4">
{{ with $title }}<p class="display-4 mt-3{{ if and $.IsHome site.Params.home.centerHeadline }} text-center{{ end }}">{{ . }}</p>{{ end }}
<div class="container-fluid p-4 px-xxl-0">
{{ with $title }}<p class="display-4 mt-3{{ if and page.IsHome site.Params.home.centerHeadline }} text-center{{ end }}">{{ . }}</p>{{ end }}
{{ $paginator := "" }}
{{ if $paginate }}
<div class="row {{ $colGrid }}">
{{ $paginator := $page.Paginate $list }}
{{ range $index, $element := first $paginator.PageSize (after (mul (sub $paginator.PageNumber 1) $paginator.PageSize) $list) }}
<div class="col pt-3 pb-3">
{{- partial "assets/card.html" (dict
"path" $element.File.Path
"class" (printf "h-100 %s" $class)
"color" $color
"padding" $padding
"header" $header
"footer" $footer
"orientation" $orientation
)
-}}
{{ $paginator = $page.Paginate $list }}
{{ $list = first $paginator.PageSize (after (mul (sub $paginator.PageNumber 1) $paginator.PageSize) $list) }}
{{ end }}
<div class="row {{ $colGrid }}">
{{ range $index, $element := $list }}
{{- $params := (dict
"class" (printf "h-100 %s" $class)
"color" $color
"padding" $padding
"header" $header
"footer" $footer
"orientation" $orientation
) -}}
{{- if $element.IsPage -}}
{{- $params = merge $params (dict "path" $element.File.Path) -}}
{{- else -}}
{{- $params = merge $params (dict
"title" $element.Title
"href" (or $element.Permalink "#!")
"description" $element.Description
"thumbnail" $element.Params.thumbnail
"icon" $element.Params.icon
) -}}
{{- end -}}
<div class="col pt-3 pb-3">
{{- partial "assets/card.html" $params -}}
</div>
{{- if and (lt $index (sub $max 1)) $separator -}}
<div class="col d-block d-sm-none">
<hr>
</div>
{{- if and (lt $index (sub $max 1)) $separator -}}
<div class="col d-block d-sm-none">
<hr>
</div>
{{- end -}}
{{ end }}
</div>
{{- end -}}
{{- end -}}
</div>
{{ if $paginate }}
{{- if gt $paginator.TotalPages 1 -}}
{{- partial "assets/pagination.html" $page -}}
<div class="pt-3">{{ partial "assets/pagination.html" $page }}</div>
{{- end -}}
{{ else }}
<div class="row {{ $colGrid }}">
{{ range $index, $element := $list }}
<div class="col pt-3 pb-3">
{{- partial "assets/card.html" (dict
"path" $element.File.Path
"class" (printf "h-100 %s" $class)
"color" $color
"padding" $padding
"header" $header
"footer" $footer
"orientation" $orientation
)
-}}
</div>
{{- if and (lt $index (sub $max 1)) $separator -}}
<div class="col d-block d-sm-none">
<hr>
</div>
{{- end -}}
{{ end }}
</div>
{{ if gt $count $max }}
<a class="btn btn-outline-primary" href="{{ $moreURL| safeURL }}" role="button">{{ $moreTitle }}</a>
{{ end }}

View File

@@ -69,7 +69,7 @@
{{- if .path }}
{{- $page = site.GetPage .path }}
{{- if not $page }}
{{- errorf "Cannot find page: %s" .path -}}
{{- errorf "partial [assets/card.html] - Cannot find page: %s" .path -}}
{{- end }}
{{- end }}
@@ -84,7 +84,7 @@
{{- if $color -}}
{{- $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body" "body-tertiary" -}}
{{- if not (in $supportedColors $color) -}}
{{- errorf "Invalid value for param 'color': %s" $color -}}
{{- errorf "partial [assets/card.html] - Invalid value for param 'color': %s" $color -}}
{{- end -}}
{{- end -}}
@@ -92,13 +92,13 @@
{{- with .header }}{{ $header = . }}{{ end -}}
{{- $supportedKeywords := slice "full" "publication" "tags" "none" -}}
{{- if not (in $supportedKeywords $header) -}}
{{- errorf "Invalid value for param 'header': %s" $header -}}
{{- errorf "partial [assets/card.html] - Invalid value for param 'header': %s" $header -}}
{{- end -}}
{{- $footer := "none" -}}
{{- with .footer }}{{ $footer = . }}{{ end -}}
{{- if not (in $supportedKeywords $footer) -}}
{{- errorf "Invalid value for param 'footer': %s" $footer -}}
{{- errorf "partial [assets/card.html] - Invalid value for param 'footer': %s" $footer -}}
{{- end -}}
{{- with $page -}}
@@ -110,7 +110,7 @@
{{- end -}}
{{- if not $href -}}
{{- errorf "Missing value for param 'href'" -}}
{{- errorf "partial [assets/card.html] - Missing value for param 'href'" -}}
{{- end -}}
{{- $class := .class -}}
@@ -119,14 +119,14 @@
{{- with .padding }}{{ $padding = . }}{{ end -}}
{{- $supportedPaddings := slice "0" "1" "2" "3" "4" "5" "auto" -}}
{{- if not (in $supportedPaddings $padding) -}}
{{- errorf "Invalid value for param 'padding': %s" $padding -}}
{{- errorf "partial [assets/card.html] - Invalid value for param 'padding': %s" $padding -}}
{{- end -}}
{{- $orientation := "stacked" -}}
{{- with .orientation }}{{ $orientation = . }}{{ end -}}
{{- $supportedOrientations := slice "stacked" "horizontal" "none" -}}
{{- if not (in $supportedOrientations $orientation) -}}
{{- errorf "Invalid value for param 'orientation': %s" $orientation -}}
{{- errorf "partial [assets/card.html] - Invalid value for param 'orientation': %s" $orientation -}}
{{- end -}}
{{- if eq $orientation "none" }}{{ $thumbnail = "" }}{{ $icon = "" }}{{ end -}}
@@ -135,7 +135,7 @@
<div class="row g-0">
<div class="col-4">
{{- if $thumbnail -}}
{{- partial "image.html" (dict "url" $thumbnail "ratio" "1x1" "outerClass" "h-100 card-img-wrap" "innerClass" "rounded-start card-img-h100" "title" $title) -}}
{{- partial "assets/image.html" (dict "url" $thumbnail "ratio" "1x1" "outerClass" "h-100 card-img-wrap" "innerClass" "rounded-start card-img-h100" "title" $title) -}}
{{- else if $icon -}}
<div class="pt-{{ $padding }} ps-{{ $padding }} pe-{{ $padding }}">
{{- partial "assets/icon.html" (dict "icon" (printf "%s fa-4x text-secondary" $icon)) -}}
@@ -144,11 +144,11 @@
</div>
<div class="col-8">
<div class="card-body d-flex p-{{ $padding }} flex-column h-100">
<div>{{ partial "card-caption.html" (dict "page" $page "keywords" $header "color" $color) }}</div>
{{ if $page }}<div>{{ partial "card-caption.html" (dict "page" $page "keywords" $header "color" $color) }}</div>{{ end }}
<div class="h-100">
{{- partial "card-body.html" (dict "title" $title "href" $href "color" $color "description" $description) -}}
</div>
<div>{{ partial "card-caption.html" (dict "page" $page "keywords" $footer "color" $color) }}</div>
{{ if $page }}<div>{{ partial "card-caption.html" (dict "page" $page "keywords" $footer "color" $color) }}</div>{{ end }}
</div>
</div>
</div>
@@ -156,16 +156,16 @@
{{- else -}}
<div class="card {{ with $color }}bg-{{ . }} text-bg-{{ . }}{{ end }} {{ $class }}">
{{- if $thumbnail -}}
{{- partial "image.html" (dict "url" $thumbnail "ratio" "16x9" "outerClass" "card-img-wrap" "innerClass" "card-img-top" "title" $title) -}}
{{- partial "assets/image.html" (dict "url" $thumbnail "ratio" "16x9" "outerClass" "card-img-wrap" "innerClass" "card-img-top" "title" $title) -}}
{{- else if $icon -}}
<div class="pt-{{ $padding }} ps-{{ $padding }} pe-{{ $padding }}">
{{- partial "assets/icon.html" (dict "icon" (printf "%s fa-4x text-secondary" $icon)) -}}
</div>
{{- end -}}
<div class="card-body d-flex flex-column p-{{ $padding }}">
{{- partial "card-caption.html" (dict "page" $page "keywords" $header "color" $color) -}}
{{ if $page }}{{- partial "card-caption.html" (dict "page" $page "keywords" $header "color" $color) -}}{{ end }}
{{- partial "card-body.html" (dict "title" $title "href" $href "color" $color "description" $description) -}}
{{- partial "card-caption.html" (dict "page" $page "keywords" $footer "color" $color) -}}
{{ if $page }}{{- partial "card-caption.html" (dict "page" $page "keywords" $footer "color" $color) -}}{{ end }}
</div>
</div>
{{- end -}}

View File

@@ -1,6 +1,6 @@
{{- $icon := .icon -}}
{{- if not $icon -}}
{{- errorf "Expected value for param 'icon'" -}}
{{- errorf "partial [assets/icon.html] - Expected value for param 'icon'" -}}
{{- end -}}
{{- $icon_class := split $icon " " -}}
@@ -12,5 +12,5 @@
{{- else if eq (index $icon_class 0) "fa" -}}
<i class="fa-regular fa-{{ $attr }}"></i>
{{- else -}}
{{- errorf "Unrecognized icon class: %s" $icon_class -}}
{{- errorf "partial [assets/icon.html] - Unrecognized icon class: %s" $icon_class -}}
{{- end -}}

View File

@@ -26,7 +26,7 @@
{{- $title := .title -}}
{{- $caption := .caption -}}
{{- if ne (printf "%T" $mode) "bool" -}}
{{- errorf "Invalid value for param 'mode'" -}}
{{- errorf "partial [assets/image.html] - Invalid value for param 'mode'" -}}
{{- end -}}
{{- $modes := site.Params.main.modes | default (slice "light" "dark") -}}
@@ -132,23 +132,14 @@
{{- range $none := $modes -}}
{{- if ne $none $mode -}}
{{- $outerClass = printf "%s d-none-%s" $outerClass $none -}}
{{- $outerClass = printf "%s d-none-%s" (or $outerClass "") $none -}}
{{- end -}}
{{- end -}}
{{- if $caption -}}
<figure class="figure {{ $outerClass }}">
<img class="figure-img img-fluid {{ $innerClass }}"
{{ with $imgset -}}
srcset="{{ . }}"
sizes="100vw"
{{- end }}
src="{{ $fallbackURL }}"
alt="{{ $title }}">
<figcaption class="figure-caption">{{ $caption | safeHTML }}</figcaption>
</figure>
{{- else -}}
<div class="{{ with $ratio }}ratio ratio-{{ . }}{{ end }} {{ $outerClass }}">
<figure {{ with $outerClass }}class="{{ . }}"{{ end }}>
{{ end }}
<div class="{{ with $ratio }}ratio ratio-{{ . }}{{ end }}{{ if not $caption }} {{ $outerClass }}{{ end }}">
<img class="img-fluid {{ $innerClass }}"
{{ with $imgset -}}
srcset="{{ . }}"
@@ -157,7 +148,10 @@
src="{{ $fallbackURL }}"
alt="{{ $title }}">
</div>
{{- end -}}
{{- if $caption -}}
<figcaption class="figure-caption">{{ $caption | safeHTML }}</figcaption>
</figure>
{{- end -}}
{{- end -}}
<!-- Initiate the regular or color-mode image -->

View File

@@ -27,18 +27,19 @@
{{- define "partials/list-img.html" -}}
{{- $thumbnail := .thumbnail -}}
{{- $style := .style -}}
{{- partial "image.html" (dict "url" $thumbnail "outerClass" $style "mode" true) -}}
{{- $mode := .mode -}}
{{- partial "assets/image.html" (dict "url" $thumbnail "outerClass" $style "mode" $mode) -}}
{{- end -}}
{{- $page := .page -}}
{{- if ne (printf "%T" $page) "*hugolib.pageState" -}}
{{- errorf "Invalid value for param 'page'" -}}
{{- errorf "partial [assets/list.html] - Invalid value for param 'page'" -}}
{{- end -}}
{{- $supportedTypes := slice "page.Pages" "resource.Resources" -}}
{{ $list := .list }}
{{- if ne (printf "%T" $list) "resource.Resources" -}}
{{- errorf "Invalid value for param 'items'" -}}
{{- if not (in $supportedTypes (printf "%T" $list)) -}}
{{- errorf "partial [assets/list.html] - Invalid value for param 'list'" -}}
{{- end -}}
{{- $title := .title -}}
@@ -47,14 +48,13 @@
{{ $vertical := false }}
{{ $type := "pills" }}
{{- $id := .Ordinal -}}
<div class="d-none d-md-block p-0">
{{- range $index, $item := $list -}}
{{- $odd := eq (mod $index 2) 1 -}}
<div class="container ratio-section d-flex flex-column">
{{ if eq $index 0 }}
{{ with $title }}<p class="display-4 pt-5{{ if and $.IsHome site.Params.home.centerHeadline }} text-center{{ end }}">{{ . }}</p>{{ end }}
{{ with $title }}<p class="display-4 pt-5{{ if and page.IsHome site.Params.home.centerHeadline }} text-center{{ end }}">{{ . }}</p>{{ end }}
{{ end }}
<div class="row pt-5 pb-5 align-items-center flex-fill row-cols-2">
@@ -64,10 +64,10 @@
{{- $style = "reveal fade-bottom-n5 rotate-n5 ps-3" -}}
{{- if $odd }}{{ $style = "reveal fade-bottom-5 rotate-5 pe-3" }}{{ end }}
{{ end }}
{{ partial "partials/list-img.html" (dict "thumbnail" $item.Params.Thumbnail "style" $style) }}
{{ partial "partials/list-img.html" (dict "thumbnail" $item.Params.Thumbnail "style" $style "mode" $item.Params.colormode) }}
</div>
<div class="col-6{{ if $odd }} order-first{{ end }} psw-lg-5 p-5">
{{ partial "partials/list-content.html" (dict "title" $item.Title "content" $item.Content )}}
{{ partial "partials/list-content.html" (dict "title" $item.Title "content" (or $item.Description $item.Content)) }}
</div>
</div>
</div>
@@ -79,14 +79,14 @@
{{- $odd := eq (mod $index 2) 1 -}}
<div class="container d-flex flex-column">
{{ if eq $index 0 }}
{{ with $title }}<p class="display-4 pt-5{{ if and $.IsHome site.Params.home.centerHeadline }} text-center{{ end }}">{{ . }}</p>{{ end }}
{{ with $title }}<p class="display-4 pt-5{{ if and page.IsHome site.Params.home.centerHeadline }} text-center{{ end }}">{{ . }}</p>{{ end }}
{{ end }}
<div class="row pt-5 pb-5 align-items-center flex-fill row-cols-2">
<div class="col-12 text-center">
{{ partial "partials/list-img.html" (dict "thumbnail" $item.Params.Thumbnail)}}
{{ partial "partials/list-img.html" (dict "thumbnail" $item.Params.Thumbnail "mode" $item.Params.colormode) }}
</div>
<div class="col-12 p-3">
{{ partial "partials/list-content.html" (dict "title" $item.Title "content" $item.Content )}}
{{ partial "partials/list-content.html" (dict "title" $item.Title "content" (or $item.Description $item.Content)) }}
</div>
</div>
</div>

View File

@@ -3,10 +3,12 @@
supports the following arguments:
"page" Required context of the current page.
"list" Required array of pages.
"title" Optional title of the card group.
"type" Optional type of the tab group, either "tabs", "pills", or "underline".
"title" Optional title of the tab group.
"type" Optional type of the tab group, either "tabs", "pills" (default), or "underline".
"vertical" Optional flag to show vertical tabs instead of horizontal tabs (default).
"class": Optional class attribute of the tab group, e.g. “nav-fill”.
"class" Optional class attribute of the tab group, e.g. “nav-fill”.
"pane" Optional style of the panes, either "none" (default) or "persona".
"width" Optional responsive width of the tab group, either "50" or "100" (default).
In addition, the following arguments are passed to the individual tabs.
"class" Optional class attribute of the tab element, e.g. “w-50”.
@@ -16,47 +18,96 @@
{{- $page := .page -}}
{{- if ne (printf "%T" $page) "*hugolib.pageState" -}}
{{- errorf "Invalid value for param 'page'" -}}
{{- errorf "partial [assets/nav.html] - Invalid value for param 'page'" -}}
{{- end -}}
{{- $id := "0" -}}
{{- with .id -}}
{{ $id = . }}
{{ end }}
{{- $supportedTypes := slice "page.Pages" "resource.Resources" -}}
{{ $list := .list }}
{{- if ne (printf "%T" $list) "resource.Resources" -}}
{{- errorf "Invalid value for param 'items'" -}}
{{- if not (in $supportedTypes (printf "%T" $list)) -}}
{{- errorf "partial [assets/nav.html] - Invalid value for param 'list'" -}}
{{- end -}}
{{ $pane := "none" }}
{{ with .pane }}
{{- $supportedPanes := slice "none" "persona" -}}
{{- $pane = . }}
{{- if not (in $supportedPanes $pane) -}}
{{- errorf "partial [assets/nav.html] - Invalid value for param 'pane'" -}}
{{- end -}}
{{ end }}
{{ $supportedWidths := slice 50 100 -}}
{{ $widthParam := 100 -}}
{{ $width := 100 }}
{{ with .width }}{{ $widthParam = . }}{{ end -}}
{{ if in $supportedWidths $widthParam -}}
{{ $width = int $widthParam }}
{{ else -}}
{{ errorf "partial [assets/nav.html] - Invalid value for param 'width': %s" $widthParam -}}
{{ end -}}
{{- $title := .title -}}
{{- $class := .class -}}
{{- $color := .color -}}
{{ $supportedFlags := slice "true" "false" -}}
{{ $verticalParam := "false" -}}
{{ $vertical := false }}
{{ with .vertical }}{{ $verticalParam = . }}{{ end -}}
{{ if in $supportedFlags $verticalParam -}}
{{ if eq $verticalParam "true" }}{{ $vertical = true }}{{ else }}{{ $vertical = false }}{{ end -}}
{{ else -}}
{{ errorf "partial [assets/nav.html] - Invalid value for param 'vertical': %s" $verticalParam -}}
{{ end -}}
{{ $type := "pills" }}
{{- $id := .Ordinal -}}
{{ if $vertical }}<div class="d-flex align-items-start">{{ end }}
<div class="nav{{ with $type }} nav-{{ . }}{{ end }}{{ with $class }} {{ . }}{{ end }}{{ if $vertical }} flex-column{{ end }}" id="nav-{{ $id }}" role="tablist"{{ if $vertical }} aria-orientation="vertical"{{ end }}>
{{- range $index, $item := $list -}}
{{ $show := eq $index 0}}
<button class="nav-link text-nowrap{{ if $show }} active{{ end }}" id="nav-{{ $id }}-btn-{{ $index }}" data-bs-toggle="pill" data-bs-target="#nav-{{ $id }}-{{ $index }}"
type="button" role="tab" aria-controls="nav-{{ $id }}-{{ $index }}" aria-selected="{{ if eq $index 0 }}true{{ else }}false{{ end }}">
{{ $item.Title }}
</button>
{{ with .type }}
{{ $type = . -}}
{{ $supportedNavTypes := slice "tabs" "pills" "underline" -}}
{{ if $type }}
{{ if not (in $supportedNavTypes $type) -}}
{{ errorf "partial [assets/nav.html] - Invalid value for param 'type': %s" $type -}}
{{ end -}}
{{ end -}}
</div>
{{ end -}}
<div class="tab-content {{ if eq $type "tabs" }}border border-top-0 p-3{{ else if $vertical }}ms-3{{ else }}mt-3{{ end }}">
{{ range $index, $item := $list }}
{{ $header := $item.Title }}
{{ $body := $item.Content }}
{{ $show := eq $index 0}}
<div class="tab-pane{{ if $show }} active{{ end }}" id="nav-{{ $id }}-{{ $index }}" role="tabpanel" aria-labelledby="{{ $id }}-btn-{{ $index }}" tabindex="0">
{{- partial "assets/persona.html" (dict
"title" $item.Title
"class" $class
"color" $color
"content" $item.Content
"thumbnail" $item.Params.Thumbnail
) -}}
</div>
{{ end }}
</div>
{{ if $vertical }}</div>{{ end }}
{{ with $title }}<p class="display-4 pt-5{{ if and page.IsHome site.Params.home.centerHeadline }} text-center{{ end }}">{{ . }}</p>{{ end }}
<div class="{{ if eq $width 50 }}col-sm-12 col-md-10 col-lg-8 col-xl-6{{ else }}col-12{{ end }} mx-auto pt-5 pb-5">
{{ if $vertical }}<div class="d-flex align-items-start">{{ end }}
<div class="nav{{ with $type }} nav-{{ . }}{{ end }}{{ with $class }} {{ . }}{{ end }}{{ if $vertical }} flex-column{{ end }}" id="nav-{{ $id }}" role="tablist"{{ if $vertical }} aria-orientation="vertical"{{ end }}>
{{- range $index, $item := $list -}}
{{ $show := eq $index 0}}
<button class="nav-link text-nowrap{{ if $show }} active{{ end }}" id="nav-{{ $id }}-btn-{{ $index }}" data-bs-toggle="pill" data-bs-target="#nav-{{ $id }}-{{ $index }}"
type="button" role="tab" aria-controls="nav-{{ $id }}-{{ $index }}" aria-selected="{{ if eq $index 0 }}true{{ else }}false{{ end }}">
{{ $item.Title }}
</button>
{{ end -}}
</div>
<div class="tab-content {{ if eq $type "tabs" }}border border-top-0 p-3{{ else if $vertical }}ms-3{{ else }}mt-3{{ end }}">
{{ range $index, $item := $list }}
{{ $header := $item.Title }}
{{ $body := $item.Content }}
{{ $show := eq $index 0}}
<div class="tab-pane{{ if $show }} active{{ end }}" id="nav-{{ $id }}-{{ $index }}" role="tabpanel" aria-labelledby="{{ $id }}-btn-{{ $index }}" tabindex="0">
{{- if eq $pane "persona" -}}
{{- partial "assets/persona.html" (dict
"title" $item.Title
"class" $class
"color" $color
"content" (or $item.Description $item.Content)
"thumbnail" $item.Params.Thumbnail
) -}}
{{- else -}}
{{- (or $item.Description $item.Content) -}}
{{- end -}}
</div>
{{ end }}
</div>
{{ if $vertical }}</div>{{ end }}
</div>

View File

@@ -55,21 +55,21 @@
{{- $page := .page -}}
{{- if not $page -}}
{{- errorf "Missing value for param 'page'" -}}
{{- errorf "partial [assets/navbar.html] - Missing value for param 'page'" -}}
{{- end -}}
{{- $menuName := "main" }}
{{- with .menus }}{{ $menuName = .}}{{ end -}}
{{- $menus := index site.Menus $menuName -}}
{{- if or (ne (printf "%T" $menus) "navigation.Menu") (ne (index $menus 0).Menu $menuName) -}}
{{- errorf "Invalid value for param 'menus': %s" $menuName -}}
{{- errorf "partial [assets/navbar.html] - Invalid value for param 'menus': %s" $menuName -}}
{{- end -}}
{{- $size := "md" -}}
{{- with .size }}{{ $size = . }}{{ end -}}
{{- $supportedSizes := slice "xs" "sm" "md" "lg" "xl" -}}
{{- if not (in $supportedSizes $size) -}}
{{- errorf "Invalid value for param 'size': %s" $size -}}
{{- errorf "partial [assets/navbar.html] - Invalid value for param 'size': %s" $size -}}
{{- end -}}
{{- $fixedParam := "false" -}}
@@ -78,7 +78,7 @@
{{- if in $supportedFlags $fixedParam -}}
{{- if eq $fixedParam "true" }}{{ $fixed = true }}{{ else }}{{ $fixed = false }}{{ end -}}
{{- else -}}
{{- errorf "Invalid value for param 'fixed': %s" $fixedParam -}}
{{- errorf "partial [assets/navbar.html] - Invalid value for param 'fixed': %s" $fixedParam -}}
{{- end -}}
{{- $color := "" -}}
@@ -86,7 +86,7 @@
{{- $color = . -}}
{{- $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body" "body-tertiary" -}}
{{- if not (in $supportedColors $color) -}}
{{- errorf "Invalid value for param 'color': %s" $color -}}
{{- errorf "partial [assets/navbar.html] - Invalid value for param 'color': %s" $color -}}
{{- end -}}
{{- end -}}
@@ -96,7 +96,7 @@
{{- if in $supportedFlags $searchParam -}}
{{- if eq $searchParam "true" }}{{ $search = true }}{{ else }}{{ $search = false }}{{ end -}}
{{- else -}}
{{- errorf "Invalid value for param 'search': %s" $searchParam -}}
{{- errorf "partial [assets/navbar.html] - Invalid value for param 'search': %s" $searchParam -}}
{{- end -}}
{{- end -}}
@@ -106,7 +106,7 @@
{{- if in $supportedFlags $darkModeParam -}}
{{- if eq $darkModeParam "true" }}{{ $enableDarkMode = site.Params.main.enableDarkMode }}{{ else }}{{ $enableDarkMode = false }}{{ end -}}
{{- else -}}
{{- errorf "Invalid value for param 'darkMode': %s" $darkModeParam -}}
{{- errorf "partial [assets/navbar.html] - Invalid value for param 'darkMode': %s" $darkModeParam -}}
{{- end -}}
{{- end -}}

View File

@@ -29,7 +29,7 @@
{{- if .path }}
{{- $page = site.GetPage .path }}
{{- if not $page }}
{{- errorf "Cannot find page: %s" .path -}}
{{- errorf "partial [assets/persona.html] - Cannot find page: %s" .path -}}
{{- end }}
{{- end }}
@@ -43,7 +43,7 @@
{{- if $color -}}
{{- $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body" "body-tertiary" -}}
{{- if not (in $supportedColors $color) -}}
{{- errorf "Invalid value for param 'color': %s" $color -}}
{{- errorf "partial [assets/persona.html] - Invalid value for param 'color': %s" $color -}}
{{- end -}}
{{- end -}}
@@ -61,7 +61,7 @@
<div class="col-2">
<div class="position-absolute top-50 start-0 translate-middle-y col-4 ps-3">
{{- if $thumbnail -}}
{{- partial "image.html" (dict "url" $thumbnail "ratio" "1x1" "innerClass" "rounded-5") -}}
{{- partial "assets/image.html" (dict "url" $thumbnail "ratio" "1x1" "innerClass" "rounded-5") -}}
{{ end }}
</div>
</div>
@@ -81,7 +81,7 @@
<div class="col-12">
<div class="position-absolute top-25 start-50 translate-middle col-6">
{{- if $thumbnail -}}
{{- partial "image.html" (dict "url" $thumbnail "ratio" "1x1" "innerClass" "rounded-5") -}}
{{- partial "assets/image.html" (dict "url" $thumbnail "ratio" "1x1" "innerClass" "rounded-5") -}}
{{ end }}
</div>
</div>

View File

@@ -1,9 +1,9 @@
{{- $page := .page }}
{{- $section := .section }}
{{- if not $section }}{{ errorf "Missing value for param 'section'" }}{{ end -}}
{{- if not $section }}{{ errorf "partial [assets/section-list.html] - Missing value for param 'section'" }}{{ end -}}
{{- $home := .home }}
{{ if ne (printf "%T" $home) "bool" }}
{{ errorf "Invalid value for param 'home'"}}
{{ errorf "partial [assets/section-list.html] - Invalid value for param 'home'"}}
{{ end }}
{{- $title := .title -}}
{{- $moreTitle := .moreTitle -}}
@@ -11,7 +11,7 @@
{{- $paginate := true -}}
{{- $sort := "date" -}}
{{- $reverse := true -}}
{{- $order := "desc" -}}
{{- $separator := false -}}
{{- $orientation := "stacked" -}}
{{- $cols := 3 -}}
@@ -22,11 +22,16 @@
{{- $style := "" -}}
{{- $homepage := 3 -}}
{{- $background := "" -}}
{{- $layout := "card" -}}
{{- $pane := "none" -}}
{{- $type := "pills" -}}
{{- $vertical := "false" -}}
{{- $width := 100 -}}
{{- with (index site.Params $section) -}}
{{- with index . "title" }}{{ $title = . }}{{ end -}}
{{- with (index site.Params.sections $section) -}}
{{- with index . "title" }}{{ $title = or $.title . }}{{ end -}}
{{- with index . "sort" }}{{ $sort = . }}{{ end -}}
{{- if (index . "reverse") }}{{ $reverse = true }}{{ else }}{{ $reverse = false }}{{ end -}}
{{- if (index . "reverse") }}{{ $order = "desc" }}{{ else }}{{ $order = "asc" }}{{ end -}}
{{- if (index . "separator") }}{{ $separator = true }}{{ else }}{{ $separator = false }}{{ end -}}
{{- with index . "orientation" }}{{ $orientation = . }}{{ end -}}
{{- with index . "cols" }}{{ $cols = . }}{{ end -}}
@@ -37,53 +42,80 @@
{{- with index . "style" }}{{ $style = . }}{{ end -}}
{{- with index . "homepage" }}{{ $homepage = . }}{{ end -}}
{{- with index . "background" }}{{ $background = . }}{{ end -}}
{{- with index . "layout" }}{{ $layout = . }}{{ end -}}
{{- with index . "pane" }}{{ $pane = . }}{{ end -}}
{{- with index . "type" }}{{ $type = . }}{{ end -}}
{{- with index . "vertical" }}{{ $vertical = . }}{{ end -}}
{{- with index . "width" }}{{ $width = . }}{{ end -}}
{{- end -}}
{{- $list := where site.RegularPages "Type" "in" $section -}}
{{- $max := (len $list) -}}
{{- if $home -}}
{{- $paginate = false -}}
{{- $max = int (math.Min $homepage $max) -}}
{{ end -}}
{{ $list := where site.RegularPages "Type" "in" $section }}
{{ $max := (len $list) -}}
{{ if eq $max 0 }}
{{- $bundle := site.GetPage $section -}}
{{- $list = $bundle.Resources.Match "*" -}}
{{- $max = len $list -}}
{{ end }}
{{- $list = sort $list (printf "Params.%s" $sort) $order -}}
{{- $cols = int (math.Min $cols $max) -}}
{{- if eq $sort "weight" -}}
{{- $list = $list.ByWeight -}}
{{- else if eq $sort "publication" -}}
{{- $list = $list.ByPublishDate -}}
{{- else if eq $sort "expiration" -}}
{{- $list = $list.ByExpiryDate -}}
{{- else if eq $sort "lastmod" -}}
{{- $list = $list.ByLastmod -}}
{{- else if eq $sort "length" -}}
{{- $list = $list.ByLength -}}
{{- else if eq $sort "title" -}}
{{- $list = $list.ByTitle -}}
{{- else if eq $sort "linktitle" -}}
{{- $list = $list.ByLinkTitle -}}
{{- else if ne $sort "date" -}}
{{- $list = $list.ByParam $sort -}}
{{- $supportedLayouts := slice "card" "list" "nav" -}}
{{- if not (in $supportedLayouts $layout) -}}
{{- errorf "partial [assets/section-list.html] - Invalid value for param 'layout': %s" $layout -}}
{{- end -}}
{{- if $reverse -}}{{- $list = $list.Reverse -}}{{ end -}}
<div class="container-xxl flex-fill p-0{{ with $background }} bg-{{ . }}{{ end }}">
{{- partial "assets/card-group.html" (dict
{{ if gt $max 0 }}
{{- if $home -}}
{{- $paginate = false -}}
{{- $max = int (math.Min $homepage $max) -}}
{{ end -}}
{{- $cols = int (math.Min $cols $max) -}}
{{- $params := (dict
"page" $page
"list" $list
"max" $max
"cols" $cols
"title" $title
"href" $sectionURL
"hrefTitle" $moreTitle
"separator" $separator
"paginate" $paginate
"class" $style
"orientation" $orientation
"color" $color
"padding" $padding
"header" $header
"footer" $footer
)
)
-}}
</div>
{{- $partial := "" -}}
<div class="container-fluid {{ with $background }} bg-{{ . }}{{ end }}">
<div class="container-xxl flex-fill p-0">
{{ if eq $layout "card" }}
{{- $partial = "assets/card-group.html" -}}
{{- $params = merge $params (dict
"max" $max
"cols" $cols
"href" $sectionURL
"hrefTitle" $moreTitle
"separator" $separator
"paginate" $paginate
"orientation" $orientation
"padding" $padding
"header" $header
"footer" $footer
)
-}}
{{ else if eq $layout "nav" }}
{{- $partial = "assets/nav.html" -}}
{{- $params = merge $params (dict
"layout" $layout
"id" $section
"pane" $pane
"type" $type
"vertical" $vertical
"width" $width
)
-}}
{{- else -}}
{{- $partial = "assets/list.html" -}}
{{- $params = merge $params (dict
"layout" $layout
)
-}}
{{- end -}}
{{- partial $partial $params -}}
</div>
</div>
{{- end -}}

View File

@@ -1,58 +0,0 @@
{{- $page := .page }}
{{- $section := .section }}
{{- if not $section }}{{ errorf "Missing value for param 'section'" }}{{ end -}}
{{- $bundle := site.GetPage $section -}}
{{- $title := $bundle.Title -}}
{{- $sort := "date" -}}
{{- $order := "desc" -}}
{{- $style := "" -}}
{{- $background := "" -}}
{{- $color := "" -}}
{{- $layout := "tabs" -}}
{{- with (index site.Params $section) -}}
{{- with index . "title" }}{{ $title = . }}{{ end -}}
{{- with index . "sort" }}{{ $sort = . }}{{ end -}}
{{- if (index . "reverse") }}{{ $order = "desc" }}{{ else }}{{ $order = "asc" }}{{ end -}}
{{- with index . "style" }}{{ $style = . }}{{ end -}}
{{- with index . "background" }}{{ $background = . }}{{ end -}}
{{- with index . "color" }}{{ $color = . }}{{ end -}}
{{- with index . "layout" }}{{ $layout = . }}{{ end -}}
{{- end -}}
{{- $list := $bundle.Resources.Match "*" -}}
{{- $list = sort $list (printf "Params.%s" $sort) $order -}}
<div class="container-fluid {{ with $background }} bg-{{ . }}{{ end }}">
<div class="container-xxl flex-fill p-0">
{{ if eq $layout "tabs" }}
<div class="p-0">
{{ with $title }}<p class="display-4 pt-5{{ if and $.IsHome site.Params.home.centerHeadline }} text-center{{ end }}">{{ . }}</p>{{ end }}
<div class="col-sm-12 col-md-10 col-lg-8 col-xl-6 mx-auto pt-5 pb-5">
{{- partial "assets/nav.html" (dict
"page" $page
"list" $list
"title" $title
"class" $style
"color" $color
"layout" $layout
)
-}}
</div>
</div>
{{- else -}}
<div class=" p-0">
{{- partial "assets/list.html" (dict
"page" $page
"list" $list
"title" $title
"class" $style
"color" $color
"layout" $layout
)
-}}
</div>
{{- end -}}
</div>
</div>

View File

@@ -11,7 +11,7 @@
</div>
<div class="col col-sm-6 col-md-4">
{{ if .Site.Params.home.featurePhoto }}
{{- partial "image.html" (dict "url" .Site.Params.home.featurePhoto "ratio" "4x3" "outerClass" "img-wrap" "innerClass" "rounded" "title" .Site.Title) -}}
{{- partial "assets/image.html" (dict "url" .Site.Params.home.featurePhoto "ratio" "4x3" "outerClass" "img-wrap" "innerClass" "rounded" "title" .Site.Title) -}}
{{ end }}
</div>
<div class="col col-md-2 d-none d-md-block"></div>

View File

@@ -11,7 +11,7 @@
{{ if .Parent }}
{{ errorf "Missing value for param 'header': %s" .Parent.Position -}}
{{ else }}
{{ errorf "Missing value for param 'header': %s" .Position -}}
{{ errorf "Missing value for param 'header': %s" .Position -}}
{{ end }}
{{ end -}}

View File

@@ -1,14 +1,14 @@
<!--
Displays an alert. The shortcode supports the following arguments:
"color": Optional theme color of the alert, either "primary" (default), "secondary", "success", "danger",
"warning", "info", "light", "dark", "white" or "black", "body", or "body-tertiary".
"warning", "info", "light", "dark", "white" or "black".
"dismissible" Optional flag to indicate the alert is dismissible, defaults to false.
"icon" Optional class and name of a Font Awesome icon to include.
-->
{{ $color := "primary" -}}
{{ with .Get "color" }}{{ $color = . }}{{ end -}}
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "body" "body-tertiary" -}}
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" -}}
{{ if not (in $supportedColors $color) -}}
{{ errorf "Invalid value for param 'color': %s" .Position -}}
{{ $color = "primary" -}}

View File

@@ -15,5 +15,5 @@
{{- end -}}
{{- if not $error -}}
{{- partial "breadcrumb.html" $page -}}
{{- partial "assets/breadcrumb.html" $page -}}
{{- end -}}

View File

@@ -6,7 +6,7 @@
"state" Optional state of the button, either "enabled" (default), "disabled", "active", or "inactive".
"size" Optional size of the button, either "sm", "md" (default), or "lg".
"color": Optional theme color of the element, either "primary" (default), "secondary", "success",
"danger", "warning", "info", "light", "dark", "white", "black", "body", or "body-tertiary".
"danger", "warning", "info", "light", "dark", "white", or "black".
"outline" Optional flag indicating the button should be outlined, either "false" (default) or "true".
"badge" Optional positioned badge to display on top of the button.
"aria-label" Optional label for the badge.
@@ -42,7 +42,7 @@
{{ $color := "primary" -}}
{{ with .Get "color" }}{{ $color = . }}{{ end -}}
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body" "body-tertiary" -}}
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" -}}
{{ if not (in $supportedColors $color) -}}
{{ errorf "Invalid value for param 'color': %s" .Position -}}
{{ $error = true }}
@@ -78,5 +78,19 @@
{{ end -}}
{{ if not $error }}
{{- partial "button.html" (dict "type" $type "title" $title "size" $size "color" $color "outline" $outline "badge" $badge "label" $label "tooltip" $tooltip "collapse" $collapse "href" $href "id" $id "state" $state "placement" $placement) -}}
{{- partial "assets/button.html" (dict
"type" $type
"title" $title
"size" $size
"color" $color
"outline" $outline
"badge" $badge
"label" $label
"tooltip" $tooltip
"collapse" $collapse
"href" $href
"id" $id
"state" $state
"placement" $placement)
-}}
{{ end }}

View File

@@ -35,7 +35,7 @@
{{ errorf "Invalid value for param 'mode': %s" $modeParam -}}
{{ end -}}
{{- partial "image.html" (dict
{{- partial "assets/image.html" (dict
"url" $url
"ratio" $ratio
"innerClass" $class

View File

@@ -18,7 +18,7 @@
{{- if $src -}}
<div class="carousel-item {{ if eq .Ordinal 0 }}active{{ end }}">
{{ partial "image.html" (dict "url" $src "ratio" $ratio "innerClass" "d-block w-100") }}
{{ partial "assets/image.html" (dict "url" $src "ratio" $ratio "innerClass" "d-block w-100") }}
<div class="carousel-caption gradient"></div>
{{ with $caption }}
<div class="carousel-caption d-none d-md-block">

View File

@@ -3,8 +3,8 @@
"path" Required path of the page.
"class" Optional class attribute of the card element, e.g. “w-50”.
"color": Optional theme color of the card, either "primary", "secondary", "success", "danger",
"warning", "info", "light", "dark", "white", "black", or "body-tertiary". By default, no color
is specified.
"warning", "info", "light", "dark", "white", "black", "body", or "body-tertiary". By default, no
color is specified.
-->
{{- $error := false -}}
@@ -21,7 +21,7 @@
{{- $color := "" -}}
{{- with .Get "color" }}{{ $color = . }}{{ end -}}
{{- if $color -}}
{{- $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body-tertiary" -}}
{{- $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body" "body-tertiary" -}}
{{- if not (in $supportedColors $color) -}}
{{- errorf "Invalid value for param 'color': %s" .Position -}}
{{- $error = true -}}

View File

@@ -1,14 +1,14 @@
<!--
Displays a spinner. The shortcode supports the following arguments:
"color": Optional theme color of the alert, either "primary" (default), "secondary", "success", "danger",
"warning", "info", "light", "dark", "white", "black", "body", or "body-tertiary".
"warning", "info", "light", "dark", "white", or "black".
"grow" Optional flag to indicate the spinner is growing instead of rotating, defaults to false.
"class": Optional class attribute of the spinner wrapping element, e.g. “text-center”.
-->
{{ $color := "primary" -}}
{{ with .Get "color" }}{{ $color = . }}{{ end -}}
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body" "body-tertiary" -}}
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" -}}
{{ if not (in $supportedColors $color) -}}
{{ errorf "Invalid value for param 'color': %s" .Position -}}
{{ $color = "primary" -}}

View File

@@ -1,7 +1,7 @@
<!--
Displays a tooltip for a link. The shortcode supports the following arguments:
"color": Optional theme color of the element, either "primary" (default), "secondary", "success",
"danger", "warning", "info", "light", "dark", "white", "black", "body", or "body-tertiary".
"danger", "warning", "info", "light", "dark", "white", or "black".
"title" Required text to display in the tooltip.
"href" Required address for the button or hyperlink.
"placement" Optional position of the tooltip: "top" (default), "bottom", "left", or "right".
@@ -18,7 +18,7 @@
{{ $color := "primary" -}}
{{ with .Get "color" }}{{ $color = . }}{{ end -}}
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body" "body-tertiary" -}}
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" -}}
{{ if not (in $supportedColors $color) -}}
{{ errorf "Invalid value for param 'color': %s" .Position -}}
{{ $error = true }}
@@ -41,5 +41,5 @@
{{ end -}}
{{ if not $error }}
{{- partial "button.html" (dict "type" $type "title" $title "color" $color "tooltip" $tooltip "href" $href "placement" $placement) -}}
{{- partial "assets/button.html" (dict "type" $type "title" $title "color" $color "tooltip" $tooltip "href" $href "placement" $placement) -}}
{{ end }}

View File

@@ -1,9 +1,9 @@
{{ define "main" }}
<div class="container-fluid">
<div class="row row-cols-1 row-cols-sm-3 align-items-center p-3">
<div class="container-xxl px-3 px-xxl-0">
<div class="row row-cols-1 row-cols-sm-3">
<div class="col col-md-2 d-none d-md-block"></div>
<div class="col col-sm-12 col-md-8">
<p class="display-4">{{ .Name | humanize }}</p>
<p class="display-4 mt-5">{{ .Name | humanize }}</p>
{{ if eq .Kind "taxonomy" }}
<div class="row mt-5"></div>

195
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@gethinode/hinode",
"version": "0.12.0-alpha2",
"version": "0.12.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@gethinode/hinode",
"version": "0.12.0-alpha2",
"version": "0.12.0",
"license": "MIT",
"devDependencies": {
"@fortawesome/fontawesome-free": "^6.4.0",
@@ -15,7 +15,7 @@
"bootstrap": "^5.3.0-alpha3",
"cssnano": "^6.0.0",
"cssnano-preset-advanced": "^6.0.0",
"eslint": "^8.37.0",
"eslint": "^8.39.0",
"eslint-config-standard": "^17.0.0",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-n": "^15.7.0",
@@ -27,8 +27,8 @@
"purgecss-whitelister": "^2.4.0",
"rimraf": "^5.0.0",
"shx": "^0.3.4",
"stylelint": "^15.4.0",
"stylelint-config-standard-scss": "^8.0.0"
"stylelint": "^15.6.0",
"stylelint-config-standard-scss": "^9.0.0"
}
},
"node_modules/@babel/code-frame": {
@@ -247,9 +247,9 @@
}
},
"node_modules/@eslint/js": {
"version": "8.38.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.38.0.tgz",
"integrity": "sha512-IoD2MfUnOV58ghIHCiil01PcohxjbYR/qCxsoC+xNgUwh1EY8jOOrYmu3d3a71+tJJ23uscEV4X2HJWMsPJu4g==",
"version": "8.39.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.39.0.tgz",
"integrity": "sha512-kf9RB0Fg7NZfap83B3QOqOGg9QmD9yBudqQXzzOtn3i4y7ZUXe5ONeW34Gwi+TxhH4mvj72R1Zc300KUMa9Bng==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -2100,15 +2100,15 @@
}
},
"node_modules/eslint": {
"version": "8.38.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.38.0.tgz",
"integrity": "sha512-pIdsD2jwlUGf/U38Jv97t8lq6HpaU/G9NKbYmpWpZGw3LdTNhZLbJePqxOXGB5+JEKfOPU/XLxYxFh03nr1KTg==",
"version": "8.39.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.39.0.tgz",
"integrity": "sha512-mwiok6cy7KTW7rBpo05k6+p4YVZByLNjAZ/ACB9DRCu4YDRwjXI01tWHp6KAUWelsBetTxKK/2sHB0vdS8Z2Og==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.4.0",
"@eslint/eslintrc": "^2.0.2",
"@eslint/js": "8.38.0",
"@eslint/js": "8.39.0",
"@humanwhocodes/config-array": "^0.11.8",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
@@ -2118,7 +2118,7 @@
"debug": "^4.3.2",
"doctrine": "^3.0.0",
"escape-string-regexp": "^4.0.0",
"eslint-scope": "^7.1.1",
"eslint-scope": "^7.2.0",
"eslint-visitor-keys": "^3.4.0",
"espree": "^9.5.1",
"esquery": "^1.4.2",
@@ -2368,9 +2368,9 @@
}
},
"node_modules/eslint-scope": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
"integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz",
"integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==",
"dev": true,
"dependencies": {
"esrecurse": "^4.3.0",
@@ -2378,6 +2378,9 @@
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
"node_modules/eslint-utils": {
@@ -4307,10 +4310,16 @@
"dev": true
},
"node_modules/nanoid": {
"version": "3.3.4",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
"integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
"version": "3.3.6",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
"integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"bin": {
"nanoid": "bin/nanoid.cjs"
},
@@ -4848,9 +4857,9 @@
}
},
"node_modules/postcss": {
"version": "8.4.21",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz",
"integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==",
"version": "8.4.23",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz",
"integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==",
"dev": true,
"funding": [
{
@@ -4860,10 +4869,14 @@
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/postcss"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"dependencies": {
"nanoid": "^3.3.4",
"nanoid": "^3.3.6",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
},
@@ -6445,14 +6458,14 @@
}
},
"node_modules/stylelint": {
"version": "15.5.0",
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.5.0.tgz",
"integrity": "sha512-jyMO3R1QtE5mUS4v40+Gg+sIQBqe7CF1xPslxycDzNVkIBCUD4O+5F1vLPq16VmunUTv4qG9o2rUKLnU5KkVeQ==",
"version": "15.6.0",
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.6.0.tgz",
"integrity": "sha512-Cqzpc8tvJm77KaM8qUbhpJ/UYK55Ia0whQXj4b9IId9dlPICO7J8Lyo15SZWiHxKjlvy3p5FQor/3n6i8ignXg==",
"dev": true,
"dependencies": {
"@csstools/css-parser-algorithms": "^2.1.0",
"@csstools/css-tokenizer": "^2.1.0",
"@csstools/media-query-list-parser": "^2.0.2",
"@csstools/css-parser-algorithms": "^2.1.1",
"@csstools/css-tokenizer": "^2.1.1",
"@csstools/media-query-list-parser": "^2.0.4",
"@csstools/selector-specificity": "^2.2.0",
"balanced-match": "^2.0.0",
"colord": "^2.9.3",
@@ -6477,7 +6490,7 @@
"micromatch": "^4.0.5",
"normalize-path": "^3.0.0",
"picocolors": "^1.0.0",
"postcss": "^8.4.21",
"postcss": "^8.4.22",
"postcss-media-query-parser": "^0.2.3",
"postcss-resolve-nested-selector": "^0.1.1",
"postcss-safe-parser": "^6.0.0",
@@ -6505,27 +6518,27 @@
}
},
"node_modules/stylelint-config-recommended": {
"version": "11.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-11.0.0.tgz",
"integrity": "sha512-SoGIHNI748OCZn6BxFYT83ytWoYETCINVHV3LKScVAWQQauWdvmdDqJC5YXWjpBbxg2E761Tg5aUGKLFOVhEkA==",
"version": "12.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-12.0.0.tgz",
"integrity": "sha512-x6x8QNARrGO2sG6iURkzqL+Dp+4bJorPMMRNPScdvaUK8PsynriOcMW7AFDKqkWAS5wbue/u8fUT/4ynzcmqdQ==",
"dev": true,
"peerDependencies": {
"stylelint": "^15.3.0"
"stylelint": "^15.5.0"
}
},
"node_modules/stylelint-config-recommended-scss": {
"version": "10.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-10.0.0.tgz",
"integrity": "sha512-+YvPgUHi0W5mCJCKdupBCIsWPYNbWuJcRmFtSYujwNg+41ljFknhO9bpY6C+oahv659zW7W1AT7i6DQvJYYr1A==",
"version": "11.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-11.0.0.tgz",
"integrity": "sha512-EDghTDU7aOv2LTsRZvcT1w8mcjUaMhuy+t38iV5I/0Qiu6ixdkRwhLEMul3K/fnB2v9Nwqvb3xpvJfPH+HduDw==",
"dev": true,
"dependencies": {
"postcss-scss": "^4.0.6",
"stylelint-config-recommended": "^11.0.0",
"stylelint-config-recommended": "^12.0.0",
"stylelint-scss": "^4.6.0"
},
"peerDependencies": {
"postcss": "^8.3.3",
"stylelint": "^15.3.0"
"stylelint": "^15.5.0"
},
"peerDependenciesMeta": {
"postcss": {
@@ -6534,29 +6547,29 @@
}
},
"node_modules/stylelint-config-standard": {
"version": "32.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-32.0.0.tgz",
"integrity": "sha512-UnGJxYDyYFrIE9CjDMZRkrNh2o4lOtO+MVZ9qG5b8yARfsWho0GMx4YvhHfsv8zKKgHeWX2wfeyxmuoqcaYZ4w==",
"version": "33.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-33.0.0.tgz",
"integrity": "sha512-eyxnLWoXImUn77+ODIuW9qXBDNM+ALN68L3wT1lN2oNspZ7D9NVGlNHb2QCUn4xDug6VZLsh0tF8NyoYzkgTzg==",
"dev": true,
"dependencies": {
"stylelint-config-recommended": "^11.0.0"
"stylelint-config-recommended": "^12.0.0"
},
"peerDependencies": {
"stylelint": "^15.4.0"
"stylelint": "^15.5.0"
}
},
"node_modules/stylelint-config-standard-scss": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-8.0.0.tgz",
"integrity": "sha512-TDT/gJD/0LUDoUgkjF1uoI/4DfczXHxg7gJVcWT4/JbE6k5hszVuI14reNX+tEwSyMNhcK2BA7izrK+uVAz7XA==",
"version": "9.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-9.0.0.tgz",
"integrity": "sha512-yPKpJsrZn4ybuQZx/DkEHuCjw7pJginErE/47dFhCnrvD48IJ4UYec8tSiCuJWMA3HRjbIa3nh5ZeSauDGuVAg==",
"dev": true,
"dependencies": {
"stylelint-config-recommended-scss": "^10.0.0",
"stylelint-config-standard": "^32.0.0"
"stylelint-config-recommended-scss": "^11.0.0",
"stylelint-config-standard": "^33.0.0"
},
"peerDependencies": {
"postcss": "^8.3.3",
"stylelint": "^15.4.0"
"stylelint": "^15.5.0"
},
"peerDependenciesMeta": {
"postcss": {
@@ -7277,9 +7290,9 @@
}
},
"@eslint/js": {
"version": "8.38.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.38.0.tgz",
"integrity": "sha512-IoD2MfUnOV58ghIHCiil01PcohxjbYR/qCxsoC+xNgUwh1EY8jOOrYmu3d3a71+tJJ23uscEV4X2HJWMsPJu4g==",
"version": "8.39.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.39.0.tgz",
"integrity": "sha512-kf9RB0Fg7NZfap83B3QOqOGg9QmD9yBudqQXzzOtn3i4y7ZUXe5ONeW34Gwi+TxhH4mvj72R1Zc300KUMa9Bng==",
"dev": true
},
"@fortawesome/fontawesome-free": {
@@ -8602,15 +8615,15 @@
"dev": true
},
"eslint": {
"version": "8.38.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.38.0.tgz",
"integrity": "sha512-pIdsD2jwlUGf/U38Jv97t8lq6HpaU/G9NKbYmpWpZGw3LdTNhZLbJePqxOXGB5+JEKfOPU/XLxYxFh03nr1KTg==",
"version": "8.39.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.39.0.tgz",
"integrity": "sha512-mwiok6cy7KTW7rBpo05k6+p4YVZByLNjAZ/ACB9DRCu4YDRwjXI01tWHp6KAUWelsBetTxKK/2sHB0vdS8Z2Og==",
"dev": true,
"requires": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.4.0",
"@eslint/eslintrc": "^2.0.2",
"@eslint/js": "8.38.0",
"@eslint/js": "8.39.0",
"@humanwhocodes/config-array": "^0.11.8",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
@@ -8620,7 +8633,7 @@
"debug": "^4.3.2",
"doctrine": "^3.0.0",
"escape-string-regexp": "^4.0.0",
"eslint-scope": "^7.1.1",
"eslint-scope": "^7.2.0",
"eslint-visitor-keys": "^3.4.0",
"espree": "^9.5.1",
"esquery": "^1.4.2",
@@ -8798,9 +8811,9 @@
"requires": {}
},
"eslint-scope": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
"integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz",
"integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==",
"dev": true,
"requires": {
"esrecurse": "^4.3.0",
@@ -10226,9 +10239,9 @@
"dev": true
},
"nanoid": {
"version": "3.3.4",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
"integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
"version": "3.3.6",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
"integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
"dev": true
},
"natural-compare": {
@@ -10596,12 +10609,12 @@
}
},
"postcss": {
"version": "8.4.21",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz",
"integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==",
"version": "8.4.23",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz",
"integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==",
"dev": true,
"requires": {
"nanoid": "^3.3.4",
"nanoid": "^3.3.6",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
}
@@ -11677,14 +11690,14 @@
}
},
"stylelint": {
"version": "15.5.0",
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.5.0.tgz",
"integrity": "sha512-jyMO3R1QtE5mUS4v40+Gg+sIQBqe7CF1xPslxycDzNVkIBCUD4O+5F1vLPq16VmunUTv4qG9o2rUKLnU5KkVeQ==",
"version": "15.6.0",
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.6.0.tgz",
"integrity": "sha512-Cqzpc8tvJm77KaM8qUbhpJ/UYK55Ia0whQXj4b9IId9dlPICO7J8Lyo15SZWiHxKjlvy3p5FQor/3n6i8ignXg==",
"dev": true,
"requires": {
"@csstools/css-parser-algorithms": "^2.1.0",
"@csstools/css-tokenizer": "^2.1.0",
"@csstools/media-query-list-parser": "^2.0.2",
"@csstools/css-parser-algorithms": "^2.1.1",
"@csstools/css-tokenizer": "^2.1.1",
"@csstools/media-query-list-parser": "^2.0.4",
"@csstools/selector-specificity": "^2.2.0",
"balanced-match": "^2.0.0",
"colord": "^2.9.3",
@@ -11709,7 +11722,7 @@
"micromatch": "^4.0.5",
"normalize-path": "^3.0.0",
"picocolors": "^1.0.0",
"postcss": "^8.4.21",
"postcss": "^8.4.22",
"postcss-media-query-parser": "^0.2.3",
"postcss-resolve-nested-selector": "^0.1.1",
"postcss-safe-parser": "^6.0.0",
@@ -11761,40 +11774,40 @@
}
},
"stylelint-config-recommended": {
"version": "11.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-11.0.0.tgz",
"integrity": "sha512-SoGIHNI748OCZn6BxFYT83ytWoYETCINVHV3LKScVAWQQauWdvmdDqJC5YXWjpBbxg2E761Tg5aUGKLFOVhEkA==",
"version": "12.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-12.0.0.tgz",
"integrity": "sha512-x6x8QNARrGO2sG6iURkzqL+Dp+4bJorPMMRNPScdvaUK8PsynriOcMW7AFDKqkWAS5wbue/u8fUT/4ynzcmqdQ==",
"dev": true,
"requires": {}
},
"stylelint-config-recommended-scss": {
"version": "10.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-10.0.0.tgz",
"integrity": "sha512-+YvPgUHi0W5mCJCKdupBCIsWPYNbWuJcRmFtSYujwNg+41ljFknhO9bpY6C+oahv659zW7W1AT7i6DQvJYYr1A==",
"version": "11.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-11.0.0.tgz",
"integrity": "sha512-EDghTDU7aOv2LTsRZvcT1w8mcjUaMhuy+t38iV5I/0Qiu6ixdkRwhLEMul3K/fnB2v9Nwqvb3xpvJfPH+HduDw==",
"dev": true,
"requires": {
"postcss-scss": "^4.0.6",
"stylelint-config-recommended": "^11.0.0",
"stylelint-config-recommended": "^12.0.0",
"stylelint-scss": "^4.6.0"
}
},
"stylelint-config-standard": {
"version": "32.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-32.0.0.tgz",
"integrity": "sha512-UnGJxYDyYFrIE9CjDMZRkrNh2o4lOtO+MVZ9qG5b8yARfsWho0GMx4YvhHfsv8zKKgHeWX2wfeyxmuoqcaYZ4w==",
"version": "33.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-33.0.0.tgz",
"integrity": "sha512-eyxnLWoXImUn77+ODIuW9qXBDNM+ALN68L3wT1lN2oNspZ7D9NVGlNHb2QCUn4xDug6VZLsh0tF8NyoYzkgTzg==",
"dev": true,
"requires": {
"stylelint-config-recommended": "^11.0.0"
"stylelint-config-recommended": "^12.0.0"
}
},
"stylelint-config-standard-scss": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-8.0.0.tgz",
"integrity": "sha512-TDT/gJD/0LUDoUgkjF1uoI/4DfczXHxg7gJVcWT4/JbE6k5hszVuI14reNX+tEwSyMNhcK2BA7izrK+uVAz7XA==",
"version": "9.0.0",
"resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-9.0.0.tgz",
"integrity": "sha512-yPKpJsrZn4ybuQZx/DkEHuCjw7pJginErE/47dFhCnrvD48IJ4UYec8tSiCuJWMA3HRjbIa3nh5ZeSauDGuVAg==",
"dev": true,
"requires": {
"stylelint-config-recommended-scss": "^10.0.0",
"stylelint-config-standard": "^32.0.0"
"stylelint-config-recommended-scss": "^11.0.0",
"stylelint-config-standard": "^33.0.0"
}
},
"stylelint-scss": {

View File

@@ -1,6 +1,6 @@
{
"name": "@gethinode/hinode",
"version": "0.12.0-alpha2",
"version": "0.12.0",
"description": "Hinode is a clean documentation and blog theme for Hugo, an open-source static site generator",
"keywords": [
"hugo",
@@ -57,7 +57,7 @@
"bootstrap": "^5.3.0-alpha3",
"cssnano": "^6.0.0",
"cssnano-preset-advanced": "^6.0.0",
"eslint": "^8.37.0",
"eslint": "^8.39.0",
"eslint-config-standard": "^17.0.0",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-n": "^15.7.0",
@@ -69,8 +69,8 @@
"purgecss-whitelister": "^2.4.0",
"rimraf": "^5.0.0",
"shx": "^0.3.4",
"stylelint": "^15.4.0",
"stylelint-config-standard-scss": "^8.0.0"
"stylelint": "^15.6.0",
"stylelint-config-standard-scss": "^9.0.0"
},
"hugo-bin": {
"buildTags": "extended"