feat: split episodes and movies

This commit is contained in:
Fredrik Burmester
2024-08-26 08:49:12 +02:00
parent c12b58e5cb
commit aa60e320c5

View File

@@ -1,4 +1,3 @@
import { Button } from "@/components/Button";
import { Text } from "@/components/common/Text"; import { Text } from "@/components/common/Text";
import { LargeMovieCarousel } from "@/components/home/LargeMovieCarousel"; import { LargeMovieCarousel } from "@/components/home/LargeMovieCarousel";
import { ScrollingCollectionList } from "@/components/home/ScrollingCollectionList"; import { ScrollingCollectionList } from "@/components/home/ScrollingCollectionList";
@@ -6,7 +5,6 @@ import { Loader } from "@/components/Loader";
import { MediaListSection } from "@/components/medialists/MediaListSection"; import { MediaListSection } from "@/components/medialists/MediaListSection";
import { apiAtom, userAtom } from "@/providers/JellyfinProvider"; import { apiAtom, userAtom } from "@/providers/JellyfinProvider";
import { useSettings } from "@/utils/atoms/settings"; import { useSettings } from "@/utils/atoms/settings";
import { Ionicons } from "@expo/vector-icons";
import { BaseItemDto } from "@jellyfin/sdk/lib/generated-client/models"; import { BaseItemDto } from "@jellyfin/sdk/lib/generated-client/models";
import { import {
getItemsApi, getItemsApi,
@@ -41,7 +39,6 @@ type MediaListSection = BaseSection & {
type Section = ScrollingCollectionListSection | MediaListSection; type Section = ScrollingCollectionListSection | MediaListSection;
export default function index() { export default function index() {
const router = useRouter();
const queryClient = useQueryClient(); const queryClient = useQueryClient();
const [api] = useAtom(apiAtom); const [api] = useAtom(apiAtom);
@@ -211,14 +208,30 @@ export default function index() {
type: "ScrollingCollectionList", type: "ScrollingCollectionList",
}, },
{ {
title: "Suggestions", title: "Suggested Movies",
queryKey: ["suggestions", user?.Id], queryKey: ["suggestedMovies", user?.Id],
queryFn: async () => queryFn: async () =>
( (
await getSuggestionsApi(api).getSuggestions({ await getSuggestionsApi(api).getSuggestions({
userId: user?.Id, userId: user?.Id,
limit: 5, limit: 10,
mediaType: ["Video"], mediaType: ["Video"],
type: ["Movie"],
})
).data.Items || [],
type: "ScrollingCollectionList",
orientation: "vertical",
},
{
title: "Suggested Episodes",
queryKey: ["suggestedEpisodes", user?.Id],
queryFn: async () =>
(
await getSuggestionsApi(api).getSuggestions({
userId: user?.Id,
limit: 10,
mediaType: ["Video"],
type: ["Episode"],
}) })
).data.Items || [], ).data.Items || [],
type: "ScrollingCollectionList", type: "ScrollingCollectionList",