feat(media): support extension media fetch

Thread extension-provided headers and cookies into Firelink media metadata loading so authenticated page fetches show the correct formats.

Include those auth inputs in both metadata and yt-dlp info-json cache keys to prevent cross-session collisions, and advance the Firefox extension submodule to the published media-fetch commit.
This commit is contained in:
NimBold
2026-07-07 00:17:35 +03:30
parent 85ad9d18e8
commit e30eff4d2e
5 changed files with 136 additions and 15 deletions
+11 -1
View File
@@ -6,13 +6,23 @@ type FetchMediaMetadataArgs = {
cookieBrowser: string | null;
username: string | null;
password: string | null;
headers: string | null;
cookies: string | null;
proxy: string | null;
};
const inFlightMediaMetadata = new Map<string, Promise<MediaMetadata>>();
const metadataKey = (args: FetchMediaMetadataArgs) =>
JSON.stringify([args.url, args.cookieBrowser, args.username, args.password, args.proxy]);
JSON.stringify([
args.url,
args.cookieBrowser,
args.username,
args.password,
args.headers,
args.cookies,
args.proxy
]);
export const fetchMediaMetadataDeduped = (args: FetchMediaMetadataArgs): Promise<MediaMetadata> => {
const key = metadataKey(args);