diff --git a/Plugins/BDFDB.js b/Plugins/BDFDB.js index 9a35dd32fb..b6e52c150e 100644 --- a/Plugins/BDFDB.js +++ b/Plugins/BDFDB.js @@ -1 +1 @@ -if(window['BDFDB']&&typeof BDFDB['removeEventListener']=='function')BDFDB['removeEventListener'](BDFDB);if(window['BDFDB']&&BDFDB['WebModules']&&typeof BDFDB['WebModules']['unpatchall']=='function')BDFDB['WebModules']['unpatchall'](BDFDB);if(window['BDFDB']&&typeof BDFDB['killObservers']=='function')BDFDB['killObservers'](BDFDB);var BDFDB={'myPlugins':BDFDB&&BDFDB['myPlugins']?BDFDB['myPlugins']:{},'BDv2Api':BDFDB&&BDFDB['BDv2Api']?BDFDB['BDv2Api']:undefined,'creationTime':performance['now'](),'cachedData':{},'pressedKeys':[],'mousePosition':{'pageX':0x0,'pageY':0x0},'name':'$BDFDB'};(()=>{var c=Math['round'](Math['random']()*0x2386f26fc10000);BDFDB['id']=c;console['log']('%c[BDFDB]%c','color:\x20#3a71c1;\x20font-weight:\x20700;','','loading\x20library.');BDFDB['isLibraryOutdated']=function(){return performance['now']()-BDFDB['creationTime']>0x927c0;};BDFDB['loadMessage']=function(d){BDFDB['clearStarttimout'](d);d['name']=d['name']||(typeof d['getName']=='function'?d['getName']():null);d['version']=d['version']||(typeof d['getVersion']=='function'?d['getVersion']():null);d['author']=d['author']||(typeof d['getAuthor']=='function'?d['getAuthor']():null);d['description']=d['description']||(typeof d['getDescription']=='function'?d['getDescription']():null);var e=BDFDB['getLibraryStrings']()['toast_plugin_started']['replace']('{{oldversion}}','v'+d['version']);console['log']('%c['+d['name']+']%c','color:\x20#3a71c1;\x20font-weight:\x20700;','',e);if(!(window['settingsCookie']['fork-ps-2']&&window['settingsCookie']['fork-ps-2']===!![]))BDFDB['showToast'](d['name']+'\x20'+e,{'nopointer':!![],'selector':'plugin-started-toast'});var f=typeof d['getRawUrl']=='function'&&typeof d['getRawUrl']()=='string'?d['getRawUrl']():'https://mwittrien.github.io/BetterDiscordAddons/Plugins/'+d['name']+'/'+d['name']+'.plugin.js';BDFDB['checkUpdate'](d['name'],f);if(typeof d['initConstructor']==='function'){try{d['initConstructor']();}catch(g){console['error']('%c['+d['name']+']%c','color:\x20#3a71c1;\x20font-weight:\x20700;','','Fatal\x20Error:\x20Could\x20not\x20initiate\x20constructor!\x20'+g);}}if(typeof d['css']==='string')BDFDB['appendLocalStyle'](d['name'],d['css']);BDFDB['WebModules']['patchModules'](d);BDFDB['addOnSwitchListener'](d);BDFDB['addSettingsButtonListener'](d);BDFDB['addContextListener'](d);BDFDB['translatePlugin'](d);BDFDB['checkChangeLog'](d);if(!window['PluginUpdates']||typeof window['PluginUpdates']!=='object')window['PluginUpdates']={'plugins':{}};window['PluginUpdates']['plugins'][f]={'name':d['name'],'raw':f,'version':d['version']};if(typeof window['PluginUpdates']['interval']==='undefined')window['PluginUpdates']['interval']=setInterval(()=>{BDFDB['checkAllUpdates']();},0x3e8*0x3c*0x3c*0x2);d['started']=!![];for(let h in BDFDB['myPlugins'])if(!BDFDB['myPlugins'][h]['started']&&typeof BDFDB['myPlugins'][h]['initialize']=='function')BDFDB['myPlugins'][h]['initialize']();};BDFDB['unloadMessage']=function(i){BDFDB['clearStarttimout'](i);delete BDFDB['myPlugins'][i['name']];var j=BDFDB['getLibraryStrings']()['toast_plugin_stopped']['replace']('{{oldversion}}','v'+i['version']);console['log']('%c['+i['name']+']%c','color:\x20#3a71c1;\x20font-weight:\x20700;','',j);if(!(window['settingsCookie']['fork-ps-2']&&window['settingsCookie']['fork-ps-2']===!![]))BDFDB['showToast'](i['name']+'\x20'+j,{'nopointer':!![],'selector':'plugin-stopped-toast'});var k=typeof i['getRawUrl']=='function'&&typeof i['getRawUrl']()=='string'?i['getRawUrl']():'https://mwittrien.github.io/BetterDiscordAddons/Plugins/'+i['name']+'/'+i['name']+'.plugin.js';if(typeof i['css']==='string')BDFDB['removeLocalStyle'](i['name']);BDFDB['WebModules']['unpatchall'](i);BDFDB['removeOnSwitchListener'](i);BDFDB['removeSettingsButtonListener'](i);BDFDB['removeEventListener'](i);BDFDB['removeEles']('.'+i['name']+'-modal,\x20.'+i['name']['toLowerCase']()+'-modal,\x20.'+i['name']+'-settingsmodal,\x20.'+i['name']['toLowerCase']()+'-settingsmodal');BDFDB['killObservers'](i);delete window['PluginUpdates']['plugins'][k];if(BDFDB['isObjectEmpty'](window['PluginUpdates']['plugins']))BDFDB['removeEles']('#bd-settingspane-container\x20.bd-updatebtn'+BDFDB['dotCN']['_repofolderbutton']);delete i['started'];};BDFDB['translatePlugin']=function(l){if(typeof l['setLabelsByLanguage']==='function'||typeof l['changeLanguageStrings']==='function'){if(document['querySelector']('html')['lang'])n();else{var m=setInterval(()=>{if(document['querySelector']('html')['lang']){clearInterval(m);n();}},0x64);}function n(){var o=BDFDB['getDiscordLanguage']();if(typeof l['setLabelsByLanguage']==='function')l['labels']=l['setLabelsByLanguage'](o['id']);if(typeof l['changeLanguageStrings']==='function')l['changeLanguageStrings']();var p=BDFDB['getLibraryStrings']()['toast_plugin_translated']['replace']('{{ownlang}}',o['ownlang']);console['log']('%c['+l['name']+']%c','color:\x20#3a71c1;\x20font-weight:\x20700;','',p);}}};BDFDB['clearStarttimout']=function(q){if(q['startTimeout']){clearTimeout(q['startTimeout']);delete q['startTimeout'];}if(q['libLoadTimeout']){clearTimeout(q['libLoadTimeout']);delete q['libLoadTimeout'];}};BDFDB['checkChangeLog']=function(r){if(!BDFDB['isObject'](r)||!r['changelog'])return;var s=BDFDB['loadAllData'](r,'changelog');if(!s['currentversion']||BDFDB['checkVersions'](r['version'],s['currentversion'])){s['currentversion']=r['version'];BDFDB['saveAllData'](s,r,'changelog');BDFDB['openChangeLogModal'](r);}};BDFDB['openChangeLogModal']=function(t){if(!BDFDB['isObject'](t)||!t['changelog'])return;var u='';var v={'added':'New\x20Features','fixed':'Bug\x20Fixes','improved':'Improvements','progress':'Progress'};for(let w in t['changelog']){w=w['toLowerCase']();var x=BDFDB['disCN']['changelog'+w];if(x){u+='