From a569956ea44b420de7884ae3baebeca41f282f77 Mon Sep 17 00:00:00 2001 From: Inrixia Date: Tue, 18 Apr 2023 17:34:45 +1200 Subject: [PATCH] Additional checks to handle bad video variants or videos with no variants avalible --- src/lib/Video.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib/Video.ts b/src/lib/Video.ts index 9d75e14..ebcc944 100644 --- a/src/lib/Video.ts +++ b/src/lib/Video.ts @@ -246,7 +246,9 @@ export default class Video { const downloadOrigin = this.getOrigin(delivery.origins); // Sort qualities from highest to smallest - const availableVariants = delivery.variants.sort((a, b) => (b.order || 0) - (a.order || 0)); + const availableVariants = delivery.variants.filter((variant) => variant.url !== "").sort((a, b) => (b.order || 0) - (a.order || 0)); + + if (availableVariants.length === 0) throw new Error("No variants available for download!"); // Set the quality to use based on whats given in the settings.json or the highest available const downloadVariant = availableVariants.find((variant) => variant.label.includes(quality)) ?? availableVariants[0];