{% extends "layout.html" %} {% block title %}{{ project.label }}{% endblock %} {% block head %} {% endblock %} {% block breadcrumb %} {{ _("project_list.title") }} → {{ project.label }} {% endblock %} {% block api_link %} {{ url_for("api_component_list", project_id=project.id) }} {% endblock %} {% block content %} {% if project.descriptions %}

{{ localized_of(project.descriptions) }}

{% endif %} {% if highlight_components|length != 0 %}

{{ _("project.highlight_components." + highlight_components|length|string) }}

{% for highlight_label, highlight_component in highlight_components %}

{{ highlight_label }}

{{ _("project.version") }} {{ highlight_component.version }}
{% for matcher in occurring_featured_asset_type_matchers %} {# We expect this loop to run only once. #} {% for asset in highlight_component.assets if asset.matcher_causing_featuring == matcher %} {{ asset.type }} {% endfor %} {% endfor %}
{{ _("project.more") }}
{% endfor %}
{% endif %}

{{ _("project.all_components") }}

{{ component_filter_form.version.label }} {{ component_filter_form.version }}
{{ component_filter_form.qualifier.label }} {{ component_filter_form.qualifier }}
{{ component_filter_form.filter }}
{% if components|length != 0 %}
{% for component in components %} {% for matcher in occurring_featured_asset_type_matchers %} {% endfor %} {% endfor %}
{{ _("project.qualifier") }} {{ _("project.version") }}
{{ component.qualifier.name }} {{ component.version }} {{ _("project.more") }}
{% else %}

{{ _("project.no_matching_components") }}

{% endif %} {% endblock %}