fix(dashboard): remove all event.target dependencies
- switchTab(tabId, el): uses el or document.querySelector fallback - switchHmTab(tabName, btn): uses btn or querySelector fallback - All 6 tab buttons + 4 heatmap modal tabs pass 'this' as parameter - Rebuilt index.standalone.html (261.6 KB) - Verified: grep event.target returns 0 occurrences
This commit is contained in:
@@ -756,12 +756,12 @@
|
||||
</div>
|
||||
|
||||
<div class="tabs" id="tabBar">
|
||||
<button class="tab-btn active" onclick="switchTab('overview')">Overview</button>
|
||||
<button class="tab-btn" onclick="switchTab('agents')">All Agents</button>
|
||||
<button class="tab-btn" onclick="switchTab('history')">Timeline</button>
|
||||
<button class="tab-btn" onclick="switchTab('recommendations')">Recommendations</button>
|
||||
<button class="tab-btn" onclick="switchTab('heatmap')">Heatmap</button>
|
||||
<button class="tab-btn" onclick="switchTab('impact')">Impact</button>
|
||||
<button class="tab-btn active" onclick="switchTab('overview', this)">Overview</button>
|
||||
<button class="tab-btn" onclick="switchTab('agents', this)">All Agents</button>
|
||||
<button class="tab-btn" onclick="switchTab('history', this)">Timeline</button>
|
||||
<button class="tab-btn" onclick="switchTab('recommendations', this)">Recommendations</button>
|
||||
<button class="tab-btn" onclick="switchTab('heatmap', this)">Heatmap</button>
|
||||
<button class="tab-btn" onclick="switchTab('impact', this)">Impact</button>
|
||||
</div>
|
||||
|
||||
<!-- Overview Tab -->
|
||||
@@ -1738,11 +1738,11 @@ document.addEventListener('click', function(e) {
|
||||
}
|
||||
});
|
||||
|
||||
function switchHmTab(tabName) {
|
||||
document.querySelectorAll('.hm-tab-btn').forEach(btn => btn.classList.remove('active'));
|
||||
function switchHmTab(tabName, btn) {
|
||||
document.querySelectorAll('.hm-tab-btn').forEach(b => b.classList.remove('active'));
|
||||
document.querySelectorAll('.hm-tab-content').forEach(c => c.classList.remove('active'));
|
||||
|
||||
event.target.classList.add('active');
|
||||
(btn || document.querySelector(`.hm-tab-btn[onclick*="switchHmTab('${tabName}')"]`) || {}).classList.add('active');
|
||||
renderHmModalContent(tabName);
|
||||
}
|
||||
|
||||
@@ -2413,11 +2413,11 @@ function closeResearchModal() {
|
||||
}
|
||||
|
||||
// Tab switching
|
||||
function switchTab(tabId) {
|
||||
function switchTab(tabId, el) {
|
||||
document.querySelectorAll('.tab-btn').forEach(btn => btn.classList.remove('active'));
|
||||
document.querySelectorAll('.tab-panel').forEach(panel => panel.classList.remove('active'));
|
||||
|
||||
event.target.classList.add('active');
|
||||
|
||||
(el || document.querySelector(`button[onclick*="switchTab('${tabId}')"]`)).classList.add('active');
|
||||
document.getElementById('tab-' + tabId).classList.add('active');
|
||||
}
|
||||
|
||||
|
||||
@@ -756,12 +756,12 @@
|
||||
</div>
|
||||
|
||||
<div class="tabs" id="tabBar">
|
||||
<button class="tab-btn active" onclick="switchTab('overview')">Overview</button>
|
||||
<button class="tab-btn" onclick="switchTab('agents')">All Agents</button>
|
||||
<button class="tab-btn" onclick="switchTab('history')">Timeline</button>
|
||||
<button class="tab-btn" onclick="switchTab('recommendations')">Recommendations</button>
|
||||
<button class="tab-btn" onclick="switchTab('heatmap')">Heatmap</button>
|
||||
<button class="tab-btn" onclick="switchTab('impact')">Impact</button>
|
||||
<button class="tab-btn active" onclick="switchTab('overview', this)">Overview</button>
|
||||
<button class="tab-btn" onclick="switchTab('agents', this)">All Agents</button>
|
||||
<button class="tab-btn" onclick="switchTab('history', this)">Timeline</button>
|
||||
<button class="tab-btn" onclick="switchTab('recommendations', this)">Recommendations</button>
|
||||
<button class="tab-btn" onclick="switchTab('heatmap', this)">Heatmap</button>
|
||||
<button class="tab-btn" onclick="switchTab('impact', this)">Impact</button>
|
||||
</div>
|
||||
|
||||
<!-- Overview Tab -->
|
||||
@@ -1024,12 +1024,12 @@ const INLINE_RECOMMENDATIONS = []; // REMOVED — data now comes from agentData,
|
||||
/* MODEL_BENCHMARKS removed — data now in EMBEDDED_DATA.model_benchmarks */
|
||||
|
||||
// Default embedded data (minimal - updated by sync script)
|
||||
// Unified data from REAL sources (2026-05-25T21:24:16.296Z)
|
||||
// Unified data from REAL sources (2026-05-26T12:21:49.730Z)
|
||||
// Sources: .kilo/agents/*.md + kilo-meta.json + model-benchmarks-verified.json
|
||||
const EMBEDDED_DATA = {
|
||||
"$schema": "./data/evolution.schema.json",
|
||||
"version": "2.1.0",
|
||||
"lastUpdated": "2026-05-25T21:24:16.287Z",
|
||||
"lastUpdated": "2026-05-26T12:21:49.721Z",
|
||||
"agents": {
|
||||
"agent-architect": {
|
||||
"current": {
|
||||
@@ -5655,7 +5655,7 @@ const EMBEDDED_DATA = {
|
||||
"total_agents": 34,
|
||||
"agents_with_history": 34,
|
||||
"pending_recommendations": 18,
|
||||
"last_sync": "2026-05-25T21:24:16.287Z",
|
||||
"last_sync": "2026-05-26T12:21:49.722Z",
|
||||
"sync_sources": [
|
||||
".kilo/agents/*.md",
|
||||
"kilo-meta.json",
|
||||
@@ -6313,11 +6313,11 @@ document.addEventListener('click', function(e) {
|
||||
}
|
||||
});
|
||||
|
||||
function switchHmTab(tabName) {
|
||||
document.querySelectorAll('.hm-tab-btn').forEach(btn => btn.classList.remove('active'));
|
||||
function switchHmTab(tabName, btn) {
|
||||
document.querySelectorAll('.hm-tab-btn').forEach(b => b.classList.remove('active'));
|
||||
document.querySelectorAll('.hm-tab-content').forEach(c => c.classList.remove('active'));
|
||||
|
||||
event.target.classList.add('active');
|
||||
(btn || document.querySelector(`.hm-tab-btn[onclick*="switchHmTab('${tabName}')"]`) || {}).classList.add('active');
|
||||
renderHmModalContent(tabName);
|
||||
}
|
||||
|
||||
@@ -6988,11 +6988,11 @@ function closeResearchModal() {
|
||||
}
|
||||
|
||||
// Tab switching
|
||||
function switchTab(tabId) {
|
||||
function switchTab(tabId, el) {
|
||||
document.querySelectorAll('.tab-btn').forEach(btn => btn.classList.remove('active'));
|
||||
document.querySelectorAll('.tab-panel').forEach(panel => panel.classList.remove('active'));
|
||||
|
||||
event.target.classList.add('active');
|
||||
|
||||
(el || document.querySelector(`button[onclick*="switchTab('${tabId}')"]`)).classList.add('active');
|
||||
document.getElementById('tab-' + tabId).classList.add('active');
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user