Small Nest.js-based project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

18 lines
557 B

import { OmdbProvider } from '../types';
import { createOmdbApiClient } from './apiClient';
import { normalizeRawOmdbData } from './converters';
export const createOmdbProvider = (apiKey: string): OmdbProvider => {
const apiClient = createOmdbApiClient(apiKey);
return {
getMetadata: async (imdbId: string) => {
const rawOmdbData = await apiClient.fetchMetadata(imdbId);
if (!rawOmdbData) {
return undefined;
}
return normalizeRawOmdbData(rawOmdbData);
},
};
};