54 lines
2.2 KiB
HTML
54 lines
2.2 KiB
HTML
<!-- row shortcode
|
|
Shortcode used in markdown for the creation of mobile compatible vertical rows
|
|
Divides markdown into columns by splitting content using column identifier "|||"
|
|
Creates equal width blocks in a flex row.
|
|
|
|
Parameters:
|
|
- style:
|
|
- lean: if style is lean, the row doesn't have outer margins
|
|
- bgPath: if bgPath is passed, the row has a full width background
|
|
-->
|
|
|
|
{% set columns = body | safe | markdown | split(pat="|||") %}
|
|
|
|
<!-- aligns columns depending on col number-->
|
|
|
|
|
|
{% set classes = "relative flex flex-col lg:flex-row items-baseline -mx-8 sm:-mx-12 md:-mx-16 lg:-mx-20" %}
|
|
{% set column_classes = "flex-1 m-4 lg:m-4" %}
|
|
|
|
|
|
<!-- makes row full screen width and adds background img -->
|
|
{% set styles = "" %}
|
|
{% if bgPath %}
|
|
{% set styles = "background: url('" ~ bgPath ~ "'); background-size: cover" %}
|
|
{% set classes = classes ~ "w-screen -mx-8 sm:-mx-12 md:-mx-16 lg:-mx-20 lg:py-40 p-8 sm:p-12 md:p-16 lg:p-20" %}
|
|
{% endif %}
|
|
|
|
<div class="{{classes}}" style="{{styles}}">
|
|
{% for column in columns%}
|
|
<!-- Hides empty columns if displayed vertically in small screen -->
|
|
{% if column | as_str | length < 10 %}
|
|
<div class="hidden md:block flex-1 md:mb-0 md:mx-8 sm:flex-1">
|
|
{{column | split(pat="{% button() %}") | slice(end=1)}}
|
|
{% for button in column | split(pat="{% button() %}") | slice(start=1) | join(sep="") | split(pat="{%% end %%}") | slice(end=-1) %}
|
|
{% set body = button %}
|
|
{% include "shortcodes/button.html" %}
|
|
{% endfor %}
|
|
</div>
|
|
|
|
{% else %}
|
|
<div class="{{column_classes}}">
|
|
{{column | split(pat="{% button() %}") | slice(end=1) | first | safe}}
|
|
<hr>
|
|
<br/>
|
|
|
|
<!-- handles mermaid markdown content display -->
|
|
{% for button in column | split(pat="{% button() %}") | slice(start=1) | join(sep="") | split(pat="{%% end %%}") | slice(end=-1) %}
|
|
{% set body = button %}
|
|
{% include "shortcodes/button.html" %}
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
{% endfor %}
|
|
</div> |