diff --git a/src/api/dashboard/static/js/ui/indicators-panel-new.js b/src/api/dashboard/static/js/ui/indicators-panel-new.js index 18f378d..90dcbf0 100644 --- a/src/api/dashboard/static/js/ui/indicators-panel-new.js +++ b/src/api/dashboard/static/js/ui/indicators-panel-new.js @@ -6,6 +6,7 @@ let configuringId = null; let searchQuery = ''; let selectedCategory = 'all'; let nextInstanceId = 1; +let eventListenersSet = false; // Chart pane management let indicatorPanes = new Map(); @@ -153,7 +154,6 @@ export function renderIndicatorPanel() {
★ Favorites
${[...favoriteIds].map(id => { const ind = available.find(a => { - // Find matching indicator by type return a.type === id || (activeIndicators.find(ai => ai.id === id)?.type === ''); }); if (!ind) return ''; @@ -187,7 +187,12 @@ export function renderIndicatorPanel() { `; - setupEventListeners(); + // Only setup event listeners once + if (!eventListenersSet) { + setupEventListeners(); + eventListenersSet = true; + } +} } function renderIndicatorItem(indicator, isFavorite) {