{% extends "base.html" %}
{% import "_links.html" as links with context %}
{% import "_table.html" as tables with context %}
{% import "_filters.html" as forms with context %}
{% import "_cards.html" as cards with context %}
{% block title %}History — Cairn Dashboard{% endblock %}
{% block content %}
{#- The filter form is an htmx trigger, not a page reload: typing
(input changed delay:300ms) hx-gets the route and morph-swaps the
results region below. It must stay OUTSIDE #refresh-region so the
region's swaps — filter fragments and the 5s poll alike — can never
destroy the fields being typed into (the #refresh-region contract:
in-progress filter input survives every swap). The Apply submit
stays as the no-htmx fallback and the URL-carrying apply. -#}
{{ forms.form_open('/history', {'window': window}, hx={'target': '#refresh-region', 'trigger': 'input changed delay:300ms'}, form_id='history-filters') }}
{{ forms.field('text', 'tool', 'Tool', tool) }}
{{ forms.field('text', 'session', 'Session', session) }}
{{ forms.field('text', 'source', 'Source', source) }}
{{ forms.form_close() }}
{% include "history_region.html" %}
{% endblock %}
{% block scripts %}{% endblock %}