mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-10-27 07:52:24 +00:00
Move cohesive method groups out of the monolithic Application class (js/app.js, ~10K lines) into five coordinator modules under js/app/: - feedCoordinator: feed registration, runtime building, refresh, video loading, URL-health helpers, and feed telemetry - playbackCoordinator: URL-first + magnet fallback pipeline, probing, torrent status intervals, and video timestamp resolution - authSessionCoordinator: signer lifecycle, profile switching, relay/block/wallet management, and cleanup - modalCoordinator: modal open/close, view-count subscriptions, watch-history metadata, and playback logging - moderationCoordinator: moderation settings, video decoration, override/block/hide action routing Each coordinator factory receives injected dependencies instead of importing globals. Application retains thin delegator methods so all public call-sites remain unchanged. Coordinator initialisation is idempotent (via _initCoordinators) and supports both constructor-based and Object.create()-based instantiation used by test harnesses. All existing unit tests, lint checks, and syntax validation pass. https://claude.ai/code/session_01C3PKJTCdavsGbk5jjC85EB