mirror of
https://github.com/the1812/Bilibili-Evolved.git
synced 2025-11-04 21:22:45 +08:00
1 line
2.1 KiB
JavaScript
1 line
2.1 KiB
JavaScript
(()=>{return(e,t)=>{const n={less:-1,equal:0,greater:1,incomparable:NaN};class s{constructor(e){this.parts=e.split(".").map(e=>parseInt(e));this.versionString=e}compareTo(e){for(let t=0;t<this.parts.length;++t){if(e.parts.length===t){return n.greater}if(this.parts[t]===e.parts[t]){continue}if(this.parts[t]>e.parts[t]){return n.greater}return n.less}if(this.parts.length!==e.parts.length){return n.less}return n.equal}greaterThan(e){return this.compareTo(e)===n.greater}lessThan(e){return this.compareTo(e)===n.less}equals(e){return this.compareTo(e)===n.equal}}async function r(){const n=new s(t.data.latestVersion?t.data.latestVersion.text:await Ajax.getText(Resource.root+"version.txt"));const r=new s(e.currentVersion);const a=n.greaterThan(r);if(a){const t=`新版本${n.versionString}已发布. <a id="new-version-link" class="link" href="${e.latestVersionLink}">安装</a><a class="link" target="_blank" href="https://github.com/the1812/Bilibili-Evolved/releases">查看</a>`;const s=Toast.info(t,"检查更新");$("#new-version-link").on("click",()=>s&&s.dismiss())}return a}return{widget:{content:`\n <button\n class="gui-settings-flat-button"\n id="new-version-update">\n <a href="${e.latestVersionLink}" style="display:none"></a>\n <i class="icon-update"></i>\n <span>安装更新</span>\n </button>\n <button\n class="gui-settings-flat-button"\n id="new-version-info">\n <a target="blank" style="display:none" href="https://github.com/the1812/Bilibili-Evolved/releases"></a>\n <i class="icon-info"></i>\n <span>查看更新</span>\n </button>\n `,condition:r,success:()=>{document.querySelector("#new-version-update").addEventListener("click",e=>{if(e.target.nodeName.toLowerCase()!=="a"){document.querySelector("#new-version-update a").click()}});document.querySelector("#new-version-info").addEventListener("click",e=>{if(e.target.nodeName.toLowerCase()!=="a"){document.querySelector("#new-version-info a").click()}})}}}}})(); |