{% macro digitalmarketplaceQuestionCheckboxTree(params) %}
{%- from "govuk_frontend_jinja/components/fieldset/macro.html" import govukFieldset -%}
{%- from "govuk_frontend_jinja/components/checkboxes/macro.html" import govukCheckboxes -%}
{%- from "govuk_frontend_jinja/components/hint/macro.html" import govukHint -%}
{%- from "govuk_frontend_jinja/components/accordion/macro.html" import govukAccordion -%}
{%- from "govuk_frontend_jinja/components/error-message/macro.html" import govukErrorMessage -%}
{%- from "govuk_frontend_jinja/components/tag/macro.html" import govukTag -%}
{%- from "digitalmarketplace_frontend_jinja/components/question-format-hint/macro.html" import digitalmarketplaceQuestionFormatHint -%}
{% set name = params.question.id %}
{% set questionText = params.question.question + " ({})".format(params.question.optional_text if params.question.optional_text else "optional") if params.question.optional else params.question.question %}
{% set errorMessage = params.errors[name] if params.errors %}
{% set values = params.data[name] or [] if params.data else [] %}
{% macro checkboxTreeCheckboxes(section, index) %}
{% set checkboxItems = [] %}
{% for option in section.options %}
{% set value = option.value if option.value else option.label %}
{% set _checkboxItems = checkboxItems.append({
"text": option.label,
"value": value,
"checked": value in values
}) %}
{% endfor %}
{{ govukCheckboxes({
"name": name,
"idPrefix": "input-" + name + '-' + index,
"items": checkboxItems,
"classes": "govuk-checkboxes--small"
}) }}
{% endmacro %}
{% macro checkboxTreeDetail(section, index) %}
You can choose up to {{ params.question.number_of_items }} {{ params.question.item_name.plural if params.question.item_name else "categories" }}.
{% endif %}