fix: make sure series/movies endpoints use correct type

This commit is contained in:
Max Richter
2025-10-31 17:55:02 +01:00
parent de0b2e7a8f
commit ab9c0f96e0
4 changed files with 47 additions and 67 deletions

View File

@@ -1,17 +1,21 @@
export type Movie = { export type Movie = {
id: string; _type: "Review";
name: string;
description: string;
type: "movie";
tags: string[];
meta: {
date: Date;
tmdbId?: number; tmdbId?: number;
link?: string;
author?: {
_type: "Person";
name?: string;
};
datePublished?: string;
reviewRating?: {
bestRating?: number;
worstRating?: number;
ratingValue?: number;
};
reviewBody?: string;
itemReviewed?: {
name?: string;
};
keywords?: string[]; keywords?: string[];
image: string; image?: string;
thumbnail?: string;
average?: string;
author: string;
rating: number;
};
}; };

View File

@@ -1,17 +1,3 @@
export type Series = { import { Movie } from "./movies.ts";
id: string;
name: string; export type Series = Movie;
description: string;
type: "series";
tags: string[];
meta: {
date: Date;
image: string;
author: string;
tmdbId?: number;
rating: number;
average?: string;
thumbnail?: string;
done?: boolean;
};
};

View File

@@ -42,19 +42,6 @@ export const handler: Handlers = {
await createResource(finalPath, poster); await createResource(finalPath, poster);
} }
const metadata = {
tmdbId,
} as Movie["meta"];
if (releaseDate) {
metadata.date = new Date(releaseDate);
}
if (finalPath) {
metadata.image = finalPath;
}
if (director?.name) {
metadata.author = director.name;
}
const tags: string[] = []; const tags: string[] = [];
if (movieDetails.genres) { if (movieDetails.genres) {
tags.push( tags.push(
@@ -65,12 +52,19 @@ export const handler: Handlers = {
} }
const movie: Movie = { const movie: Movie = {
id: name, _type: "Review",
image: finalPath,
datePublished: releaseDate,
tmdbId,
author: {
_type: "Person",
name: director?.name,
},
itemReviewed: {
name: name, name: name,
type: "movie", },
description: "", reviewBody: "",
tags, keywords: tags,
meta: metadata,
}; };
await createResource(`movies/${safeFileName(name)}.md`, movie); await createResource(`movies/${safeFileName(name)}.md`, movie);

View File

@@ -40,17 +40,6 @@ export const handler: Handlers = {
await createResource(finalPath, poster); await createResource(finalPath, poster);
} }
const metadata = { tmdbId } as Series["meta"];
if (releaseDate) {
metadata.date = new Date(releaseDate);
}
if (finalPath) {
metadata.image = finalPath;
}
if (director) {
metadata.author = director.name;
}
const tags: string[] = []; const tags: string[] = [];
if (seriesDetails.genres) { if (seriesDetails.genres) {
tags.push( tags.push(
@@ -61,12 +50,19 @@ export const handler: Handlers = {
} }
const series: Series = { const series: Series = {
id: name, _type: "Review",
image: finalPath,
datePublished: releaseDate,
tmdbId,
author: {
_type: "Person",
name: director?.name,
},
itemReviewed: {
name: name, name: name,
tags, },
type: "series", reviewBody: "",
description: "", keywords: tags,
meta: metadata,
}; };
await createResource(`series/${safeFileName(name)}.md`, series); await createResource(`series/${safeFileName(name)}.md`, series);