Completely disable all console output

This commit is contained in:
Your Name
2026-01-11 18:54:47 +01:00
parent 76659071f8
commit 144962adcb

72
ui.ts
View File

@@ -209,53 +209,33 @@ export const html = `<!DOCTYPE html>
<div id="ytplayer"></div> <div id="ytplayer"></div>
</body> </body>
<script> <script>
// Block YouTube tracking requests before they happen // Completely disable ALL console output
(function(){ (function(){
// Override XMLHttpRequest to block tracking console.log=function(){};
var OrigXHR=window.XMLHttpRequest; console.warn=function(){};
window.XMLHttpRequest=function(){ console.error=function(){};
var xhr=new OrigXHR(); console.info=function(){};
var origOpen=xhr.open; console.debug=function(){};
xhr.open=function(method,url){ console.trace=function(){};
if(url&&(url.includes('log_event')||url.includes('ptracking')||url.includes('generate_204')||url.includes('pagead')||url.includes('doubleclick'))){ console.dir=function(){};
this._blocked=true; console.dirxml=function(){};
return; console.table=function(){};
} console.group=function(){};
return origOpen.apply(this,arguments); console.groupCollapsed=function(){};
}; console.groupEnd=function(){};
var origSend=xhr.send; console.clear=function(){};
xhr.send=function(){ console.count=function(){};
if(this._blocked)return; console.countReset=function(){};
return origSend.apply(this,arguments); console.assert=function(){};
}; console.profile=function(){};
return xhr; console.profileEnd=function(){};
}; console.time=function(){};
// Override fetch too console.timeLog=function(){};
var origFetch=window.fetch; console.timeEnd=function(){};
window.fetch=function(url,opts){ console.timeStamp=function(){};
if(url&&typeof url==='string'&&(url.includes('log_event')||url.includes('ptracking')||url.includes('generate_204')||url.includes('pagead'))){ // Suppress window errors
return Promise.resolve(new Response('',{status:200})); window.onerror=function(){return true};
} window.onunhandledrejection=function(e){e.preventDefault();return true};
return origFetch.apply(this,arguments);
};
// Override Image to block tracking pixels
var OrigImage=window.Image;
window.Image=function(w,h){
var img=new OrigImage(w,h);
var origSrc=Object.getOwnPropertyDescriptor(HTMLImageElement.prototype,'src');
Object.defineProperty(img,'src',{
set:function(v){if(v&&(v.includes('generate_204')||v.includes('log_event')||v.includes('pagead')))return;origSrc.set.call(this,v)},
get:function(){return origSrc.get.call(this)}
});
return img;
};
// Suppress console errors
var oe=console.error;
console.error=function(){
var s=Array.prototype.join.call(arguments,' ');
if(s.includes('ERR_BLOCKED')||s.includes('youtube')||s.includes('log_event')||s.includes('net::'))return;
oe.apply(console,arguments);
};
})(); })();
var tag=document.createElement('script');tag.src='https://www.youtube.com/iframe_api';document.head.appendChild(tag); var tag=document.createElement('script');tag.src='https://www.youtube.com/iframe_api';document.head.appendChild(tag);
var songs=[],yt=null,ready=false,playing=false,idx=-1,interval=null; var songs=[],yt=null,ready=false,playing=false,idx=-1,interval=null;