Merge branch 'master' into fix_jellyfin_sdk_type_errors

# Conflicts:
#	package-lock.json
This commit is contained in:
Peaches_MLG
2026-01-23 18:49:28 +00:00
28 changed files with 289 additions and 16609 deletions
+1
View File
@@ -14,6 +14,7 @@ const BrowserName = {
tizen: 'Samsung Smart TV',
web0s: 'LG Smart TV',
titanos: 'Titan OS',
vega: 'Vega OS',
operaTv: 'Opera TV',
xboxOne: 'Xbox One',
ps4: 'Sony PS4',
+2 -1
View File
@@ -578,9 +578,10 @@ function getCardFooterText(item, apiClient, options, footerClass, progressHtml,
if (flags.isOuterFooter && item.AlbumArtists?.length) {
const artistText = item.AlbumArtists
.map(artist => {
artist.ServerId = serverId;
artist.Type = BaseItemKind.MusicArtist;
artist.IsFolder = true;
return getTextActionButton(artist, null, serverId);
return getTextActionButton(artist);
})
.join(' / ');
lines.push(artistText);
+17 -19
View File
@@ -17,7 +17,7 @@ import { history } from 'RootAppRouter';
const START_PAGE_PATHS = ['/home', '/login', '/selectserver'];
/** Pages that do not require a user to be logged in to view. */
const PUBLIC_PATHS = [
export const PUBLIC_PATHS = [
'/addserver',
'/selectserver',
'/login',
@@ -122,9 +122,7 @@ class AppRouter {
return this.baseRoute;
}
canGoBack() {
const path = history.location.pathname;
canGoBack(path = history.location.pathname) {
if (
!document.querySelector('.dialogContainer')
&& START_PAGE_PATHS.includes(path)
@@ -262,15 +260,15 @@ class AppRouter {
}
if (item === 'recordedtv') {
return '#/livetv?tab=3&serverId=' + options.serverId;
return '#/livetv?tab=3&serverId=' + serverId;
}
if (item === 'nextup') {
return '#/list?type=nextup&serverId=' + options.serverId;
return '#/list?type=nextup&serverId=' + serverId;
}
if (item === 'list') {
let urlForList = '#/list?serverId=' + options.serverId + '&type=' + options.itemTypes;
let urlForList = '#/list?serverId=' + serverId + '&type=' + options.itemTypes;
if (options.isFavorite) {
urlForList += '&IsFavorite=true';
@@ -305,49 +303,49 @@ class AppRouter {
if (item === 'livetv') {
if (options.section === 'programs') {
return '#/livetv?tab=0&serverId=' + options.serverId;
return '#/livetv?tab=0&serverId=' + serverId;
}
if (options.section === 'guide') {
return '#/livetv?tab=1&serverId=' + options.serverId;
return '#/livetv?tab=1&serverId=' + serverId;
}
if (options.section === 'movies') {
return '#/list?type=Programs&IsMovie=true&serverId=' + options.serverId;
return '#/list?type=Programs&IsMovie=true&serverId=' + serverId;
}
if (options.section === 'shows') {
return '#/list?type=Programs&IsSeries=true&IsMovie=false&IsNews=false&serverId=' + options.serverId;
return '#/list?type=Programs&IsSeries=true&IsMovie=false&IsNews=false&serverId=' + serverId;
}
if (options.section === 'sports') {
return '#/list?type=Programs&IsSports=true&serverId=' + options.serverId;
return '#/list?type=Programs&IsSports=true&serverId=' + serverId;
}
if (options.section === 'kids') {
return '#/list?type=Programs&IsKids=true&serverId=' + options.serverId;
return '#/list?type=Programs&IsKids=true&serverId=' + serverId;
}
if (options.section === 'news') {
return '#/list?type=Programs&IsNews=true&serverId=' + options.serverId;
return '#/list?type=Programs&IsNews=true&serverId=' + serverId;
}
if (options.section === 'onnow') {
return '#/list?type=Programs&IsAiring=true&serverId=' + options.serverId;
return '#/list?type=Programs&IsAiring=true&serverId=' + serverId;
}
if (options.section === 'channels') {
return '#/livetv?tab=2&serverId=' + options.serverId;
return '#/livetv?tab=2&serverId=' + serverId;
}
if (options.section === 'dvrschedule') {
return '#/livetv?tab=4&serverId=' + options.serverId;
return '#/livetv?tab=4&serverId=' + serverId;
}
if (options.section === 'seriesrecording') {
return '#/livetv?tab=5&serverId=' + options.serverId;
return '#/livetv?tab=5&serverId=' + serverId;
}
return '#/livetv?serverId=' + options.serverId;
return '#/livetv?serverId=' + serverId;
}
if (itemType == 'SeriesTimer') {