From 3ff14a94c630932aa4e4323340f58f96519fd4dd Mon Sep 17 00:00:00 2001 From: ThaUnknown <6506529+ThaUnknown@users.noreply.github.com> Date: Fri, 2 May 2025 21:51:25 +0200 Subject: [PATCH] fix: i got sick of anitomyscript, its now all an array --- package.json | 2 +- pnpm-lock.yaml | 10 +++--- src/lib/components/SearchModal.svelte | 31 +++++++---------- src/lib/components/ui/player/resolver.ts | 42 ++++++++++++------------ src/lib/modules/extensions/extensions.ts | 6 ++-- 5 files changed, 42 insertions(+), 49 deletions(-) diff --git a/package.json b/package.json index 6372dd7..a6fb6be 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ui", - "version": "6.1.13", + "version": "6.1.14", "license": "BUSL-1.1", "private": true, "packageManager": "pnpm@9.14.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 08eb6ab..3820d0a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -43,7 +43,7 @@ importers: version: 1.0.16 anitomyscript: specifier: github:thaunknown/anitomyscript - version: https://codeload.github.com/thaunknown/anitomyscript/tar.gz/6214b582127f16b3e50fc12b9cdb2fcf650f7aa6 + version: https://codeload.github.com/thaunknown/anitomyscript/tar.gz/fc00888d69ba59258167f2fac9e86576b29863b7 bottleneck: specifier: ^2.19.5 version: 2.19.5 @@ -812,9 +812,9 @@ packages: ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - anitomyscript@https://codeload.github.com/thaunknown/anitomyscript/tar.gz/6214b582127f16b3e50fc12b9cdb2fcf650f7aa6: - resolution: {tarball: https://codeload.github.com/thaunknown/anitomyscript/tar.gz/6214b582127f16b3e50fc12b9cdb2fcf650f7aa6} - version: 2.0.8 + anitomyscript@https://codeload.github.com/thaunknown/anitomyscript/tar.gz/fc00888d69ba59258167f2fac9e86576b29863b7: + resolution: {tarball: https://codeload.github.com/thaunknown/anitomyscript/tar.gz/fc00888d69ba59258167f2fac9e86576b29863b7} + version: 2.0.10 ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} @@ -3212,7 +3212,7 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - anitomyscript@https://codeload.github.com/thaunknown/anitomyscript/tar.gz/6214b582127f16b3e50fc12b9cdb2fcf650f7aa6: {} + anitomyscript@https://codeload.github.com/thaunknown/anitomyscript/tar.gz/fc00888d69ba59258167f2fac9e86576b29863b7: {} ansi-regex@5.0.1: {} diff --git a/src/lib/components/SearchModal.svelte b/src/lib/components/SearchModal.svelte index 4787848..ea2bb75 100644 --- a/src/lib/components/SearchModal.svelte +++ b/src/lib/components/SearchModal.svelte @@ -34,27 +34,20 @@ // termMapping.HDTV = termMapping.HDTVRIP = termMapping.TVRIP = termMapping['TV-RIP'] = { text: 'TV', color: '#ab1b31' } // termMapping.WEBCAST = termMapping.WEBRIP = { text: 'WEB', color: '#ab1b31' } - function sanitiseTerms ({ video_term: vid, audio_term: aud, video_resolution: resolution, source: src }: AnitomyResult) { - const video = !Array.isArray(vid) ? [vid] : vid - const audio = !Array.isArray(aud) ? [aud] : aud - const source = !Array.isArray(src) ? [src] : src - - const terms = [...new Set([...video, ...audio, ...source].map(term => termMapping[term?.toUpperCase()]).filter(t => t))] as Array<{text: string, color: string}> - if (resolution) terms.unshift({ text: resolution, color: '#c6ec58' }) + function sanitiseTerms ({ video_term: video, audio_term: audio, video_resolution: resolution, source }: AnitomyResult) { + const terms = [...new Set([...video ?? [], ...audio ?? [], ...source ?? []].map(term => termMapping[term.toUpperCase() ?? '']).filter(t => t))] as Array<{text: string, color: string}> + if (resolution?.length) terms.unshift({ text: resolution[0]!, color: '#c6ec58' }) return terms } - function simplifyFilename ({ video_term: vid, audio_term: aud, video_resolution: resolution, file_name: name, release_group: group, file_checksum: checksum }: AnitomyResult) { - const video = !Array.isArray(vid) ? [vid] : vid - const audio = !Array.isArray(aud) ? [aud] : aud - - let simpleName = name - if (group) simpleName = simpleName.replace(group, '') - if (resolution) simpleName = simpleName.replace(resolution, '') - if (checksum) simpleName = simpleName.replace(checksum, '') - for (const term of video) simpleName = simpleName.replace(term, '') - for (const term of audio) simpleName = simpleName.replace(term, '') + function simplifyFilename ({ video_term: video, audio_term: audio, video_resolution: resolution, file_name: name, release_group: group, file_checksum: checksum }: AnitomyResult) { + let simpleName = name[0]! + if (group?.length) simpleName = simpleName.replace(group[0]!, '') + if (resolution?.length) simpleName = simpleName.replace(resolution[0]!, '') + if (checksum?.length) simpleName = simpleName.replace(checksum[0]!, '') + for (const term of video ?? []) simpleName = simpleName.replace(term[0]!, '') + for (const term of audio ?? []) simpleName = simpleName.replace(term[0]!, '') return simpleName.replace(/[[{(]\s*[\]})]/g, '').replace(/\s+/g, ' ').trim() } @@ -214,7 +207,7 @@ {#if search && media} {@const { results, errors } = search} {#each filterAndSortResults(results, inputText, downloaded) as result (result.hash)} -