{% macro govukFileUpload(params) %} {% from "govuk_frontend_jinja/macros/attributes.html" import govukAttributes %} {% from "govuk_frontend_jinja/components/error-message/macro.html" import govukErrorMessage %} {% from "govuk_frontend_jinja/components/hint/macro.html" import govukHint %} {% from "govuk_frontend_jinja/components/label/macro.html" import govukLabel %} {#- a record of other elements that we need to associate with the input using aria-describedby – for example hints or error messages -#} {% set describedBy = params.describedBy if params.describedBy else "" %}
{{ govukLabel({ 'html': params.label.html, 'text': params.label.text, 'classes': params.label.classes, 'isPageHeading': params.label.isPageHeading, 'attributes': params.label.attributes, 'for': params.id }) | trim | indent(2) }} {% if params.hint %} {% set hintId = params.id + '-hint' %} {% set describedBy = describedBy + ' ' + hintId if describedBy else hintId %} {{ govukHint({ 'id': hintId, 'classes': params.hint.classes, 'attributes': params.hint.attributes, 'html': params.hint.html, 'text': params.hint.text }) | trim | indent(2) }} {% endif %} {% if params.errorMessage %} {% set errorId = params.id + '-error' %} {% set describedBy = describedBy + ' ' + errorId if describedBy else errorId %} {{ govukErrorMessage({ 'id': errorId, 'classes': params.errorMessage.classes, 'attributes': params.errorMessage.attributes, 'html': params.errorMessage.html, 'text': params.errorMessage.text, 'visuallyHiddenText': params.errorMessage.visuallyHiddenText }) | trim | indent(2) }} {% endif %} {% if params.formGroup and params.formGroup.beforeInput %} {{ params.formGroup.beforeInput.html | safe | trim | indent(2) if params.formGroup.beforeInput.html else params.formGroup.beforeInput.text }} {% endif %} {% if params.formGroup and params.formGroup.afterInput %} {{ params.formGroup.afterInput.html | safe | trim | indent(2) if params.formGroup.afterInput.html else params.formGroup.afterInput.text }} {% endif %}
{% endmacro %}