{# Longitudinal (timeline) chimerism report, PDF layout (issue #35). Mirrors the HTML timeline (timeline.html) but suppresses the inline "how it works" disclosures and collects them into a "Methods and notes" appendix, like pdf/report.html. The trend chart is the same base64 PNG the HTML timeline embeds. Override via --template with a pdf/timeline.html. #} {% extends "base.html" %} {% import "macros.html" as m %} {% block body %}
{{ title }}
{{ m.header(header_rows) }}

Latest result

Latest QC verdict
{{ badge(headline.status, large=True) }}
{{ m.figure_card("Donor fraction (latest)", headline.latest_pct | pct_value, ci(headline.latest_ci_lo, headline.latest_ci_hi, as_pct=False)) }} {% if headline.has_prev %} {{ m.figure_card("Previous", headline.prev_pct | pct_value) }} {% if headline.delta %} {{ m.figure_card("Change", headline.delta) }} {% endif %} {% endif %}

Trend

{% if chart_uri %}
Chimerism trend across timepoints
{% elif chart_note %}

{{ chart_note }}

{% endif %}

Timepoints

{% for row in table_rows %} {% endfor %}
TimepointDonor %95% CIMean depthGoF pQC
{{ row.label }}{{ row.donor_pct | pct_value }}{{ ci(row.ci_lo, row.ci_hi, 2, as_pct=False) }}{{ (row.depth | num(0)) ~ "x" if row.depth is not none else NA }}{{ row.gof | pval }}{{ badge(row.status) }}
{{ m.host_presence(host_presence.hp, host_presence.detected, show_help=False) }} {{ m.qc_panel(qc, show_help=False) }} {{ m.footer(version, params, citation, timestamp, show_run_command=False) }}

Methods and notes

{{ m.help_host_presence() }} {{ m.help_qc() }} {{ m.run_command(params) }}
{% endblock %}