Compare commits

...

7 Commits

Author SHA1 Message Date
Mark Dumay
05af8f72a3 Merge pull request #1461 from gethinode/develop
Refactor bookshop components
2025-06-17 06:28:15 +02:00
Mark Dumay
977c82b10d Fix separator padding and width 2025-06-17 06:17:31 +02:00
Mark Dumay
be92798dec Merge branch 'main' into develop 2025-06-17 05:54:59 +02:00
Mark Dumay
db9b96797a Bump package release 2025-06-17 05:54:11 +02:00
Mark Dumay
d41d58cf5d Refactor bookshop components 2025-06-17 05:53:33 +02:00
github-actions[bot]
d3fe893287 Merge pull request #1460 from gethinode/dependabot/npm_and_yarn/eslint-9.29.0
Bump eslint from 9.28.0 to 9.29.0
2025-06-16 14:13:36 +00:00
dependabot[bot]
e64a08c339 Bump eslint from 9.28.0 to 9.29.0
Bumps [eslint](https://github.com/eslint/eslint) from 9.28.0 to 9.29.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.28.0...v9.29.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 14:05:37 +00:00
29 changed files with 387 additions and 546 deletions

View File

@@ -30,6 +30,7 @@ blueprint:
mode:
order:
width:
justify:
link-type:
links:
-

View File

@@ -26,7 +26,7 @@
"link-type" $args.linkType
"links" $args.links
"orientation" "horizontal"
"width" (or .width 8)
"width" (or $args.width 8)
)
}}
{{- end -}}

View File

@@ -42,4 +42,6 @@ blueprint:
header-style:
footer-style:
orientation:
class:
class:
width:
justify:

View File

@@ -62,48 +62,46 @@
<!-- Main code -->
{{ if not $error }}
<div class="container-xxl p-4 px-xxl-0">
{{- partial "assets/section-title.html" (dict "heading" $args.heading "class" "py-5") -}}
{{- partial "assets/section-title.html" (dict "heading" $args.heading "class" "py-5") -}}
{{ $partial := "assets/card-group.html" }}
{{ $params := dict }}
{{- $params = merge $params (dict
"page" page
"list" $pages
"max" $args.max
"cols" $args.cols
"icon-rounded" $args.iconRounded
"href" (cond $moreButton $moreLink "")
"href-title" (cond $moreButton $moreTitle "")
"href-force" (gt $result.total (len $result.pages))
)}}
{{ $partial := "assets/card-group.html" }}
{{ $params := dict }}
{{- $params = merge $params (dict
"page" page
"list" $pages
"max" $args.max
"cols" $args.cols
"icon-rounded" $args.iconRounded
"href" (cond $moreButton $moreLink "")
"href-title" (cond $moreButton $moreTitle "")
"href-force" (gt $result.total (len $result.pages))
)}}
{{ if $args.scroll }}
{{ $partial := "assets/stack.html" }}
{{ $params = merge $params (dict
"header-style" "none"
"body-style" "title"
"footer-style" "none"
"gutter" 1
"padding" 3
"ratio" "1x1"
"orientation" "horizontal-sm"
"styles" (cond $args.bento $styles "")
) -}}
{{ else }}
{{ $params = merge $params (dict
"header-style" $args.headerStyle
"footer-style" $args.footerStyle
"padding" $args.padding
"class" (or $args.class "border-0")
"icon-style" "fa-2x"
"align" "start"
"orientation" $args.orientation
"hook" "assets/live-card.html"
"pagination" $args.pagination
"paginate" $paginate
) -}}
{{ end }}
{{ partial $partial $params }}
</div>
{{ if $args.scroll }}
{{ $partial := "assets/stack.html" }}
{{ $params = merge $params (dict
"header-style" "none"
"body-style" "title"
"footer-style" "none"
"gutter" 1
"padding" 3
"ratio" "1x1"
"orientation" "horizontal-sm"
"styles" (cond $args.bento $styles "")
) -}}
{{ else }}
{{ $params = merge $params (dict
"header-style" $args.headerStyle
"footer-style" $args.footerStyle
"padding" $args.padding
"class" (or $args.class "border-0")
"icon-style" "fa-2x"
"align" "start"
"orientation" $args.orientation
"hook" "assets/live-card.html"
"pagination" $args.pagination
"paginate" $paginate
) -}}
{{ end }}
{{ partial $partial $params }}
{{ end }}

View File

@@ -29,4 +29,6 @@ blueprint:
mode:
content:
orientation:
class:
class:
width:
justify:

View File

@@ -32,40 +32,38 @@
{{ end}}
{{ if not $error }}
<div class="container-xxl p-4 px-xxl-0">
{{- partial "assets/section-title.html" (dict "heading" $args.heading "class" "py-5") -}}
{{- partial "assets/section-title.html" (dict "heading" $args.heading "class" "py-5") -}}
{{- partial "assets/card-group.html" (dict
"page" page
"list" $list
"class" (printf "border-0 card-icon-primary d-sm-none %s" $args.class)
"cols" $args.cols
"gutter" "4"
"padding" $args.padding
"header-style" "none"
"footer-style" "none"
"icon-rounded" $args.iconRounded
"icon-style" "fa-2x"
"align" "start"
"orientation" ($args.orientation | default "horizontal-sm")
"hook" "assets/live-card.html"
) -}}
{{- partial "assets/card-group.html" (dict
"page" page
"list" $list
"class" (printf "border-0 card-icon-primary d-sm-none %s" $args.class)
"cols" $args.cols
"gutter" "4"
"padding" $args.padding
"header-style" "none"
"footer-style" "none"
"icon-rounded" $args.iconRounded
"icon-style" "fa-2x"
"align" "start"
"orientation" ($args.orientation | default "horizontal-sm")
"hook" "assets/live-card.html"
) -}}
{{- partial "assets/card-group.html" (dict
"page" page
"list" $list
"class" (printf "border-0 card-icon-primary d-none d-sm-block %s" $args.class)
"cols" $args.cols
"gutter" "4"
"padding" $args.padding
"header-style" "none"
"footer-style" "none"
"icon-rounded" $args.iconRounded
"icon-style" "fa-2x"
"align" "start"
"orientation" ($args.orientation | default "stacked")
"hook" "assets/live-card.html"
) -}}
</div>
{{- partial "assets/card-group.html" (dict
"page" page
"list" $list
"class" (printf "border-0 card-icon-primary d-none d-sm-block %s" $args.class)
"cols" $args.cols
"gutter" "4"
"padding" $args.padding
"header-style" "none"
"footer-style" "none"
"icon-rounded" $args.iconRounded
"icon-style" "fa-2x"
"align" "start"
"orientation" ($args.orientation | default "stacked")
"hook" "assets/live-card.html"
) -}}
{{ end }}

View File

@@ -17,6 +17,8 @@ blueprint:
width:
size:
contrast:
width:
justify:
background:
backdrop:
color:

View File

@@ -17,43 +17,41 @@
{{ end }}
{{ if not $args.err }}
<div class="container-xxl p-4 px-xxl-0">
{{ $color := "" }}
{{ if $args.contrast }}{{ $color = "white" }}{{ end }}
{{- partial "assets/section-title.html" (dict
"heading" $args.heading
"color" $color
"class" "py-5"
) -}}
{{ $color := "" }}
{{ if $args.contrast }}{{ $color = "white" }}{{ end }}
{{- partial "assets/section-title.html" (dict
"heading" $args.heading
"color" $color
"class" "py-5"
) -}}
{{ $class := "" }}
{{ $id := printf "faq-%s" (md5 (delimit (slice . now) "-")) }}
{{ $class := "" }}
{{ $id := printf "faq-%s" (md5 (delimit (slice . now) "-")) }}
<div id="{{ $id }}" class="accordion accordion-faq {{ if $args.contrast }}accordion-faq-contrast text-white {{ end }}accordion-flush mb-3{{ with $class }} {{ . }}{{ end }} col-12 col-md-6 mx-auto">
{{ range $index, $item := $args.items }}
<div class="accordion-item">
{{- with $item.title -}}
<div class="accordion-header m-0" id="{{ $id }}-heading-{{ $id }}">
<button class="accordion-button collapsed"
type="button"
data-bs-toggle="collapse"
data-bs-target="#{{ $id }}-item-{{ $index }}"
aria-expanded="false"
aria-controls="{{ $id }}-item-{{ $index }}"
>
{{ if $args.color }}<div class="text-{{ $args.color }}">{{ . }}</div>{{ else }}{{ . }}{{ end }}
</button>
</div>
{{- end -}}
<div id="{{ $id }}-item-{{ $index }}"
class="accordion-collapse collapse"
aria-labelledby="{{ $id }}-heading-{{ $index }}"
data-bs-parent="#{{ $id }}"
>
<div class="accordion-body">{{ $item.description | page.RenderString | safeHTML }}</div>
<div id="{{ $id }}" class="accordion accordion-faq {{ if $args.contrast }}accordion-faq-contrast text-white {{ end }}accordion-flush mb-3{{ with $class }} {{ . }}{{ end }} col-12 col-md-6 mx-auto">
{{ range $index, $item := $args.items }}
<div class="accordion-item">
{{- with $item.title -}}
<div class="accordion-header m-0" id="{{ $id }}-heading-{{ $id }}">
<button class="accordion-button collapsed"
type="button"
data-bs-toggle="collapse"
data-bs-target="#{{ $id }}-item-{{ $index }}"
aria-expanded="false"
aria-controls="{{ $id }}-item-{{ $index }}"
>
{{ if $args.color }}<div class="text-{{ $args.color }}">{{ . }}</div>{{ else }}{{ . }}{{ end }}
</button>
</div>
{{- end -}}
<div id="{{ $id }}-item-{{ $index }}"
class="accordion-collapse collapse"
aria-labelledby="{{ $id }}-heading-{{ $index }}"
data-bs-parent="#{{ $id }}"
>
<div class="accordion-body">{{ $item.description | page.RenderString | safeHTML }}</div>
</div>
{{ end }}
</div>
</div>
{{ end }}
</div>
{{ end }}

View File

@@ -38,3 +38,4 @@ blueprint:
cover:
orientation:
width:
justify:

View File

@@ -30,6 +30,7 @@
"links" $args.links
"orientation" $args.orientation
"width" $args.width
"justify" $args.justify
)
}}
{{ end }}

View File

@@ -21,4 +21,6 @@ blueprint:
backdrop:
color:
subtle:
width:
justify:
data:

View File

@@ -16,5 +16,5 @@
{{ end }}
{{ if not $args.err }}
<div class="container-xxl p-0"{{ with $args.theme }} data-bs-theme="{{ . }}"{{ end }}><hr></div>
<hr class="w-100">
{{ end }}

View File

@@ -39,6 +39,7 @@ blueprint:
label:
border:
width:
justify:
_structures:
messages:

View File

@@ -73,7 +73,7 @@
) -}}
{{ end }}
<div class="container-xxl p-4 px-xxl-0">
{{ if not $args.err }}
{{ $list := slice }}
{{ range $args.messages }}
@@ -133,4 +133,4 @@
</div>
</div>
{{ end }}
</div>
{{ end }}

View File

@@ -32,6 +32,9 @@
{{- $background := index $component_props "background" -}}
{{- $backdrop := "" -}}
{{- $style := index $component_props "wrapper" -}}
{{- $width := index $component_props "width" -}}
{{- $justify := index $component_props "justify" | default "start" -}}
{{- $padding := cond (ne $component_name "separator") "px-4 px-xxl-0 py-4" "" -}}
{{- $wrapper := $style }}
{{ with $background }}
{{ $wrapper = partial "utilities/GetBackgroundStyle.html" (dict "background" . "class" $style) }}
@@ -59,7 +62,16 @@
{{- if $backdrop -}}
{{ partial "assets/live-image.html" (dict "src" $backdrop "class" (printf "background-img-fluid %s" $bgclass) "title" (T "backgroundImage")) }}
{{- end -}}
{{ partial $resolved_component $component_props }}
{{ $col := cond (and $width (lt $width 12)) (printf "col-12 col-md-%d" $width) "" }}
<div class="container-xxl {{ $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>
{{ "<!--bookshop-live end-->" | safeHTML }}
{{- else -}}

View File

@@ -151,13 +151,6 @@ arguments:
- full
- title
- none
# # TODO: rename bodyStyle
# bodyStyle:
# type: string
# optional: true
# default: lead text-muted
# comment: >-
# Style of the body text, if any..
border:
type: bool
optional: true
@@ -355,6 +348,12 @@ arguments:
- template.HTML
optional: true
comment: Section content displayed below the title.
content-style:
type: string
optional: true
default: lead text-muted
comment: >-
Style of the section content, if any.
contrast:
type: bool
default: false
@@ -572,17 +571,16 @@ arguments:
optional: true
comment: >-
Heading of the content block, including a preheading and content element.
# # TODO: rename headingStyle
# headingStyle:
# type: select
# optional: true
# default: display
# options:
# values:
# - display
# - fs
# comment: >-
# Style of the heading, either display or fs (regular).
heading-style:
type: select
optional: true
default: display
options:
values:
- display
- fs
comment: >-
Style of the heading, either display style or regular style (fs).
# headline:
# type: string
# optional: true
@@ -718,7 +716,7 @@ arguments:
type: select
optional: true
default: center
comment: Justification of the link title and icon.
comment: Justification of the child elements.
options:
values:
- start

View File

@@ -11,3 +11,4 @@ arguments:
wrapper:
class:
image-overlay:
justify:

View File

@@ -15,6 +15,7 @@ arguments:
cover:
orientation:
width:
justify:
use-section:
use-title:
class:

View File

@@ -3,124 +3,13 @@ arguments:
heading:
links:
color:
type: select
comment: Text color of the section.
default: body
optional: true
options:
values:
- body
- primary
- secondary
- black
- white
class:
type: string
optional: true
comment: Class attribute of the section title.
size:
type: int
optional: true
comment: Display size of the title.
options:
min: 1
max: 6
use-title:
type: bool
optional: true
default: false
comment: Sets the title to an HTML header instead of a div.
justify:
type: select
comment: Justification of the link titles and icons.
optional: true
default: center
options:
values:
- start
- end
- center
- between
- around
- evenly
type:
type: select
optional: true
default: button
comment: Link type
options:
values:
- button
- link
section:
type: bool
optional: true
default: false
comment: >-
Trigger to use the current section as preheading, applies to single pages
only. Any preheading values takes precedence.
link-type:
use-section:
arrangement:
headingStyle:
type: select
optional: true
default: display
options:
values:
- display
- fs
comment: >-
Style of the heading, either display or fs (regular).
bodyStyle:
type: string
optional: true
default: lead text-muted
comment: >-
Style of the body text, if any..
# class:
# type: string
# optional: true
# comment: Class attribute of the illustration, e.g. "col-6".
# image:
# type: string
# optional: true
# comment: Image displayed on top of or adjacent to the headline.
# imageOverlay:
# type: bool
# optional: true
# default: false
# comment: Trigger to include an image overlay placeholder.
# ratio:
# type: select
# optional: true
# default: 16x9
# comment: >-
# Ratio of the illustration, uses original aspect ratio by default.
# options:
# values:
# - 1x1
# - 3x2
# - 4x3
# - 16x9
# - 21x9
# anchor:
# type: select
# optional: true
# comment:
# Anchor of the thumbnail's crop box, defaults to anchor value set in
# `imaging` section of the site configuration (usually `Smart`).
# options:
# values:
# - TopLeft
# - Top
# - TopRight
# - Left
# - Center
# - Right
# - BottomLeft
# - Bottom
# - BottomRight
# - Smart
# icon:
# type: string
# optional: true
# comment: Icon or animation displayed on top of or adjacent to the headline.
heading-style:
content-style:

View File

@@ -8,20 +8,20 @@ content_blocks:
title: Welcome to Hinode!
content: |-
A clean documentation and blog theme for your Hugo site based on Bootstrap 5.
align: start
width: 6
background:
color: primary
subtle: true
illustration:
image: /img/sunrise.jpg
ratio: 16x9
width: 8
width: 6
width: 8
links:
- title: About
url: about
icon: fas chevron-right
orientation: horizontal
justify: center
- _bookshop_name: articles
heading:

View File

@@ -100,7 +100,7 @@
"bg-body",
"bg-body-tertiary",
"bg-danger",
"bg-info",
"bg-info-subtle",
"bg-opacity-10",
"bg-primary",
"bg-primary-subtle",
@@ -173,7 +173,7 @@
"col-lg-2",
"col-lg-4",
"col-lg-8",
"col-md-",
"col-md-10",
"col-md-12",
"col-md-2",
"col-md-3",
@@ -185,9 +185,6 @@
"col-sm-12",
"col-sm-3",
"col-sm-6",
"col-sm-9",
"col-xl-10",
"col-xl-2",
"collapse",
"collapsed",
"container",
@@ -232,6 +229,7 @@
"fa-angle-left",
"fa-arrow-left",
"fa-arrow-right",
"fa-book-open",
"fa-bootstrap",
"fa-chevron-right",
"fa-circle",
@@ -239,12 +237,14 @@
"fa-circle-play",
"fa-circle-question",
"fa-code",
"fa-display",
"fa-divide",
"fa-docker",
"fa-ellipsis",
"fa-face-frown",
"fa-facebook",
"fa-fluid",
"fa-font-awesome",
"fa-fw",
"fa-github",
"fa-globe",
@@ -257,6 +257,7 @@
"fa-link",
"fa-linkedin",
"fa-magnifying-glass",
"fa-markdown",
"fa-medium",
"fa-moon",
"fa-rocket",
@@ -330,6 +331,7 @@
"justify-content-between",
"justify-content-center",
"justify-content-end",
"justify-content-md-start",
"justify-content-start",
"katex",
"label",
@@ -343,6 +345,7 @@
"link-warning",
"lottie-animation",
"m-0",
"m-auto",
"m-md-n4",
"m-n1",
"main-content",
@@ -410,6 +413,7 @@
"pb-3",
"pb-4",
"pb-5",
"pe-0",
"pe-1",
"pe-3",
"pe-5",
@@ -568,10 +572,10 @@
"animatie",
"animation",
"arguments",
"automated",
"background-type",
"badge",
"barre-de-navigation",
"bento-layout",
"block-diagram",
"blog",
"body-docs-collapse-15",
@@ -587,6 +591,7 @@
"carousel-0",
"carrousel",
"carte",
"check-our-guides-to-get-you-started",
"chronologie",
"class-diagram",
"cloudinary",
@@ -598,158 +603,53 @@
"container",
"content-blocks",
"cookies-etc",
"creating-your-website-has-never-been-easier",
"custom-activity",
"data-tables",
"docs",
"documentation",
"elements-type",
"embrace-the-power-of-open-source",
"entity-relationship-diagram",
"example",
"examples",
"exemple",
"fa-address-card",
"fa-face-frown",
"fa-font-awesome",
"fa-square-check",
"fab-bootstrap",
"fab-docker",
"fab-facebook",
"fab-github",
"fab-linkedin",
"fab-markdown",
"fab-medium",
"fab-whatsapp",
"fab-x-twitter",
"faq-0207ac25368a51b555ace9fb5d535d51",
"faq-0207ac25368a51b555ace9fb5d535d51-heading-faq-0207ac25368a51b555ace9fb5d535d51",
"faq-0207ac25368a51b555ace9fb5d535d51-item-0",
"faq-0207ac25368a51b555ace9fb5d535d51-item-1",
"faq-0207ac25368a51b555ace9fb5d535d51-item-2",
"faq-0d9cad3dcfdbf86c0dd499efd640f5fd",
"faq-0d9cad3dcfdbf86c0dd499efd640f5fd-heading-faq-0d9cad3dcfdbf86c0dd499efd640f5fd",
"faq-0d9cad3dcfdbf86c0dd499efd640f5fd-item-0",
"faq-0d9cad3dcfdbf86c0dd499efd640f5fd-item-1",
"faq-0d9cad3dcfdbf86c0dd499efd640f5fd-item-2",
"faq-1d09cf5c427b65f8401538f5c27cd79a",
"faq-1d09cf5c427b65f8401538f5c27cd79a-heading-faq-1d09cf5c427b65f8401538f5c27cd79a",
"faq-1d09cf5c427b65f8401538f5c27cd79a-item-0",
"faq-1d09cf5c427b65f8401538f5c27cd79a-item-1",
"faq-1d09cf5c427b65f8401538f5c27cd79a-item-2",
"faq-23d1dc823666431d94080a47fbe2f135",
"faq-23d1dc823666431d94080a47fbe2f135-heading-faq-23d1dc823666431d94080a47fbe2f135",
"faq-23d1dc823666431d94080a47fbe2f135-item-0",
"faq-23d1dc823666431d94080a47fbe2f135-item-1",
"faq-23d1dc823666431d94080a47fbe2f135-item-2",
"faq-2a2e900fbf55c94afccd3e0096d75d43",
"faq-2a2e900fbf55c94afccd3e0096d75d43-heading-faq-2a2e900fbf55c94afccd3e0096d75d43",
"faq-2a2e900fbf55c94afccd3e0096d75d43-item-0",
"faq-2a2e900fbf55c94afccd3e0096d75d43-item-1",
"faq-2a2e900fbf55c94afccd3e0096d75d43-item-2",
"faq-385e9a800872a4ef6fc41f292e5ecad0",
"faq-385e9a800872a4ef6fc41f292e5ecad0-heading-faq-385e9a800872a4ef6fc41f292e5ecad0",
"faq-385e9a800872a4ef6fc41f292e5ecad0-item-0",
"faq-385e9a800872a4ef6fc41f292e5ecad0-item-1",
"faq-385e9a800872a4ef6fc41f292e5ecad0-item-2",
"faq-3ac1e6c7e282c0c3498e241151e870a3",
"faq-3ac1e6c7e282c0c3498e241151e870a3-heading-faq-3ac1e6c7e282c0c3498e241151e870a3",
"faq-3ac1e6c7e282c0c3498e241151e870a3-item-0",
"faq-3ac1e6c7e282c0c3498e241151e870a3-item-1",
"faq-3ac1e6c7e282c0c3498e241151e870a3-item-2",
"faq-3c82f796666ad7126f45191d8686190a",
"faq-3c82f796666ad7126f45191d8686190a-heading-faq-3c82f796666ad7126f45191d8686190a",
"faq-3c82f796666ad7126f45191d8686190a-item-0",
"faq-3c82f796666ad7126f45191d8686190a-item-1",
"faq-3c82f796666ad7126f45191d8686190a-item-2",
"faq-42527a8d6149bcb25ba67974f251c9c7",
"faq-42527a8d6149bcb25ba67974f251c9c7-heading-faq-42527a8d6149bcb25ba67974f251c9c7",
"faq-42527a8d6149bcb25ba67974f251c9c7-item-0",
"faq-42527a8d6149bcb25ba67974f251c9c7-item-1",
"faq-42527a8d6149bcb25ba67974f251c9c7-item-2",
"faq-459acb940e821ec7b38b2425729753a7",
"faq-459acb940e821ec7b38b2425729753a7-heading-faq-459acb940e821ec7b38b2425729753a7",
"faq-459acb940e821ec7b38b2425729753a7-item-0",
"faq-459acb940e821ec7b38b2425729753a7-item-1",
"faq-459acb940e821ec7b38b2425729753a7-item-2",
"faq-4816264872fdc6847c6a813550673dd0",
"faq-4816264872fdc6847c6a813550673dd0-heading-faq-4816264872fdc6847c6a813550673dd0",
"faq-4816264872fdc6847c6a813550673dd0-item-0",
"faq-4816264872fdc6847c6a813550673dd0-item-1",
"faq-4816264872fdc6847c6a813550673dd0-item-2",
"faq-501f4a6b834aa1a24043fb5b9f9928c2",
"faq-501f4a6b834aa1a24043fb5b9f9928c2-heading-faq-501f4a6b834aa1a24043fb5b9f9928c2",
"faq-501f4a6b834aa1a24043fb5b9f9928c2-item-0",
"faq-501f4a6b834aa1a24043fb5b9f9928c2-item-1",
"faq-501f4a6b834aa1a24043fb5b9f9928c2-item-2",
"faq-524a2784206986528a599f1fad6821f4",
"faq-524a2784206986528a599f1fad6821f4-heading-faq-524a2784206986528a599f1fad6821f4",
"faq-524a2784206986528a599f1fad6821f4-item-0",
"faq-524a2784206986528a599f1fad6821f4-item-1",
"faq-524a2784206986528a599f1fad6821f4-item-2",
"faq-53c9868792ab3037787bf28bb9675fa4",
"faq-53c9868792ab3037787bf28bb9675fa4-heading-faq-53c9868792ab3037787bf28bb9675fa4",
"faq-53c9868792ab3037787bf28bb9675fa4-item-0",
"faq-53c9868792ab3037787bf28bb9675fa4-item-1",
"faq-53c9868792ab3037787bf28bb9675fa4-item-2",
"faq-74cbe70765110cf6e9067513ca5741c2",
"faq-74cbe70765110cf6e9067513ca5741c2-heading-faq-74cbe70765110cf6e9067513ca5741c2",
"faq-74cbe70765110cf6e9067513ca5741c2-item-0",
"faq-74cbe70765110cf6e9067513ca5741c2-item-1",
"faq-74cbe70765110cf6e9067513ca5741c2-item-2",
"faq-90908ae510b7d45ff54c4b6c9c8ca008",
"faq-90908ae510b7d45ff54c4b6c9c8ca008-heading-faq-90908ae510b7d45ff54c4b6c9c8ca008",
"faq-90908ae510b7d45ff54c4b6c9c8ca008-item-0",
"faq-90908ae510b7d45ff54c4b6c9c8ca008-item-1",
"faq-90908ae510b7d45ff54c4b6c9c8ca008-item-2",
"faq-9801f2465268421d28e3a2e740e301ba",
"faq-9801f2465268421d28e3a2e740e301ba-heading-faq-9801f2465268421d28e3a2e740e301ba",
"faq-9801f2465268421d28e3a2e740e301ba-item-0",
"faq-9801f2465268421d28e3a2e740e301ba-item-1",
"faq-9801f2465268421d28e3a2e740e301ba-item-2",
"faq-c4ef1fd75a3eb53e09b547b23bc8dc7d",
"faq-c4ef1fd75a3eb53e09b547b23bc8dc7d-heading-faq-c4ef1fd75a3eb53e09b547b23bc8dc7d",
"faq-c4ef1fd75a3eb53e09b547b23bc8dc7d-item-0",
"faq-c4ef1fd75a3eb53e09b547b23bc8dc7d-item-1",
"faq-c4ef1fd75a3eb53e09b547b23bc8dc7d-item-2",
"faq-d47a09f567ff25b85143b638bc68d60f",
"faq-d47a09f567ff25b85143b638bc68d60f-heading-faq-d47a09f567ff25b85143b638bc68d60f",
"faq-d47a09f567ff25b85143b638bc68d60f-item-0",
"faq-d47a09f567ff25b85143b638bc68d60f-item-1",
"faq-d47a09f567ff25b85143b638bc68d60f-item-2",
"faq-dc8be8c7cb908eadcc4f0cb98b4709fb",
"faq-dc8be8c7cb908eadcc4f0cb98b4709fb-heading-faq-dc8be8c7cb908eadcc4f0cb98b4709fb",
"faq-dc8be8c7cb908eadcc4f0cb98b4709fb-item-0",
"faq-dc8be8c7cb908eadcc4f0cb98b4709fb-item-1",
"faq-dc8be8c7cb908eadcc4f0cb98b4709fb-item-2",
"faq-df9f1eb3ec26e3252a2d045e833601d9",
"faq-df9f1eb3ec26e3252a2d045e833601d9-heading-faq-df9f1eb3ec26e3252a2d045e833601d9",
"faq-df9f1eb3ec26e3252a2d045e833601d9-item-0",
"faq-df9f1eb3ec26e3252a2d045e833601d9-item-1",
"faq-df9f1eb3ec26e3252a2d045e833601d9-item-2",
"faq-eafa3d5085c4f74847a727982753379e",
"faq-eafa3d5085c4f74847a727982753379e-heading-faq-eafa3d5085c4f74847a727982753379e",
"faq-eafa3d5085c4f74847a727982753379e-item-0",
"faq-eafa3d5085c4f74847a727982753379e-item-1",
"faq-eafa3d5085c4f74847a727982753379e-item-2",
"faq-eb4b749d4172f3bcae459d57f9d4cfb5",
"faq-eb4b749d4172f3bcae459d57f9d4cfb5-heading-faq-eb4b749d4172f3bcae459d57f9d4cfb5",
"faq-eb4b749d4172f3bcae459d57f9d4cfb5-item-0",
"faq-eb4b749d4172f3bcae459d57f9d4cfb5-item-1",
"faq-eb4b749d4172f3bcae459d57f9d4cfb5-item-2",
"faq-ff66f007edb5cdfca29cb7a3e0b4795c",
"faq-ff66f007edb5cdfca29cb7a3e0b4795c-heading-faq-ff66f007edb5cdfca29cb7a3e0b4795c",
"faq-ff66f007edb5cdfca29cb7a3e0b4795c-item-0",
"faq-ff66f007edb5cdfca29cb7a3e0b4795c-item-1",
"faq-ff66f007edb5cdfca29cb7a3e0b4795c-item-2",
"faq-0531e8f162271c7364df25bde932ba4a",
"faq-0531e8f162271c7364df25bde932ba4a-heading-faq-0531e8f162271c7364df25bde932ba4a",
"faq-0531e8f162271c7364df25bde932ba4a-item-0",
"faq-0531e8f162271c7364df25bde932ba4a-item-1",
"faq-0531e8f162271c7364df25bde932ba4a-item-2",
"faq-25686b4e63cfe7fc2ad1ede047ee330d",
"faq-25686b4e63cfe7fc2ad1ede047ee330d-heading-faq-25686b4e63cfe7fc2ad1ede047ee330d",
"faq-25686b4e63cfe7fc2ad1ede047ee330d-item-0",
"faq-25686b4e63cfe7fc2ad1ede047ee330d-item-1",
"faq-25686b4e63cfe7fc2ad1ede047ee330d-item-2",
"fas-1",
"fas-2",
"fas-3",
"fas-angle-left",
"fas-arrow-left",
"fas-arrow-right",
"fas-book-open",
"fas-chevron-right",
"fas-circle",
"fas-circle-check",
"fas-circle-play",
"fas-circle-question",
"fas-code",
"fas-display",
"fas-divide",
"fas-ellipsis",
"fas-globe",
@@ -767,6 +667,7 @@
"fas-sun",
"fas-timeline",
"fas-up-right-from-square",
"fast",
"fichier",
"fil-dariane",
"file",
@@ -780,7 +681,6 @@
"git-graph",
"groupe-de-boutons",
"groupe-de-cartes",
"guides",
"gérer-les-préférences-des-cookies",
"heading",
"heading-type",
@@ -813,6 +713,7 @@
"messages-type",
"mindmap",
"more-type",
"multilingual",
"nav",
"nav-0-0",
"nav-0-1",
@@ -830,6 +731,7 @@
"navbar-sample-collapse",
"navigation",
"notification",
"optimized",
"overview",
"persona",
"pie-chart",
@@ -841,7 +743,9 @@
"que-sont-les-cookies-",
"release",
"requirement-chart",
"responsive",
"réduire",
"secure",
"security",
"sequence-diagram",
"spinner",

View File

@@ -136,8 +136,7 @@
{{/* Main code */}}
{{- if and (not $error) (or (gt (len $elements) 0) $args.cards) -}}
<div class="{{- $args.wrapper -}}">
<div class="container-fluid {{ if $args.scroll }}card-container-wrapper{{ end }} p-0">
<div class="container-fluid {{ if $args.scroll }}card-container-wrapper{{ end }} p-0 {{ $args.wrapper }}">
<div class="row g-{{ $args.gutter -}}
{{- if $args.scroll }} d-flex flex-row flex-nowrap card-container scrollbar-horizontal pb-4 w-100 {{ end -}}
{{- if $args.bento }}{{ with $args.valign }} align-items-{{ . }}{{ end }}{{ else }} {{ $colGrid }}{{ end }}">
@@ -198,5 +197,4 @@
<a class="btn btn-outline-primary mt-4" href="{{ $href | safeURL }}" role="button">{{ $args.hrefTitle }}</a>
{{- end -}}
{{- end -}}
</div>
{{- end -}}

View File

@@ -148,19 +148,19 @@
{{ if $thumbnail }}
{{ if eq $args.orientation "horizontal-sm" }}
{{ $stack = "fa-1x" }}
{{ $col1 = "col-4 col-md-2" }}
{{ $col1 = "col-4 col-md-2 pe-0" }}
{{ $col2 = "col-8 col-md-10" }}
{{ else }}
{{ $col1 = "col-4" }}
{{ $col1 = "col-4 pe-0" }}
{{ $col2 = "col-8" }}
{{ end }}
{{ else if $icon }}
{{ if eq $args.orientation "horizontal-sm" }}
{{ $stack = "fa-1x" }}
{{ $col1 = "col-2 col-sm-3 col-md-4 col-xl-2" }}
{{ $col2 = "col-10 col-sm-9 col-md-8 col-xl-10" }}
{{ $col1 = "col-4 col-md-2 pe-0" }}
{{ $col2 = "col-8 col-md-10" }}
{{ else }}
{{ $col1 = "col-4" }}
{{ $col1 = "col-4 pe-0" }}
{{ $col2 = "col-8" }}
{{ end }}

View File

@@ -16,8 +16,8 @@
)}}
{{ end }}
{{ if not $args.err }}
<div class="hero-image-container">
{{ if and (not $args.err) (or $args.image $args.icon) }}
<div class="hero-image-container {{ with $args.justify }}d-flex justify-content-center justify-content-md-{{ . }}{{ end }}">
{{ partial "assets/featured-illustration.html" (dict
"page" $args.page
"icon" $args.icon

View File

@@ -25,19 +25,17 @@
{{/* Initialize local variables */}}
{{ $align := $args.align }}
{{ if and (not $align) (eq $args.orientation "stacked") }}{{ $align = "center" }}{{ end }}
{{ $class := $args.class }}
{{ $class := $args.class | default "" }}
{{ $scale := $args.illustration.width }}
{{ if $scale }}
{{ $class = trim (printf "%s col-%d " $class $scale) " " }}
{{ $class = trim (printf "%s col-%d text-center text-md-%s" $class $scale $align) " " }}
{{ else }}
{{ $class = trim (printf "%s col-8 col-md-12" $class) " " }}
{{ $scale = 12 }}
{{ end }}
{{ $iconWrapper := "col-6" }}
{{ if $args.center }}{{ $iconWrapper = "col-6 mx-auto text-center" }}{{ end }}
{{ $heading := cond (eq $args.orientation "horizontal") (merge $args.heading (dict "width" 12)) $args.heading }}
{{ $sizes := "100vw" }}
{{ if or (lt $args.width 12) (lt $scale 12) }}
@@ -58,79 +56,77 @@
{{ end }}
{{ if not $error }}
<div class="container-xxl {{ $args.padding }} d-flex flex-column">
{{ if and $args.breadcrumb (not page.IsHome) }}
<div class="d-flex flex-column align-items-{{ $align}} mb-4 pe-3">
{{ if site.Params.env_bookshop_live }}
<i class="text-white">Breadcrumb preview not supported</i>
{{ else }}
{{ partial "assets/breadcrumb.html" (dict "page" page) }}
{{ end }}
</div>
{{ end }}
{{ if and $args.breadcrumb (not page.IsHome) }}
<div class="d-flex flex-column align-items-{{ $align}} mb-4 pe-3">
{{ if site.Params.env_bookshop_live }}
<i class="text-white">Breadcrumb preview not supported</i>
{{ else }}
{{ partial "assets/breadcrumb.html" (dict "page" page) }}
{{ end }}
</div>
{{ end }}
{{ $imageWrapper := printf "mx-auto mx-md-0 %s" $class }}
{{ if eq $args.orientation "stacked" }}
{{ $imageWrapper = printf "pt-5 %s" $class }}
{{ if $args.center }}{{ $imageWrapper = printf "%s mx-auto" $imageWrapper }}{{ end }}
{{ if $args.icon }}{{ $imageWrapper = $iconWrapper }}{{ end }}
{{ end }}
{{ $sectionClass := cond (eq $args.orientation "stacked") "pt-5" "py-md-5" }}
{{ $imageWrapper := printf "mx-md-0 text-%s %s" $align $class }}
{{ $imageJustify := "" }}
{{ if eq $args.orientation "stacked" }}
{{ $imageWrapper = printf "pt-5 text-center %s" $class }}
{{ if $args.icon }}{{ $imageWrapper = $iconWrapper }}{{ end }}
{{ else }}
{{ $imageJustify = $align }}
{{ end }}
{{ $illustration := partial $args.hook (dict
"page" $args.page
"image" $args.illustration.image
"icon" $args.illustration.icon
"anchor" $args.illustration.anchor
"mode" $args.illustration.mode
"ratio" $args.illustration.ratio
"sizes" $sizes
"title" (T "heroImage")
"wrapper" $imageWrapper
"class" "hero-image"
"image-overlay" $args.imageOverlay
) }}
{{ $sectionClass := cond (eq $args.orientation "stacked") "pt-5" "py-md-5" }}
{{ if $args.icon }}{{ $imageWrapper = $iconWrapper }}{{ end }}
{{ $title := partial "assets/section-title.html" (dict
"heading" $args.heading
"use-title" $args.useTitle
"size" $args.size
"links" $args.links
"type" (or $args.linkType $args.type)
"class" (printf "hero-title %s" $sectionClass)
"arrangement" $arrangement
) }}
{{ $illustration := partial $args.hook (dict
"page" $args.page
"image" $args.illustration.image
"icon" $args.illustration.icon
"anchor" $args.illustration.anchor
"mode" $args.illustration.mode
"ratio" $args.illustration.ratio
"sizes" $sizes
"title" (T "heroImage")
"wrapper" $imageWrapper
"class" "hero-image"
"image-overlay" $args.imageOverlay
"justify" $imageJustify
) }}
{{ if eq $args.orientation "stacked" }}
{{/* Render stacked component */}}
<div class="row flex-fill">
<div class="col col-12 col-md-{{ $args.width }}{{ if $args.center }} m-auto{{ end }}">
{{ $illustration | safeHTML }}
{{ $title | safeHTML }}
</div>
{{ $title := partial "assets/section-title.html" (dict
"heading" $heading
"use-title" $args.useTitle
"size" $args.size
"links" $args.links
"link-type" (or $args.linkType $args.type)
"class" (printf "hero-title %s" $sectionClass)
"arrangement" $arrangement
) }}
{{ if eq $args.orientation "stacked" }}
{{/* Render stacked component */}}
{{ $illustration | safeHTML }}
{{ $title | safeHTML }}
{{ else }}
{{/* Render horizontal component */}}
<div class="row row-cols-1 {{ if eq $args.orientation "stacked" }}row-cols-md-2 {{ end }} w-100">
{{ $order1 := "order-1 order-md-0" }}
{{ $order2 := "order-0 order-md-1" }}
{{ if eq $args.order "first" }}
{{ $order1 = "order-1" }}
{{ $order2 = "order-0" }}
{{ end }}
{{ $imgWidth := sub 12 (or $args.heading.width 12) }}
{{ if lt $imgWidth 1 }}{{ $imgWidth = 1 }}{{ end }}
<div class="col col-12 col-md-{{sub 12 $imgWidth }} {{ $order1 }} my-md-auto pt-5 pt-md-0 hero-content">
{{ $title | safeHTML }}
</div>
{{ else }}
{{/* Render horizontal component */}}
<div class="row row-cols-1 row-cols-md-2 flex-fill">
{{ $order1 := "order-1 order-md-0 " }}
{{ $order2 := "order-0 order-md-1" }}
{{ if eq $args.order "first" }}
{{ $order1 = "order-1" }}
{{ $order2 = "order-0" }}
{{ end }}
<div class="col col-12 col-md-{{ $args.width }} {{ $order1 }} my-md-auto pt-5 pt-md-0 hero-content">
{{ $title | safeHTML }}
</div>
<div class="col col-10 col-md-{{ sub 12 $args.width }}
{{ $order2 }}{{ if $args.center }} text-center{{ end }} my-md-auto align-self-end">
<div>
{{ $illustration | safeHTML }}
</div>
</div>
<div class="col col-8 col-md-{{ $imgWidth }} {{ $order2 }} m-auto my-md-auto align-self-end">
{{ $illustration | safeHTML }}
</div>
{{ end }}
</div>
</div>
{{ end }}
{{ end }}

View File

@@ -15,16 +15,15 @@
{{ end }}
{{/* Initialize local arguments */}}
{{- $size := (or .size site.Params.modules.bookshop.title.size) | default 4 -}}
{{- $arrangement := (or .arrangement site.Params.modules.bookshop.title.arrangement) | default "above" -}}
{{- $headingStyle := (or .headingStyle site.Params.modules.bookshop.title.headingStyle) | default "display" -}}
{{- $bodyStyle := (or .bodyStyle site.Params.modules.bookshop.title.bodyStyle) | default "lead text-muted" -}}
{{- $size := (or $args.size site.Params.modules.bookshop.title.size) | default 4 -}}
{{- $arrangement := (or $args.arrangement site.Params.modules.bookshop.title.arrangement) | default "above" -}}
{{- $headingStyle := (or $args.headingStyle site.Params.modules.bookshop.title.headingStyle) | default "display" -}}
{{- $contentStyle := (or $args.contentStyle site.Params.modules.bookshop.title.contentStyle) | default "lead text-muted" -}}
{{- $preheading := $args.heading.preheading }}
{{- $title := $args.heading.title }}
{{- $width := $args.heading.width | default 12 -}}
{{ if and (not $preheading) $args.section }}
{{ $preheading = page.CurrentSection.Name }}
{{ end }}
{{ if and (not $preheading) $args.useSection }}{{ $preheading = page.CurrentSection.Name }}{{ end }}
{{ if site.Params.main.titleCase }}
{{ $preheading = title $preheading }}
@@ -35,41 +34,76 @@
{{ define "_partials/assets/section-title-header.html" }}
{{ $headingStyle := .headingStyle }}
{{ if (index . "use-title") }}
{{ $title := .title | page.RenderString }}
{{ $label := trim (replaceRE "\r\n?|\n" " " ($title | plainify)) " " }}
<h1 id="{{ anchorize .title }}" {{ if ne $title $label }}aria-label="{{ $label }}"{{ end -}}
class="{{ $headingStyle }}-{{ .size }}{{ with .color }} text-{{ . }}{{ end }} pt-1">{{ .title | page.RenderString | safeHTML }}</h1>
class="{{ $headingStyle }}-{{ .size }}{{ with .color }} text-{{ . }}{{ end }} pt-1">
{{ .title | page.RenderString | safeHTML }}
</h1>
{{ else }}
<div id="{{ anchorize .title }}" class="{{ $headingStyle }}-{{ .size }}{{ with .color }} text-{{ . }}{{ end }} pt-1">{{ .title | page.RenderString | safeHTML }}</div>
<div id="{{ anchorize .title }}" class="{{ $headingStyle }}-{{ .size }}{{ with .color }} text-{{ . }}{{ end }} pt-1">
{{ .title | page.RenderString | safeHTML }}
</div>
{{ end }}
{{ end }}
{{ $header := "" }}
{{ if $title }}
{{ $header = partial "assets/section-title-header.html" (dict
"use-title" $args.useTitle
"title" $title
"headingStyle" $headingStyle
"color" $args.color
"size" $size
) }}
{{ end }}
{{ $links := "" }}
{{ if $args.links }}
{{ $links = partial "assets/links.html" (dict
"page" $args.page
"links" $args.links
"align" $args.heading.align
"justify" $args.justify
"link-type" $args.linkType
) }}
{{ end }}
{{ $imgArgs := dict
"page" page
"icon" $args.icon
"image" $args.image
"anchor" $args.anchor
"mode" true
"sizes" "20vw"
"title" (T "heroImage")
"mode" $args.mode
}}
<!-- Main code -->
<div class="text-{{ $args.heading.align }}{{ with $args.class }} {{ . }}{{ end }} col col-12 col-md-{{ $args.heading.width }}">
<div class="text-{{ $args.heading.align }}{{ with $args.class }} {{ . }}{{ end }}{{ if lt $width 12 }} col-12 col-md-{{ $width }}{{ end }}">
{{ if and $preheading (eq $arrangement "first") }}
<div class="container-fluid">
<div class="row">
<div class="col-12 col-{{ $breakpoint.prev }}-12 col-{{ $breakpoint.next }}-2 p-0">
{{ with $preheading }}<p class="preheading {{ if ne $args.color "body" }}text-{{ $args.color }}{{ else }}text-primary{{ end }}">{{ . | page.RenderString | safeHTML }}</p>{{ end }}
{{ with $preheading }}
<p class="preheading {{ if ne $args.color "body" }}text-{{ $args.color }}{{ else }}text-primary{{ end }}">
{{ . | page.RenderString | safeHTML }}
</p>
{{ end }}
</div>
<div class="col-12 col-{{ $breakpoint.prev }}-8 col-{{ $breakpoint.current }}-9 col-{{ $breakpoint.next }}-8 p-0">
{{ with $title }}{{ partial "assets/section-title-header.html" (dict "use-title" $args.useTitle "title" . "headingStyle" $headingStyle "color" $args.color "size" $size) }}{{ end }}
{{ with $args.heading.content }}<div class="{{ $bodyStyle }} pt-4">{{ . | page.RenderString | safeHTML }}</div>{{ end }}
{{ if .links }}{{ partial "assets/links.html" (dict "page" $args.page "links" $args.links "align" $args.heading.align "justify" $args.justify "link-type" $args.type) }}{{ end }}
{{ $header }}
{{ with $args.heading.content }}
<div class="{{ $contentStyle }} pt-4">{{ . | page.RenderString | safeHTML }}</div>
{{ end }}
{{ $links }}
</div>
<div class="col-12 col-{{ $breakpoint.prev }}-4 col-{{ $breakpoint.current }}-3 col-{{ $breakpoint.next }}-2 p-0 ps-{{ $breakpoint.prev }}-4">
{{ partial "assets/featured-illustration.html" (dict
"page" page
"icon" $args.icon
"image" $args.image
"anchor" $args.anchor
"mode" true
"sizes" "20vw"
"wrapper" (printf "col-4 col-%s-12 mx-auto pt-4 pt-%s-0" $breakpoint.prev $breakpoint.prev)
"title" (T "heroImage")
"mode" $args.mode
) }}
{{ $wrapper := (printf "col-4 col-%s-12 mx-auto pt-4 pt-%s-0" $breakpoint.prev $breakpoint.prev) }}
{{ partial "assets/featured-illustration.html" (merge $imgArgs (dict "wrapper" $wrapper)) }}
</div>
</div>
</div>
@@ -79,31 +113,29 @@
<div class="container-fluid">
<div class="row p-0">
<div class="col-12 col-{{ $breakpoint.current }}-10 p-0">
{{ with $preheading }}<p class="preheading {{ if ne $args.color "body" }}text-{{ $args.color }}{{ else }}text-primary{{ end }}">{{ . | page.RenderString | safeHTML }}</p>{{ end }}
{{ with $title }}{{ partial "assets/section-title-header.html" (dict "use-title" $args.useTitle "title" . "headingStyle" $headingStyle "color" $args.color "size" $size) }}{{ end }}
{{ with $args.heading.content }}<div class="{{ $bodyStyle }} pt-4">{{ . | page.RenderString | safeHTML }}</div>{{ end }}
{{ if .links }}{{ partial "assets/links.html" (dict "page" $args.page "links" $args.links "align" $args.heading.align "justify" $args.justify "link-type" $args.type) }}{{ end }}
{{ with $preheading }}
<p class="preheading {{ if ne $args.color "body" }}text-{{ $args.color }}{{ else }}text-primary{{ end }}">
{{ . | page.RenderString | safeHTML }}
</p>
{{ end }}
{{ $header }}
{{ with $args.heading.content }}<div class="{{ $contentStyle }} pt-4">{{ . | page.RenderString | safeHTML }}</div>{{ end }}
{{ $links }}
</div>
<div class="col-12 col-{{ $breakpoint.current }}-2 p-0 pt-2 text-center">
{{ partial "assets/featured-illustration.html" (dict
"page" page
"icon" $args.icon
"image" $args.image
"anchor" $args.anchor
"mode" true
"ratio" $args.ratio
"sizes" "20vw"
"wrapper" "mx-auto"
"title" (T "heroImage")
"mode" $args.mode
) }}
{{ $wrapper := (printf "col-4 col-%s-12 mx-auto pt-4 pt-%s-0" $breakpoint.prev $breakpoint.prev) }}
{{ partial "assets/featured-illustration.html" (merge $imgArgs (dict "ratio" $args.ratio "wrapper" "mx-auto")) }}
</div>
</div>
</div>
{{ else }}
{{ with $preheading }}<p class="preheading {{ if ne $args.color "body" }}text-{{ $args.color }}{{ else }}text-primary{{ end }}">{{ . | page.RenderString | safeHTML }}</p>{{ end }}
{{ with $title }}{{ partial "assets/section-title-header.html" (dict "use-title" $args.useTitle "title" . "headingStyle" $headingStyle "color" $args.color "size" $size) }}{{ end }}
{{ with $args.heading.content }}<div class="{{ $bodyStyle }} pt-4">{{ . | page.RenderString | safeHTML }}</div>{{ end }}
{{ if $args.links }}{{ partial "assets/links.html" (dict "page" $args.page "links" $args.links "align" $args.heading.align "justify" $args.justify "link-type" $args.type) }}{{ end }}
{{ with $preheading }}
<p class="preheading {{ if ne $args.color "body" }}text-{{ $args.color }}{{ else }}text-primary{{ end }}">
{{ . | page.RenderString | safeHTML }}
</p>
{{ end }}
{{ $header }}
{{ with $args.heading.content }}<div class="{{ $contentStyle }} pt-4">{{ . | page.RenderString | safeHTML }}</div>{{ end }}
{{ $links }}
{{ end }}
</div>

View File

@@ -102,7 +102,7 @@
"use-title" $args.useTitle
"size" $args.size
"links" $args.links
"type" (or $args.linkType $args.type)
"link-type" (or $args.linkType $args.type)
"class" "pb-4"
"arrangement" $arrangement
) }}

72
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@gethinode/hinode",
"version": "1.0.0-alpha7",
"version": "1.0.0-alpha8",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@gethinode/hinode",
"version": "1.0.0-alpha7",
"version": "1.0.0-alpha8",
"license": "MIT",
"dependencies": {
"@fullhuman/postcss-purgecss": "^7.0.2",
@@ -19,7 +19,7 @@
"devDependencies": {
"@gethinode/netlify-plugin-dartsass": "^0.3.0",
"cpy-cli": "^5.0.0",
"eslint": "^9.28.0",
"eslint": "^9.29.0",
"markdownlint-cli2": "^0.18.1",
"neostandard": "^0.12.1",
"netlify-plugin-hugo-cache-resources": "^0.2.1",
@@ -329,9 +329,9 @@
}
},
"node_modules/@eslint/config-array": {
"version": "0.20.0",
"resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz",
"integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==",
"version": "0.20.1",
"resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.1.tgz",
"integrity": "sha512-OL0RJzC/CBzli0DrrR31qzj6d6i6Mm3HByuhflhl4LOBiWxN+3i6/t/ZQQNii4tjksXi8r2CRW1wMpWA2ULUEw==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@@ -391,9 +391,9 @@
}
},
"node_modules/@eslint/js": {
"version": "9.28.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.28.0.tgz",
"integrity": "sha512-fnqSjGWd/CoIp4EXIxWVK/sHA6DOHN4+8Ix2cX5ycOY7LG0UY8nHCU5pIp2eaE1Mc7Qd8kHspYNzYXT2ojPLzg==",
"version": "9.29.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.29.0.tgz",
"integrity": "sha512-3PIF4cBw/y+1u2EazflInpV+lYsSG0aByVIQzAgb1m1MhHFSbqTyNqtBKHgWf/9Ykud+DhILS9EGkmekVhbKoQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1187,10 +1187,11 @@
}
},
"node_modules/acorn": {
"version": "8.14.0",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz",
"integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==",
"version": "8.15.0",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz",
"integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==",
"dev": true,
"license": "MIT",
"bin": {
"acorn": "bin/acorn"
},
@@ -2874,19 +2875,19 @@
}
},
"node_modules/eslint": {
"version": "9.28.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.28.0.tgz",
"integrity": "sha512-ocgh41VhRlf9+fVpe7QKzwLj9c92fDiqOj8Y3Sd4/ZmVA4Btx4PlUYPq4pp9JDyupkf1upbEXecxL2mwNV7jPQ==",
"version": "9.29.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.29.0.tgz",
"integrity": "sha512-GsGizj2Y1rCWDu6XoEekL3RLilp0voSePurjZIkxL3wlm5o5EC9VpgaP7lrCvjnkuLvzFBQWB3vWB3K5KQTveQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.12.1",
"@eslint/config-array": "^0.20.0",
"@eslint/config-array": "^0.20.1",
"@eslint/config-helpers": "^0.2.1",
"@eslint/core": "^0.14.0",
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "9.28.0",
"@eslint/js": "9.29.0",
"@eslint/plugin-kit": "^0.3.1",
"@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
@@ -2898,9 +2899,9 @@
"cross-spawn": "^7.0.6",
"debug": "^4.3.2",
"escape-string-regexp": "^4.0.0",
"eslint-scope": "^8.3.0",
"eslint-visitor-keys": "^4.2.0",
"espree": "^10.3.0",
"eslint-scope": "^8.4.0",
"eslint-visitor-keys": "^4.2.1",
"espree": "^10.4.0",
"esquery": "^1.5.0",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
@@ -3230,9 +3231,9 @@
}
},
"node_modules/eslint-scope": {
"version": "8.3.0",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz",
"integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==",
"version": "8.4.0",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz",
"integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
@@ -3259,10 +3260,11 @@
}
},
"node_modules/eslint/node_modules/eslint-visitor-keys": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz",
"integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==",
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz",
"integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==",
"dev": true,
"license": "Apache-2.0",
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
@@ -3271,14 +3273,15 @@
}
},
"node_modules/espree": {
"version": "10.3.0",
"resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz",
"integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==",
"version": "10.4.0",
"resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz",
"integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
"acorn": "^8.14.0",
"acorn": "^8.15.0",
"acorn-jsx": "^5.3.2",
"eslint-visitor-keys": "^4.2.0"
"eslint-visitor-keys": "^4.2.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3288,10 +3291,11 @@
}
},
"node_modules/espree/node_modules/eslint-visitor-keys": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz",
"integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==",
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz",
"integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==",
"dev": true,
"license": "Apache-2.0",
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},

View File

@@ -1,6 +1,6 @@
{
"name": "@gethinode/hinode",
"version": "1.0.0-alpha7",
"version": "1.0.0-alpha8",
"description": "Hinode is a clean documentation and blog theme for Hugo, an open-source static site generator",
"keywords": [
"hugo",
@@ -79,7 +79,7 @@
"devDependencies": {
"@gethinode/netlify-plugin-dartsass": "^0.3.0",
"cpy-cli": "^5.0.0",
"eslint": "^9.28.0",
"eslint": "^9.29.0",
"markdownlint-cli2": "^0.18.1",
"neostandard": "^0.12.1",
"netlify-plugin-hugo-cache-resources": "^0.2.1",