Files
hugo-book/layouts/_shortcodes/columns.html
2026-05-16 23:47:34 +02:00

40 lines
1.3 KiB
HTML

{{- $ratio := (split (.Get "ratio") ":") -}}
{{- $id := partial "docs/text/shortcode-id" . -}}
{{- if strings.Contains .InnerDeindent "<--->" -}}
{{- warnf "{{<columns>}} shortcode separator '<--->' is deprecated, use markdown list instead." -}}
{{- $attributes := partial "docs/text/mapper" (dict
"attributes" (cond .IsNamedParams .Params dict)
"merge" (dict
"class" (slice "book-columns" "flex" "flex-wrap")
"id" (printf "book-columns-%d" $id)
)
) -}}
<div {{ partial "docs/html-attrs" $attributes | safeHTMLAttr }}>
{{- range $index, $content := split .InnerDeindent "<--->" -}}
{{- $grow := default 1 (index $ratio $index) -}}
<div class="flex-even markdown-inner" style="flex-grow: {{ $grow }};">
{{- $content | safeHTML -}}
</div>
{{- end -}}
</div>
{{- else -}}
{{- if .Get "ratio" -}}
<style>{{- range $index, $grow := $ratio -}}
#book-columns-{{ $id }}>ul>li:nth-child({{ $index | add 1 }}) {
flex-grow: {{ default 1 $grow }};
}
{{ end -}}
</style>
{{- end -}}
{{- $attributes := partial "docs/text/mapper" (dict
"attributes" (cond .IsNamedParams .Params dict)
"merge" (dict
"class" (slice "book-columns")
"id" (printf "book-columns-%d" $id)
)
) -}}
<div {{ partial "docs/html-attrs" $attributes | safeHTMLAttr }}>
{{ .Inner | safeHTML -}}
</div>
{{- end -}}