{# The export dialog. Format, scope and what each one includes, stated plainly — a person choosing here is deciding what leaves this application and in what shape. #} {% extends "base.html" %} {% from "mirrorwall/components.html" import badge, empty_state %} {% block content %}

{{ project.title }} — export

Project · Workspace · Export

{% if written %}

Written to {{ written }}.

{% endif %}

What will be included

{{ committed_count }} of {{ unit_count }} unit(s) are committed. Only committed units are exported.

{% if uncommitted %}

{{ badge("not included", tone="warning") }} {% for key in uncommitted %}{{ key }}{% if not loop.last %}, {% endif %}{% endfor %} — not yet committed. Finish or resume them first if they belong in the document.

{% endif %} {% if committed_count == 0 %} {{ empty_state("Nothing is committed yet, so an export would be empty.") }} {% endif %}

Format

Choose a format {% for entry in formats %}
{% endfor %}

The export is deterministic: the same committed project exports byte-identically every time, so two exports can be compared with sha256sum.

Or read it without writing anything

{% endblock %}