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"]
}