diff --git a/package.json b/package.json index dac915680..a4fe964a0 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "0.1.0", "private": true, "scripts": { - "dev": "nodemon -e ts --watch server --watch overseerr-api.yml -e .json,.ts,.yml -x ts-node -r tsconfig-paths/register --files --project server/tsconfig.json server/index.ts", + "dev": "tsc --noEmit --project server/tsconfig.json && nodemon -e ts --watch server --watch overseerr-api.yml -e .json,.ts,.yml -x ts-node -r tsconfig-paths/register --files --project server/tsconfig.json server/index.ts", "build:server": "tsc --project server/tsconfig.json && copyfiles -u 2 server/templates/**/*.{html,pug} dist/templates && tsc-alias -p server/tsconfig.json", "build:next": "next build", "build": "yarn build:next && yarn build:server", diff --git a/server/tsconfig.json b/server/tsconfig.json index bb31d02ca..8604092cc 100644 --- a/server/tsconfig.json +++ b/server/tsconfig.json @@ -10,7 +10,8 @@ "paths": { "@server/*": ["*"] }, - "typeRoots": ["../node_modules/*", "./types/*"], + "typeRoots": ["../node_modules/*", "./types"], + }, - "include": ["**/*.ts", "**/*.d.ts"] + "include": ["**/*.ts"], } diff --git a/src/components/Discover/PlexWatchlistSlider/index.tsx b/src/components/Discover/PlexWatchlistSlider/index.tsx index 76fba57ca..6c4765776 100644 --- a/src/components/Discover/PlexWatchlistSlider/index.tsx +++ b/src/components/Discover/PlexWatchlistSlider/index.tsx @@ -65,10 +65,10 @@ const PlexWatchlistSlider = () => { })} items={watchlistItems?.results.map((item) => ( ))} /> diff --git a/src/components/UserProfile/index.tsx b/src/components/UserProfile/index.tsx index bb0f7504e..6b4801962 100644 --- a/src/components/UserProfile/index.tsx +++ b/src/components/UserProfile/index.tsx @@ -16,6 +16,7 @@ import type { UserWatchDataResponse, } from '@server/interfaces/api/userInterfaces'; import type { MovieDetails } from '@server/models/Movie'; +import type { ArtistResult, ReleaseResult } from '@server/models/Search'; import type { TvDetails } from '@server/models/Tv'; import Link from 'next/link'; import { useRouter } from 'next/router'; @@ -38,7 +39,7 @@ const messages = defineMessages({ 'Media added to your Plex Watchlist will appear here.', }); -type MediaTitle = MovieDetails | TvDetails; +type MediaTitle = MovieDetails | TvDetails | ReleaseResult | ArtistResult; const UserProfile = () => { const intl = useIntl(); @@ -126,11 +127,13 @@ const UserProfile = () => { key={user.id} isDarker backgroundImages={Object.values(availableTitles) - .filter((media) => media.backdropPath) - .map( - (media) => - `https://image.tmdb.org/t/p/w1920_and_h800_multi_faces/${media.backdropPath}` - ) + .filter((media) => 'backdropPath' in media && media.backdropPath) + .map((media) => { + if ('backdropPath' in media) { + return `https://image.tmdb.org/t/p/w1920_and_h800_multi_faces/${media.backdropPath}`; + } + return ''; + }) .slice(0, 6)} /> @@ -354,10 +357,10 @@ const UserProfile = () => { })} items={watchlistItems?.results.map((item) => ( ))} /> @@ -381,9 +384,9 @@ const UserProfile = () => { ))} /> diff --git a/tsconfig.json b/tsconfig.json index dc7e99ac1..4b0ce8143 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -24,6 +24,6 @@ "@app/*": ["*"] } }, - "include": ["next-env.d.ts", "src/**/*.ts", "src/**/*.tsx", "src/**/*.d.ts"], + "include": ["next-env.d.ts", "src/**/*.ts", "src/**/*.tsx", "src/**/*.d.ts", "server/**/*.d.ts"], "exclude": ["node_modules"] }