mirror of
https://github.com/movie-web/providers.git
synced 2025-09-13 17:53:24 +00:00
30 lines
865 B
TypeScript
30 lines
865 B
TypeScript
import { SourcererOutput, makeSourcerer } from '@/providers/base';
|
|
import { MovieScrapeContext, ShowScrapeContext } from '@/utils/context';
|
|
import { NotFoundError } from '@/utils/errors';
|
|
|
|
import { scrapeIds, searchAndFindMedia } from './util';
|
|
|
|
async function universalScraper(ctx: ShowScrapeContext | MovieScrapeContext): Promise<SourcererOutput> {
|
|
const goojaraData = await searchAndFindMedia(ctx, ctx.media);
|
|
if (!goojaraData) throw new NotFoundError('Media not found');
|
|
|
|
ctx.progress(30);
|
|
const embeds = await scrapeIds(ctx, ctx.media, goojaraData);
|
|
if (embeds?.length === 0) throw new NotFoundError('No embeds found');
|
|
|
|
ctx.progress(60);
|
|
|
|
return {
|
|
embeds,
|
|
};
|
|
}
|
|
|
|
export const goojaraScraper = makeSourcerer({
|
|
id: 'goojara',
|
|
name: 'Goojara',
|
|
rank: 225,
|
|
flags: [],
|
|
scrapeShow: universalScraper,
|
|
scrapeMovie: universalScraper,
|
|
});
|