mirror of
https://git.sr.ht/~seirdy/seirdy.one
synced 2024-11-27 14:12:09 +00:00
2badbe2601
This gives files much smaller fingerprints, and supports caching.
114 lines
4 KiB
HTML
114 lines
4 KiB
HTML
{{ $light_svg := resources.GetMatch (printf "/p/%s.svg" (.Get "name")) -}}
|
|
{{ $light_png := resources.GetMatch (printf "/p/%s.png" (.Get "name")) -}}
|
|
{{ $light_jpg := resources.GetMatch (printf "/p/%s.jpg" (.Get "name")) -}}
|
|
{{ $light_webp := resources.GetMatch (printf "/p/%s.webp" (.Get "name")) -}}
|
|
{{ $light_avif := resources.GetMatch (printf "/p/%s.avif" (.Get "name")) -}}
|
|
{{ $light_jxl := resources.GetMatch (printf "/p/%s.jxl" (.Get "name")) -}}
|
|
{{ $dark_svg := resources.GetMatch (printf "/p/%s_dark.svg" (.Get "name")) -}}
|
|
{{ $dark_png := resources.GetMatch (printf "/p/%s_dark.png" (.Get "name")) -}}
|
|
{{ $dark_jpg := resources.GetMatch (printf "/p/%s_dark.jpg" (.Get "name")) -}}
|
|
{{ $dark_webp := resources.GetMatch (printf "/p/%s_dark.webp" (.Get "name")) -}}
|
|
{{ $dark_avif := resources.GetMatch (printf "/p/%s_dark.avif" (.Get "name")) -}}
|
|
{{ $dark_jxl := resources.GetMatch (printf "/p/%s_dark.jxl" (.Get "name")) -}}
|
|
|
|
{{- $orig_img := $light_png -}}
|
|
{{- $orig_img_type := "image/png" -}}
|
|
{{- $orig_img_dark := $dark_png -}}
|
|
{{- $orig_img_dark_type := "image/png" -}}
|
|
{{- with $light_jpg -}}
|
|
{{- $orig_img_type = "image/jpeg" -}}
|
|
{{- $orig_img = $light_jpg -}}
|
|
{{- end -}}
|
|
{{- with $dark_jpg -}}
|
|
{{- $orig_img_dark_type = "image/jpeg" -}}
|
|
{{- $orig_img_dark = $dark_jpg -}}
|
|
{{- end -}}
|
|
{{- $img_width := $orig_img.Width -}}
|
|
{{- $img_height := $orig_img.Height -}}
|
|
{{- with (.Get "sf") -}}
|
|
{{- $img_width = (mul $img_width . | math.Round) -}}
|
|
{{- $img_height = (mul $img_height . | math.Round ) -}}
|
|
{{- end -}}
|
|
<picture>
|
|
{{- if not (in site.BaseURL ".onion") -}}
|
|
{{ with $dark_svg -}}
|
|
{{ $dark_svg_src := partial "cache-bust.html" . -}}
|
|
<source
|
|
srcset="{{ $dark_svg_src.RelPermalink }}"
|
|
type="image/svg+xml"
|
|
media="screen and (prefers-color-scheme: dark)" />
|
|
{{ end -}}
|
|
{{ end -}}
|
|
{{ with $dark_jxl -}}
|
|
{{ $dark_jxl_src := partial "cache-bust.html" . -}}
|
|
<source
|
|
srcset="{{ $dark_jxl_src.RelPermalink }}"
|
|
type="image/jxl"
|
|
media="screen and (prefers-color-scheme: dark)" />
|
|
{{ end -}}
|
|
{{ with $dark_avif -}}
|
|
{{ $dark_avif_src := partial "cache-bust.html" . -}}
|
|
<source
|
|
srcset="{{ $dark_avif_src.RelPermalink }}"
|
|
type="image/avif"
|
|
media="screen and (prefers-color-scheme: dark)" />
|
|
{{ end -}}
|
|
{{ with $dark_webp -}}
|
|
{{ $dark_webp_src := partial "cache-bust.html" . -}}
|
|
<source
|
|
srcset="{{ $dark_webp_src.RelPermalink }}"
|
|
type="image/webp"
|
|
media="screen and (prefers-color-scheme: dark)" />
|
|
{{ end -}}
|
|
{{ with $orig_img_dark -}}
|
|
{{ $orig_dark_src := partial "cache-bust.html" . -}}
|
|
<source
|
|
srcset="{{ $orig_dark_src.RelPermalink }}"
|
|
type="{{ $orig_img_dark_type }}"
|
|
media="screen and (prefers-color-scheme: dark)" />
|
|
{{ end -}}
|
|
{{- if not (in site.BaseURL ".onion") -}}
|
|
{{ with $light_svg -}}
|
|
{{ $light_svg_src := partial "cache-bust.html" . -}}
|
|
<source
|
|
srcset="{{ $light_svg_src.RelPermalink }}"
|
|
type="image/svg+xml" />
|
|
{{ end -}}
|
|
{{ end -}}
|
|
{{ with $light_jxl -}}
|
|
{{ $light_jxl_src := partial "cache-bust.html" . -}}
|
|
<source
|
|
srcset="{{ $light_jxl_src.RelPermalink }}"
|
|
type="image/jxl" />
|
|
{{ end -}}
|
|
{{ with $light_avif -}}
|
|
{{ $light_avif_src := partial "cache-bust.html" . -}}
|
|
<source
|
|
srcset="{{ $light_avif_src.RelPermalink }}"
|
|
type="image/avif" />
|
|
{{ end -}}
|
|
{{ with $light_webp -}}
|
|
{{ $light_webp_src := partial "cache-bust.html" . -}}
|
|
<source
|
|
srcset="{{ $light_webp_src.RelPermalink }}"
|
|
type="image/webp" />
|
|
{{ end -}}
|
|
{{ $orig_src := partial "cache-bust.html" $orig_img -}}
|
|
<source
|
|
srcset="{{ $orig_src.RelPermalink }}"
|
|
type="{{ $orig_img_type }}" />
|
|
<img{{ with .Get "class" }} class="{{ . }}"{{ end }}
|
|
width="{{ $img_width }}" height="{{ $img_height }}"
|
|
src="{{ $orig_src.Permalink }}" alt='{{ .Get "alt" }}'
|
|
{{ with .Parent -}}
|
|
{{ if eq .Name "transcribed-image-figure" -}}
|
|
{{ with .Get "id" -}}
|
|
aria-describedby="transcript-{{ . }}"
|
|
{{ end -}}
|
|
{{ end -}}
|
|
{{ if or (eq .Name "image-figure") (eq .Name "transcribed-image-figure") -}}
|
|
itemprop="image contentUrl url"
|
|
{{ end -}}
|
|
{{- end -}}
|
|
decoding="async" />
|
|
</picture>{{- /* Strip trailing newline: https://github.com/gohugoio/hugo/issues/1753 */ -}}
|