const { ipcRenderer } = require('electron'); const { scrapeNowPlaying } = require('./now-playing'); const POLL_INTERVAL_MS = 3000; let lastSent = null; function changed(a, b) { if (a === null && b === null) return false; if (a === null || b === null) return true; return ( a.title !== b.title || a.artist !== b.artist || a.albumArt !== b.albumArt || a.isPlaying !== b.isPlaying ); } function poll() { const data = scrapeNowPlaying(document, navigator); if (!changed(data, lastSent)) return; lastSent = data; ipcRenderer.send('wtm:state', data || { isPlaying: false }); } setInterval(poll, POLL_INTERVAL_MS); poll(); console.log('[wtm] yt-scraper preload loaded');