mirror of
https://github.com/streamyfin/streamyfin.git
synced 2026-06-06 14:08:30 +01:00
Compare commits
1 Commits
develop
...
fix/series
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d3808bc196 |
22
.github/ISSUE_TEMPLATE/issue_report.yml
vendored
22
.github/ISSUE_TEMPLATE/issue_report.yml
vendored
@@ -1,5 +1,5 @@
|
|||||||
name: "🐛 Bug Report"
|
name: "🐛 Bug Report"
|
||||||
description: Create a report to help Streamyfin improve
|
description: Create a report to help us improve
|
||||||
title: "[Bug]: "
|
title: "[Bug]: "
|
||||||
labels:
|
labels:
|
||||||
- "🐛 bug"
|
- "🐛 bug"
|
||||||
@@ -36,7 +36,7 @@ body:
|
|||||||
attributes:
|
attributes:
|
||||||
label: What happened?
|
label: What happened?
|
||||||
description: A clear and concise description of what the bug is.
|
description: A clear and concise description of what the bug is.
|
||||||
placeholder: Describe what happened in detail, the more precise the better.
|
placeholder: Describe what happened in detail.
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
@@ -67,7 +67,7 @@ body:
|
|||||||
attributes:
|
attributes:
|
||||||
label: Which device and operating system are you using?
|
label: Which device and operating system are you using?
|
||||||
description: Please provide your device model and OS version
|
description: Please provide your device model and OS version
|
||||||
placeholder: e.g. iPhone 17 Pro / iOS 26.5.1, Samsung Galaxy S25 / Android 16, Apple TV / tvOS 26.5
|
placeholder: e.g. iPhone 15 Pro, iOS 18.1.1 or Samsung Galaxy S24, Android 14
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
@@ -75,11 +75,11 @@ body:
|
|||||||
id: version
|
id: version
|
||||||
attributes:
|
attributes:
|
||||||
label: Streamyfin Version
|
label: Streamyfin Version
|
||||||
description: What version of Streamyfin are you using?
|
description: What version of Streamyfin are you running?
|
||||||
options:
|
options:
|
||||||
- 0.54.1
|
- 0.47.1
|
||||||
- 0.51.0
|
- 0.30.2
|
||||||
- Older
|
- older
|
||||||
- TestFlight/Development build
|
- TestFlight/Development build
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
@@ -90,9 +90,9 @@ body:
|
|||||||
label: Jellyfin Server Information
|
label: Jellyfin Server Information
|
||||||
description: Please provide details about your Jellyfin server
|
description: Please provide details about your Jellyfin server
|
||||||
placeholder: |
|
placeholder: |
|
||||||
- Jellyfin Server Version: e.g. 10.11.10
|
- Jellyfin Server Version: e.g. 10.10.7
|
||||||
- Server OS: e.g. Ubuntu 26.04, Windows 11, Docker, Proxmox
|
- Server OS: e.g. Ubuntu 22.04, Windows 11, Docker
|
||||||
- Connection: e.g. Local network, remote via domain, VPN
|
- Connection: e.g. Local network, Remote via domain, VPN
|
||||||
|
|
||||||
- type: textarea
|
- type: textarea
|
||||||
id: screenshots
|
id: screenshots
|
||||||
@@ -104,7 +104,7 @@ body:
|
|||||||
id: logs
|
id: logs
|
||||||
attributes:
|
attributes:
|
||||||
label: Relevant logs (if available)
|
label: Relevant logs (if available)
|
||||||
description: If you have access to app logs or crash reports, please include them here. **Remember to remove any personal information like server URL, API keys or usernames.**
|
description: If you have access to app logs or crash reports, please include them here. **Remember to remove any personal information like server URLs or usernames.**
|
||||||
render: shell
|
render: shell
|
||||||
|
|
||||||
- type: textarea
|
- type: textarea
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ import { FlashList } from "@shopify/flash-list";
|
|||||||
import { useQuery } from "@tanstack/react-query";
|
import { useQuery } from "@tanstack/react-query";
|
||||||
import { useAtom } from "jotai";
|
import { useAtom } from "jotai";
|
||||||
import type React from "react";
|
import type React from "react";
|
||||||
|
import { useMemo } from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { View } from "react-native";
|
import { View } from "react-native";
|
||||||
import { apiAtom, userAtom } from "@/providers/JellyfinProvider";
|
import { apiAtom, userAtom } from "@/providers/JellyfinProvider";
|
||||||
@@ -33,13 +34,16 @@ export const NextUp: React.FC<{ seriesId: string }> = ({ seriesId }) => {
|
|||||||
staleTime: 0,
|
staleTime: 0,
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!items?.length)
|
// Defensive client-side filter: some Jellyfin server versions ignore the
|
||||||
return (
|
// `seriesId` query param on /Shows/NextUp and return next-up items across all
|
||||||
<View className='px-4'>
|
// series (the same content as the home tab's Next Up row). Filter to ensure
|
||||||
<Text className='text-lg font-bold mb-2'>{t("item_card.next_up")}</Text>
|
// we only ever show episodes belonging to this series.
|
||||||
<Text className='opacity-50'>{t("item_card.no_items_to_display")}</Text>
|
const filteredItems = useMemo(
|
||||||
</View>
|
() => items?.filter((item) => item.SeriesId === seriesId) ?? [],
|
||||||
);
|
[items, seriesId],
|
||||||
|
);
|
||||||
|
|
||||||
|
if (!filteredItems.length) return null;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<View>
|
<View>
|
||||||
@@ -50,7 +54,7 @@ export const NextUp: React.FC<{ seriesId: string }> = ({ seriesId }) => {
|
|||||||
contentContainerStyle={{ paddingLeft: 16 }}
|
contentContainerStyle={{ paddingLeft: 16 }}
|
||||||
horizontal
|
horizontal
|
||||||
showsHorizontalScrollIndicator={false}
|
showsHorizontalScrollIndicator={false}
|
||||||
data={items}
|
data={filteredItems}
|
||||||
renderItem={({ item, index }) => (
|
renderItem={({ item, index }) => (
|
||||||
<TouchableItemRouter
|
<TouchableItemRouter
|
||||||
item={item}
|
item={item}
|
||||||
|
|||||||
Reference in New Issue
Block a user