{# ── Amrita WebUI Component Macros ── Usage: {% from 'macros.html' import card, modal, form_field, stat_card, table, badge, btn with context %} #} {# ── 毛玻璃卡片 ── #} {% macro card(title=None, class="") %}
{% if title %}

{{ title }}

{{ caller("header_actions") }}
{% endif %} {{ caller("body") }}
{% endmacro %} {# ── 统计卡片 ── #} {% macro stat_card(icon, icon_color, value, label) %}

{{ value }}

{{ label }}

{% endmacro %} {# ── 模态框 ── #} {% macro modal(id, title) %} {% endmacro %} {# ── 表单字段(标签 + 输入框) ── #} {% macro form_field(label, name, type="text", value="", placeholder="", required=False, class="") %}
{% endmacro %} {# ── 表单下拉选择 ── #} {% macro form_select(label, name, options=[], selected="", class="") %}
{% endmacro %} {# ── 表单复选框 ── #} {% macro form_checkbox(label, name, checked=False, class="") %}
{% endmacro %} {# ── 按钮 ── #} {% macro btn(text, type="button", style="primary", class="", onclick=None, icon=None) %} {% endmacro %} {# ── Badge/徽章 ── #} {% macro badge(text, variant="primary") %} {{ text }} {% endmacro %} {# ── Alert 消息 ── #} {% macro alert(type="success", id=none, hidden=True) %} {% endmacro %} {# ── 字段展示(标签+值,用于卡片内详情) ── #} {% macro field_item(label) %}
{{ label }}
{{ caller() }}
{% endmacro %}