{#- chirp-ui: Icon Button Square icon-only button for toolbars and dense UIs. Usage: from "chirpui/icon_btn.html" import icon_btn icon_btn("✕", aria_label="Close") icon_btn("⚙", variant="ghost", size="lg", href="/settings", aria_label="Settings") -#} {% def icon_btn(icon, variant="", size="", href=none, aria_label="", disabled=false, type="button", cls="", hx_get=none, hx_post=none, hx_target=none, hx_swap=none) %} {% set variant = variant | validate_variant(("", "default", "primary", "ghost", "danger"), "") %} {% set size = size | validate_variant(("", "sm", "md", "lg"), "") %} {% set variant_class = " chirpui-icon-btn--" ~ variant if variant else "" %} {% set size_class = " chirpui-icon-btn--" ~ size if size else "" %} {% set base = "chirpui-icon-btn" ~ variant_class ~ size_class ~ (" " ~ cls if cls else "") %} {% if href %} {{ icon | icon }} {% else %} {% end %} {% end %}