From b80a7ad63f892683ec06afc4967339938e24ce45 Mon Sep 17 00:00:00 2001 From: the1812 Date: Tue, 3 Sep 2019 11:15:19 +0800 Subject: [PATCH] Fix bugs --- bilibili-evolved.offline.user.js | 19 ++++++------------- bilibili-evolved.preview-offline.user.js | 19 ++++++------------- bilibili-evolved.preview.user.js | 17 +++++------------ bilibili-evolved.user.js | 17 +++++------------ builder/dotnet/BundleBuilder.cs | 8 ++++---- builder/dotnet/publish/build.dll | Bin 42496 -> 42496 bytes min/bundle.zip | Bin 3839454 -> 479951 bytes src/client/resource-manager.js | 17 +++++------------ 8 files changed, 31 insertions(+), 66 deletions(-) diff --git a/bilibili-evolved.offline.user.js b/bilibili-evolved.offline.user.js index 7a1de4e5f..9faabfb61 100644 --- a/bilibili-evolved.offline.user.js +++ b/bilibili-evolved.offline.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name Bilibili Evolved (Offline) -// @version 413.79 +// @version 413.81 // @description Bilibili Evolved 的离线版, 所有功能都已内置于脚本中. // @author Grant Howard, Coulomb-G // @copyright 2019, Grant Howard (https://github.com/the1812) & Coulomb-G (https://github.com/Coulomb-G) @@ -2227,14 +2227,10 @@ class ResourceManager { url, responseType: 'blob', })) - console.log('zip: ', zip) zip.forEach((filename, file) => { const url = Resource.root + 'min/' + filename const resource = Object.values(Resource.all).find(it => it.rawUrl === url) if (resource) { - console.log('url: ', url) - console.log('resource: ', resource) - console.log('file: ', file) file.async('text').then(text => { settings.cache = Object.assign(settings.cache, { [resource.key]: text @@ -2247,7 +2243,6 @@ class ResourceManager { url: Resource.root + 'min/bundle.json', responseType: 'json', }) - console.log('hashJson: ', hashJson) await Promise.all(Object.entries(hashJson).map(async ([name, hash]) => { const url = Resource.root + 'min/' + name const resource = Object.values(Resource.all).find(it => it.rawUrl === url) @@ -2265,15 +2260,13 @@ class ResourceManager { return hashHex } const cacheHash = await getHash(cache) - if (cacheHash.toLowerCase() === hash.toLowerCase()) { - return + if (cacheHash.toLowerCase() !== hash.toLowerCase()) { + await resource.download() + settings.cache = Object.assign(settings.cache, { + [resource.key]: resource.text + }) } } - console.log(`loading ${resource.key}`) - await resource.download() - settings.cache = Object.assign(settings.cache, { - [resource.key]: resource.text - }) })) } diff --git a/bilibili-evolved.preview-offline.user.js b/bilibili-evolved.preview-offline.user.js index b0603f8ce..2cee9baa2 100644 --- a/bilibili-evolved.preview-offline.user.js +++ b/bilibili-evolved.preview-offline.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name Bilibili Evolved (Preview Offline) -// @version 413.79 +// @version 413.81 // @description Bilibili Evolved 的预览离线版, 可以抢先体验新功能, 并且所有功能都已内置于脚本中. // @author Grant Howard, Coulomb-G // @copyright 2019, Grant Howard (https://github.com/the1812) & Coulomb-G (https://github.com/Coulomb-G) @@ -2227,14 +2227,10 @@ class ResourceManager { url, responseType: 'blob', })) - console.log('zip: ', zip) zip.forEach((filename, file) => { const url = Resource.root + 'min/' + filename const resource = Object.values(Resource.all).find(it => it.rawUrl === url) if (resource) { - console.log('url: ', url) - console.log('resource: ', resource) - console.log('file: ', file) file.async('text').then(text => { settings.cache = Object.assign(settings.cache, { [resource.key]: text @@ -2247,7 +2243,6 @@ class ResourceManager { url: Resource.root + 'min/bundle.json', responseType: 'json', }) - console.log('hashJson: ', hashJson) await Promise.all(Object.entries(hashJson).map(async ([name, hash]) => { const url = Resource.root + 'min/' + name const resource = Object.values(Resource.all).find(it => it.rawUrl === url) @@ -2265,15 +2260,13 @@ class ResourceManager { return hashHex } const cacheHash = await getHash(cache) - if (cacheHash.toLowerCase() === hash.toLowerCase()) { - return + if (cacheHash.toLowerCase() !== hash.toLowerCase()) { + await resource.download() + settings.cache = Object.assign(settings.cache, { + [resource.key]: resource.text + }) } } - console.log(`loading ${resource.key}`) - await resource.download() - settings.cache = Object.assign(settings.cache, { - [resource.key]: resource.text - }) })) } diff --git a/bilibili-evolved.preview.user.js b/bilibili-evolved.preview.user.js index 5de7bb9e7..c46bc3c35 100644 --- a/bilibili-evolved.preview.user.js +++ b/bilibili-evolved.preview.user.js @@ -2247,14 +2247,10 @@ class ResourceManager { url, responseType: 'blob', })) - console.log('zip: ', zip) zip.forEach((filename, file) => { const url = Resource.root + 'min/' + filename const resource = Object.values(Resource.all).find(it => it.rawUrl === url) if (resource) { - console.log('url: ', url) - console.log('resource: ', resource) - console.log('file: ', file) file.async('text').then(text => { settings.cache = Object.assign(settings.cache, { [resource.key]: text @@ -2267,7 +2263,6 @@ class ResourceManager { url: Resource.root + 'min/bundle.json', responseType: 'json', }) - console.log('hashJson: ', hashJson) await Promise.all(Object.entries(hashJson).map(async ([name, hash]) => { const url = Resource.root + 'min/' + name const resource = Object.values(Resource.all).find(it => it.rawUrl === url) @@ -2285,15 +2280,13 @@ class ResourceManager { return hashHex } const cacheHash = await getHash(cache) - if (cacheHash.toLowerCase() === hash.toLowerCase()) { - return + if (cacheHash.toLowerCase() !== hash.toLowerCase()) { + await resource.download() + settings.cache = Object.assign(settings.cache, { + [resource.key]: resource.text + }) } } - console.log(`loading ${resource.key}`) - await resource.download() - settings.cache = Object.assign(settings.cache, { - [resource.key]: resource.text - }) })) } diff --git a/bilibili-evolved.user.js b/bilibili-evolved.user.js index a0a7a9b6d..5f9c22821 100644 --- a/bilibili-evolved.user.js +++ b/bilibili-evolved.user.js @@ -2247,14 +2247,10 @@ class ResourceManager { url, responseType: 'blob', })) - console.log('zip: ', zip) zip.forEach((filename, file) => { const url = Resource.root + 'min/' + filename const resource = Object.values(Resource.all).find(it => it.rawUrl === url) if (resource) { - console.log('url: ', url) - console.log('resource: ', resource) - console.log('file: ', file) file.async('text').then(text => { settings.cache = Object.assign(settings.cache, { [resource.key]: text @@ -2267,7 +2263,6 @@ class ResourceManager { url: Resource.root + 'min/bundle.json', responseType: 'json', }) - console.log('hashJson: ', hashJson) await Promise.all(Object.entries(hashJson).map(async ([name, hash]) => { const url = Resource.root + 'min/' + name const resource = Object.values(Resource.all).find(it => it.rawUrl === url) @@ -2285,15 +2280,13 @@ class ResourceManager { return hashHex } const cacheHash = await getHash(cache) - if (cacheHash.toLowerCase() === hash.toLowerCase()) { - return + if (cacheHash.toLowerCase() !== hash.toLowerCase()) { + await resource.download() + settings.cache = Object.assign(settings.cache, { + [resource.key]: resource.text + }) } } - console.log(`loading ${resource.key}`) - await resource.download() - settings.cache = Object.assign(settings.cache, { - [resource.key]: resource.text - }) })) } diff --git a/builder/dotnet/BundleBuilder.cs b/builder/dotnet/BundleBuilder.cs index 96c1fdd6e..edfd06bfa 100644 --- a/builder/dotnet/BundleBuilder.cs +++ b/builder/dotnet/BundleBuilder.cs @@ -20,10 +20,10 @@ namespace BilibiliEvolved.Build select file.Replace(@"\", "/"); var hashDict = new Dictionary(); var zipName = "min/bundle.zip"; - // if (File.Exists(zipName)) - // { - // File.Delete(zipName); - // } + if (File.Exists(zipName)) + { + File.Delete(zipName); + } using (var sha256 = new SHA256Managed()) using (var zip = ZipFile.Open(zipName, ZipArchiveMode.Update)) { diff --git a/builder/dotnet/publish/build.dll b/builder/dotnet/publish/build.dll index fd8c3823ea693c2e95150d5b10673f2f223363da..03a0b57edf029710bbdb8328c8259617d6ea2775 100644 GIT binary patch delta 7170 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 delta 7182 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 diff --git a/min/bundle.zip b/min/bundle.zip index f3148b37cf7cb58d9054f1f13508deaaba6a28f9..2cda02e70dd2fe4f1a751e65fff6377095b09859 100644 GIT binary patch delta 79 zcmcb&`W55(rLr3qKVrHY*}kDb42Z>nSOSP8fmjNNrMGV=klE(5{Zy5uGdob(cK#+y XX&Dh#HU=Q*0Kx=i28Kv|b|4P`ma-g_ delta 12375 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 { const url = Resource.root + 'min/' + filename const resource = Object.values(Resource.all).find(it => it.rawUrl === url) if (resource) { - console.log('url: ', url) - console.log('resource: ', resource) - console.log('file: ', file) file.async('text').then(text => { settings.cache = Object.assign(settings.cache, { [resource.key]: text @@ -235,7 +231,6 @@ export class ResourceManager { url: Resource.root + 'min/bundle.json', responseType: 'json', }) - console.log('hashJson: ', hashJson) await Promise.all(Object.entries(hashJson).map(async ([name, hash]) => { const url = Resource.root + 'min/' + name const resource = Object.values(Resource.all).find(it => it.rawUrl === url) @@ -253,15 +248,13 @@ export class ResourceManager { return hashHex } const cacheHash = await getHash(cache) - if (cacheHash.toLowerCase() === hash.toLowerCase()) { - return + if (cacheHash.toLowerCase() !== hash.toLowerCase()) { + await resource.download() + settings.cache = Object.assign(settings.cache, { + [resource.key]: resource.text + }) } } - console.log(`loading ${resource.key}`) - await resource.download() - settings.cache = Object.assign(settings.cache, { - [resource.key]: resource.text - }) })) }