You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
2.1 KiB
HTML

{%- set colocated_path = page.colocated_path | default(value="") -%}
{%- set lazy_loading = lazy_loading | default(value=true) -%}
{%- set inline = inline | default(value=false) -%}
{%- set light_class_list = "img-light" -%}
{%- set dark_class_list = "img-dark" -%}
{%- if inline -%}
{%- set light_class_list = light_class_list ~ " inline" -%}
{%- set dark_class_list = dark_class_list ~ " inline" -%}
{%- endif -%}
{# Handling for light mode image #}
{%- if light_src is starting_with("http") -%}
{%- set light_image_url = light_src -%}
{%- else -%}
{%- set relative_light_path = colocated_path ~ light_src -%}
{%- set light_meta = get_image_metadata(path=relative_light_path, allow_missing=true) -%}
{%- if not light_meta -%}
{%- set light_image_url = get_url(path=light_src) -%}
{%- else -%}
{%- set light_image_url = get_url(path=relative_light_path) -%}
{%- endif -%}
{%- endif -%}
{# Handling for dark mode image #}
{%- if dark_src is starting_with("http") -%}
{%- set dark_image_url = dark_src -%}
{%- else -%}
{%- set relative_dark_path = colocated_path ~ dark_src -%}
{%- set dark_meta = get_image_metadata(path=relative_dark_path, allow_missing=true) -%}
{%- if not dark_meta -%}
{%- set dark_image_url = get_url(path=dark_src) -%}
{%- else -%}
{%- set dark_image_url = get_url(path=relative_dark_path) -%}
{%- endif -%}
{%- endif -%}
{%- if full_width -%}
<div class="full-width">
{%- endif -%}
<img class="{{ light_class_list }}" src="{{ light_image_url }}"{% if lazy_loading %} loading="lazy"{% endif %}{% if alt %} alt="{{ alt }}"{% endif %}{% if light_meta.width %} width="{{ light_meta.width }}"{% endif %}{% if light_meta.height %} height="{{ light_meta.height }}" {% endif %}>
<img class="{{ dark_class_list }}" src="{{ dark_image_url }}"{% if lazy_loading %} loading="lazy"{% endif %}{% if alt %} alt="{{ alt }}"{% endif %}{% if dark_meta.width %} width="{{ dark_meta.width }}"{% endif %}{% if dark_meta.height %} height="{{ dark_meta.height }}" {% endif %}>
{%- if full_width -%}
</div>
{%- endif -%}