From c2d72e09747a2a4abe9602e1ba49a1b4649c9d3c Mon Sep 17 00:00:00 2001
From: Jieiku
Date: Fri, 14 Aug 2026 15:10:15 -0700
Subject: Update for Zola 0.23.3
---
templates/components/components.html | 504 +++++++++++++++++++++++++++++++++++
1 file changed, 504 insertions(+)
create mode 100644 templates/components/components.html
(limited to 'templates/components/components.html')
diff --git a/templates/components/components.html b/templates/components/components.html
new file mode 100644
index 0000000..7ce9ef3
--- /dev/null
+++ b/templates/components/components.html
@@ -0,0 +1,504 @@
+{# Former macro components #}
+
+{% component translate(key: string, i18n, default="") %}
+{{- i18n[key] | default(value=default) | safe -}}
+{% endcomponent translate %}
+
+{%- component page_listing(page, config) %}
+{%- set uglyurls = config.extra.uglyurls | default(value=false) -%}
+{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true %}{%- endif %}{%- endif %}
+
+{%- endcomponent page_listing %}
+
+{%- component series_link(inner, page, config) %}
+{%- set uglyurls = config.extra.uglyurls | default(value=false) -%}
+{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true %}{%- endif %}{%- endif %}
+ {%- if inner.content == page.content %}
+ {{ inner.title }}
+ {%- else %}
+ {{ inner.title }}
+ {%- endif %}
+{%- endcomponent series_link %}
+
+{%- component title_post(page, config) %}
+{%- set uglyurls = config.extra.uglyurls | default(value=false) %}
+{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true %}{%- endif %}{%- endif %}
+
+{%- endcomponent title_post %}
+
+{%- component meta_post(page, config) -%}
+{#- Load current language i18n data from .toml files in user's '/i18n' folder, use theme as fallback. -#}
+{%- set i18n = load_data(path="i18n/" ~ page.lang ~ '.toml', required=false) -%}
+{%- if not i18n -%}{%- set i18n = load_data(path="themes/abridge/i18n/" ~ page.lang ~ ".toml", required=false) -%}{%- endif -%}
+
+{%- set uglyurls = config.extra.uglyurls | default(value=false) -%}
+{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true -%}{%- endif %}{%- endif %}
+
+{%- endcomponent meta_post %}
+
+{%- component title_index(page, config) %}
+{%- set uglyurls = config.extra.uglyurls | default(value=false) -%}
+{%- if config.extra.search_library -%}{%- if config.extra.search_library == "offline" -%}{%- set uglyurls = true -%}{%- endif -%}{%- endif -%}
+ {% if config.extra.title_size_index %}{% endif %}
+{%- endcomponent title_index -%}
+
+{%- component meta_index(page, config) %}
+{#- Load current language i18n data from .toml files in user's '/i18n' folder, use theme as fallback. -#}
+{%- set i18n = load_data(path="i18n/" ~ page.lang ~ '.toml', required=false) -%}
+{%- if not i18n %}{%- set i18n = load_data(path="themes/abridge/i18n/" ~ page.lang ~ ".toml", required=false) %}{%- endif %}
+{%- set uglyurls = config.extra.uglyurls | default(value=false) -%}
+{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true -%}{%- endif -%}{%- endif -%}
+
+{%- endcomponent meta_index -%}
+
+{%- component footer(page, config) %}
+{%- set uglyurls = config.extra.uglyurls | default(value=false) -%}
+{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true %}{%- endif %}{%- endif %}
+ {#- prev/next content page nextprev title pagination -#}
+ {%- if not config.extra.hide_page_nextprev_titles | default(value=false) %}
+ {%- if page.lower or page.higher %}
+
+ {%- endif %}
+ {%- endif %}
+{%- endcomponent footer %}
+
+{% component pagination(paginator, config) %}
+{%- set uglyurls = config.extra.uglyurls | default(value=false) %}
+{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{% set uglyurls = true %}{% endif %}{% endif %}
+ {%- if paginator.number_pagers > 1 %}
+ {%- if paginator.number_pagers <= 5 %} {# 5 or less pager is simple, just display all 5 #}
+ {%- set start = 1 %}
+ {%- set end = paginator.number_pagers %}
+ {%- endif %}
+
+ {%- if paginator.number_pagers > 5 %}
+
+ {%- if paginator.current_index >= 3 %} {# Check if the first number will be 1 or not #}
+ {%- set start = paginator.current_index - 2 %} {# Set the start number #}
+ {%- if paginator.number_pagers - paginator.current_index < 2 %} {# the last two pages your no longer centered with equal pages start and end #}
+ {%- set difference = paginator.number_pagers - paginator.current_index %}
+ {%- set compensation = 1 - difference %}
+ {%- set start = paginator.current_index - 3 - compensation %} {# however many pages are missing on the end, add offset to start #}
+ {%- endif %}
+ {%- else %}
+ {%- set start = 1 %}
+ {%- endif %}
+
+ {%- if paginator.number_pagers >= paginator.current_index + 2 %} {# Check if the last page is beyond our range #}
+ {%- set end = paginator.current_index + 2 %} {# End is beyond our range so we can safely set it to our range #}
+ {%- if paginator.current_index <= 3 %} {# check offset start, if on page 1 or 2 then set the end to page 5 #}
+ {%- set end = 5 %}
+ {%- endif %}
+ {%- else %}
+ {%- set end = paginator.number_pagers %}
+ {%- endif %}
+ {%- endif %}
+
+ {%- endif %}
+{% endcomponent pagination %}
+
+{% component numpagination(paginator, config) %}
+{%- set uglyurls = config.extra.uglyurls | default(value=false) %}
+{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{% set uglyurls = true %}{% endif %}{% endif %}
+ {%- if paginator.number_pagers > 1 %}
+ {%- if paginator.number_pagers <= 5 %} {# 5 or less pager is simple, just display all 5 #}
+ {%- set start = 1 %}
+ {%- set end = paginator.number_pagers %}
+ {%- endif %}
+
+ {%- if paginator.number_pagers > 5 %}
+
+ {%- if paginator.current_index >= 3 %} {# Check if the first number will be 1 or not #}
+ {%- set start = paginator.current_index - 2 %} {# Set the start number #}
+ {%- if paginator.number_pagers - paginator.current_index < 2 %} {# the last two pages your no longer centered with equal pages start and end #}
+ {%- set difference = paginator.number_pagers - paginator.current_index %}
+ {%- set compensation = 1 - difference %}
+ {%- set start = paginator.current_index - 3 - compensation %} {# however many pages are missing on the end, add offset to start #}
+ {%- endif %}
+ {%- else %}
+ {%- set start = 1 %}
+ {%- endif %}
+
+ {%- if paginator.number_pagers >= paginator.current_index + 2 %} {# Check if the last page is beyond our range #}
+ {%- set end = paginator.current_index + 2 %} {# End is beyond our range so we can safely set it to our range #}
+ {%- if paginator.current_index <= 3 %} {# check offset start, if on page 1 or 2 then set the end to page 5 #}
+ {%- set end = 5 %}
+ {%- endif %}
+ {%- else %}
+ {%- set end = paginator.number_pagers %}
+ {%- endif %}
+ {%- endif %}
+
+ {%- endif %}
+{% endcomponent numpagination %}
+
+{% component seo( config, title="", title_addition="", description="", type="website", is_home=false, is_404=false, is_page=false, page_images="", page_section="", created_time="2023-05-15T07:07:00-07:00", updated_time="2023-05-15T07:07:00-07:00", page="" ) -%}
+{#- Load current language i18n data from .toml files in user's '/i18n' folder, use theme as fallback. -#}
+{%- set _lang = page.lang if page else config.default_language -%}
+{%- set i18n = load_data(path="i18n/" ~ _lang ~ '.toml', required=false) -%}
+{%- if not i18n -%}{%- set i18n = load_data(path="themes/abridge/i18n/" ~ _lang ~ ".toml", required=false) -%}{%- endif -%}
+{%- set lang_locale %}{{}}{% endset -%}
+{%- if is_404 %}
+
+{%- else %}
+
+
+
+{%- endif %}
+
+{%- if current_url %}
+ {%- set page_url = current_url %}
+{%- else %}
+ {%- set page_url = get_url(path="404.html", trailing_slash=true) %}
+{%- endif %}
+ {{ title ~ title_addition }}
+
+{%- if config.extra?.author %}
+
+{%- endif %}
+{%- if config.extra?.facebook_publisher %}
+
+{%- endif %}
+
+{%- if config.extra?.facebook_author %}
+
+{%- endif %}
+{%- if page?.description %}
+
+{%- else %}
+
+{%- endif %}
+
+{%- if page?.extra?.keywords and config.extra?.keywords %}
+
+{%- elif page?.extra?.keywords %}
+
+{%- elif config.extra?.keywords %}
+
+{%- endif %}
+
+{#- Extra SEO START #}
+{%- if config.extra?.seo | default(value=true) %}
+{%- if not is_404 %}
+
+{%- if config.extra?.google %}
+
+{%- endif %}
+
+{%- if config.extra?.bing %}
+
+{%- endif %}
+
+
+
+{%- if page?.description %}
+
+
+{%- else %}
+
+
+{%- endif %}
+
+{%- if page?.title %}
+
+
+{%- else %}
+
+
+{%- endif %}
+
+
+{#- SEO MEDIA START #}
+{%- if page?.extra?.thumbnail %}
+
+
+
+
+{%- elif page?.extra?.static_thumbnail %}
+
+ {%- if page?.extra?.static_thumbnail is matching(pat="^http[s]?://") %}
+
+
+ {%- else %}
+
+
+ {%- endif %}
+
+{%- elif config.extra?.banner %}
+
+
+
+
+{%- else %}
+
+
+{%- endif %}
+
+{%- if config.extra?.open?.audio %}
+
+{%- endif %}
+
+{%- if config.extra?.open?.locale %}
+
+{%- endif %}
+
+{%- if config.extra?.open?.videos %}
+ {%- for video in config.extra?.open?.videos %}
+
+ {%- endfor %}
+{%- endif %}
+
+{#- SEO MEDIA END #}
+
+
+
+{%- if page?.updated %}
+
+{%- elif page?.date %}
+
+{%- else %}
+
+{%- endif %}
+
+{%- if config.extra?.twitter_meta %}
+
+
+{%- endif -%}
+{%- endif -%}
+{%- endif -%}
+{#- Extra SEO END -#}
+{% endcomponent seo %}
+
--
cgit v1.3.1