feat: Implement web-based terminal with session management, command history, and dedicated UI.
Tests / Backend Tests (Python) (3.10) (push) Has been cancelled
Tests / Backend Tests (Python) (3.11) (push) Has been cancelled
Tests / Backend Tests (Python) (3.12) (push) Has been cancelled
Tests / Frontend Tests (JS) (push) Has been cancelled
Tests / Integration Tests (push) Has been cancelled
Tests / All Tests Passed (push) Has been cancelled

This commit is contained in:
2026-03-03 11:51:57 -05:00
parent 88742892d0
commit d29eefcef4
12 changed files with 638 additions and 189 deletions
+20
View File
@@ -149,6 +149,20 @@
.terminal-history-scope input {
width: 0.875rem; height: 0.875rem; accent-color: #7c3aed; cursor: pointer;
}
.terminal-history-filter-btn {
background: rgba(124,58,237,0.08); border: 1px solid #374151;
border-radius: 0.375rem; color: #9ca3af; padding: 0.3rem 0.5rem;
font-size: 0.75rem; cursor: pointer; transition: background 0.15s, border-color 0.15s;
line-height: 1; display: flex; align-items: center;
}
.terminal-history-filter-btn:hover { background: rgba(124,58,237,0.18); border-color: #7c3aed; color: #e5e7eb; }
.terminal-history-filter-btn.active { background: rgba(124,58,237,0.3); border-color: #7c3aed; color: #fbbf24; }
/* Docked mode: panel stays visible above the iframe */
.terminal-history-panel.docked {
position: relative !important; top: auto !important; left: auto !important;
width: 100% !important; max-height: 280px !important; z-index: auto !important;
box-shadow: none !important; border-bottom: 1px solid #374151;
}
.terminal-history-list {
flex: 1; overflow-y: auto; padding: 0.5rem;
scrollbar-width: thin; scrollbar-color: #374151 transparent;
@@ -305,6 +319,12 @@
<input type="checkbox" id="terminalHistoryAllHosts" onchange="toggleHistoryScope()">
<span>Tous hôtes</span>
</label>
<button class="terminal-history-filter-btn" id="btnPinnedOnly" onclick="togglePinnedOnly()" title="Épinglées uniquement">
<i class="fas fa-thumbtack"></i>
</button>
<button class="terminal-history-filter-btn" id="btnHistoryPin" onclick="toggleHistoryPin()" title="Garder le panneau ouvert">
<i class="fas fa-map-pin"></i>
</button>
</div>
</div>
<div class="terminal-history-list" id="terminalHistoryList">