1{% if observer.is_enabled() %}
2<form method="post" action="{{ url('observer:traces') }}" style="display: inline;">
3 <input type="hidden" name="redirect_url" value="{{ request.get_full_path() }}">
4 {% if observer.is_summarizing() %}
5 {# Toggle from summary to persist #}
6 <input type="hidden" name="observe_action" value="persist">
7 {% else %}
8 {# Toggle from persist to summary #}
9 <input type="hidden" name="observe_action" value="summary">
10 {% endif %}
11 <button
12 class="inline-flex items-center cursor-pointer text-xs rounded-full px-2.5 py-px bg-white/20 text-white/80 whitespace-nowrap hover:bg-white/30"
13 type="submit"
14 data-toolbar-tab="Observer"
15 title="Toggle observer mode ({% if observer.is_summarizing() %}summary{% elif observer.is_persisting() %}persist{% else %}disabled{% endif %} mode){% if observer.get_current_trace_summary() %} - {{ observer.get_current_trace_summary() }}{% endif %} - Click to switch to {% if observer.is_summarizing() %}persist{% else %}summary{% endif %} mode">
16 {% if observer.is_persisting() %}
17 <span class="relative inline-flex size-2 mr-2.5">
18 <span class="absolute inline-flex h-full w-full animate-ping rounded-full bg-red-400 opacity-75"></span>
19 <span class="relative inline-flex size-2 rounded-full bg-red-500"></span>
20 </span>
21 {% elif observer.is_summarizing() %}
22 <span class="relative inline-flex size-2 mr-2.5">
23 <span class="relative inline-flex size-2 rounded-full bg-zinc-500"></span>
24 </span>
25 {% endif %}
26 {% if observer.get_current_trace_summary() %}
27 <span class="font-mono tracking-tight">{{ observer.get_current_trace_summary() }}</span>
28 {% else %}
29 {% if observer.is_persisting() %}Recording{% elif observer.is_summarizing() %}Summary{% else %}Observing{% endif %}
30 {% endif %}
31 </button>
32</form>
33{% else %}
34<form method="post" action="{{ url('observer:traces') }}" style="display: inline;">
35 <input type="hidden" name="redirect_url" value="{{ request.get_full_path() }}">
36 <input type="hidden" name="observe_action" value="summary">
37 <button
38 type="submit"
39 class="cursor-pointer text-xs rounded-full px-2 py-px bg-white/20 text-white/80 whitespace-nowrap hover:bg-white/30"
40 title="Enable observer">
41 <span class="rounded-full bg-zinc-500 w-2 h-2 inline-block mr-1"></span>
42 Observer disabled
43 </button>
44</form>
45{% endif %}