5 Commits

Author SHA1 Message Date
MengYX
aab611bff5 bump version 2021-08-27 10:01:05 +08:00
MengYX
942e43fa16 fix #169 2021-08-25 01:04:46 +08:00
MengYX
84be57a903 fix #179 2021-08-24 23:55:44 +08:00
MengYX
a6a3c02538 fix #179 2021-08-24 23:13:19 +08:00
Emmm Monster
216ff4021c fix(extension): compute version name 2021-08-11 23:04:01 +08:00
4 changed files with 18650 additions and 3095 deletions

View File

@@ -15,6 +15,9 @@ const manifest = JSON.parse(manifestRaw)
const pkgRaw = fs.readFileSync("./package.json", "utf-8") const pkgRaw = fs.readFileSync("./package.json", "utf-8")
const pkg = JSON.parse(pkgRaw) const pkg = JSON.parse(pkgRaw)
manifest["version"] = pkg["version"] ver_str = pkg["version"]
if (ver_str.startsWith("v")) ver_str = ver_str.slice(1)
manifest["version"] = ver_str
fs.writeFileSync("./dist/manifest.json", JSON.stringify(manifest), "utf-8") fs.writeFileSync("./dist/manifest.json", JSON.stringify(manifest), "utf-8")
console.log("Write: manifest.json") console.log("Write: manifest.json")

21717
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{ {
"name": "unlock-music", "name": "unlock-music",
"version": "v1.9.0", "version": "v1.9.1",
"updateInfo": "新增写入本地文件系统; 优化.kwm解锁; 支持.acc嗅探; 使用Typescript重构", "updateInfo": "新增写入本地文件系统; 优化.kwm解锁; 支持.acc嗅探; 使用Typescript重构",
"license": "MIT", "license": "MIT",
"description": "Unlock encrypted music file in browser.", "description": "Unlock encrypted music file in browser.",
@@ -24,7 +24,8 @@
"iconv-lite": "^0.6.3", "iconv-lite": "^0.6.3",
"jimp": "^0.16.1", "jimp": "^0.16.1",
"metaflac-js": "^1.0.5", "metaflac-js": "^1.0.5",
"music-metadata-browser": "^2.4.3", "music-metadata": "7.9.0",
"music-metadata-browser": "2.2.7",
"register-service-worker": "^1.7.2", "register-service-worker": "^1.7.2",
"threads": "^1.6.5", "threads": "^1.6.5",
"vue": "^2.6.14" "vue": "^2.6.14"
@@ -36,7 +37,7 @@
"@vue/cli-plugin-typescript": "^4.5.13", "@vue/cli-plugin-typescript": "^4.5.13",
"@vue/cli-service": "^4.5.13", "@vue/cli-service": "^4.5.13",
"babel-plugin-component": "^1.1.1", "babel-plugin-component": "^1.1.1",
"node-sass": "^5.0.0", "sass": "^1.38.1",
"sass-loader": "^10.2.0", "sass-loader": "^10.2.0",
"semver": "^7.3.5", "semver": "^7.3.5",
"threads-plugin": "^1.4.0", "threads-plugin": "^1.4.0",

View File

@@ -128,17 +128,17 @@ export function QmcMaskGetDefault() {
} }
export function QmcMaskDetectMflac(data: Uint8Array) { export function QmcMaskDetectMflac(data: Uint8Array) {
let search_len = Math.min(0x8000, data.length), mask; let search_len = Math.min(0x8000, data.length)
for (let block_idx = 0; block_idx < search_len; block_idx += 128) { for (let block_idx = 0; block_idx < search_len; block_idx += 128) {
try { try {
mask = new QmcMask(data.slice(block_idx, block_idx + 128)); let mask = new QmcMask(data.slice(block_idx, block_idx + 128));
if (BytesHasPrefix(mask.Decrypt(data.slice(0, FLAC_HEADER.length)), FLAC_HEADER)) { if (BytesHasPrefix(mask.Decrypt(data.slice(0, FLAC_HEADER.length)), FLAC_HEADER)) {
break; return mask
} }
} catch (e) { } catch (e) {
} }
} }
return mask; return
} }
export function QmcMaskDetectMgg(data: Uint8Array) { export function QmcMaskDetectMgg(data: Uint8Array) {
@@ -166,13 +166,13 @@ export function QmcMaskDetectMgg(data: Uint8Array) {
for (let i = 0; i < 44; i++) for (let i = 0; i < 44; i++)
matrix[i] = calcMaskFromConfidence(matrixConfidence[i]); matrix[i] = calcMaskFromConfidence(matrixConfidence[i]);
} catch (e) { } catch (e) {
return; return
} }
const mask = new QmcMask(matrix); const mask = new QmcMask(matrix);
if (!BytesHasPrefix(mask.Decrypt(data.slice(0, OGG_HEADER.length)), OGG_HEADER)) { if (BytesHasPrefix(mask.Decrypt(data.slice(0, OGG_HEADER.length)), OGG_HEADER)) {
return; return mask
} }
return mask; return
} }