{{- $dest := .Destination -}} {{- $url := urls.Parse $dest -}} {{- if and $dest (hasPrefix $dest "/") -}} {{- with or (.PageInner.GetPage $url.Path) (.PageInner.Resources.Get $url.Path) (resources.Get $url.Path) -}} {{- $query := cond $url.RawQuery (printf "?%s" $url.RawQuery) "" -}} {{- $fragment := cond $url.Fragment (printf "#%s" $url.Fragment) "" -}} {{- $dest = printf "%s%s%s" .RelPermalink $query $fragment -}} {{- else -}} {{- $dest = (relURL (strings.TrimPrefix "/" $dest)) -}} {{- end -}} {{- end -}} {{- with . -}} {{- $isExternal := strings.HasPrefix .Destination "http" -}} {{- .Text | safeHTML -}} {{- if and .Page.Site.Params.externalLinkDecoration $isExternal -}} {{- partial "utils/icon.html" (dict "name" "arrow-up-right" "attributes" `class="hx:inline hx:rtl:rotate-270 hx:align-baseline" height="1em"`) -}} {{- end -}} {{- end -}}