{# Shared macro for rendering form fields from AgentMethodField or Parameter definitions. Usage: {% from "components/field_renderer.html" import render_field, render_parameter_field %} render_field(field): Renders an AgentMethodField as an HTML form input. field dict keys: name, field_type, description, choices, default, required, widget render_parameter_field(param): Renders a Parameter as an HTML form input. param dict keys: name, description, is_required, is_secret, value #} {% macro render_field(field, prefix="field_") %}
{% if field.description %}

{{ field.description }}

{% endif %}
{% if field.field_type == "CharField" %} {% if field.widget == "Textarea" %} {% else %} {% endif %} {% elif field.field_type == "IntegerField" %} {% elif field.field_type == "FloatField" %} {% elif field.field_type == "BooleanField" %}
{% elif field.field_type == "ChoiceField" %} {% if field.widget == "RadioSelect" %}
{% for choice in (field.choices or []) %} {% set choice_value = choice[0] if choice is iterable and choice is not string else choice %} {% set choice_label = choice[1] if choice is iterable and choice is not string else choice %} {% endfor %}
{% else %} {% endif %} {% elif field.field_type == "MultipleChoiceField" %} {% elif field.field_type == "EmailField" %} {% elif field.field_type == "DateField" %} {% elif field.field_type == "DateTimeField" %} {% else %} {# Fallback to text input for unknown types #} {% endif %}
{# end mt-auto input wrapper #}
{% endmacro %} {% macro render_parameter_field(param, prefix="param_") %}
{% if param.from_env %} .env {% endif %}
{% if param.description %}

{{ param.description }}

{% endif %} {% if param.from_env and param.is_secret %} {# Secret from env: don't expose value in HTML, show masked placeholder #} {% elif param.from_env %} {# Non-secret from env: show the value, green border #} {% else %} {% endif %}
{% endmacro %} {% macro render_hitl_field(field_name, field_def) %} {# Renders a HITL form field from supervaizer_form payload. field_def is a dict like: {"type": "checkbox", "label": "Approved", "required": true} #}
{% set ftype = field_def.get("type", "text") %} {% if ftype == "checkbox" %}
{% elif ftype == "select" %} {% elif ftype == "textarea" %} {% else %} {% endif %}
{% endmacro %} {% macro status_badge(status_value) %} {% if status_value == "completed" %} COMPLETED {% elif status_value == "in_progress" %} IN_PROGRESS {% elif status_value == "awaiting" %} AWAITING {% elif status_value == "failed" %} FAILED {% elif status_value in ("stopped", "cancelled") %} STOPPED {% else %} {{ status_value }} {% endif %} {% endmacro %}