mirror of
https://github.com/gethinode/hinode.git
synced 2025-10-17 15:03:20 +00:00
Compare commits
1 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
6761bedd51 |
6
.github/workflows/lint-build.yml
vendored
6
.github/workflows/lint-build.yml
vendored
@@ -27,7 +27,7 @@ jobs:
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v5
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: lts/*
|
||||
cache: 'npm'
|
||||
@@ -56,12 +56,12 @@ jobs:
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@v6
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: ">1.0.0"
|
||||
|
||||
- name: Set up Node.js ${{ matrix.node-version }}
|
||||
uses: actions/setup-node@v5
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'npm'
|
||||
|
2
.github/workflows/mod-update.yml
vendored
2
.github/workflows/mod-update.yml
vendored
@@ -17,7 +17,7 @@ jobs:
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v5
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: lts/*
|
||||
cache: 'npm'
|
||||
|
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@@ -28,7 +28,7 @@ jobs:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v5
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: "lts/*"
|
||||
|
||||
|
@@ -21,7 +21,6 @@
|
||||
|
||||
// Standard version (Firefox, only appears on scroll)
|
||||
@supports (-moz-appearance:none) {
|
||||
/* stylelint-disable-next-line no-invalid-position-declaration */
|
||||
scrollbar-color: $foreground-color $background-color;
|
||||
}
|
||||
}
|
||||
|
@@ -188,10 +188,6 @@
|
||||
font-size: 1em;
|
||||
}
|
||||
|
||||
.navbar .btn {
|
||||
border-radius: #{$theme-border-radius};
|
||||
}
|
||||
|
||||
.navbar-expanded .search-input {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
@@ -32,8 +32,6 @@ blueprint:
|
||||
width:
|
||||
justify:
|
||||
link-type:
|
||||
theme:
|
||||
cover:
|
||||
links:
|
||||
-
|
||||
title:
|
||||
|
@@ -47,5 +47,3 @@ blueprint:
|
||||
class:
|
||||
width:
|
||||
justify:
|
||||
theme:
|
||||
cover:
|
||||
|
@@ -34,5 +34,3 @@ blueprint:
|
||||
width:
|
||||
justify:
|
||||
align:
|
||||
theme:
|
||||
cover:
|
||||
|
@@ -41,5 +41,3 @@ blueprint:
|
||||
padding:
|
||||
order:
|
||||
width:
|
||||
theme:
|
||||
cover:
|
||||
|
@@ -26,5 +26,3 @@ blueprint:
|
||||
items:
|
||||
- title:
|
||||
description:
|
||||
theme:
|
||||
cover:
|
||||
|
@@ -35,7 +35,6 @@ blueprint:
|
||||
align:
|
||||
order:
|
||||
overlay-mode:
|
||||
theme:
|
||||
cover:
|
||||
orientation:
|
||||
width:
|
||||
|
@@ -33,5 +33,3 @@ blueprint:
|
||||
class:
|
||||
width:
|
||||
justify:
|
||||
theme:
|
||||
cover:
|
||||
|
@@ -33,17 +33,16 @@
|
||||
{{ $toc = $toc | append (dict "href" "panel-0-1" "level" 2 "title" $element.title) }}
|
||||
|
||||
{{ $hero := partial "assets/hero.html" (dict
|
||||
"page" page
|
||||
"heading" (dict "content" $element.content "width" 8)
|
||||
"background" $args.background
|
||||
"illustration" (dict "ratio" $args.ratio "icon" $element.icon "image" $element.image "mode" $element.mode)
|
||||
"order" $args.order
|
||||
"link-type" $args.linkType
|
||||
"links" $args.links
|
||||
"orientation" "horizontal"
|
||||
"align" "start"
|
||||
"width" 12
|
||||
"content-style" "fs-6"
|
||||
"page" page
|
||||
"heading" (dict "title" $element.title "content" $element.content "width" 8 "size" 6)
|
||||
"background" $args.background
|
||||
"illustration" (dict "ratio" $args.ratio "icon" $element.icon "image" $element.image "mode" $element.mode)
|
||||
"order" $args.order
|
||||
"link-type" $args.linkType
|
||||
"links" $args.links
|
||||
"orientation" "horizontal"
|
||||
"align" "start"
|
||||
"width" 12
|
||||
)
|
||||
}}
|
||||
|
||||
|
@@ -23,6 +23,4 @@ blueprint:
|
||||
subtle:
|
||||
width:
|
||||
justify:
|
||||
data:
|
||||
theme:
|
||||
cover:
|
||||
data:
|
@@ -42,8 +42,6 @@ blueprint:
|
||||
border:
|
||||
width:
|
||||
justify:
|
||||
theme:
|
||||
cover:
|
||||
|
||||
_structures:
|
||||
messages:
|
||||
|
@@ -27,35 +27,20 @@
|
||||
{{- $resolved_component = $flat_component_path -}}
|
||||
{{- end -}}
|
||||
|
||||
<!-- TODO: use initialized component args instead of component_props -->
|
||||
{{ $error := false }}
|
||||
{{ $args := dict }}
|
||||
{{- if $resolved_component -}}
|
||||
{{ $args = partial "utilities/InitArgs.html" (dict "bookshop" $component_name "args" $component_props) }}
|
||||
{{ if or $args.err $args.warnmsg }}
|
||||
{{ partial (cond $args.err "utilities/LogErr.html" "utilities/LogWarn.html") (dict
|
||||
"partial" $resolved_component
|
||||
"warnid" "warn-invalid-arguments"
|
||||
"msg" "Invalid arguments"
|
||||
"details" ($args.errmsg | append $args.warnmsg)
|
||||
"file" page.File
|
||||
)}}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and $resolved_component (not $args.err) }}
|
||||
{{- $id := index $component_props "id" -}}
|
||||
{{- $cover := index $component_props "cover" -}}
|
||||
{{- $background := index $component_props "background" -}}
|
||||
{{- $backdrop := "" -}}
|
||||
{{- $fluid := index $component_props "fluid" | default true -}}
|
||||
{{- $wrapper := index $component_props "wrapper" -}}
|
||||
{{- $style := index $component_props "wrapper" -}}
|
||||
{{- $width := index $component_props "width" -}}
|
||||
{{- $justify := index $component_props "justify" | default "start" -}}
|
||||
{{- $paddingOuter := cond (ne $component_name "separator") (printf "px-xxl-0 px-%d py-0" $padding.x) "" -}}
|
||||
{{- $padding := cond (ne $component_name "separator") (printf "px-%d %spy-%d" $padding.x (cond $fluid "px-xxl-0 " "") $padding.y) "" -}}
|
||||
{{- $wrapper := $style }}
|
||||
{{ with $background }}
|
||||
{{ $wrapper = partial "utilities/GetBackgroundStyle.html" (dict "background" . "class" $wrapper) }}
|
||||
{{ $wrapper = partial "utilities/GetBackgroundStyle.html" (dict "background" . "class" $style) }}
|
||||
{{ if reflect.IsMap $background }}
|
||||
{{ with $background.backdrop }}{{ $wrapper = "" }}{{ $backdrop = . }}{{ end }}
|
||||
{{ end }}
|
||||
@@ -88,21 +73,18 @@
|
||||
{{- end -}}
|
||||
|
||||
{{ $col := cond (and $width (lt $width 12)) (printf "col-12 col-md-%d" $width) "" }}
|
||||
{{ if $args.passthrough }}
|
||||
{{ partial $resolved_component $component_props }}
|
||||
{{ else }}
|
||||
<div class="container-{{ cond $fluid "xxl" "fluid" }} {{ $padding }} d-flex flex-column align-items-{{ $justify }}">
|
||||
{{ with $col }}
|
||||
<div class="{{ . }}">{{ partial $resolved_component $component_props }}</div>
|
||||
{{ else }}
|
||||
{{ partial $resolved_component $component_props }}
|
||||
{{ end}}
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
<div class="container-{{ cond $fluid "xxl" "fluid" }} {{ $padding }} d-flex flex-column align-items-{{ $justify }}">
|
||||
{{ with $col }}
|
||||
<div class="{{ . }}">{{ partial $resolved_component $component_props }}</div>
|
||||
{{ else }}
|
||||
{{ partial $resolved_component $component_props }}
|
||||
{{ end}}
|
||||
</div>
|
||||
</section>
|
||||
{{ if not $fluid }}</div>{{ end }}
|
||||
{{ "<!--bookshop-live end-->" | safeHTML }}
|
||||
{{- else if (not $args.err) -}}
|
||||
{{- else -}}
|
||||
{{- $file_loc := slicestr $component_path 9 -}}
|
||||
{{- $flat_file_loc := slicestr $flat_component_path 9 -}}
|
||||
{{- partial "_bookshop/errors/err" (printf "Component \"%s\" does not exist.\n Create this component by placing a file in your bookshop at %s or %s" $component_name $file_loc $flat_file_loc) -}}
|
||||
|
@@ -28,5 +28,3 @@ arguments:
|
||||
theme:
|
||||
hook:
|
||||
default: assets/hero-image.html
|
||||
heading-style:
|
||||
content-style:
|
||||
|
@@ -245,6 +245,9 @@
|
||||
"fa-activity",
|
||||
"fa-address-card",
|
||||
"fa-angle-left",
|
||||
"fa-angle-right",
|
||||
"fa-angles-left",
|
||||
"fa-angles-right",
|
||||
"fa-arrow-left",
|
||||
"fa-arrow-right",
|
||||
"fa-bootstrap",
|
||||
@@ -327,10 +330,8 @@
|
||||
"g-4",
|
||||
"gap-1",
|
||||
"gap-2",
|
||||
"gap-4",
|
||||
"gap-5",
|
||||
"gradient",
|
||||
"grid",
|
||||
"h-100",
|
||||
"h1",
|
||||
"h2",
|
||||
@@ -656,11 +657,16 @@
|
||||
"docs",
|
||||
"documentation",
|
||||
"dropdown-nav-0",
|
||||
"dropdown-panel-4bb40e55576372d7d5033b3cb5988c2c",
|
||||
"dropdown-panel-6dfba858bf9eaea88ebc32de712ebf3f",
|
||||
"dropdown-panel-6fe204644b3fccca0d62ab3b712bf1cd",
|
||||
"dropdown-panel-b8350cafdd51c4d33847172721da9800",
|
||||
"dropdown-panel-e25d76a286385f8669a497412d250185",
|
||||
"dropdown-panel-0692e7e68c57d91164039f0f77cce9d8",
|
||||
"dropdown-panel-0a5cb51ed9eea57f673dc25545175b8b",
|
||||
"dropdown-panel-41fccc8aa490d4ea9d475a6d2d44be42",
|
||||
"dropdown-panel-7aa9804adc5998a7a66cd8faf656c6f9",
|
||||
"dropdown-panel-99dcbfb73d35cee704ca4ee9fb6a5e3c",
|
||||
"dropdown-panel-b06517abb515d4c22a03ca07d577f3de",
|
||||
"dropdown-panel-b434a05f655e7811ee71b4177747a1c0",
|
||||
"dropdown-panel-ba696faaa3c3f34bebc3f1da67a7c8ad",
|
||||
"dropdown-panel-d80f75f98e8a44fe4164fa76a6afd600",
|
||||
"dropdown-panel-d8bdd6a5f6d88907f9d6e8b57d921196",
|
||||
"elements-type",
|
||||
"entity-relationship-diagram",
|
||||
"example",
|
||||
@@ -678,16 +684,24 @@
|
||||
"fab-medium",
|
||||
"fab-whatsapp",
|
||||
"fab-x-twitter",
|
||||
"faq-aa1b2fa31cd6205cdeb0e1b972a20584",
|
||||
"faq-aa1b2fa31cd6205cdeb0e1b972a20584-heading-faq-aa1b2fa31cd6205cdeb0e1b972a20584",
|
||||
"faq-aa1b2fa31cd6205cdeb0e1b972a20584-item-0",
|
||||
"faq-aa1b2fa31cd6205cdeb0e1b972a20584-item-1",
|
||||
"faq-aa1b2fa31cd6205cdeb0e1b972a20584-item-2",
|
||||
"faq-1b8aefa895c57fc4fd5452748485b590",
|
||||
"faq-1b8aefa895c57fc4fd5452748485b590-heading-faq-1b8aefa895c57fc4fd5452748485b590",
|
||||
"faq-1b8aefa895c57fc4fd5452748485b590-item-0",
|
||||
"faq-1b8aefa895c57fc4fd5452748485b590-item-1",
|
||||
"faq-1b8aefa895c57fc4fd5452748485b590-item-2",
|
||||
"faq-f18dc8d82722290aea32dc7f4423dea5",
|
||||
"faq-f18dc8d82722290aea32dc7f4423dea5-heading-faq-f18dc8d82722290aea32dc7f4423dea5",
|
||||
"faq-f18dc8d82722290aea32dc7f4423dea5-item-0",
|
||||
"faq-f18dc8d82722290aea32dc7f4423dea5-item-1",
|
||||
"faq-f18dc8d82722290aea32dc7f4423dea5-item-2",
|
||||
"fas-1",
|
||||
"fas-2",
|
||||
"fas-3",
|
||||
"fas-address-card",
|
||||
"fas-angle-left",
|
||||
"fas-angle-right",
|
||||
"fas-angles-left",
|
||||
"fas-angles-right",
|
||||
"fas-arrow-left",
|
||||
"fas-arrow-right",
|
||||
"fas-chevron-right",
|
||||
@@ -719,6 +733,7 @@
|
||||
"fichier",
|
||||
"fil-dariane",
|
||||
"file",
|
||||
"first-panel",
|
||||
"flowchart",
|
||||
"footer-docs-collapse-15",
|
||||
"footer-docs-collapse-16",
|
||||
@@ -773,11 +788,16 @@
|
||||
"nav-0-btn-1",
|
||||
"nav-0-btn-2",
|
||||
"nav-nav-0",
|
||||
"nav-panel-4bb40e55576372d7d5033b3cb5988c2c",
|
||||
"nav-panel-6dfba858bf9eaea88ebc32de712ebf3f",
|
||||
"nav-panel-6fe204644b3fccca0d62ab3b712bf1cd",
|
||||
"nav-panel-b8350cafdd51c4d33847172721da9800",
|
||||
"nav-panel-e25d76a286385f8669a497412d250185",
|
||||
"nav-panel-0692e7e68c57d91164039f0f77cce9d8",
|
||||
"nav-panel-0a5cb51ed9eea57f673dc25545175b8b",
|
||||
"nav-panel-41fccc8aa490d4ea9d475a6d2d44be42",
|
||||
"nav-panel-7aa9804adc5998a7a66cd8faf656c6f9",
|
||||
"nav-panel-99dcbfb73d35cee704ca4ee9fb6a5e3c",
|
||||
"nav-panel-b06517abb515d4c22a03ca07d577f3de",
|
||||
"nav-panel-b434a05f655e7811ee71b4177747a1c0",
|
||||
"nav-panel-ba696faaa3c3f34bebc3f1da67a7c8ad",
|
||||
"nav-panel-d80f75f98e8a44fe4164fa76a6afd600",
|
||||
"nav-panel-d8bdd6a5f6d88907f9d6e8b57d921196",
|
||||
"navbar",
|
||||
"navbar-0-collapse",
|
||||
"navbar-mode",
|
||||
@@ -786,36 +806,66 @@
|
||||
"navigation",
|
||||
"notification",
|
||||
"overview",
|
||||
"panel-4bb40e55576372d7d5033b3cb5988c2c-0",
|
||||
"panel-4bb40e55576372d7d5033b3cb5988c2c-1",
|
||||
"panel-4bb40e55576372d7d5033b3cb5988c2c-2",
|
||||
"panel-4bb40e55576372d7d5033b3cb5988c2c-btn-0",
|
||||
"panel-4bb40e55576372d7d5033b3cb5988c2c-btn-1",
|
||||
"panel-4bb40e55576372d7d5033b3cb5988c2c-btn-2",
|
||||
"panel-6dfba858bf9eaea88ebc32de712ebf3f-0",
|
||||
"panel-6dfba858bf9eaea88ebc32de712ebf3f-1",
|
||||
"panel-6dfba858bf9eaea88ebc32de712ebf3f-2",
|
||||
"panel-6dfba858bf9eaea88ebc32de712ebf3f-btn-0",
|
||||
"panel-6dfba858bf9eaea88ebc32de712ebf3f-btn-1",
|
||||
"panel-6dfba858bf9eaea88ebc32de712ebf3f-btn-2",
|
||||
"panel-6fe204644b3fccca0d62ab3b712bf1cd-0",
|
||||
"panel-6fe204644b3fccca0d62ab3b712bf1cd-1",
|
||||
"panel-6fe204644b3fccca0d62ab3b712bf1cd-2",
|
||||
"panel-6fe204644b3fccca0d62ab3b712bf1cd-btn-0",
|
||||
"panel-6fe204644b3fccca0d62ab3b712bf1cd-btn-1",
|
||||
"panel-6fe204644b3fccca0d62ab3b712bf1cd-btn-2",
|
||||
"panel-b8350cafdd51c4d33847172721da9800-0",
|
||||
"panel-b8350cafdd51c4d33847172721da9800-1",
|
||||
"panel-b8350cafdd51c4d33847172721da9800-2",
|
||||
"panel-b8350cafdd51c4d33847172721da9800-btn-0",
|
||||
"panel-b8350cafdd51c4d33847172721da9800-btn-1",
|
||||
"panel-b8350cafdd51c4d33847172721da9800-btn-2",
|
||||
"panel-e25d76a286385f8669a497412d250185-0",
|
||||
"panel-e25d76a286385f8669a497412d250185-1",
|
||||
"panel-e25d76a286385f8669a497412d250185-2",
|
||||
"panel-e25d76a286385f8669a497412d250185-btn-0",
|
||||
"panel-e25d76a286385f8669a497412d250185-btn-1",
|
||||
"panel-e25d76a286385f8669a497412d250185-btn-2",
|
||||
"panel-0692e7e68c57d91164039f0f77cce9d8-0",
|
||||
"panel-0692e7e68c57d91164039f0f77cce9d8-1",
|
||||
"panel-0692e7e68c57d91164039f0f77cce9d8-2",
|
||||
"panel-0692e7e68c57d91164039f0f77cce9d8-btn-0",
|
||||
"panel-0692e7e68c57d91164039f0f77cce9d8-btn-1",
|
||||
"panel-0692e7e68c57d91164039f0f77cce9d8-btn-2",
|
||||
"panel-0a5cb51ed9eea57f673dc25545175b8b-0",
|
||||
"panel-0a5cb51ed9eea57f673dc25545175b8b-1",
|
||||
"panel-0a5cb51ed9eea57f673dc25545175b8b-2",
|
||||
"panel-0a5cb51ed9eea57f673dc25545175b8b-btn-0",
|
||||
"panel-0a5cb51ed9eea57f673dc25545175b8b-btn-1",
|
||||
"panel-0a5cb51ed9eea57f673dc25545175b8b-btn-2",
|
||||
"panel-41fccc8aa490d4ea9d475a6d2d44be42-0",
|
||||
"panel-41fccc8aa490d4ea9d475a6d2d44be42-1",
|
||||
"panel-41fccc8aa490d4ea9d475a6d2d44be42-2",
|
||||
"panel-41fccc8aa490d4ea9d475a6d2d44be42-btn-0",
|
||||
"panel-41fccc8aa490d4ea9d475a6d2d44be42-btn-1",
|
||||
"panel-41fccc8aa490d4ea9d475a6d2d44be42-btn-2",
|
||||
"panel-7aa9804adc5998a7a66cd8faf656c6f9-0",
|
||||
"panel-7aa9804adc5998a7a66cd8faf656c6f9-1",
|
||||
"panel-7aa9804adc5998a7a66cd8faf656c6f9-2",
|
||||
"panel-7aa9804adc5998a7a66cd8faf656c6f9-btn-0",
|
||||
"panel-7aa9804adc5998a7a66cd8faf656c6f9-btn-1",
|
||||
"panel-7aa9804adc5998a7a66cd8faf656c6f9-btn-2",
|
||||
"panel-99dcbfb73d35cee704ca4ee9fb6a5e3c-0",
|
||||
"panel-99dcbfb73d35cee704ca4ee9fb6a5e3c-1",
|
||||
"panel-99dcbfb73d35cee704ca4ee9fb6a5e3c-2",
|
||||
"panel-99dcbfb73d35cee704ca4ee9fb6a5e3c-btn-0",
|
||||
"panel-99dcbfb73d35cee704ca4ee9fb6a5e3c-btn-1",
|
||||
"panel-99dcbfb73d35cee704ca4ee9fb6a5e3c-btn-2",
|
||||
"panel-b06517abb515d4c22a03ca07d577f3de-0",
|
||||
"panel-b06517abb515d4c22a03ca07d577f3de-1",
|
||||
"panel-b06517abb515d4c22a03ca07d577f3de-2",
|
||||
"panel-b06517abb515d4c22a03ca07d577f3de-btn-0",
|
||||
"panel-b06517abb515d4c22a03ca07d577f3de-btn-1",
|
||||
"panel-b06517abb515d4c22a03ca07d577f3de-btn-2",
|
||||
"panel-b434a05f655e7811ee71b4177747a1c0-0",
|
||||
"panel-b434a05f655e7811ee71b4177747a1c0-1",
|
||||
"panel-b434a05f655e7811ee71b4177747a1c0-2",
|
||||
"panel-b434a05f655e7811ee71b4177747a1c0-btn-0",
|
||||
"panel-b434a05f655e7811ee71b4177747a1c0-btn-1",
|
||||
"panel-b434a05f655e7811ee71b4177747a1c0-btn-2",
|
||||
"panel-ba696faaa3c3f34bebc3f1da67a7c8ad-0",
|
||||
"panel-ba696faaa3c3f34bebc3f1da67a7c8ad-1",
|
||||
"panel-ba696faaa3c3f34bebc3f1da67a7c8ad-2",
|
||||
"panel-ba696faaa3c3f34bebc3f1da67a7c8ad-btn-0",
|
||||
"panel-ba696faaa3c3f34bebc3f1da67a7c8ad-btn-1",
|
||||
"panel-ba696faaa3c3f34bebc3f1da67a7c8ad-btn-2",
|
||||
"panel-d80f75f98e8a44fe4164fa76a6afd600-0",
|
||||
"panel-d80f75f98e8a44fe4164fa76a6afd600-1",
|
||||
"panel-d80f75f98e8a44fe4164fa76a6afd600-2",
|
||||
"panel-d80f75f98e8a44fe4164fa76a6afd600-btn-0",
|
||||
"panel-d80f75f98e8a44fe4164fa76a6afd600-btn-1",
|
||||
"panel-d80f75f98e8a44fe4164fa76a6afd600-btn-2",
|
||||
"panel-d8bdd6a5f6d88907f9d6e8b57d921196-0",
|
||||
"panel-d8bdd6a5f6d88907f9d6e8b57d921196-1",
|
||||
"panel-d8bdd6a5f6d88907f9d6e8b57d921196-2",
|
||||
"panel-d8bdd6a5f6d88907f9d6e8b57d921196-btn-0",
|
||||
"panel-d8bdd6a5f6d88907f9d6e8b57d921196-btn-1",
|
||||
"panel-d8bdd6a5f6d88907f9d6e8b57d921196-btn-2",
|
||||
"persona",
|
||||
"pie-chart",
|
||||
"pills",
|
||||
@@ -828,6 +878,7 @@
|
||||
"release",
|
||||
"requirement-chart",
|
||||
"réduire",
|
||||
"second-panel",
|
||||
"security",
|
||||
"sequence-diagram",
|
||||
"shortcode-with-controls-and-frontmatter",
|
||||
@@ -840,6 +891,7 @@
|
||||
"sécurité",
|
||||
"table",
|
||||
"tabs",
|
||||
"third-panel",
|
||||
"third-party-links--use-of-your-information",
|
||||
"timeline",
|
||||
"title",
|
||||
|
4
go.mod
4
go.mod
@@ -15,7 +15,7 @@ require (
|
||||
github.com/gethinode/mod-lottie v1.6.1 // indirect
|
||||
github.com/gethinode/mod-mermaid/v3 v3.0.1 // indirect
|
||||
github.com/gethinode/mod-simple-datatables/v2 v2.0.2 // indirect
|
||||
github.com/gethinode/mod-utils/v4 v4.15.1 // indirect
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250907103239-defb38b083f0 // indirect
|
||||
github.com/gethinode/mod-utils/v4 v4.14.0 // indirect
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250901122457-99cddafcdc64 // indirect
|
||||
github.com/twbs/bootstrap v5.3.8+incompatible // indirect
|
||||
)
|
||||
|
6
go.sum
6
go.sum
@@ -506,10 +506,6 @@ github.com/gethinode/mod-utils/v4 v4.13.0 h1:VKAA+wKy4saayXfgJuVBRfhNVWQWmxOjO8L
|
||||
github.com/gethinode/mod-utils/v4 v4.13.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.14.0 h1:CF5dy+HWg22L306bWVhClWK9b1NVinEqtb4Qr2vcl9A=
|
||||
github.com/gethinode/mod-utils/v4 v4.14.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.15.0 h1:Zocy3qEVluYcx9te7bN6Serwp49kjhuH+eIvcCYpeC8=
|
||||
github.com/gethinode/mod-utils/v4 v4.15.0/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/gethinode/mod-utils/v4 v4.15.1 h1:zsn6pYxMePLqsNaX+V8qND5tAbbp/CiscgZrnFAxc2s=
|
||||
github.com/gethinode/mod-utils/v4 v4.15.1/go.mod h1:bYmvRdAo4ICy5MpSGafDvO4p5bTDpsDKFCPL3bH0mN4=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3 h1:H/qVR5O4BXjRjD+5PZB+r4ug2BSJ2Of4RtwOntd+OKo=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20230711092928-1243fd883ec3/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20240108021025-afd75f742f22 h1:re7L8FxbXQpnX8BgzkdUnDpsUmloGNyLmiy2ZCln8pg=
|
||||
@@ -534,8 +530,6 @@ github.com/nextapps-de/flexsearch v0.0.0-20250606060143-c28f52c09b7a h1:CF/f62uf
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250606060143-c28f52c09b7a/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250901122457-99cddafcdc64 h1:8gn/7ZfERwknYk63DskhEfkwwpoXubGrzLv5LuSq6hc=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250901122457-99cddafcdc64/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250907103239-defb38b083f0 h1:55phPhe6fDjfjG0jX4+br3nLORKgjgx8abZUdI0YJRA=
|
||||
github.com/nextapps-de/flexsearch v0.0.0-20250907103239-defb38b083f0/go.mod h1:5GdMfPAXzbA2gXBqTjC6l27kioSYzHlqDMh0+wyx7sU=
|
||||
github.com/twbs/bootstrap v5.3.2+incompatible h1:tuiO5acc6xnZUR77Sbi5aKWXxjYxbmsSbJwYrhAKoQQ=
|
||||
github.com/twbs/bootstrap v5.3.2+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0=
|
||||
github.com/twbs/bootstrap v5.3.3+incompatible h1:goFoqinzdHfkeegpFP7pvhbd0g+A3O2hbU3XCjuNrEQ=
|
||||
|
@@ -112,16 +112,13 @@
|
||||
{{ end }}
|
||||
|
||||
{{ $title := partial "assets/section-title.html" (dict
|
||||
"heading" $heading
|
||||
"use-title" $args.useTitle
|
||||
"links" $args.links
|
||||
"link-type" (or $args.linkType $args.type)
|
||||
"class" "hero-title"
|
||||
"arrangement" $arrangement
|
||||
"justify" $args.justify
|
||||
"heading-style" $args.headingStyle
|
||||
"content-style" $args.contentStyle
|
||||
|
||||
"heading" $heading
|
||||
"use-title" $args.useTitle
|
||||
"links" $args.links
|
||||
"link-type" (or $args.linkType $args.type)
|
||||
"class" "hero-title"
|
||||
"arrangement" $arrangement
|
||||
"justify" $args.justify
|
||||
) }}
|
||||
|
||||
{{ if eq $args.orientation "stacked" }}
|
||||
|
238
layouts/_partials/utilities/InitArgs.html~~~
Normal file
238
layouts/_partials/utilities/InitArgs.html~~~
Normal file
@@ -0,0 +1,238 @@
|
||||
<!--
|
||||
Copyright © 2024 - 2025 The Hinode Team / Mark Dumay. All rights reserved.
|
||||
Use of this source code is governed by The MIT License (MIT) that can be found in the LICENSE file.
|
||||
Visit gethinode.com/license for more details.
|
||||
-->
|
||||
|
||||
{{ define "_partials/inline/default.html" }}
|
||||
{{ $config := split .config "." }}
|
||||
{{ $default := .default }}
|
||||
{{ return or (index site.Params $config) $default }}
|
||||
{{ end }}
|
||||
|
||||
{{ define "_partials/inline/alias-type.html" }}
|
||||
{{ $type := .type }}
|
||||
{{ $custom := .types }}
|
||||
{{ $references := .references }}
|
||||
{{ $aliases := dict "path" "string" "select" "string" "url" "string" "dict" "[]map[string]interface {}" "slice" "[]interface {}" }}
|
||||
{{ $reserved := slice "bool" "int" "int64" "float" "float64" "string" "dict" "slice" }}
|
||||
|
||||
{{ $input := slice }}
|
||||
{{ if not $type }}
|
||||
{{ errorf "expected type argument: %s" page.File }}
|
||||
{{ else }}
|
||||
{{ $input = slice | append $type }}
|
||||
{{ end }}
|
||||
|
||||
{{ $extra := slice }}
|
||||
{{ range $element := $input }}
|
||||
{{ $alias := index $aliases $element }}
|
||||
{{ if $alias }}{{ $extra = $extra | append slice $alias }}{{ end }}
|
||||
{{ if not (in $reserved $element) }}
|
||||
{{ $def := index $references $element }}
|
||||
{{ if $def }}
|
||||
{{ $extra = $extra | append slice $def._reflect }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ if $extra }}{{ $input = $input | append $extra }}{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ return $input }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Initialize arguments */}}
|
||||
{{ $structure := .structure }}
|
||||
{{ $bookshop := .bookshop }}
|
||||
{{ $child := .child }}
|
||||
{{ $named := .named | default true }}
|
||||
{{ $args := .args | default dict }}
|
||||
{{ $group := .group }}
|
||||
|
||||
{{/* Initialize local variables */}}
|
||||
{{ $error := false }}
|
||||
{{ $errmsg := slice }}
|
||||
{{ $warnmsg := slice }}
|
||||
{{ $params := dict }}
|
||||
{{ $types := dict }}
|
||||
{{ $default := slice }}
|
||||
|
||||
{{/* Validate partial arguments */}}
|
||||
{{ if and (not $structure) (not $bookshop) }}
|
||||
{{- $errmsg = $errmsg | append (printf "partial [utilities/InitArgs.html] - Missing value for param 'structure' or 'bookshop'") -}}
|
||||
{{ $error = true }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Initialize type structure */}}
|
||||
{{ if hasPrefix $structure "bookshop-" }}{{ $bookshop = strings.TrimPrefix "bookshop-" $structure }}{{ $structure = "" }}{{ end }}
|
||||
{{ if not $error }}
|
||||
{{ $types = partial "utilities/InitTypes.html" (dict "structure" $structure "bookshop" $bookshop "child" $child ) }}
|
||||
{{ if $types.errmsg }}{{ $errmsg = $errmsg | append $types.errmsg }}{{ $error = $types.err }}{{ end }}
|
||||
{{ if $types.warnmsg }}{{ $warnmsg = $warnmsg | append $types.warnmsg }}{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ $namedargs := dict }}
|
||||
{{ if not $named }}
|
||||
{{ range $index, $val := $args }}
|
||||
{{ $found := false }}
|
||||
{{ range $k, $v := $types.types }}
|
||||
{{ if eq $index $v.position }}
|
||||
{{ $namedargs = merge $namedargs (dict $k $val) }}
|
||||
{{ $found = true }}
|
||||
{{ break }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ if not $found }}
|
||||
{{ $errmsg = $errmsg | append (printf "[%s] unsupported argument at index %d (value: '%s')" (or $structure $bookshop) $index $val) }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ else }}
|
||||
{{ $namedargs = $args }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Validate passed arguments and initialize their default value when applicable */}}
|
||||
{{ if not $error }}
|
||||
{{ range $key, $val := $namedargs }}
|
||||
{{ $def := index $types.types $key }}
|
||||
|
||||
{{ if not $def }}
|
||||
{{ if eq (printf "%T" $key) "string" }}
|
||||
{{ $errmsg = $errmsg | append (printf "[%s] unsupported argument '%s'" (or $structure $bookshop) $key) }}
|
||||
{{ else if eq (printf "%T" $key) "int" }}
|
||||
{{ $errmsg = $errmsg | append (printf "[%s] unsupported argument at index %d (value: '%s')" (or $structure $bookshop) $key $val) }}
|
||||
{{ else }}
|
||||
{{ $errmsg = $errmsg | append (printf "[%s] unsupported argument value '%v'" (or $structure $bookshop) $val) }}
|
||||
{{ end }}
|
||||
{{ $error = true }}
|
||||
{{ break }}
|
||||
{{ else }}
|
||||
{{/* initialize default value */}}
|
||||
{{ if and (eq $val nil) (or $def.config $def.default) }}
|
||||
{{ $val = (partial "inline/default.html" (dict "config" $def.config "default" $def.default)) }}
|
||||
{{ $default = $default | append $key }}
|
||||
{{ end }}
|
||||
|
||||
{{/* validate type */}}
|
||||
{{ $expected := partial "inline/alias-type.html" (dict "type" $def.type "types" $types.types "references" $types.udt) }}
|
||||
{{ $actual := printf "%T" $val }}
|
||||
|
||||
{{/* cast supported types from/to string */}}
|
||||
{{ if and (in $expected "bool") (in (slice "true" "false") $val) }}
|
||||
{{ $actual = "bool" }}
|
||||
{{ $val = cond (eq $val "true") true false }}
|
||||
{{ else if and (in $expected "int") (findRE `^-?\d+$` $val) }}
|
||||
{{ $actual = "int" }}
|
||||
{{ $val = int $val }}
|
||||
{{ else if and (in $expected "float") (findRE `^(?:[1-9]\d*|0)?(?:\.\d+)?$` $val) }}
|
||||
{{ $actual = "float" }}
|
||||
{{ $val = float $val }}
|
||||
{{ else if and (in $expected "string") (in (slice "bool" "int" "int64" "float" "float64") $actual) }}
|
||||
{{ $actual = "string" }}
|
||||
{{ $val = string $val }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and $val (not (in $expected $actual)) }}
|
||||
{{ $errmsg = $errmsg | append (printf "[%s] argument '%s': expected type '%s', got '%s' with value '%v'" (or $structure $bookshop) (string $key) (delimit $expected ", ") $actual $val) }}
|
||||
{{ $error = true }}
|
||||
{{ break }}
|
||||
{{ end }}
|
||||
|
||||
{{/* validate permitted values */}}
|
||||
{{ if and (reflect.IsMap $def.options) $def.options.values (eq $actual "string") }}
|
||||
{{ if and $val (not (in $def.options.values $val)) }}
|
||||
{{ $errmsg = $errmsg | append (printf "[%s] argument '%s': unexpected value '%s'" (or $structure $bookshop) (string $key) $val) }}
|
||||
{{ $error = true }}
|
||||
{{ break }}
|
||||
{{ end }}
|
||||
{{ else if and (reflect.IsMap $def.options) (or $def.options.min $def.options.max) (in (slice "int" "float" "float64") $actual) }}
|
||||
{{ if or
|
||||
(and $def.options.min (lt $val $def.options.min))
|
||||
(and $def.options.max (gt $val $def.options.max))
|
||||
}}
|
||||
{{ $min := (string (or $def.options.min "-")) }}
|
||||
{{ $max := (string (or $def.options.max "-")) }}
|
||||
{{ $errmsg = $errmsg | append (printf "[%s] argument '%s': value '%s' out of range [%s, %s]" (or $structure $bookshop) (string $key) (string $val) $min $max) }}
|
||||
{{ $error = true }}
|
||||
{{ break }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{/* validate if argument is deprecated */}}
|
||||
{{ with $def.deprecated }}
|
||||
{{ $warn := printf "[%s] argument '%s': deprecated in v%s" (or $structure $bookshop) $key (strings.TrimPrefix "v" .) }}
|
||||
{{ with $def.alternative }}
|
||||
{{ $warn = printf "%s, use '%s' instead" $warn . }}
|
||||
{{ end }}
|
||||
{{ $warnmsg = $warnmsg | append $warn }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{/* append the argument to the return set */}}
|
||||
{{ if not $error }}
|
||||
{{ $params = merge $params (dict $key $val) }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ if not $error }}
|
||||
{{/* validate required arguments */}}
|
||||
{{ $max := len $namedargs }}
|
||||
{{ $expected := 0 }}
|
||||
{{ range $key, $val := $types.types }}
|
||||
{{ $skip := false }}
|
||||
{{ $groups := slice | append $val.group }}
|
||||
{{ if and $group $val.group }}
|
||||
{{ $skip = not (in $groups $group )}}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (not $skip) (not $val.optional) }}
|
||||
{{ if not (isset $namedargs $key) }}
|
||||
{{ $errmsg = $errmsg | append (printf "[%s] argument '%s': expected value" (or $structure $bookshop) $key) }}
|
||||
{{ $error = true }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ if lt $max $expected }}
|
||||
{{ $errmsg = $errmsg | append (printf "[%s] expected '%d' args, got '%d'" (or $structure $bookshop) $expected $max) }}
|
||||
{{ $error = true }}
|
||||
{{ end }}
|
||||
|
||||
{{/* add missing keys with default values (nested one level deep) or empty slice */}}
|
||||
{{ range $key, $val := $types.types }}
|
||||
{{ if (not (isset $params $key)) }}
|
||||
{{ $udt := index $types.udt $key }}
|
||||
{{ if or (isset $val "config") (isset $val "default") }}
|
||||
{{ $params = merge $params (dict
|
||||
$key (partial "inline/default.html" (dict "config" $val.config "default" $val.default))
|
||||
) }}
|
||||
{{ $default = $default | append $key }}
|
||||
{{ else if $udt }}
|
||||
{{ if eq $udt._reflect "[]interface {}" }}
|
||||
{{ $params = merge $params (dict $key slice) }}
|
||||
{{ else }}
|
||||
{{ $nested := dict }}
|
||||
{{ range $k, $v := $udt }}
|
||||
{{ if and (reflect.IsMap $v) (or $v.config $v.default) }}
|
||||
{{ $nested = merge $nested (dict
|
||||
$k (partial "inline/default.html" (dict "config" $val.config "default" $val.default))
|
||||
)}}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ $params = merge $params (dict $key $nested) }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{/* add the key-value pair using camel case to support chaining of the identifier */}}
|
||||
{{/* see https://gohugo.io/configuration/params/#article */}}
|
||||
{{ range $key, $val := $params }}
|
||||
{{ if strings.Contains $key "-" }}
|
||||
{{ $camelKey := partial "utilities/camelize.html" $key }}
|
||||
{{ $params = merge $params (dict $camelKey $val) }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ $params = merge $params (dict "err" $error "errmsg" $errmsg "warnmsg" $warnmsg "default" $default) }}
|
||||
{{ return $params }}
|
144
layouts/_partials/utilities/InitTypes.html~
Normal file
144
layouts/_partials/utilities/InitTypes.html~
Normal file
@@ -0,0 +1,144 @@
|
||||
<!--
|
||||
Copyright © 2025 The Hinode Team / Mark Dumay. All rights reserved.
|
||||
Use of this source code is governed by The MIT License (MIT) that can be found in the LICENSE file.
|
||||
Visit gethinode.com/license for more details.
|
||||
-->
|
||||
|
||||
{{/* Inline partial to retrieve the type definition of the provided key (without recursion) */}}
|
||||
{{ define "_partials/inline/type-definition.html" }}
|
||||
{{ $key := .key }}
|
||||
{{ $val := .val }}
|
||||
{{ $arguments := .arguments }}
|
||||
{{ $types := .types }}
|
||||
|
||||
{{ $def := index $arguments $key }}
|
||||
{{ $udt := "" }}
|
||||
{{ $reflect := "" }}
|
||||
{{ $reserved := slice "bool" "int" "int64" "float" "float64" "string" "dict" "slice" }}
|
||||
{{ $errorMsg := slice }}
|
||||
|
||||
{{ if and $def $def.type }}
|
||||
{{ $aliases := slice | append $def.type }}
|
||||
{{ range $alias := $aliases }}
|
||||
{{ with index $types $alias }}
|
||||
<!-- Reduce child elements to slice of argument names -->
|
||||
{{ $args := slice }}
|
||||
{{ $reflect = printf "%T" . }}
|
||||
{{ if reflect.IsMap . }}
|
||||
{{ range $k, $_ := . }}
|
||||
{{ $args = $args | append $k }}
|
||||
{{ end }}
|
||||
{{ else if reflect.IsSlice . }}
|
||||
{{ with index . 0 }}
|
||||
{{ range $k, $_ := . }}
|
||||
{{ $args = $args | append $k }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
<!-- Retrieve type definition for each argument -->
|
||||
{{ $definitions := dict }}
|
||||
{{ $definitions := merge $definitions (dict "_reflect" $reflect) }}
|
||||
{{ range $args }}
|
||||
{{ $type := partial "inline/type-definition.html" (dict "key" . "arguments" $arguments "types" $types) }}
|
||||
{{ if and $type $type.definition }}
|
||||
{{ $definitions = merge $definitions (dict . $type.definition) }}
|
||||
{{ else }}
|
||||
{{- $errorMsg = $errorMsg | append (printf "partial [utilities/InitTypes.html] - Missing type for '%s.%s'" $key . ) -}}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ $udt = dict $alias $definitions }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ $merged := or $def dict }}
|
||||
{{ if reflect.IsMap $val }}{{ $merged = merge $merged $val }}{{ end }}
|
||||
{{ if not $merged.type }}
|
||||
{{- $errorMsg = $errorMsg | append (printf "partial [utilities/InitTypes.html] - Missing type for '%s'" $key ) -}}
|
||||
{{ end }}
|
||||
|
||||
{{ return (dict "definition" $merged "udt" $udt "errmsg" $errorMsg) }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Initalize arguments and local variables */}}
|
||||
{{ $error := false }}
|
||||
{{ $errmsg := slice }}
|
||||
{{ $warnmsg := slice }}
|
||||
{{ $params := dict }}
|
||||
{{ $definitions := dict }}
|
||||
{{ $udt := dict }}
|
||||
|
||||
{{ $structure := .structure }}
|
||||
{{ $bookshop := .bookshop }}
|
||||
{{ $group := .group }}
|
||||
{{ $child := .child }}
|
||||
|
||||
{{ $level := .level | default 0 }}
|
||||
|
||||
{{ if gt $level 5 }}
|
||||
{{ errorf "recursion detected: %s / %s" $structure $bookshop }}
|
||||
{{ return }}
|
||||
{{ end }}
|
||||
|
||||
{{ if and (not $structure) (not $bookshop) }}
|
||||
{{- $errmsg = $errmsg | append (printf "partial [utilities/InitTypes.html] - Missing value for param 'structure' or 'bookshop'") -}}
|
||||
{{ $error = true }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Initalize the type structure */}}
|
||||
{{ if not $error }}
|
||||
{{ $args := dict }}
|
||||
{{ $arguments := index (index site.Data.structures "_arguments") "arguments" }}
|
||||
{{ $types := index (index site.Data.structures "_types") "types" }}
|
||||
|
||||
{{/* Initalize the regular or bookshop argument structure */}}
|
||||
{{ if $structure }}
|
||||
{{ if index site.Data.structures $structure}}
|
||||
{{ $args = (index site.Data.structures $structure).arguments | default dict }}
|
||||
{{ else }}
|
||||
{{ $args = (index $types $structure) | default dict }}
|
||||
{{ end }}
|
||||
{{ else }}
|
||||
{{ $args = index (index (index site.Data.structures.components $bookshop) (printf "%s.bookshop" $bookshop)) "blueprint" | default dict }}
|
||||
{{ $args = merge $args (dict "_bookshop_name" nil "_ordinal" nil "id" nil) }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Merge any child arguments */}}
|
||||
{{ if $child }}
|
||||
{{ $extra_def := (index site.Data.structures $child).arguments }}
|
||||
{{ if not $extra_def }}
|
||||
{{- $errmsg = $errmsg | append (printf "partial [utilities/InitTypes.html] - Missing definitions: %s" $child) -}}
|
||||
{{ $error = true }}
|
||||
{{ else }}
|
||||
{{ range $key, $val := $extra_def }}
|
||||
{{ if and $val $val.parent }}
|
||||
{{ $newval := dict }}
|
||||
{{ range $k, $v := $val }}
|
||||
{{ if ne $k "default" }}{{ $newval = merge $newval (dict $k $v) }}{{ end }}
|
||||
{{ end}}
|
||||
{{ $args = merge $args (dict $key $newval) }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Initialize the arguments and their type definitions recursively */}}
|
||||
{{ range $key, $v := $args }}
|
||||
{{ $type := partial "inline/type-definition.html" (dict "key" $key "val" $v "args" $args "arguments" $arguments "types" $types "structure" $structure) }}
|
||||
{{ $errmsg = $errmsg | append $type.errmsg }}
|
||||
{{ if and $type $type.definition $type.definition.type }}
|
||||
{{ $definitions = merge $definitions (dict $key $type.definition) }}
|
||||
{{ with $type.udt }}
|
||||
{{ $udt = merge $udt . }}
|
||||
{{ end }}
|
||||
{{ else }}
|
||||
{{- $errmsg = $errmsg | append (printf "partial [utilities/InitTypes.html] - Missing type for '%s' in '%s'" $key (or $structure $bookshop) ) -}}
|
||||
{{ $error = true }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ $params = merge $params (dict "types" $definitions "udt" $udt "err" $error "errmsg" $errmsg "warnmsg" $warnmsg) }}
|
||||
{{ return $params }}
|
143
package-lock.json
generated
143
package-lock.json
generated
@@ -13,7 +13,7 @@
|
||||
"autoprefixer": "^10.4.21",
|
||||
"cssnano": "^7.1.1",
|
||||
"cssnano-preset-advanced": "^7.0.9",
|
||||
"hugo-bin": "0.147.0",
|
||||
"hugo-bin": "0.146.0",
|
||||
"purgecss-whitelister": "^2.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
@@ -25,18 +25,18 @@
|
||||
"commitizen": "^4.3.1",
|
||||
"cpy-cli": "^6.0.0",
|
||||
"cz-conventional-changelog": "^3.3.0",
|
||||
"eslint": "^9.35.0",
|
||||
"eslint": "^9.34.0",
|
||||
"husky": "^9.1.7",
|
||||
"markdownlint-cli2": "^0.18.1",
|
||||
"neostandard": "^0.12.2",
|
||||
"netlify-plugin-hugo-cache-resources": "^0.2.1",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"postcss-cli": "^11.0.1",
|
||||
"replace-in-files-cli": "^4.0.0",
|
||||
"replace-in-files-cli": "^3.0.0",
|
||||
"rimraf": "^6.0.1",
|
||||
"semantic-release": "^24.2.8",
|
||||
"semantic-release": "^24.2.7",
|
||||
"shx": "^0.4.0",
|
||||
"stylelint": "^16.24.0",
|
||||
"stylelint": "^16.23.1",
|
||||
"stylelint-config-standard-scss": "^15.0.1"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
@@ -631,11 +631,10 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@eslint-community/eslint-utils": {
|
||||
"version": "4.9.0",
|
||||
"resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.0.tgz",
|
||||
"integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==",
|
||||
"version": "4.7.0",
|
||||
"resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz",
|
||||
"integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"eslint-visitor-keys": "^3.4.3"
|
||||
},
|
||||
@@ -721,9 +720,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@eslint/js": {
|
||||
"version": "9.35.0",
|
||||
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.35.0.tgz",
|
||||
"integrity": "sha512-30iXE9whjlILfWobBkNerJo+TXYsgVM5ERQwMcMKCHckHflCmf7wXDAHlARoWnh0s1U72WqlbeyE7iAcCzuCPw==",
|
||||
"version": "9.34.0",
|
||||
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.34.0.tgz",
|
||||
"integrity": "sha512-EoyvqQnBNsV1CWaEJ559rxXL4c8V92gxirbawSmVUOWXlsRxxQXl6LmCpdUblgxgSkDIqKnhzba2SjRTI/A5Rw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
@@ -3518,14 +3517,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/cacheable": {
|
||||
"version": "1.10.4",
|
||||
"resolved": "https://registry.npmjs.org/cacheable/-/cacheable-1.10.4.tgz",
|
||||
"integrity": "sha512-Gd7ccIUkZ9TE2odLQVS+PDjIvQCdJKUlLdJRVvZu0aipj07Qfx+XIej7hhDrKGGoIxV5m5fT/kOJNJPQhQneRg==",
|
||||
"version": "1.10.3",
|
||||
"resolved": "https://registry.npmjs.org/cacheable/-/cacheable-1.10.3.tgz",
|
||||
"integrity": "sha512-M6p10iJ/VT0wT7TLIGUnm958oVrU2cUK8pQAVU21Zu7h8rbk/PeRtRWrvHJBql97Bhzk3g1N6+2VKC+Rjxna9Q==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"hookified": "^1.11.0",
|
||||
"keyv": "^5.5.0"
|
||||
"hookified": "^1.10.0",
|
||||
"keyv": "^5.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/cacheable-lookup": {
|
||||
@@ -3556,9 +3555,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/cacheable/node_modules/keyv": {
|
||||
"version": "5.5.0",
|
||||
"resolved": "https://registry.npmjs.org/keyv/-/keyv-5.5.0.tgz",
|
||||
"integrity": "sha512-QG7qR2tijh1ftOvClut4YKKg1iW6cx3GZsKoGyJPxHkGWK9oJhG9P3j5deP0QQOGDowBMVQFaP+Vm4NpGYvmIQ==",
|
||||
"version": "5.4.0",
|
||||
"resolved": "https://registry.npmjs.org/keyv/-/keyv-5.4.0.tgz",
|
||||
"integrity": "sha512-TMckyVjEoacG5IteUpUrOBsFORtheqziVyyY2dLUwg1jwTb8u48LX4TgmtogkNl9Y9unaEJ1luj10fGyjMGFOQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -5480,19 +5479,19 @@
|
||||
}
|
||||
},
|
||||
"node_modules/eslint": {
|
||||
"version": "9.35.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.35.0.tgz",
|
||||
"integrity": "sha512-QePbBFMJFjgmlE+cXAlbHZbHpdFVS2E/6vzCy7aKlebddvl1vadiC4JFV5u/wqTkNUwEV8WrQi257jf5f06hrg==",
|
||||
"version": "9.34.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.34.0.tgz",
|
||||
"integrity": "sha512-RNCHRX5EwdrESy3Jc9o8ie8Bog+PeYvvSR8sDGoZxNFTvZ4dlxUB3WzQ3bQMztFrSRODGrLLj8g6OFuGY/aiQg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@eslint-community/eslint-utils": "^4.8.0",
|
||||
"@eslint-community/eslint-utils": "^4.2.0",
|
||||
"@eslint-community/regexpp": "^4.12.1",
|
||||
"@eslint/config-array": "^0.21.0",
|
||||
"@eslint/config-helpers": "^0.3.1",
|
||||
"@eslint/core": "^0.15.2",
|
||||
"@eslint/eslintrc": "^3.3.1",
|
||||
"@eslint/js": "9.35.0",
|
||||
"@eslint/js": "9.34.0",
|
||||
"@eslint/plugin-kit": "^0.3.5",
|
||||
"@humanfs/node": "^0.16.6",
|
||||
"@humanwhocodes/module-importer": "^1.0.1",
|
||||
@@ -7153,22 +7152,22 @@
|
||||
}
|
||||
},
|
||||
"node_modules/hook-std": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/hook-std/-/hook-std-4.0.0.tgz",
|
||||
"integrity": "sha512-IHI4bEVOt3vRUDJ+bFA9VUJlo7SzvFARPNLw75pqSmAOP2HmTWfFJtPvLBrDrlgjEYXY9zs7SFdHPQaJShkSCQ==",
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/hook-std/-/hook-std-3.0.0.tgz",
|
||||
"integrity": "sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=20"
|
||||
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/hookified": {
|
||||
"version": "1.12.0",
|
||||
"resolved": "https://registry.npmjs.org/hookified/-/hookified-1.12.0.tgz",
|
||||
"integrity": "sha512-hMr1Y9TCLshScrBbV2QxJ9BROddxZ12MX9KsCtuGGy/3SmmN5H1PllKerrVlSotur9dlE8hmUKAOSa3WDzsZmQ==",
|
||||
"version": "1.11.0",
|
||||
"resolved": "https://registry.npmjs.org/hookified/-/hookified-1.11.0.tgz",
|
||||
"integrity": "sha512-aDdIN3GyU5I6wextPplYdfmWCo+aLmjjVbntmX6HLD5RCi/xKsivYEBhnRD+d9224zFf008ZpLMPlWF0ZodYZw==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
@@ -7238,9 +7237,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/hugo-bin": {
|
||||
"version": "0.147.0",
|
||||
"resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.147.0.tgz",
|
||||
"integrity": "sha512-8ZO/uEVbYUQzTaPGmB0Www53GeKq6A2oyQs1+0wyV9BR5jWQt7HPpl5U4sCioRTsTF73UQVQMTzIPdg9Iaw4Vw==",
|
||||
"version": "0.146.0",
|
||||
"resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.146.0.tgz",
|
||||
"integrity": "sha512-R7c7SEhxNekWIny2HF5uU5Xk0Veg8BsahuyLURojvascGLCjyOAUDmghKnWB8DDVXSUmeDQYW8XdypNvbEC/Vg==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
@@ -14440,23 +14439,22 @@
|
||||
}
|
||||
},
|
||||
"node_modules/replace-in-files-cli": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/replace-in-files-cli/-/replace-in-files-cli-4.0.0.tgz",
|
||||
"integrity": "sha512-b6Nzz19x+huwKe1pqjovWj/JGFwVvi+XbY1YPuWzlD+3Ihb1BPgoNfPweFvbjmSmj60bPLABgJX0HUQVhzEVsA==",
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/replace-in-files-cli/-/replace-in-files-cli-3.0.0.tgz",
|
||||
"integrity": "sha512-A2VjOaPF8yjiaRjuIlvX3PB0uRMQ3DpnKG4yg38wjPrqR0OSzD00ubOZqqwAunoT5emKjEZPvdkm6JRVJrBmlQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"escape-string-regexp": "^5.0.0",
|
||||
"globby": "^14.1.0",
|
||||
"globby": "^14.0.1",
|
||||
"meow": "^13.2.0",
|
||||
"normalize-path": "^3.0.0",
|
||||
"write-file-atomic": "^6.0.0"
|
||||
"write-file-atomic": "^5.0.1"
|
||||
},
|
||||
"bin": {
|
||||
"replace-in-files": "cli.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=20"
|
||||
"node": ">=18"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
@@ -14474,33 +14472,6 @@
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/replace-in-files-cli/node_modules/signal-exit": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
|
||||
"integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/replace-in-files-cli/node_modules/write-file-atomic": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-6.0.0.tgz",
|
||||
"integrity": "sha512-GmqrO8WJ1NuzJ2DrziEI2o57jKAVIQNf8a18W3nCYU3H7PNWqCCVTeH6/NQE93CIllIgQS98rrmVkYgTX9fFJQ==",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"imurmurhash": "^0.1.4",
|
||||
"signal-exit": "^4.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.17.0 || >=20.5.0"
|
||||
}
|
||||
},
|
||||
"node_modules/require-directory": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
|
||||
@@ -14879,9 +14850,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/semantic-release": {
|
||||
"version": "24.2.8",
|
||||
"resolved": "https://registry.npmjs.org/semantic-release/-/semantic-release-24.2.8.tgz",
|
||||
"integrity": "sha512-uvoLiKEB/AvvA3SCPE78cd90nVJXn220kkEA6sNGzDpas4s7pe4OgYWvhfR0lvWBdBH/T0RFCI6U+GvcT2CypQ==",
|
||||
"version": "24.2.7",
|
||||
"resolved": "https://registry.npmjs.org/semantic-release/-/semantic-release-24.2.7.tgz",
|
||||
"integrity": "sha512-g7RssbTAbir1k/S7uSwSVZFfFXwpomUB9Oas0+xi9KStSCmeDXcA7rNhiskjLqvUe/Evhx8fVCT16OSa34eM5g==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -14899,7 +14870,7 @@
|
||||
"find-versions": "^6.0.0",
|
||||
"get-stream": "^6.0.0",
|
||||
"git-log-parser": "^1.2.0",
|
||||
"hook-std": "^4.0.0",
|
||||
"hook-std": "^3.0.0",
|
||||
"hosted-git-info": "^8.0.0",
|
||||
"import-from-esm": "^2.0.0",
|
||||
"lodash-es": "^4.17.21",
|
||||
@@ -16176,9 +16147,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/stylelint": {
|
||||
"version": "16.24.0",
|
||||
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.24.0.tgz",
|
||||
"integrity": "sha512-7ksgz3zJaSbTUGr/ujMXvLVKdDhLbGl3R/3arNudH7z88+XZZGNLMTepsY28WlnvEFcuOmUe7fg40Q3lfhOfSQ==",
|
||||
"version": "16.23.1",
|
||||
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.23.1.tgz",
|
||||
"integrity": "sha512-dNvDTsKV1U2YtiUDfe9d2gp902veFeo3ecCWdGlmLm2WFrAV0+L5LoOj/qHSBABQwMsZPJwfC4bf39mQm1S5zw==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
@@ -16205,7 +16176,7 @@
|
||||
"debug": "^4.4.1",
|
||||
"fast-glob": "^3.3.3",
|
||||
"fastest-levenshtein": "^1.0.16",
|
||||
"file-entry-cache": "^10.1.4",
|
||||
"file-entry-cache": "^10.1.3",
|
||||
"global-modules": "^2.0.0",
|
||||
"globby": "^11.1.0",
|
||||
"globjoin": "^0.1.4",
|
||||
@@ -16410,25 +16381,25 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/stylelint/node_modules/file-entry-cache": {
|
||||
"version": "10.1.4",
|
||||
"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-10.1.4.tgz",
|
||||
"integrity": "sha512-5XRUFc0WTtUbjfGzEwXc42tiGxQHBmtbUG1h9L2apu4SulCGN3Hqm//9D6FAolf8MYNL7f/YlJl9vy08pj5JuA==",
|
||||
"version": "10.1.3",
|
||||
"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-10.1.3.tgz",
|
||||
"integrity": "sha512-D+w75Ub8T55yor7fPgN06rkCAUbAYw2vpxJmmjv/GDAcvCnv9g7IvHhIZoxzRZThrXPFI2maeY24pPbtyYU7Lg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"flat-cache": "^6.1.13"
|
||||
"flat-cache": "^6.1.12"
|
||||
}
|
||||
},
|
||||
"node_modules/stylelint/node_modules/flat-cache": {
|
||||
"version": "6.1.13",
|
||||
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.13.tgz",
|
||||
"integrity": "sha512-gmtS2PaUjSPa4zjObEIn4WWliKyZzYljgxODBfxugpK6q6HU9ClXzgCJ+nlcPKY9Bt090ypTOLIFWkV0jbKFjw==",
|
||||
"version": "6.1.12",
|
||||
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.12.tgz",
|
||||
"integrity": "sha512-U+HqqpZPPXP5d24bWuRzjGqVqUcw64k4nZAbruniDwdRg0H10tvN7H6ku1tjhA4rg5B9GS3siEvwO2qjJJ6f8Q==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"cacheable": "^1.10.4",
|
||||
"cacheable": "^1.10.3",
|
||||
"flatted": "^3.3.3",
|
||||
"hookified": "^1.11.0"
|
||||
"hookified": "^1.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/stylelint/node_modules/globby": {
|
||||
|
10
package.json
10
package.json
@@ -75,7 +75,7 @@
|
||||
"autoprefixer": "^10.4.21",
|
||||
"cssnano": "^7.1.1",
|
||||
"cssnano-preset-advanced": "^7.0.9",
|
||||
"hugo-bin": "0.147.0",
|
||||
"hugo-bin": "0.146.0",
|
||||
"purgecss-whitelister": "^2.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
@@ -87,18 +87,18 @@
|
||||
"commitizen": "^4.3.1",
|
||||
"cpy-cli": "^6.0.0",
|
||||
"cz-conventional-changelog": "^3.3.0",
|
||||
"eslint": "^9.35.0",
|
||||
"eslint": "^9.34.0",
|
||||
"husky": "^9.1.7",
|
||||
"markdownlint-cli2": "^0.18.1",
|
||||
"neostandard": "^0.12.2",
|
||||
"netlify-plugin-hugo-cache-resources": "^0.2.1",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"postcss-cli": "^11.0.1",
|
||||
"replace-in-files-cli": "^4.0.0",
|
||||
"replace-in-files-cli": "^3.0.0",
|
||||
"rimraf": "^6.0.1",
|
||||
"semantic-release": "^24.2.8",
|
||||
"semantic-release": "^24.2.7",
|
||||
"shx": "^0.4.0",
|
||||
"stylelint": "^16.24.0",
|
||||
"stylelint": "^16.23.1",
|
||||
"stylelint-config-standard-scss": "^15.0.1"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
|
Reference in New Issue
Block a user