{#- chirp-ui: ASCII Skeleton Loading placeholder using cycling ASCII characters instead of shimmer blocks. Usage: from "chirpui/ascii_skeleton.html" import ascii_skeleton ascii_skeleton() {# Single line #} ascii_skeleton(variant="text", lines=3) {# Multi-line text block #} ascii_skeleton(variant="card") {# Card with header + lines #} ascii_skeleton(variant="avatar") {# Circular avatar #} ascii_skeleton(variant="heading") {# Wide heading line #} The skeleton fills its area with cycling braille/dot characters that animate in a wave pattern, replacing the standard shimmer gradient. -#} {% def ascii_skeleton(variant="", lines=1, width="", cls="") %} {% set variant = variant | validate_variant(("", "text", "card", "avatar", "heading"), "") %} {% set variant_class = " chirpui-ascii-skeleton--" ~ variant if variant else "" %} {% set fill = "⠁⠂⠄⡀⢀⠠⠐⠈·⠁⠂⠄⡀⢀⠠⠐⠈·⠁⠂⠄⡀⢀⠠⠐⠈·⠁⠂⠄⡀⢀⠠⠐⠈·⠁⠂⠄⡀" %} {% set short_fill = "⠁⠂⠄⡀⢀⠠⠐⠈·⠁⠂⠄⡀⢀⠠⠐⠈·⠁⠂⠄⡀⢀⠠" %} {% if variant == "avatar" %} {% elif variant == "card" %}
{% elif variant == "text" %} {% elif variant == "heading" %} {% else %} {% end %} {% end %}