mirror of
https://github.com/wukko/cobalt.git
synced 2025-02-02 16:36:20 +01:00
api/create-filename: refactor
This commit is contained in:
parent
6aa39dd1d1
commit
6dcd951e21
1 changed files with 34 additions and 66 deletions
|
@ -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}`;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue