mirror of
https://github.com/hugo-fixit/FixIt.git
synced 2026-08-24 07:18:57 +00:00
e6625fb118
https://gohugo.io/methods/site/language/ https://gohugo.io/methods/page/language/ https://gohugo.io/configuration/languages/
37 lines
1.8 KiB
HTML
37 lines
1.8 KiB
HTML
{{- /*
|
|
Version badge shortcode.
|
|
Renders an inline SVG version badge linking to the repository release/tag.
|
|
|
|
@param {String} 0 - The version string (e.g., "v1.0.0")
|
|
@param {String} [1="new"] - The type: "new", "changed", "deleted", "deprecated"
|
|
@param {String} [2] - Custom URL override (defaults to repo_version.url)
|
|
@param {String} [3] - Custom repo name override (defaults to repo_version.name)
|
|
|
|
@example
|
|
{{< version "v1.0.0" >}}
|
|
{{< version "v0.4.5" "deprecated" >}}
|
|
*/ -}}
|
|
{{- $rvc := dict "Page" .Page "Key" "repo_version" | partial "function/param.html" | default dict -}}
|
|
{{- $version := .Get 0 -}}
|
|
{{- $type := .Get 1 | default "new" | lower -}}
|
|
{{- $label := T (printf "version.%v" $type) | default (upper $type) -}}
|
|
{{- $isCJK := partial "function/is-cjk.html" . -}}
|
|
{{- $url := printf "%v%v" (.Get 2 | default $rvc.url) $version -}}
|
|
{{- $colorMap := dict
|
|
"new" "00b1ff"
|
|
"changed" "81bd65"
|
|
"deleted" "ff5252"
|
|
"deprecated" "ff9101"
|
|
-}}
|
|
{{- $color := index $colorMap $type | default (index $colorMap "new") -}}
|
|
{{- $repoName := .Get 3 | default $rvc.name -}}
|
|
{{- $pathTemplate := cond hugo.IsMultilingual (printf "images/version/%%v-%%v.%v.svg" .Page.Language.Name) "images/version/%v-%v.svg" -}}
|
|
{{- $path := printf $pathTemplate $version $type -}}
|
|
{{- $resource := resources.Get "images/version.template.svg" -}}
|
|
{{- $resource = $resource | resources.ExecuteAsTemplate $path (dict "version" $version "label" $label "color" $color "isCJK" $isCJK) | minify -}}
|
|
{{- $alt := printf "%v %v | %v" $repoName $version $label -}}
|
|
<a href="{{ $url }}" rel="external" target="_blank" class="version-link whitespace-nowrap">
|
|
{{- dict "Src" $resource.RelPermalink "Alt" $alt "Class" "version h-[1.25em] align-text-bottom" | partial "plugin/image.html" -}}
|
|
</a>
|
|
{{- /* EOF */ -}}
|