{#
macros/forms.html - Form component macros for APEP.
Import with: {% from "apep/macros/forms.html" import input, checkbox, radio, dropdown, date_picker %}
Macros:
input(name, label, type, allowed_chars, validate, placeholder, value, required, hint, resize)
checkbox(name, options, hidden_name)
radio(name, options, selected)
dropdown(name, label, options, selected, required)
date_picker(name, id, format, display, value, required, min_date, max_date, placeholder)
CSS dependency: forms.css (loaded via ApepLoader.register("forms.css"))
Author: sora7672
#}
{% from "apep/macros/helper.html" import alert %}
{#
Renders a labeled text, email, password input, or resizable textarea with optional validation,
character filtering, hint text, and inline error state.
When type is "email", allowed_chars is ignored and email format validation
is applied automatically regardless of the validate param.
When resize is set, a