api/create-filename: refactor

This commit is contained in:
wukko 2024-08-25 14:48:28 +06:00
parent 6aa39dd1d1
commit 6dcd951e21
No known key found for this signature in database
GPG key ID: 3E30B3F26C7B4AA2

View file

@ -1,78 +1,46 @@
export default function(f, template, isAudioOnly, isAudioMuted) { export default (f, style, isAudioOnly, isAudioMuted) => {
let filename = ''; let filename = '';
switch(template) { let infoBase = [f.service, f.id];
let classicTags = infoBase.concat([
f.resolution,
f.youtubeFormat,
]);
let basicTags = [f.qualityLabel, f.youtubeFormat];
const title = `${f.title} - ${f.author}`;
if (isAudioMuted) {
classicTags.push("mute");
basicTags.push("mute");
} else if (f.youtubeDubName) {
classicTags.push(f.youtubeDubName);
basicTags.push(f.youtubeDubName);
}
switch (style) {
default: default:
case "classic": case "classic":
// youtube_MMK3L4W70g4_1920x1080_h264_mute.mp4 if (isAudioOnly) {
// youtube_MMK3L4W70g4_audio.mp3 infoBase.push(f.youtubeDubName);
filename += `${f.service}_${f.id}`; return `${infoBase.join("_")}_audio`;
if (!isAudioOnly) {
if (f.resolution) filename += `_${f.resolution}`;
if (f.youtubeFormat) filename += `_${f.youtubeFormat}`;
if (!isAudioMuted && f.youtubeDubName) filename += `_${f.youtubeDubName}`;
if (isAudioMuted) filename += '_mute';
filename += `.${f.extension}`
} else {
filename += `_audio`;
if (f.youtubeDubName) filename += `_${f.youtubeDubName}`;
}
break;
case "pretty":
// Loossemble (루셈블) - 'Sensitive' MV (1080p, h264, mute, youtube).mp4
// How secure is 256 bit security? - 3Blue1Brown (es, youtube).mp3
filename += `${f.title} `;
if (!isAudioOnly) {
filename += '('
if (f.qualityLabel) filename += `${f.qualityLabel}, `;
if (f.youtubeFormat) filename += `${f.youtubeFormat}, `;
if (!isAudioMuted && f.youtubeDubName) filename += `${f.youtubeDubName}, `;
if (isAudioMuted) filename += 'mute, ';
filename += `${f.service}`;
filename += ')';
filename += `.${f.extension}`
} else {
filename += `- ${f.author} (`;
if (f.youtubeDubName) filename += `${f.youtubeDubName}, `;
filename += `${f.service})`
} }
filename = classicTags.join("_");
break; break;
case "basic": case "basic":
// Loossemble (루셈블) - 'Sensitive' MV (1080p, h264, ru).mp4 if (isAudioOnly) return title;
// How secure is 256 bit security? - 3Blue1Brown (es).mp3 filename = `${title} (${basicTags.join(", ")})`;
filename += `${f.title} `; break;
if (!isAudioOnly) { case "pretty":
filename += '(' if (isAudioOnly) return `${title} (${infoBase[0]})`;
if (f.qualityLabel) filename += `${f.qualityLabel}, `; filename = `${title} (${[...basicTags, infoBase[0]].join(", ")})`;
if (f.youtubeFormat) filename += `${f.youtubeFormat}`;
if (!isAudioMuted && f.youtubeDubName) filename += `, ${f.youtubeDubName}`;
if (isAudioMuted) filename += ', mute';
filename += ')';
filename += `.${f.extension}`
} else {
filename += `- ${f.author}`;
if (f.youtubeDubName) filename += ` (${f.youtubeDubName})`;
}
break; break;
case "nerdy": case "nerdy":
// Loossemble (루셈블) - 'Sensitive' MV (1080p, h264, ru, youtube, MMK3L4W70g4).mp4 if (isAudioOnly) return `${title} (${infoBase.join(", ")})`;
// Loossemble (루셈블) - 'Sensitive' MV - Loossemble (ru, youtube, MMK3L4W70g4).mp4 filename = `${title} (${basicTags.concat(infoBase).join(", ")})`;
filename += `${f.title} `;
if (!isAudioOnly) {
filename += '('
if (f.qualityLabel) filename += `${f.qualityLabel}, `;
if (f.youtubeFormat) filename += `${f.youtubeFormat}, `;
if (!isAudioMuted && f.youtubeDubName) filename += `${f.youtubeDubName}, `;
if (isAudioMuted) filename += 'mute, ';
filename += `${f.service}, ${f.id}`;
filename += ')'
filename += `.${f.extension}`
} else {
filename += `- ${f.author} (`;
if (f.youtubeDubName) filename += `${f.youtubeDubName}, `;
filename += `${f.service}, ${f.id})`
}
break; break;
} }
return filename.replace(' ,', '').replace(', )', ')').replace(',)', ')') return `${filename}.${f.extension}`;
} }