{% extends "base.html" %} {% from "_macros.html" import empty %} {% block title %}All pictures — Video to LLM{% endblock %} {# Defaulted, like the other screens. The route has an empty-state branch for a job with no videos, and it passed none of these — so the one case the guard existed to handle was the one that crashed the page. #} {% set frames = frames | default([], true) %} {% set frame_count = frame_count | default(0, true) %} {% set total_pages = total_pages | default(1, true) %} {% set page_no = page_no | default(0, true) %} {% set start_index = start_index | default(0, true) %} {% set chosen = chosen | default(none, true) %} {% set frames_relative = frames_relative | default("", true) %} {% block content %}

All pictures

{{ "{:,}".format(frame_count) }} from {{ chosen['display_name'] if chosen else 'this video' }} {%- if total_pages > 1 %} · page {{ page_no + 1 }} of {{ total_pages }}{% endif %}

One at a time Back to the job
{% if not frames %}
{{ empty("No pictures yet.") }}
{% else %}
{% for f in frames %} Picture {{ f.index + 1 }} at {{ f.label }} {{ f.label }} {% endfor %}
{% if total_pages > 1 %} {% endif %} {% endif %} {% endblock %}