From 66c45910da21ea63c912b8ecd15008b5f9f1a3db Mon Sep 17 00:00:00 2001 From: ARCHITECT Date: Fri, 16 Jan 2026 19:56:05 +0000 Subject: [PATCH] Add debug logs to EventBus MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Events now logs to console when _debug is true: - [Events.on] event (N handlers) - green - [Events.off] event - orange - [Events.emit] event data → N handlers - blue Toggle in browser console: Events._debug = false // disable Events._debug = true // enable (default) Co-Authored-By: Claude Opus 4.5 --- deck-frontend/deck-v4.6.html | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/deck-frontend/deck-v4.6.html b/deck-frontend/deck-v4.6.html index 2a19a6e..a41ae64 100644 --- a/deck-frontend/deck-v4.6.html +++ b/deck-frontend/deck-v4.6.html @@ -808,12 +808,21 @@ const State = { // ============================================================================= const Events = { _handlers: {}, - on(event, fn) { (this._handlers[event] ||= []).push(fn); }, + _debug: true, // Toggle: Events._debug = false to disable + on(event, fn) { + (this._handlers[event] ||= []).push(fn); + if (this._debug) console.log(`%c[Events.on] ${event}`, 'color: #4CAF50', `(${this._handlers[event].length} handlers)`); + }, off(event, fn) { if (!fn) delete this._handlers[event]; else this._handlers[event] = (this._handlers[event] || []).filter(h => h !== fn); + if (this._debug) console.log(`%c[Events.off] ${event}`, 'color: #FF9800'); }, - emit(event, data) { (this._handlers[event] || []).forEach(fn => fn(data)); } + emit(event, data) { + const handlers = this._handlers[event] || []; + if (this._debug) console.log(`%c[Events.emit] ${event}`, 'color: #7c8aff; font-weight: bold', data !== undefined ? data : '', `→ ${handlers.length} handlers`); + handlers.forEach(fn => fn(data)); + } }; // =============================================================================