Fix v2 notify (fix #2693)

This commit is contained in:
the1812 2021-12-13 22:52:56 +08:00
parent 3a57b001d0
commit 2bbae46771
7 changed files with 9 additions and 9 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -71,7 +71,7 @@
"danmaku-send-bar.min.css": "F309FC17E7657BAA676D446458750D8069051617B44DD3D1457B4A9C519B2ED1", "danmaku-send-bar.min.css": "F309FC17E7657BAA676D446458750D8069051617B44DD3D1457B4A9C519B2ED1",
"danmaku-send-bar.min.js": "7F694676C4A4EA608C02981C2ABC27945270CC89C89F2F1FB66FD01327DD9066", "danmaku-send-bar.min.js": "7F694676C4A4EA608C02981C2ABC27945270CC89C89F2F1FB66FD01327DD9066",
"dark.min.css": "7EE62AEF281D05A54D7744EF3123A088F74F61094AAC52083CFEA9BC56A4C6C9", "dark.min.css": "7EE62AEF281D05A54D7744EF3123A088F74F61094AAC52083CFEA9BC56A4C6C9",
"dark.user.css": "450A7FCCF8A53E235A79156534178F36E1DD5DB28FFD8A2D296A0A4713114151", "dark.user.css": "5B6EC8A70C81819BD2DF4BD06BE2E8D5FDE5CCA1048F0D4636729D0C2A6088C0",
"dark-color-scheme.min.js": "7C89C14ACEE44CCE2E402A63768A3B53251B4B1D82675DD85532AABB8F2082FA", "dark-color-scheme.min.js": "7C89C14ACEE44CCE2E402A63768A3B53251B4B1D82675DD85532AABB8F2082FA",
"dark-important.min.css": "29FAC0857FB4BDF4EAD24582D4984471E80FC83EF9BD9A108B17D5AC5617DE75", "dark-important.min.css": "29FAC0857FB4BDF4EAD24582D4984471E80FC83EF9BD9A108B17D5AC5617DE75",
"dark-navbar.min.css": "7FAD547E326B768904B3739C978DF86FFDDD5E5064FB8F490710D197CCC3018B", "dark-navbar.min.css": "7FAD547E326B768904B3739C978DF86FFDDD5E5064FB8F490710D197CCC3018B",
@ -187,7 +187,7 @@
"no-banner.min.css": "DA096F94E7FA26992F3F71245E704D69A1C222D0ADA6F1990FA5D948507CE15F", "no-banner.min.css": "DA096F94E7FA26992F3F71245E704D69A1C222D0ADA6F1990FA5D948507CE15F",
"no-live-autoplay.min.js": "31917BE96EE9B8F8AC7E5FA17465AC8873ED7BB48AC3A44F4374E79C85363B70", "no-live-autoplay.min.js": "31917BE96EE9B8F8AC7E5FA17465AC8873ED7BB48AC3A44F4374E79C85363B70",
"no-mini-video-autoplay.min.js": "D0738ED56C685C3B02F39C0D1A0694ACE71A07397A59C6FE37CD9BC496592462", "no-mini-video-autoplay.min.js": "D0738ED56C685C3B02F39C0D1A0694ACE71A07397A59C6FE37CD9BC496592462",
"notify-new-version.min.js": "E80289A106797A7EC17C2293FBEC1B34C79B65BBF6156282FFCFE3522FA7875E", "notify-new-version.min.js": "5DA5626CBFE8D6EA279BE491B7270820B4611839141351CD622270A621E206DF",
"online-info-row.vue.min.js": "A1BE0481CEE968FE2239B05B9473751B4E9931BE5EF40D677E46B3C0ED43C974", "online-info-row.vue.min.js": "A1BE0481CEE968FE2239B05B9473751B4E9931BE5EF40D677E46B3C0ED43C974",
"outer-watchlater.min.css": "BB56A80224F7B37869C17C976C301623C47BBCCDB18F7E009A4F97B6C685C0DC", "outer-watchlater.min.css": "BB56A80224F7B37869C17C976C301623C47BBCCDB18F7E009A4F97B6C685C0DC",
"outer-watchlater.min.js": "5FC13134BBC69E8A1061A33D4BE6ED24508A8093D569B1CF33680AF2DE1BF86E", "outer-watchlater.min.js": "5FC13134BBC69E8A1061A33D4BE6ED24508A8093D569B1CF33680AF2DE1BF86E",

Binary file not shown.

View File

@ -1 +1 @@
(()=>(e,t)=>{const n={less:-1,equal:0,greater:1,incomparable:NaN};class s{constructor(e){if(!/^[\d\.]+$/.test(e)){throw new Error("Invalid version string")}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}}let i;async function r(){if(typeof offlineData!=="undefined"||isIframe()){return false}if(e.lastNewVersionCheck!==undefined){const t=Number(new Date);const n=t-e.lastNewVersionCheck;if(n<e.newVersionCheckInterval){return false}}try{const t=GM.info.script.name.match(/Bilibili Evolved \((.*)\)/);const n=t?"."+t[1].replace(/ /g,"-").toLowerCase():"";let r;try{r=await Ajax.monkey({url:(Resource.cdnRoot||Resource.root)+"version.txt"})}catch(e){const t=n===".preview";i=`https://cdn.jsdelivr.net/gh/the1812/Bilibili-Evolved@${t?"preview":"master"}/bilibili-evolved${n}.user.js`;const s=await Ajax.monkey({url:i});r=s.match(/@version[ ]*([\d\.]+)/)[1]}const a=new s(r);if(a.parts[0]>=2&&!e.noNotifyV2){const t=`新版本<span>${a.versionString}</span>已发布, 请前往项目的<a class="link" target="_blank" href="https://github.com/the1812/Bilibili-Evolved/releases">更新日志</a>或者<a class="link" target="_blank" href="https://github.com/the1812/Bilibili-Evolved/discussions">讨论区</a>了解如何安装和使用. <a class="link" href="javascript:void(0)" id="no-notify-v2">不再提示</a>`;const n=Toast.info(t,"检查更新");SpinQuery.select("#no-notify-v2").then((t=>t.addEventListener("click",(()=>{e.noNotifyV2=true;n&&n.dismiss()}))));return false}const o=new s(e.currentVersion);const l=a.greaterThan(o);if(l){const e=`新版本<span>${a.versionString}</span>已发布. <a id="new-version-link" class="link" href="${i}">安装</a><a class="link" target="_blank" href="https://github.com/the1812/Bilibili-Evolved/releases">查看</a>`;const t=Toast.info(e,"检查更新");SpinQuery.select("#new-version-link").then((e=>e.addEventListener("click",(()=>{t&&t.dismiss()}))))}return l}catch(e){return false}finally{e.lastNewVersionCheck=Number(new Date)}}const a=r();return{widget:{content:`\n<button class="gui-settings-flat-button" id="new-version-update">\n<a href="${i}" style="display:none"></a>\n<i class="icon-update"></i>\n<span>安装更新</span>\n</button>\n<button class="gui-settings-flat-button" 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:()=>a,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()}}))}}}})(); (()=>(e,t)=>{const n={less:-1,equal:0,greater:1,incomparable:NaN};class s{constructor(e){if(!/^[\d\.]+$/.test(e)){throw new Error("Invalid version string")}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}}let i;async function r(){if(typeof offlineData!=="undefined"||isIframe()){return false}if(e.lastNewVersionCheck!==undefined){const t=Number(new Date);const n=t-e.lastNewVersionCheck;if(n<e.newVersionCheckInterval){return false}}try{const t=GM.info.script.name.match(/Bilibili Evolved \((.*)\)/);const n=t?"."+t[1].replace(/ /g,"-").toLowerCase():"";let r;try{r=await Ajax.monkey({url:(Resource.cdnRoot||Resource.root)+"version.txt"})}catch(e){const t=n===".preview";i=`https://cdn.jsdelivr.net/gh/the1812/Bilibili-Evolved@${t?"preview":"master"}/bilibili-evolved${n}.user.js`;const s=await Ajax.monkey({url:i});r=s.match(/@version[ ]*([\d\.]+)/)[1]}const a=new s(r);if(a.parts[0]>=2){if(!e.noNotifyV2){const t=`新版本<span>${a.versionString}</span>已发布, 请前往项目的<a class="link" target="_blank" href="https://github.com/the1812/Bilibili-Evolved/releases">更新日志</a>或者<a class="link" target="_blank" href="https://github.com/the1812/Bilibili-Evolved/discussions">讨论区</a>了解如何安装和使用. <a class="link" href="javascript:void(0)" id="no-notify-v2">不再提示</a>`;const n=Toast.info(t,"检查更新");SpinQuery.select("#no-notify-v2").then((t=>t.addEventListener("click",(()=>{e.noNotifyV2=true;n&&n.dismiss()}))))}return false}const o=new s(e.currentVersion);const l=a.greaterThan(o);if(l){const e=`新版本<span>${a.versionString}</span>已发布. <a id="new-version-link" class="link" href="${i}">安装</a><a class="link" target="_blank" href="https://github.com/the1812/Bilibili-Evolved/releases">查看</a>`;const t=Toast.info(e,"检查更新");SpinQuery.select("#new-version-link").then((e=>e.addEventListener("click",(()=>{t&&t.dismiss()}))))}return l}catch(e){return false}finally{e.lastNewVersionCheck=Number(new Date)}}const a=r();return{widget:{content:`\n<button class="gui-settings-flat-button" id="new-version-update">\n<a href="${i}" style="display:none"></a>\n<i class="icon-update"></i>\n<span>安装更新</span>\n</button>\n<button class="gui-settings-flat-button" 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:()=>a,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()}}))}}}})();