TradingAgents/webapp/templates/_partials/left_panel.html

38 lines
1.4 KiB
HTML

{% macro render_item(item) %}
<li class="process-item status-{{ item.status }}">
<span hx-get="/content/{{ item.id }}" hx-target="#right-panel" hx-swap="innerHTML" class="item-name clickable">
<span class="status-icon">
{% if item.status == 'completed' %}✅
{% elif item.status == 'in_progress' %}⏳
{% elif item.status == 'error' %}❌
{% else %}⏸️
{% endif %}
</span>
{{ item.name }}
</span>
{% if item.children %}
<ul class="item-children">
{% for child in item.children %}
{{ render_item(child) }}
{% endfor %}
</ul>
{% endif %}
</li>
{% endmacro %}
<div id="overall-progress-bar" hx-swap-oob="true" style="width:{{ app_state.overall_progress }}%;"></div>
<span id="overall-progress-text" hx-swap-oob="true">{{ app_state.overall_progress }}% ({{ app_state.overall_status }})</span>
<div id="left-panel-content" hx-get="/status" hx-trigger="every 5s" hx-swap="innerHTML">
<h2>Execution Status</h2>
{% if tree %}
<ul class="execution-tree">
{% for item in tree %}
{{ render_item(item) }}
{% endfor %}
</ul>
{% else %}
<p>No process running. Start a new one from the configuration.</p>
{% endif %}
</div>