Merge branch 'main' into nl/3210-fix-converted-federal-agency-none-check

This commit is contained in:
CuriousX 2024-12-11 11:08:52 -07:00 committed by GitHub
commit b6ae8676c5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 10 additions and 2 deletions

View file

@ -5,6 +5,5 @@
class="{{ uswds_input_class }}{% if classes %} {{ classes }}{% endif %}"
{% if widget.value != None %}value="{{ widget.value|stringformat:'s' }}"{% endif %}
{% if aria_label %}aria-label="{{ aria_label }} {{ label }}"{% endif %}
{% if sublabel_text %}aria-describedby="{{ widget.attrs.id }}__sublabel"{% endif %}
{% include "django/forms/widgets/attrs.html" %}
/>

View file

@ -57,6 +57,7 @@ def input_with_errors(context, field=None): # noqa: C901
legend_classes = []
group_classes = []
aria_labels = []
sublabel_text = []
# this will be converted to an attribute string
described_by = []
@ -103,6 +104,9 @@ def input_with_errors(context, field=None): # noqa: C901
elif key == "add_aria_label":
aria_labels.append(value)
elif key == "sublabel_text":
sublabel_text.append(value)
attrs["id"] = field.auto_id
# do some work for various edge cases
@ -152,11 +156,16 @@ def input_with_errors(context, field=None): # noqa: C901
if group_classes:
context["group_classes"] = " ".join(group_classes)
# We handle sublabel_text here instead of directy in the template to avoid conflicts
if sublabel_text:
sublabel_div_id = f"{attrs['id']}__sublabel"
described_by.insert(0, sublabel_div_id)
if described_by:
# ensure we don't overwrite existing attribute value
if "aria-describedby" in attrs:
described_by.append(attrs["aria-describedby"])
attrs["aria_describedby"] = " ".join(described_by)
attrs["aria-describedby"] = " ".join(described_by)
if aria_labels:
context["aria_label"] = " ".join(aria_labels)