mirror of
https://github.com/gethinode/hinode.git
synced 2025-10-07 10:04:22 +00:00
Compare commits
37 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
a3d289843f | ||
![]() |
8700e18ad9 | ||
![]() |
8936dafac6 | ||
![]() |
4d1c7d46eb | ||
![]() |
bffe6425da | ||
![]() |
3e1c3a2c9c | ||
![]() |
df83103718 | ||
![]() |
e54417bc02 | ||
![]() |
61f2b82221 | ||
![]() |
2689107e5a | ||
![]() |
d20d053232 | ||
![]() |
35fb72d408 | ||
![]() |
18cee3cac6 | ||
![]() |
192021fbb3 | ||
![]() |
a3c5d36584 | ||
![]() |
42d169bbc0 | ||
![]() |
3b4b3a65b6 | ||
![]() |
32ee66bf90 | ||
![]() |
6b8ff44fb0 | ||
![]() |
70cc8946b0 | ||
![]() |
eab0cfa6ab | ||
![]() |
1580898f1a | ||
![]() |
530fb03d29 | ||
![]() |
3e5261bd36 | ||
![]() |
e2d409baed | ||
![]() |
d009874ece | ||
![]() |
f8adffc131 | ||
![]() |
68a3a3be30 | ||
![]() |
c077c8b53b | ||
![]() |
6a0c6af296 | ||
![]() |
2bf16b0e59 | ||
![]() |
e56cc645e2 | ||
![]() |
8c361a8417 | ||
![]() |
65e9e57c9e | ||
![]() |
ffa4473d25 | ||
![]() |
6c5fe6f208 | ||
![]() |
60efecf946 |
20
assets/js/menu.js
Normal file
20
assets/js/menu.js
Normal file
@@ -0,0 +1,20 @@
|
||||
const url = new URL(window.location.href)
|
||||
const menu = url.searchParams.get('menu')
|
||||
const child = url.searchParams.get('child')
|
||||
const menuItems = document.querySelectorAll('[data-nav="main"]')
|
||||
|
||||
if (menu !== null) {
|
||||
menuItems.forEach(element => {
|
||||
element.classList.remove('active')
|
||||
})
|
||||
|
||||
const targetMainItems = document.querySelectorAll(`[data-nav-main="${menu}"]:not([data-nav-child])`)
|
||||
targetMainItems.forEach(element => {
|
||||
element.classList.add('active')
|
||||
})
|
||||
|
||||
const targetChildItems = document.querySelectorAll(`[data-nav-main="${menu}"][data-nav-child="${child}"]`)
|
||||
targetChildItems.forEach(element => {
|
||||
element.classList.add('active')
|
||||
})
|
||||
}
|
@@ -1,33 +1,33 @@
|
||||
[[main]]
|
||||
name = "About"
|
||||
url = "/about/"
|
||||
pageRef = "/about/"
|
||||
weight = 10
|
||||
|
||||
[[main]]
|
||||
name = "Blog"
|
||||
url = "/blog/"
|
||||
pageRef = "/blog/"
|
||||
weight = 20
|
||||
|
||||
[[main]]
|
||||
name = "Projects"
|
||||
url = "/projects/"
|
||||
pageRef = "/projects/"
|
||||
weight = 30
|
||||
|
||||
[[main]]
|
||||
name = "Sample project"
|
||||
url = "/projects/sample-project/"
|
||||
pageRef = "/projects/sample-project/"
|
||||
parent = "Projects"
|
||||
weight = 1
|
||||
|
||||
[[main]]
|
||||
name = "Another project"
|
||||
url = "/projects/another-project/"
|
||||
pageRef = "/projects/another-project/"
|
||||
parent = "Projects"
|
||||
weight = 2
|
||||
|
||||
[[main]]
|
||||
name = "Tags"
|
||||
url = "/tags/"
|
||||
pageRef = "/tags/"
|
||||
weight = 40
|
||||
|
||||
[[social]]
|
||||
@@ -51,23 +51,23 @@
|
||||
# toml-docs-start sample-navigation
|
||||
[[sample]]
|
||||
name = "Blog"
|
||||
url = "/blog/"
|
||||
pageRef = "/blog/"
|
||||
weight = 10
|
||||
|
||||
[[sample]]
|
||||
name = "Projects"
|
||||
url = "/projects/"
|
||||
pageRef = "/projects/"
|
||||
weight = 20
|
||||
|
||||
[[sample]]
|
||||
name = "Sample project"
|
||||
url = "/projects/sample-project/"
|
||||
pageRef = "/projects/sample-project/"
|
||||
parent = "Projects"
|
||||
weight = 1
|
||||
|
||||
[[sample]]
|
||||
name = "Another project"
|
||||
url = "/projects/another-project/"
|
||||
pageRef = "/projects/another-project/"
|
||||
parent = "Projects"
|
||||
weight = 2
|
||||
# toml-docs-end sample-navigation
|
@@ -1,33 +1,33 @@
|
||||
[[main]]
|
||||
name = "Over mij"
|
||||
url = "/over-mij/"
|
||||
pageRef = "/over-mij/"
|
||||
weight = 10
|
||||
|
||||
[[main]]
|
||||
name = "Blog"
|
||||
url = "/blog/"
|
||||
pageRef = "/blog/"
|
||||
weight = 20
|
||||
|
||||
[[main]]
|
||||
name = "Projecten"
|
||||
url = "/projecten/"
|
||||
pageRef = "/projecten/"
|
||||
weight = 30
|
||||
|
||||
[[main]]
|
||||
name = "Voorbeeldproject"
|
||||
url = "/projecten/voorbeeldproject/"
|
||||
pageRef = "/projecten/voorbeeldproject/"
|
||||
parent = "Projecten"
|
||||
weight = 1
|
||||
|
||||
[[main]]
|
||||
name = "Ander project"
|
||||
url = "/projecten/ander-project/"
|
||||
pageRef = "/projecten/ander-project/"
|
||||
parent = "Projecten"
|
||||
weight = 2
|
||||
|
||||
[[main]]
|
||||
name = "Tags"
|
||||
url = "/tags/"
|
||||
pageRef = "/tags/"
|
||||
weight = 40
|
||||
|
||||
[[social]]
|
||||
@@ -51,23 +51,23 @@
|
||||
# toml-docs-start sample-navigation
|
||||
[[sample]]
|
||||
name = "Blog"
|
||||
url = "/blog/"
|
||||
pageRef = "/blog/"
|
||||
weight = 10
|
||||
|
||||
[[sample]]
|
||||
name = "Projecten"
|
||||
url = "/projecten/"
|
||||
pageRef = "/projecten/"
|
||||
weight = 20
|
||||
|
||||
[[sample]]
|
||||
name = "Voorbeeldproject"
|
||||
url = "/projecten/voorbeeldproject/"
|
||||
pageRef = "/projecten/voorbeeldproject/"
|
||||
parent = "Projecten"
|
||||
weight = 1
|
||||
|
||||
[[sample]]
|
||||
name = "Ander project"
|
||||
url = "/projecten/ander-project/"
|
||||
pageRef = "/projecten/ander-project/"
|
||||
parent = "Projecten"
|
||||
weight = 2
|
||||
# toml-docs-end sample-navigation
|
@@ -10,6 +10,8 @@
|
||||
[docs]
|
||||
version = "0.8"
|
||||
basePath = ""
|
||||
github = "https://github.com/gethinode/hinode"
|
||||
release = "https://github.com/gethinode/hinode/releases/tag/"
|
||||
# toml-docs-end docs
|
||||
|
||||
# toml-docs-start home
|
||||
|
@@ -1,7 +1,7 @@
|
||||
---
|
||||
author: Mark Dumay
|
||||
title: Bootstrap elements
|
||||
date: 2023-02-17
|
||||
date: 2023-05-20
|
||||
description: Use shortcodes to add common Bootstrap elements with ease.
|
||||
tags: ["bootstrap", "shortcode"]
|
||||
thumbnail: img/boots.jpg
|
||||
@@ -223,6 +223,16 @@ As an example, the following shortcode displays a light navigation header.
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Release
|
||||
|
||||
As an example, the following shortcode displays a default release button.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* release version="v0.14.1" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Spinner
|
||||
|
||||
As an example, the following shortcode displays a centered spinner.
|
||||
|
@@ -224,6 +224,16 @@ De volgende shortcode toont een navigatiemenu.
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Release
|
||||
|
||||
De volgende shortcode toont een knop voor een nieuwe release.
|
||||
|
||||
<!-- markdownlint-disable MD037 -->
|
||||
{{< example lang="hugo" >}}
|
||||
{{</* release version="v0.14.1" */>}}
|
||||
{{< /example >}}
|
||||
<!-- markdownlint-enable MD037 -->
|
||||
|
||||
## Spinner
|
||||
|
||||
De volgende shortcode toont een ronddraaiende cirkel.
|
||||
|
@@ -75,6 +75,10 @@
|
||||
translation: "Toggle main navigation"
|
||||
- id: demo
|
||||
translation: "Demo"
|
||||
- id: addedFeature
|
||||
translation: "Added in"
|
||||
- id: deprecatedFeature
|
||||
translation: "Deprecated in"
|
||||
|
||||
# 404 page
|
||||
- id: pageNotFound
|
||||
|
@@ -65,6 +65,10 @@
|
||||
translation: "Automatisch"
|
||||
- id: toggleMainNav
|
||||
translation: "Toon of verberg hoofdnavigatie"
|
||||
- id: addedFeature
|
||||
translation: "Toegevoegd in"
|
||||
- id: deprecatedFeature
|
||||
translation: "Verouderd in"
|
||||
|
||||
# 404 page
|
||||
- id: pageNotFound
|
||||
|
11
layouts/alias.html
Normal file
11
layouts/alias.html
Normal file
@@ -0,0 +1,11 @@
|
||||
<!DOCTYPE html>
|
||||
<html{{ with site.LanguageCode | default site.Language.Lang }} lang="{{ . }}"{{ end }}>
|
||||
<head>
|
||||
<title>{{ .Permalink }}</title>
|
||||
<link rel="canonical" href="{{ .Permalink }}">
|
||||
<meta name="robots" content="noindex">
|
||||
<meta charset="utf-8">
|
||||
<noscript><meta http-equiv="refresh" content="0; url={{ .Permalink }}"></noscript>
|
||||
<script src="/js/alias.js"></script>
|
||||
</head>
|
||||
</html>
|
@@ -1,7 +1,14 @@
|
||||
<nav aria-label="breadcrumb">
|
||||
<ol class="breadcrumb">
|
||||
{{- range .Page.Ancestors.Reverse -}}
|
||||
<li class="breadcrumb-item"><a href="{{ .Permalink }}">{{ if not .IsHome }}{{ .Title }}{{ else }}{{ T "home" }}{{ end }}</a></li>
|
||||
{{- range $index, $item := .Page.Ancestors.Reverse -}}
|
||||
{{- $title := .Title -}}
|
||||
{{- if .IsHome }}{{ $title = T "home" }}{{ end -}}
|
||||
{{- $address := or .Permalink (.Params.Redirect | absLangURL) -}}
|
||||
{{ if $address }}
|
||||
<li class="breadcrumb-item"><a href="{{ $address }}">{{ $title }}</a></li>
|
||||
{{ else }}
|
||||
<li class="breadcrumb-item">{{ $title }}</li>
|
||||
{{ end }}
|
||||
{{- end -}}
|
||||
<li class="breadcrumb-item active" aria-current="page">{{ .Page.Title }}</li>
|
||||
</ol>
|
||||
|
@@ -135,7 +135,7 @@
|
||||
|
||||
{{- if eq $orientation "horizontal" -}}
|
||||
<div class="card mb-3 {{ with $color }}bg-{{ . }} text-bg-{{ . }}{{ end }} {{ $class }}">
|
||||
<div class="row g-0">
|
||||
<div class="row g-0 row-cols-1">
|
||||
<div class="col-4">
|
||||
{{- if $thumbnail -}}
|
||||
{{- partial "assets/image.html" (dict "url" $thumbnail "ratio" "1x1" "outerClass" "h-100 card-img-wrap" "innerClass" "rounded-start card-img-h100" "title" $title) -}}
|
||||
@@ -144,7 +144,7 @@
|
||||
{{- partial "assets/icon.html" (dict "icon" (printf "%s fa-4x text-secondary" $icon)) -}}
|
||||
</div>
|
||||
{{- end -}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-8">
|
||||
<div class="card-body d-flex p-{{ $padding }} flex-column h-100">
|
||||
{{ if $page }}<div>{{ partial "card-caption.html" (dict "page" $page "keywords" $header "color" $color) }}</div>{{ end }}
|
||||
|
45
layouts/partials/assets/navbar-item.html
Normal file
45
layouts/partials/assets/navbar-item.html
Normal file
@@ -0,0 +1,45 @@
|
||||
{{- $menu := .menu -}}
|
||||
{{- $parent := .parent -}}
|
||||
{{- $page := .page -}}
|
||||
{{- $class := .class -}}
|
||||
|
||||
{{- $menuURL := (or $menu.PageRef $menu.URL) | relLangURL -}}
|
||||
{{- $pageURL := $page.RelPermalink | relLangURL -}}
|
||||
{{- $isActive := hasPrefix $pageURL $menuURL -}}
|
||||
{{- $isAlias := $menu.Params.alias -}}
|
||||
|
||||
{{- $url := urls.Parse $menuURL -}}
|
||||
{{- $baseURL := urls.Parse $.Site.Params.Baseurl -}}
|
||||
{{- $isExternal := ne $url.Host $baseURL.Host -}}
|
||||
{{- $externalHref := "" }}
|
||||
{{- if $isExternal }}{{ $externalHref = "target=\"_blank\" rel=\"noopener noreferrer\"" }}{{ end -}}
|
||||
|
||||
{{- $mainNav := urlize (lower $menu.Name) -}}
|
||||
{{- $childNav := "" -}}
|
||||
|
||||
{{- $button := "" -}}
|
||||
{{- if $parent -}}
|
||||
{{- $mainNav = urlize (lower $parent.Name) -}}
|
||||
{{- $childNav = urlize (lower $menu.Name) -}}
|
||||
{{- $class = printf "dropdown-item %s" $class -}}
|
||||
{{- else if $menu.HasChildren -}}
|
||||
{{- $class = printf "nav-link dropdown-toggle %s" $class -}}
|
||||
{{- $button = " role=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"" -}}
|
||||
{{- else -}}
|
||||
{{- $class = printf "nav-link %s" $class -}}
|
||||
{{- end -}}
|
||||
{{- $params := "" -}}
|
||||
{{- if and $isAlias (not $isExternal) -}}
|
||||
{{- $params = printf "?menu=%s" $mainNav -}}
|
||||
{{- with $childNav }}{{ $params = printf "%s&child=%s" $params . }}{{ end -}}
|
||||
{{- end -}}
|
||||
|
||||
<a class="{{ $class }}{{ if $isActive }} active{{ end }}"
|
||||
data-nav="main" data-nav-main="{{ $mainNav }}"{{ with $childNav }} data-nav-child="{{ . }}"{{ end }}
|
||||
href="{{ $menuURL }}{{ $params | safeHTMLAttr }}"{{ with $externalHref }} {{ . | safeHTMLAttr }}{{ end }} {{ $button | safeHTMLAttr }}>
|
||||
|
||||
{{- with $menu.Pre }}{{ . }}{{ end -}}
|
||||
<span {{ if $isActive }} class="active"{{ end }}>{{ $menu.Name }}</span>
|
||||
{{- with $menu.Post }}{{ . }}{{ end -}}
|
||||
{{- if $isExternal }} {{ partial "assets/icon.html" (dict "icon" "fas up-right-from-square fa-2xs") }}{{ end -}}
|
||||
</a>
|
@@ -5,8 +5,8 @@
|
||||
"size" Optional size of the button, either "sm", "md" (default), or "lg".
|
||||
"fixed" Optional flag to indicate the navbar should stick to the top, defaults to false.
|
||||
"color" Optional background color of the navbar, either "primary", "secondary", "success",
|
||||
"danger", "warning", "info", "light", "dark", "white", "black", "body", or "body-tertiary". The
|
||||
default color is none.
|
||||
"danger", "warning", "info", "white", "black", "body", or "body-tertiary". The default color is
|
||||
none.
|
||||
"mode" Optional flag to include a color mode switcher, default is "true" (if dark mode is enabled).
|
||||
"search" Optional flag to include a search input, default is "true".
|
||||
"logo" Optional address of the logo image, defaults to the parameter "logo" set in the "main" section of
|
||||
@@ -84,7 +84,7 @@
|
||||
{{- $color := "" -}}
|
||||
{{- with .color -}}
|
||||
{{- $color = . -}}
|
||||
{{- $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body" "body-tertiary" -}}
|
||||
{{- $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "white" "black" "body" "body-tertiary" -}}
|
||||
{{- if not (in $supportedColors $color) -}}
|
||||
{{- errorf "partial [assets/navbar.html] - Invalid value for param 'color': %s" $color -}}
|
||||
{{- end -}}
|
||||
@@ -124,7 +124,11 @@
|
||||
{{- $pre := .Pre -}}
|
||||
{{- $post := .Post -}}
|
||||
|
||||
<nav class="navbar navbar-expand-{{ $size }} {{ with $color }}bg-{{ . }}{{ end }} {{ if $fixed }}fixed-top{{ end }} p-4">
|
||||
{{- $theme := "" -}}
|
||||
{{- if eq $color "black" }}{{ $theme = "dark" }}{{ end -}}
|
||||
{{- if eq $color "white" }}{{ $theme = "light" }}{{ end -}}
|
||||
|
||||
<nav class="navbar navbar-expand-{{ $size }} {{ with $color }}bg-{{ . }}{{ end }} {{ if $fixed }}fixed-top{{ end }} p-4"{{ with $theme }} data-bs-theme="{{ . }}"{{ end }}>
|
||||
<div class="container-xxl p-0">
|
||||
<!-- Insert sidebar toggler when applicable -->
|
||||
<div class="d-flex">
|
||||
@@ -166,39 +170,19 @@
|
||||
<!-- Render top-menu items (maximum depth of 2) -->
|
||||
<ul class="navbar-nav ms-auto">
|
||||
{{- range $menu := $menus -}}
|
||||
{{- $menu_item_url := $menu.URL | relLangURL -}}
|
||||
{{- $page_url:= $page.RelPermalink | relLangURL -}}
|
||||
{{- $active := hasPrefix $page_url $menu_item_url -}}
|
||||
|
||||
{{- $url := urls.Parse .URL -}}
|
||||
{{- $baseurl := urls.Parse $.Site.Params.Baseurl -}}
|
||||
{{- if .HasChildren -}}
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link {{ if $active }}active{{ end }} dropdown-toggle" href="{{ .URL | relLangURL }}" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||
{{ if $active }}<span class="active">{{ .Name }}</span>{{ else }}{{ .Name }}{{ end }}
|
||||
</a>
|
||||
<li class="nav-item{{ if .HasChildren }} dropdown{{ end }}">
|
||||
{{- partial "assets/navbar-item.html" (dict "menu" $menu "page" $page) -}}
|
||||
{{- if .HasChildren -}}
|
||||
<ul class="dropdown-menu dropdown-menu-end">
|
||||
{{- range .Children -}}
|
||||
{{- $child_active := eq $page_url (.URL | relLangURL) -}}
|
||||
<li><a class="dropdown-item {{ if $child_active }}active{{ end }}" href="{{ .URL | relLangURL }}">{{ .Name }}</a></li>
|
||||
{{- partial "assets/navbar-item.html" (dict "menu" . "parent" $menu "page" $page) -}}
|
||||
{{- end -}}
|
||||
</ul>
|
||||
</li>
|
||||
{{- else -}}
|
||||
<li class="nav-item">
|
||||
{{- $external := ne $url.Host $baseurl.Host -}}
|
||||
<a class="nav-link {{ if $active }}active{{ end }}"
|
||||
href="{{ with .Page }}{{ .RelPermalink }}{{ else }}{{ .URL | relLangURL }}{{ end }}" {{ if $external }}target="_blank" rel="noopener noreferrer" {{ end }}>
|
||||
{{- with $pre}}{{ . }}{{ end -}}
|
||||
<span {{if $active }} class="active"{{end}}>{{ .Name }}</span>
|
||||
{{- with $post}}{{ . }}{{ end -}}
|
||||
{{- if $external }} {{ partial "assets/icon.html" (dict "icon" "fas up-right-from-square fa-2xs") }}{{ end -}}
|
||||
</a>
|
||||
</li>
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
</li>
|
||||
{{- end -}}
|
||||
|
||||
|
||||
<!-- Insert divider if applicable -->
|
||||
{{- if or $enableLanguage $enableDarkMode -}}
|
||||
<li class="nav-item py-2 py-md-1 col-12 col-md-auto d-none d-{{ $size }}-block">
|
||||
<div class="vr d-none d-md-flex h-100 mx-md-2"></div>
|
||||
|
@@ -30,7 +30,7 @@
|
||||
{{- end -}}
|
||||
|
||||
{{- if not hugo.IsProduction -}}
|
||||
<link rel="stylesheet" href="{{ $css.Permalink | relLangURL }}">
|
||||
<link rel="stylesheet" href="{{ $css.Permalink }}">
|
||||
{{- else -}}
|
||||
{{- $css = $css | fingerprint | resources.PostProcess -}}
|
||||
<link rel="stylesheet" href="{{ $css.Permalink }}" integrity="{{ $css.Data.Integrity }}" crossorigin="anonymous">
|
||||
|
@@ -1 +1,6 @@
|
||||
{{ return index .Site.Data .Section }}
|
||||
{{- $menu := "" -}}
|
||||
{{- if .IsPage -}}
|
||||
{{- $menu = index .Site.Data .Section -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- return $menu -}}
|
@@ -5,6 +5,12 @@
|
||||
"show" Optional flag to indicate an item should be shown as collapsed.
|
||||
-->
|
||||
|
||||
{{- $id := .Ordinal -}}
|
||||
{{- $parent := printf "accordion-%d" .Parent.Ordinal -}}
|
||||
{{- with (.Parent.Get "id") -}}
|
||||
{{- $parent = . -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- $id := .Ordinal -}}
|
||||
{{ $header := .Get "header" -}}
|
||||
{{ if not $header -}}
|
||||
@@ -35,8 +41,6 @@
|
||||
{{ errorf "Invalid value for param 'show': %s" $showParam -}}
|
||||
{{ end -}}
|
||||
|
||||
{{- $parent := printf "accordion-%d" .Parent.Ordinal -}}
|
||||
|
||||
<div class="accordion-item">
|
||||
{{- with $header -}}
|
||||
<h2 class="accordion-header m-0" id="{{ $parent }}-heading-{{ $id }}">
|
||||
|
@@ -1,12 +1,34 @@
|
||||
<!--
|
||||
Displays a group of vertically collapsing and expanding items. Add accordion-item inner elements for each accordion
|
||||
item. The shortcode supports the following arguments:
|
||||
"id": Optional id of the accordion, defaults to "accordion-" with a sequential number.
|
||||
"always-open": Optional flag to make accordion items stay open when another item is opened.
|
||||
"class": Optional class attribute of the accordion element, e.g. “w-50”.
|
||||
-->
|
||||
|
||||
{{- $id := .Ordinal -}}
|
||||
{{- $id := printf "accordion-%d" .Ordinal -}}
|
||||
{{ with .Get "id" }}
|
||||
{{ $id = . }}
|
||||
{{ end }}
|
||||
{{- $class := .Get "class" -}}
|
||||
|
||||
<div id="accordion-{{ $id }}" class="accordion mb-3{{ with $class }} {{ . }}{{ end }}">
|
||||
{{- .Inner -}}
|
||||
{{- $openParam := "false" -}}
|
||||
{{- $open := false -}}
|
||||
{{- with .Get "always-open" }}{{ $openParam = . }}{{ end -}}
|
||||
{{- $supportedFlags := slice "true" "false" -}}
|
||||
{{- if in $supportedFlags $openParam -}}
|
||||
{{- if eq $openParam "true" }}{{ $open = true }}{{ end -}}
|
||||
{{- else -}}
|
||||
{{- errorf "Invalid value for param 'always-open': %s" .Position -}}
|
||||
{{- $error = true -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- $body := .Inner -}}
|
||||
{{- if $open -}}
|
||||
{{- $pattern := printf "data-bs-parent=\"#%s\"" $id -}}
|
||||
{{- $body = (replace .Inner $pattern "") | markdownify | safeHTML }}
|
||||
{{- end -}}
|
||||
|
||||
<div id="{{ $id }}" class="accordion mb-3{{ with $class }} {{ . }}{{ end }}">
|
||||
{{- $body -}}
|
||||
</div>
|
@@ -6,15 +6,19 @@
|
||||
"icon" Optional class and name of a Font Awesome icon to include.
|
||||
-->
|
||||
|
||||
{{- $error := false -}}
|
||||
{{ $color := "primary" -}}
|
||||
{{ with .Get "color" }}{{ $color = . }}{{ end -}}
|
||||
{{ $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" -}}
|
||||
{{ $error = true -}}
|
||||
{{ end -}}
|
||||
|
||||
{{ $icon := .Get "icon" }}
|
||||
{{ $icon := "" }}
|
||||
{{ with .Get "icon" }}
|
||||
{{ $icon = partial "assets/icon.html" (dict "icon" (printf "%s fa-2x fa-pull-left" .)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ $dismissibleParam := "false" -}}
|
||||
{{ $dismissible := false -}}
|
||||
@@ -24,10 +28,13 @@
|
||||
{{ if eq $dismissibleParam "true" }}{{ $dismissible = true }}{{ end -}}
|
||||
{{ else -}}
|
||||
{{ errorf "Invalid value for param 'dismissible': %s" .Position -}}
|
||||
{{ $error = true -}}
|
||||
{{ end -}}
|
||||
|
||||
<div class="alert alert-{{ $color }} {{ if $dismissible }}alert-dismissible fade show{{ end }}" role="alert">
|
||||
{{ with $icon }}<i class="{{ . }} fa-2x fa-pull-left"></i>{{ end }}
|
||||
{{ trim .Inner " \r\n" | markdownify | safeHTML -}}
|
||||
{{ if $dismissible }}<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>{{ end }}
|
||||
</div>
|
||||
{{- if not $error -}}
|
||||
<div class="alert alert-{{ $color }} {{ if $dismissible }}alert-dismissible fade show{{ end }}" role="alert">
|
||||
{{ with $icon }}{{ . }}{{ end }}
|
||||
{{ trim .Inner " \r\n" | markdownify | safeHTML -}}
|
||||
{{ if $dismissible }}<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>{{ end }}
|
||||
</div>
|
||||
{{- end -}}
|
@@ -1,18 +1,23 @@
|
||||
<!--
|
||||
Displays a carousel of several responsive images (see the image shortcode for more details). Add inner <img>
|
||||
elements to define individual image slides. The shortcode supports the following arguments:
|
||||
"id": Optional id of the carousel, defaults to "carousel-" with a sequential number.
|
||||
"ratio": Optional ratio of the image, either "1x1", "4x3", "16x9", or "21x9". Other values are ignored.
|
||||
Instead, the original aspect ratio of the image is preserved.
|
||||
"class": Optional class attribute of the carousel element, e.g. “w-75”.
|
||||
-->
|
||||
|
||||
{{- $id := printf "carousel-%d" .Ordinal -}}
|
||||
{{ with .Get "id" }}
|
||||
{{ $id = . }}
|
||||
{{ end }}
|
||||
|
||||
{{ $ratio := .Get "ratio" -}}
|
||||
{{ $class := .Get "class" -}}
|
||||
{{ $id := .Ordinal -}}
|
||||
{{ $images := .Inner -}}
|
||||
{{ $items := len (findRE "carousel-item" $images) -}}
|
||||
|
||||
<div id="carousel-{{ $id }}" class="carousel slide mb-3{{ with $class }} {{ . }}{{ end }}" data-bs-ride="true">
|
||||
<div id="{{ $id }}" class="carousel slide mb-3{{ with $class }} {{ . }}{{ end }}" data-bs-ride="true">
|
||||
<div class="carousel-indicators">
|
||||
{{ range $index := (seq $items) -}}
|
||||
<button type="button" data-bs-target="#carousel-{{ $id }}" data-bs-slide-to="{{ sub $index 1 }}" {{ if eq $index 1 }}class="active"{{ end }} aria-current="true" aria-label="Slide {{ $index }}"></button>
|
||||
@@ -21,11 +26,11 @@
|
||||
<div class="carousel-inner">
|
||||
{{ $images }}
|
||||
</div>
|
||||
<button class="carousel-control-prev" type="button" data-bs-target="#carousel-{{ $id }}" data-bs-slide="prev">
|
||||
<button class="carousel-control-prev" type="button" data-bs-target="#{{ $id }}" data-bs-slide="prev">
|
||||
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
|
||||
<span class="visually-hidden">Previous</span>
|
||||
</button>
|
||||
<button class="carousel-control-next" type="button" data-bs-target="#carousel-{{ $id }}" data-bs-slide="next">
|
||||
<button class="carousel-control-next" type="button" data-bs-target="#{{ $id }}" data-bs-slide="next">
|
||||
<span class="carousel-control-next-icon" aria-hidden="true"></span>
|
||||
<span class="visually-hidden">Next</span>
|
||||
</button>
|
||||
|
@@ -7,8 +7,8 @@
|
||||
"size" Optional breakpoint of the navbar toggler, either "xs", "sm", "md" (default), "lg", or "xl".
|
||||
"style" Optional style of the navbar, either "light" (default) or "dark".
|
||||
"color" Optional background color of the navbar, either "primary", "secondary", "success",
|
||||
"danger", "warning", "info", "light", "dark", "white", "black", "body", or "body-tertiary". The
|
||||
default color is none.
|
||||
"danger", "warning", "info", "white", "black", "body", or "body-tertiary". The default color is
|
||||
none.
|
||||
"mode" Optional flag to include a color mode switcher, default is "true" (if dark mode is enabled).
|
||||
"search" Optional flag to include a search input, default is "true".
|
||||
"logo" Optional address of the logo image.
|
||||
@@ -16,7 +16,7 @@
|
||||
-->
|
||||
|
||||
{{ $error := false }}
|
||||
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" "white" "black" "body" "body" "body-tertiary" -}}
|
||||
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "white" "black" "body" "body" "body-tertiary" -}}
|
||||
{{ $supportedFlags := slice "true" "false" -}}
|
||||
|
||||
{{ $id := add .Ordinal 1 }}
|
||||
|
68
layouts/shortcodes/release.html
Normal file
68
layouts/shortcodes/release.html
Normal file
@@ -0,0 +1,68 @@
|
||||
<!--
|
||||
Displays a release button that links to a specific release. Use the optional state to indicate if it is a new or
|
||||
deprecated feature.
|
||||
"version": Required version string, expects semver notation with a "v" prefix.
|
||||
"state": Optional state, either "new" or "deprecated".
|
||||
"short": Optional flag to indicate the release button should use short notation.
|
||||
-->
|
||||
|
||||
{{- $error := false -}}
|
||||
{{- $version := .Get "version" -}}
|
||||
{{- $inline := false -}}
|
||||
|
||||
{{- $state := "new" -}}
|
||||
{{- with .Get "state" }}{{ $state = . }}{{ end -}}
|
||||
{{- $supportedStates := slice "new" "deprecated" -}}
|
||||
{{- if not (in $supportedStates $state) -}}
|
||||
{{- errorf "Invalid value for param 'state': %s" .Position -}}
|
||||
{{- $error = true -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- $shortParam := "false" -}}
|
||||
{{- $short := false -}}
|
||||
{{- with .Get "short" }}{{ $shortParam = . }}{{ end -}}
|
||||
{{- $supportedFlags := slice "true" "false" -}}
|
||||
{{- if in $supportedFlags $shortParam -}}
|
||||
{{- if eq $shortParam "true" }}{{ $short = true }}{{ end -}}
|
||||
{{- else -}}
|
||||
{{- errorf "Invalid value for param 'short': %s" .Position -}}
|
||||
{{- $error = true -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- $inlineParam := "false" -}}
|
||||
{{- $inline := false -}}
|
||||
{{- with .Get "inline" }}{{ $inlineParam = . }}{{ end -}}
|
||||
{{- $supportedFlags := slice "true" "false" -}}
|
||||
{{- if in $supportedFlags $inlineParam -}}
|
||||
{{- if eq $inlineParam "true" }}{{ $inline = true }}{{ end -}}
|
||||
{{- else -}}
|
||||
{{- errorf "Invalid value for param 'inline': %s" .Position -}}
|
||||
{{- $error = true -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- $title := $version -}}
|
||||
{{- $color := "success" -}}
|
||||
{{- if eq $state "deprecated" -}}
|
||||
{{- $color = "secondary" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- if not $short -}}
|
||||
{{- if eq $state "deprecated" -}}
|
||||
{{- $title = (printf "Deprecated in %s" $version) -}}
|
||||
{{- else -}}
|
||||
{{- $title = (printf "Added in %s" $version) -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- if not $error -}}
|
||||
<div class="pb-3">
|
||||
{{- partial "assets/button.html" (dict
|
||||
"title" $title
|
||||
"href" (path.Join site.Params.docs.release $version)
|
||||
"size" "sm"
|
||||
"color" $color
|
||||
"outline" "true"
|
||||
"class" "rounded-2 fw-semibold")
|
||||
-}}
|
||||
</div>
|
||||
{{- end -}}
|
@@ -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", or "black".
|
||||
"danger", "warning", "info", "light", or "dark".
|
||||
"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" -}}
|
||||
{{ $supportedColors := slice "primary" "secondary" "success" "danger" "warning" "info" "light" "dark" -}}
|
||||
{{ if not (in $supportedColors $color) -}}
|
||||
{{ errorf "Invalid value for param 'color': %s" .Position -}}
|
||||
{{ $error = true }}
|
||||
|
464
package-lock.json
generated
464
package-lock.json
generated
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "@gethinode/hinode",
|
||||
"version": "0.13.0",
|
||||
"version": "0.14.1",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@gethinode/hinode",
|
||||
"version": "0.13.0",
|
||||
"version": "0.14.1",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"@fortawesome/fontawesome-free": "^6.4.0",
|
||||
@@ -310,6 +310,102 @@
|
||||
"integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@isaacs/cliui": {
|
||||
"version": "8.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
|
||||
"integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"string-width": "^5.1.2",
|
||||
"string-width-cjs": "npm:string-width@^4.2.0",
|
||||
"strip-ansi": "^7.0.1",
|
||||
"strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
|
||||
"wrap-ansi": "^8.1.0",
|
||||
"wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/@isaacs/cliui/node_modules/ansi-regex": {
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
|
||||
"integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/ansi-regex?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/@isaacs/cliui/node_modules/ansi-styles": {
|
||||
"version": "6.2.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
|
||||
"integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/@isaacs/cliui/node_modules/emoji-regex": {
|
||||
"version": "9.2.2",
|
||||
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
|
||||
"integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@isaacs/cliui/node_modules/string-width": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
|
||||
"integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"eastasianwidth": "^0.2.0",
|
||||
"emoji-regex": "^9.2.2",
|
||||
"strip-ansi": "^7.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/@isaacs/cliui/node_modules/strip-ansi": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz",
|
||||
"integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"ansi-regex": "^6.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/strip-ansi?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/@isaacs/cliui/node_modules/wrap-ansi": {
|
||||
"version": "8.1.0",
|
||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
|
||||
"integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"ansi-styles": "^6.1.0",
|
||||
"string-width": "^5.0.1",
|
||||
"strip-ansi": "^7.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/wrap-ansi?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/@nodelib/fs.scandir": {
|
||||
"version": "2.1.5",
|
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
|
||||
@@ -345,6 +441,16 @@
|
||||
"node": ">= 8"
|
||||
}
|
||||
},
|
||||
"node_modules/@pkgjs/parseargs": {
|
||||
"version": "0.11.0",
|
||||
"resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
|
||||
"integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/@popperjs/core": {
|
||||
"version": "2.11.7",
|
||||
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.7.tgz",
|
||||
@@ -1972,6 +2078,12 @@
|
||||
"url": "https://github.com/fb55/domutils?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/eastasianwidth": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
|
||||
"integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/electron-to-chromium": {
|
||||
"version": "1.4.284",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz",
|
||||
@@ -2831,6 +2943,34 @@
|
||||
"integrity": "sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/foreground-child": {
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
|
||||
"integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"cross-spawn": "^7.0.0",
|
||||
"signal-exit": "^4.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/foreground-child/node_modules/signal-exit": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz",
|
||||
"integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/fraction.js": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
|
||||
@@ -3398,9 +3538,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/hugo-bin": {
|
||||
"version": "0.102.0",
|
||||
"resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.102.0.tgz",
|
||||
"integrity": "sha512-gJeDdC4W0x/+a8rf7pz8L/NheEeHIKrtLIHFwMumX04UAFYUA065A4uQmDjRspsMdQ9muwB9eQfOwTSjqaYyrQ==",
|
||||
"version": "0.102.2",
|
||||
"resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.102.2.tgz",
|
||||
"integrity": "sha512-Agx3selH3s+4tEyRyRVGsD7OpWuBzQnGCpkLVUVCgqCiPU4pZwyL5a6uJ7CA1A+ORIVPyUUgwMUgqTf0sqS5Ew==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
@@ -3414,7 +3554,7 @@
|
||||
"pkg-conf": "^4.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"hugo": "cli.js"
|
||||
"hugo": "bin/cli.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^14.14.0 || >=16.0.0"
|
||||
@@ -3824,6 +3964,24 @@
|
||||
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/jackspeak": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.0.tgz",
|
||||
"integrity": "sha512-r5XBrqIJfwRIjRt/Xr5fv9Wh09qyhHfKnYddDlpM+ibRR20qrYActpCAgU6U+d53EOEjzkvxPMVHSlgR7leXrQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@isaacs/cliui": "^8.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"@pkgjs/parseargs": "^0.11.0"
|
||||
}
|
||||
},
|
||||
"node_modules/js-sdsl": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz",
|
||||
@@ -4295,12 +4453,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/minipass": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
|
||||
"integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
|
||||
"version": "6.0.2",
|
||||
"resolved": "https://registry.npmjs.org/minipass/-/minipass-6.0.2.tgz",
|
||||
"integrity": "sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
"node": ">=16 || 14 >=14.17"
|
||||
}
|
||||
},
|
||||
"node_modules/ms": {
|
||||
@@ -4671,13 +4829,13 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/path-scurry": {
|
||||
"version": "1.6.4",
|
||||
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.4.tgz",
|
||||
"integrity": "sha512-Qp/9IHkdNiXJ3/Kon++At2nVpnhRiPq/aSvQN+H3U1WZbvNRK0RIQK/o4HMqPoXjpuGJUEWpHSs6Mnjxqh3TQg==",
|
||||
"version": "1.9.2",
|
||||
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.9.2.tgz",
|
||||
"integrity": "sha512-qSDLy2aGFPm8i4rsbHd4MNyTcrzHFsLQykrtbuGRknZZCBBVXSv2tSCDN2Cg6Rt/GFRw8GoW9y9Ecw5rIPG1sg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"lru-cache": "^9.0.0",
|
||||
"minipass": "^5.0.0"
|
||||
"lru-cache": "^9.1.1",
|
||||
"minipass": "^5.0.0 || ^6.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16 || 14 >=14.17"
|
||||
@@ -4687,12 +4845,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/path-scurry/node_modules/lru-cache": {
|
||||
"version": "9.0.0",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.0.0.tgz",
|
||||
"integrity": "sha512-9AEKXzvOZc4BMacFnYiTOlDH/197LNnQIK9wZ6iMB5NXPzuv4bWR/Msv7iUMplkiMQ1qQL+KSv/JF1mZAB5Lrg==",
|
||||
"version": "9.1.1",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.1.tgz",
|
||||
"integrity": "sha512-65/Jky17UwSb0BuB9V+MyDpsOtXKmYwzhyl+cOa9XUiI4uV2Ouy/2voFP3+al0BjZbJgMBD8FojMpAf+Z+qn4A==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=16.14"
|
||||
"node": "14 || >=16.14"
|
||||
}
|
||||
},
|
||||
"node_modules/path-type": {
|
||||
@@ -5916,12 +6074,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/rimraf": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.0.tgz",
|
||||
"integrity": "sha512-Jf9llaP+RvaEVS5nPShYFhtXIrb3LRKP281ib3So0KkeZKo2wIKyq0Re7TOSwanasA423PSr6CCIL4bP6T040g==",
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.1.tgz",
|
||||
"integrity": "sha512-OfFZdwtd3lZ+XZzYP/6gTACubwFcHdLRqS9UX3UwpU2dnGQYkPFISRwvM3w9IiB2w7bW5qGo/uAwE4SmXXSKvg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"glob": "^10.0.0"
|
||||
"glob": "^10.2.5"
|
||||
},
|
||||
"bin": {
|
||||
"rimraf": "dist/cjs/src/bin.js"
|
||||
@@ -5943,15 +6101,19 @@
|
||||
}
|
||||
},
|
||||
"node_modules/rimraf/node_modules/glob": {
|
||||
"version": "10.0.0",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-10.0.0.tgz",
|
||||
"integrity": "sha512-zmp9ZDC6NpDNLujV2W2n+3lH+BafIVZ4/ct+Yj3BMZTH/+bgm/eVjHzeFLwxJrrIGgjjS2eiQLlpurHsNlEAtQ==",
|
||||
"version": "10.2.5",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-10.2.5.tgz",
|
||||
"integrity": "sha512-Gj+dFYPZ5hc5dazjXzB0iHg2jKWJZYMjITXYPBRQ/xc2Buw7H0BINknRTwURJ6IC6MEFpYbLvtgVb3qD+DwyuA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"fs.realpath": "^1.0.0",
|
||||
"foreground-child": "^3.1.0",
|
||||
"jackspeak": "^2.0.3",
|
||||
"minimatch": "^9.0.0",
|
||||
"minipass": "^5.0.0",
|
||||
"path-scurry": "^1.6.4"
|
||||
"minipass": "^5.0.0 || ^6.0.2",
|
||||
"path-scurry": "^1.7.0"
|
||||
},
|
||||
"bin": {
|
||||
"glob": "dist/cjs/src/bin.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16 || 14 >=14.17"
|
||||
@@ -6335,6 +6497,21 @@
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/string-width-cjs": {
|
||||
"name": "string-width",
|
||||
"version": "4.2.3",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
|
||||
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"emoji-regex": "^8.0.0",
|
||||
"is-fullwidth-code-point": "^3.0.0",
|
||||
"strip-ansi": "^6.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/string.prototype.trimend": {
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz",
|
||||
@@ -6375,6 +6552,19 @@
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/strip-ansi-cjs": {
|
||||
"name": "strip-ansi",
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
||||
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"ansi-regex": "^5.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/strip-bom": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
|
||||
@@ -6461,9 +6651,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/stylelint": {
|
||||
"version": "15.6.1",
|
||||
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.6.1.tgz",
|
||||
"integrity": "sha512-d8icFBlVl93Elf3Z5ABQNOCe4nx69is3D/NZhDLAie1eyYnpxfeKe7pCfqzT5W4F8vxHCLSDfV8nKNJzogvV2Q==",
|
||||
"version": "15.6.2",
|
||||
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.6.2.tgz",
|
||||
"integrity": "sha512-fjQWwcdUye4DU+0oIxNGwawIPC5DvG5kdObY5Sg4rc87untze3gC/5g/ikePqVjrAsBUZjwMN+pZsAYbDO6ArQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@csstools/css-parser-algorithms": "^2.1.1",
|
||||
@@ -7037,6 +7227,24 @@
|
||||
"url": "https://github.com/chalk/wrap-ansi?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/wrap-ansi-cjs": {
|
||||
"name": "wrap-ansi",
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
||||
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"ansi-styles": "^4.0.0",
|
||||
"string-width": "^4.1.0",
|
||||
"strip-ansi": "^6.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/wrap-ansi?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
@@ -7348,6 +7556,71 @@
|
||||
"integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
|
||||
"dev": true
|
||||
},
|
||||
"@isaacs/cliui": {
|
||||
"version": "8.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
|
||||
"integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"string-width": "^5.1.2",
|
||||
"string-width-cjs": "npm:string-width@^4.2.0",
|
||||
"strip-ansi": "^7.0.1",
|
||||
"strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
|
||||
"wrap-ansi": "^8.1.0",
|
||||
"wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"ansi-regex": {
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
|
||||
"integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
|
||||
"dev": true
|
||||
},
|
||||
"ansi-styles": {
|
||||
"version": "6.2.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
|
||||
"integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
|
||||
"dev": true
|
||||
},
|
||||
"emoji-regex": {
|
||||
"version": "9.2.2",
|
||||
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
|
||||
"integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
|
||||
"dev": true
|
||||
},
|
||||
"string-width": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
|
||||
"integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"eastasianwidth": "^0.2.0",
|
||||
"emoji-regex": "^9.2.2",
|
||||
"strip-ansi": "^7.0.1"
|
||||
}
|
||||
},
|
||||
"strip-ansi": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz",
|
||||
"integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-regex": "^6.0.1"
|
||||
}
|
||||
},
|
||||
"wrap-ansi": {
|
||||
"version": "8.1.0",
|
||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
|
||||
"integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-styles": "^6.1.0",
|
||||
"string-width": "^5.0.1",
|
||||
"strip-ansi": "^7.0.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"@nodelib/fs.scandir": {
|
||||
"version": "2.1.5",
|
||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
|
||||
@@ -7374,6 +7647,13 @@
|
||||
"fastq": "^1.6.0"
|
||||
}
|
||||
},
|
||||
"@pkgjs/parseargs": {
|
||||
"version": "0.11.0",
|
||||
"resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
|
||||
"integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"@popperjs/core": {
|
||||
"version": "2.11.7",
|
||||
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.7.tgz",
|
||||
@@ -8529,6 +8809,12 @@
|
||||
"domhandler": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"eastasianwidth": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
|
||||
"integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
|
||||
"dev": true
|
||||
},
|
||||
"electron-to-chromium": {
|
||||
"version": "1.4.284",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz",
|
||||
@@ -9174,6 +9460,24 @@
|
||||
"integrity": "sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==",
|
||||
"dev": true
|
||||
},
|
||||
"foreground-child": {
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
|
||||
"integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"cross-spawn": "^7.0.0",
|
||||
"signal-exit": "^4.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"signal-exit": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz",
|
||||
"integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"fraction.js": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
|
||||
@@ -9592,9 +9896,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"hugo-bin": {
|
||||
"version": "0.102.0",
|
||||
"resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.102.0.tgz",
|
||||
"integrity": "sha512-gJeDdC4W0x/+a8rf7pz8L/NheEeHIKrtLIHFwMumX04UAFYUA065A4uQmDjRspsMdQ9muwB9eQfOwTSjqaYyrQ==",
|
||||
"version": "0.102.2",
|
||||
"resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.102.2.tgz",
|
||||
"integrity": "sha512-Agx3selH3s+4tEyRyRVGsD7OpWuBzQnGCpkLVUVCgqCiPU4pZwyL5a6uJ7CA1A+ORIVPyUUgwMUgqTf0sqS5Ew==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@xhmikosr/bin-wrapper": "^5.0.1",
|
||||
@@ -9880,6 +10184,16 @@
|
||||
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
|
||||
"dev": true
|
||||
},
|
||||
"jackspeak": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.0.tgz",
|
||||
"integrity": "sha512-r5XBrqIJfwRIjRt/Xr5fv9Wh09qyhHfKnYddDlpM+ibRR20qrYActpCAgU6U+d53EOEjzkvxPMVHSlgR7leXrQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@isaacs/cliui": "^8.0.2",
|
||||
"@pkgjs/parseargs": "^0.11.0"
|
||||
}
|
||||
},
|
||||
"js-sdsl": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz",
|
||||
@@ -10242,9 +10556,9 @@
|
||||
}
|
||||
},
|
||||
"minipass": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
|
||||
"integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
|
||||
"version": "6.0.2",
|
||||
"resolved": "https://registry.npmjs.org/minipass/-/minipass-6.0.2.tgz",
|
||||
"integrity": "sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==",
|
||||
"dev": true
|
||||
},
|
||||
"ms": {
|
||||
@@ -10500,19 +10814,19 @@
|
||||
"dev": true
|
||||
},
|
||||
"path-scurry": {
|
||||
"version": "1.6.4",
|
||||
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.4.tgz",
|
||||
"integrity": "sha512-Qp/9IHkdNiXJ3/Kon++At2nVpnhRiPq/aSvQN+H3U1WZbvNRK0RIQK/o4HMqPoXjpuGJUEWpHSs6Mnjxqh3TQg==",
|
||||
"version": "1.9.2",
|
||||
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.9.2.tgz",
|
||||
"integrity": "sha512-qSDLy2aGFPm8i4rsbHd4MNyTcrzHFsLQykrtbuGRknZZCBBVXSv2tSCDN2Cg6Rt/GFRw8GoW9y9Ecw5rIPG1sg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"lru-cache": "^9.0.0",
|
||||
"minipass": "^5.0.0"
|
||||
"lru-cache": "^9.1.1",
|
||||
"minipass": "^5.0.0 || ^6.0.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"lru-cache": {
|
||||
"version": "9.0.0",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.0.0.tgz",
|
||||
"integrity": "sha512-9AEKXzvOZc4BMacFnYiTOlDH/197LNnQIK9wZ6iMB5NXPzuv4bWR/Msv7iUMplkiMQ1qQL+KSv/JF1mZAB5Lrg==",
|
||||
"version": "9.1.1",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.1.tgz",
|
||||
"integrity": "sha512-65/Jky17UwSb0BuB9V+MyDpsOtXKmYwzhyl+cOa9XUiI4uV2Ouy/2voFP3+al0BjZbJgMBD8FojMpAf+Z+qn4A==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
@@ -11317,12 +11631,12 @@
|
||||
"dev": true
|
||||
},
|
||||
"rimraf": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.0.tgz",
|
||||
"integrity": "sha512-Jf9llaP+RvaEVS5nPShYFhtXIrb3LRKP281ib3So0KkeZKo2wIKyq0Re7TOSwanasA423PSr6CCIL4bP6T040g==",
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.1.tgz",
|
||||
"integrity": "sha512-OfFZdwtd3lZ+XZzYP/6gTACubwFcHdLRqS9UX3UwpU2dnGQYkPFISRwvM3w9IiB2w7bW5qGo/uAwE4SmXXSKvg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"glob": "^10.0.0"
|
||||
"glob": "^10.2.5"
|
||||
},
|
||||
"dependencies": {
|
||||
"brace-expansion": {
|
||||
@@ -11335,15 +11649,16 @@
|
||||
}
|
||||
},
|
||||
"glob": {
|
||||
"version": "10.0.0",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-10.0.0.tgz",
|
||||
"integrity": "sha512-zmp9ZDC6NpDNLujV2W2n+3lH+BafIVZ4/ct+Yj3BMZTH/+bgm/eVjHzeFLwxJrrIGgjjS2eiQLlpurHsNlEAtQ==",
|
||||
"version": "10.2.5",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-10.2.5.tgz",
|
||||
"integrity": "sha512-Gj+dFYPZ5hc5dazjXzB0iHg2jKWJZYMjITXYPBRQ/xc2Buw7H0BINknRTwURJ6IC6MEFpYbLvtgVb3qD+DwyuA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"fs.realpath": "^1.0.0",
|
||||
"foreground-child": "^3.1.0",
|
||||
"jackspeak": "^2.0.3",
|
||||
"minimatch": "^9.0.0",
|
||||
"minipass": "^5.0.0",
|
||||
"path-scurry": "^1.6.4"
|
||||
"minipass": "^5.0.0 || ^6.0.2",
|
||||
"path-scurry": "^1.7.0"
|
||||
}
|
||||
},
|
||||
"minimatch": {
|
||||
@@ -11618,6 +11933,17 @@
|
||||
"strip-ansi": "^6.0.1"
|
||||
}
|
||||
},
|
||||
"string-width-cjs": {
|
||||
"version": "npm:string-width@4.2.3",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
|
||||
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"emoji-regex": "^8.0.0",
|
||||
"is-fullwidth-code-point": "^3.0.0",
|
||||
"strip-ansi": "^6.0.1"
|
||||
}
|
||||
},
|
||||
"string.prototype.trimend": {
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz",
|
||||
@@ -11649,6 +11975,15 @@
|
||||
"ansi-regex": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"strip-ansi-cjs": {
|
||||
"version": "npm:strip-ansi@6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
||||
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-regex": "^5.0.1"
|
||||
}
|
||||
},
|
||||
"strip-bom": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
|
||||
@@ -11705,9 +12040,9 @@
|
||||
}
|
||||
},
|
||||
"stylelint": {
|
||||
"version": "15.6.1",
|
||||
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.6.1.tgz",
|
||||
"integrity": "sha512-d8icFBlVl93Elf3Z5ABQNOCe4nx69is3D/NZhDLAie1eyYnpxfeKe7pCfqzT5W4F8vxHCLSDfV8nKNJzogvV2Q==",
|
||||
"version": "15.6.2",
|
||||
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.6.2.tgz",
|
||||
"integrity": "sha512-fjQWwcdUye4DU+0oIxNGwawIPC5DvG5kdObY5Sg4rc87untze3gC/5g/ikePqVjrAsBUZjwMN+pZsAYbDO6ArQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@csstools/css-parser-algorithms": "^2.1.1",
|
||||
@@ -12142,6 +12477,17 @@
|
||||
"strip-ansi": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"wrap-ansi-cjs": {
|
||||
"version": "npm:wrap-ansi@7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
||||
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-styles": "^4.0.0",
|
||||
"string-width": "^4.1.0",
|
||||
"strip-ansi": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@gethinode/hinode",
|
||||
"version": "0.13.0",
|
||||
"version": "0.14.1",
|
||||
"description": "Hinode is a clean documentation and blog theme for Hugo, an open-source static site generator",
|
||||
"keywords": [
|
||||
"hugo",
|
||||
|
3
static/js/alias.js
Normal file
3
static/js/alias.js
Normal file
@@ -0,0 +1,3 @@
|
||||
const alias = document.querySelector("link[rel='canonical']").getAttribute('href')
|
||||
const params = window.location.search + window.location.hash
|
||||
window.location = alias + params
|
Reference in New Issue
Block a user