Files
docker-docs/layouts/_default/_markup/render-link.html
2024-06-13 12:56:42 +02:00

34 lines
1.0 KiB
HTML

{{ $url := .Destination }}
{{- if (strings.HasPrefix $url "http") -}}
{{/* external link, add icon */}}
<a
class="link"
href="{{ $url | safeURL }}"
target="_blank"
rel="noopener">
{{- .Text | safeHTML -}}
<span class="pl-1 icon-svg icon-sm">
{{- partialCached "icon" "open_in_new" "open_in_new" -}}
</span></a>
{{- else if (strings.HasPrefix $url "/") -}}
{{ if (strings.HasSuffix (urls.Parse $url).Path ".md") }}
{{/* abs path to markdown file, use ref */}}
{{ $url = (ref .Page $url) }}
{{ end }}
<a class="link" href="{{ $url }}">{{ .Text | safeHTML }}</a>
{{- else -}}
{{/* check if the file links to index.md */}}
{{- if (strings.FindRE `([^_]|^)index.md` $url 1) -}}
<a
class="link"
href="{{ ref .Page (strings.Replace $url "index.md" "_index.md") }}"
>{{ .Text | safeHTML }}</a
>
{{- else -}}
{{/* relative link, use ref */}}
<a class="link" href="{{ ref .Page $url }}"
>{{ .Text | safeHTML }}</a
>
{{- end -}}
{{- end -}}