{% from "components.html" import status_badge %} {% from "components/search_field.html" import search_field %} {% from "components/table_row.html" import table_row %} {% from "components/side_panel.html" import side_panel %} {% from "components/version_diff.html" import value %}
File: {{ state.filename }} {% if mode in ('new_version', 'mapping_update') and preview.counts.Added and not preview.counts.Changed and not preview.counts.Deleted and not preview.counts.Unchanged %} · First import: {{ preview.counts.Added }} {{ 'record' if preview.counts.Added == 1 else 'records' }} will be added to the draft. {% elif mode in ('new_version', 'mapping_update') and not preview.counts.Added and not preview.counts.Changed and not preview.counts.Deleted %} · No changes. The file matches the draft. {% elif mode in ('new_version', 'mapping_update') %} {% if preview.counts.Added or preview.counts.Deleted %} {% set summary_parts = [] %} {% if preview.counts.Added %}{% set _ = summary_parts.append(preview.counts.Added ~ ' added') %}{% endif %} {% if preview.counts.Changed %}{% set _ = summary_parts.append(preview.counts.Changed ~ ' changed') %}{% endif %} {% if preview.counts.Deleted %}{% set _ = summary_parts.append(preview.counts.Deleted ~ ' deleted') %}{% endif %} · {{ summary_parts|join(', ') }} {% endif %} · {{ preview.counts.Added + preview.counts.Changed + preview.counts.Deleted }} {{ 'record' if preview.counts.Added + preview.counts.Changed + preview.counts.Deleted == 1 else 'records' }} will change in the draft {% if preview.counts.Error %} · {{ status_badge('Error', preview.counts.Error) }}{% endif %} {% else %} · First import: {{ preview.counts.Added }} {{ 'record' if preview.counts.Added == 1 else 'records' }} will be added to the draft. {% endif %}
{% if unmapped_fields %}Not in file: {% for field in unmapped_fields %}{{ field.name }}{{ ', ' if not loop.last else '.' }}{% endfor %} {% if preview.counts.Changed + preview.counts.Unchanged == 0 %}These fields stay empty.{% else %}Existing records keep their values; new records leave these fields empty.{% endif %}
| Identifier | Status | Changed fields | {{ status_badge(item.status) }} | {% if item.status == ChangeStatus.CHANGED %}{% for name, old, new in item.changes %}{{ name }}{% if not loop.last %}, {% endif %}{% endfor %}{% else %}—{% endif %} |
{% endcall %}
{% else %}
|---|---|---|
| No matching changes. | ||
{% if item.status == ChangeStatus.ADDED %}This record will be added.{% else %}This record will be marked as deleted.{% endif %}
| Identifier | Status | {{ status_badge('Added') }} | {% endcall %} {% else %}
|---|---|
| No matching changes. | |
This record will be added.