mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-11-09 06:12:56 +00:00
Clarify legacy handling comment
This commit is contained in:
1 parent
fea5835a62
commit
d271bd335c
6 files changed
+222
-39
No files matched your search
@@ -7,6 +7,73 @@
|
||||
const MAGNET_URI_PATTERN = /^magnet:\?/i;
|
||||
const HEX_INFO_HASH_PATTERN = /\b[0-9a-f]{40}\b/gi;
|
||||
|
||||
function safeTrim(value) {
|
||||
return typeof value === "string" ? value.trim() : "";
|
||||
}
|
||||
|
||||
function pickFirstString(values = []) {
|
||||
if (!Array.isArray(values)) {
|
||||
return "";
|
||||
}
|
||||
|
||||
for (const value of values) {
|
||||
const trimmed = safeTrim(value);
|
||||
if (trimmed) {
|
||||
return trimmed;
|
||||
}
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
export function deriveTitleFromEvent({
|
||||
parsedContent = {},
|
||||
tags = [],
|
||||
primaryTitle = "",
|
||||
} = {}) {
|
||||
const initial = safeTrim(primaryTitle);
|
||||
if (initial) {
|
||||
return initial;
|
||||
}
|
||||
|
||||
const directCandidates = pickFirstString([
|
||||
parsedContent?.title,
|
||||
parsedContent?.name,
|
||||
parsedContent?.filename,
|
||||
parsedContent?.fileName,
|
||||
parsedContent?.subject,
|
||||
parsedContent?.caption,
|
||||
]);
|
||||
if (directCandidates) {
|
||||
return directCandidates;
|
||||
}
|
||||
|
||||
const metaTitle = safeTrim(parsedContent?.meta?.title);
|
||||
if (metaTitle) {
|
||||
return metaTitle;
|
||||
}
|
||||
|
||||
if (Array.isArray(tags)) {
|
||||
for (const tag of tags) {
|
||||
if (!Array.isArray(tag) || tag.length < 2) {
|
||||
continue;
|
||||
}
|
||||
const key = safeTrim(tag[0]).toLowerCase();
|
||||
if (!key) {
|
||||
continue;
|
||||
}
|
||||
if (["title", "subject", "caption", "name"].includes(key)) {
|
||||
const candidate = safeTrim(tag[1]);
|
||||
if (candidate) {
|
||||
return candidate;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
function extractInfoHashesFromString(value, pushInfoHash) {
|
||||
if (typeof value !== "string") {
|
||||
return;
|
||||
|
||||
Reference in new issue
Block a user