{% macro copy_btn(amount) %}{% endmacro %} {% macro copy_btn_str(eur_str) %}{% if eur_str %}{% endif %}{% endmacro %} {% macro verify_btn(amount) %}{% endmacro %} {% macro verify_btn_str(eur_str) %}{% if eur_str %}{% endif %}{% endmacro %} {% macro casilla_badge(numero) %}{{ "%04d" | format(numero | int) }}{% endmacro %} {% macro casilla_badge_range(start, end) %}{{ casilla_badge(start) }} - {{ casilla_badge(end) }}{% endmacro %} {% macro render_casilla(numero_str) %}{% set s = numero_str | string %}{% if '-' in s %}{% set parts = s.split('-') %}{{ casilla_badge_range(parts[0], parts[1]) }}{% elif '/' in s %}{% set parts = s.split('/') %}{% for p in parts %}{{ casilla_badge(p) }}{% endfor %}{% elif s and s[0] in '0123456789' %}{{ casilla_badge(s) }}{% else %}{{ s }}{% endif %}{% endmacro %} {% macro section_h2(casilla, title) %}

{{ title }} {{ render_casilla(casilla.numero) }}

{% endmacro %} {% macro td_eur(amount, color=False, sign=True, button='copy', extra_class='') %} {% if amount is none %}NO CALCULADO {% elif color %}{% if sign and amount > 0 %}+{% endif %}{{ amount|format_num }} €{% if button == 'copy' %}{{ copy_btn(amount) }}{% elif button == 'verify' %}{{ verify_btn(amount) }}{% endif %} {% else %}{% if sign and amount > 0 %}+{% endif %}{{ amount|format_num }} €{% if button == 'copy' %}{{ copy_btn(amount) }}{% elif button == 'verify' %}{{ verify_btn(amount) }}{% endif %} {% endif %} {% endmacro %} {% macro section_total(casilla, label, with_sign=False) %}
{{ label }}: {% if casilla.valor is none %} NO CALCULABLE {% else %} {% if with_sign and casilla.valor > 0 %}+{% endif %}{{ casilla.valor|format_num }} €{{ copy_btn(casilla.valor) }} {% endif %}
{% endmacro %} {% macro pluralize(n, singular, plural) %}{% if n == 1 %}{{ singular }}{% else %}{{ plural }}{% endif %}{% endmacro %} {% macro cell_amount(amount, casilla=none, casillas=none, button='copy', abs_value=False) %} {% if amount is none %}NO CALCULADO {% else %} {% set _v = (amount|abs) if abs_value else amount %} {% if casilla is not none or casillas is not none %}{% if casilla is not none %}{{ casilla_badge(casilla) }}{% endif %}{% if casillas is not none %}{% for c in casillas %}{{ casilla_badge(c) }}{% endfor %}{% endif %}{{ _v|format_num }} €{% if button == 'copy' %}{{ copy_btn(_v) }}{% elif button == 'verify' %}{{ verify_btn(_v) }}{% endif %} {% else %}{{ _v|format_num }} €{% if button == 'copy' %}{{ copy_btn(_v) }}{% elif button == 'verify' %}{{ verify_btn(_v) }}{% endif %} {% endif %} {% endif %} {% endmacro %} {% macro casilla_warnings_block(casilla) %} {% if casilla.bce_warnings or casilla.advertencias %} {% endif %} {% endmacro %} {% macro note_block(casilla) %} {% if casilla.notas_secciones %}
{% elif casilla.notas %}
{{ casilla.notas|casilla_inline|nl2br }}
{% endif %} {% endmacro %} {% macro td_source(source, extra_class='') %} {% if source %}{{ source }}{% else %}{% endif %} {% endmacro %} {% macro empty_state(message) %}

{{ message }}

{% endmacro %} {% macro td_source_short(source, extra_class='', multi=False) %} {% if source %}{% if multi %}{{ source.file_label }} · {% endif %}{{ source.short }}{% else %}{% endif %} {% endmacro %}