From fdb3178f4969e611138a1b8e507c5dd3200fdeb4 Mon Sep 17 00:00:00 2001 From: PartyDonut <42371342+PartyDonut@users.noreply.github.com> Date: Tue, 11 Nov 2025 21:27:11 +0100 Subject: [PATCH] fix: Check if this fixes the api --- lib/fake/fake_jellyfin_open_api.dart | 4 +-- .../jellyfin_open_api.swagger.chopper.dart | 18 +++++----- lib/jellyfin/jellyfin_open_api.swagger.dart | 34 ++++++++++--------- lib/providers/library_screen_provider.g.dart | 2 +- lib/providers/service_provider.dart | 6 ++-- swagger/jellyfin-open-api.json | 10 +++--- 6 files changed, 38 insertions(+), 36 deletions(-) diff --git a/lib/fake/fake_jellyfin_open_api.dart b/lib/fake/fake_jellyfin_open_api.dart index 8d0665c..faf31b7 100644 --- a/lib/fake/fake_jellyfin_open_api.dart +++ b/lib/fake/fake_jellyfin_open_api.dart @@ -225,7 +225,7 @@ class FakeJellyfinOpenApi extends JellyfinOpenApi { } @override - Future>> itemsLatestGet({ + Future>> usersUserIdItemsLatestGet({ String? userId, String? parentId, List? fields, @@ -289,7 +289,7 @@ class FakeJellyfinOpenApi extends JellyfinOpenApi { } @override - Future> itemsGet({ + Future> usersUserIdItemsGet({ String? userId, String? maxOfficialRating, bool? hasThemeSong, diff --git a/lib/jellyfin/jellyfin_open_api.swagger.chopper.dart b/lib/jellyfin/jellyfin_open_api.swagger.chopper.dart index 90a1cfd..b9aedab 100644 --- a/lib/jellyfin/jellyfin_open_api.swagger.chopper.dart +++ b/lib/jellyfin/jellyfin_open_api.swagger.chopper.dart @@ -4349,8 +4349,8 @@ final class _$JellyfinOpenApi extends JellyfinOpenApi { } @override - Future> _itemsGet({ - String? userId, + Future> _usersUserIdItemsGet({ + required String? userId, String? maxOfficialRating, bool? hasThemeSong, bool? hasThemeVideo, @@ -4437,9 +4437,8 @@ final class _$JellyfinOpenApi extends JellyfinOpenApi { bool? enableTotalRecordCount, bool? enableImages, }) { - final Uri $url = Uri.parse('/Items'); + final Uri $url = Uri.parse('/Users/${userId}/Items'); final Map $params = { - 'userId': userId, 'maxOfficialRating': maxOfficialRating, 'hasThemeSong': hasThemeSong, 'hasThemeVideo': hasThemeVideo, @@ -4537,8 +4536,8 @@ final class _$JellyfinOpenApi extends JellyfinOpenApi { } @override - Future> _itemsDelete({List? ids}) { - final Uri $url = Uri.parse('/Items'); + Future> _usersUserIdItemsDelete({List? ids}) { + final Uri $url = Uri.parse('/Users/{userId}/Items'); final Map $params = {'ids': ids}; final Request $request = Request( 'DELETE', @@ -9452,8 +9451,8 @@ final class _$JellyfinOpenApi extends JellyfinOpenApi { } @override - Future>> _itemsLatestGet({ - String? userId, + Future>> _usersUserIdItemsLatestGet({ + required String? userId, String? parentId, List? fields, List? includeItemTypes, @@ -9465,9 +9464,8 @@ final class _$JellyfinOpenApi extends JellyfinOpenApi { int? limit, bool? groupItems, }) { - final Uri $url = Uri.parse('/Items/Latest'); + final Uri $url = Uri.parse('Users/${userId}/Items/Latest'); final Map $params = { - 'userId': userId, 'parentId': parentId, 'fields': fields, 'includeItemTypes': includeItemTypes, diff --git a/lib/jellyfin/jellyfin_open_api.swagger.dart b/lib/jellyfin/jellyfin_open_api.swagger.dart index d113779..8d82a24 100644 --- a/lib/jellyfin/jellyfin_open_api.swagger.dart +++ b/lib/jellyfin/jellyfin_open_api.swagger.dart @@ -8633,8 +8633,8 @@ abstract class JellyfinOpenApi extends ChopperService { ///@param genreIds Optional. If specified, results will be filtered based on genre id. This allows multiple, pipe delimited. ///@param enableTotalRecordCount Optional. Enable the total record count. ///@param enableImages Optional, include image information in output. - Future> itemsGet({ - String? userId, + Future> usersUserIdItemsGet({ + required String? userId, String? maxOfficialRating, bool? hasThemeSong, bool? hasThemeVideo, @@ -8726,7 +8726,7 @@ abstract class JellyfinOpenApi extends ChopperService { () => BaseItemDtoQueryResult.fromJsonFactory, ); - return _itemsGet( + return _usersUserIdItemsGet( userId: userId, maxOfficialRating: maxOfficialRating, hasThemeSong: hasThemeSong, @@ -8903,9 +8903,9 @@ abstract class JellyfinOpenApi extends ChopperService { ///@param genreIds Optional. If specified, results will be filtered based on genre id. This allows multiple, pipe delimited. ///@param enableTotalRecordCount Optional. Enable the total record count. ///@param enableImages Optional, include image information in output. - @GET(path: '/Items') - Future> _itemsGet({ - @Query('userId') String? userId, + @GET(path: '/Users/{userId}/Items') + Future> _usersUserIdItemsGet({ + @Path('userId') required String? userId, @Query('maxOfficialRating') String? maxOfficialRating, @Query('hasThemeSong') bool? hasThemeSong, @Query('hasThemeVideo') bool? hasThemeVideo, @@ -8995,14 +8995,16 @@ abstract class JellyfinOpenApi extends ChopperService { ///Deletes items from the library and filesystem. ///@param ids The item ids. - Future itemsDelete({List? ids}) { - return _itemsDelete(ids: ids); + Future usersUserIdItemsDelete({List? ids}) { + return _usersUserIdItemsDelete(ids: ids); } ///Deletes items from the library and filesystem. ///@param ids The item ids. - @DELETE(path: '/Items') - Future _itemsDelete({@Query('ids') List? ids}); + @DELETE(path: '/Users/{userId}/Items') + Future _usersUserIdItemsDelete({ + @Query('ids') List? ids, + }); ///Get Item User Data. ///@param userId The user id. @@ -16283,8 +16285,8 @@ abstract class JellyfinOpenApi extends ChopperService { ///@param enableUserData Optional. include user data. ///@param limit Return item limit. ///@param groupItems Whether or not to group items into a parent container. - Future>> itemsLatestGet({ - String? userId, + Future>> usersUserIdItemsLatestGet({ + required String? userId, String? parentId, List? fields, List? includeItemTypes, @@ -16301,7 +16303,7 @@ abstract class JellyfinOpenApi extends ChopperService { () => BaseItemDto.fromJsonFactory, ); - return _itemsLatestGet( + return _usersUserIdItemsLatestGet( userId: userId, parentId: parentId, fields: itemFieldsListToJson(fields), @@ -16328,9 +16330,9 @@ abstract class JellyfinOpenApi extends ChopperService { ///@param enableUserData Optional. include user data. ///@param limit Return item limit. ///@param groupItems Whether or not to group items into a parent container. - @GET(path: '/Items/Latest') - Future>> _itemsLatestGet({ - @Query('userId') String? userId, + @GET(path: 'Users/{userId}/Items/Latest') + Future>> _usersUserIdItemsLatestGet({ + @Path('userId') required String? userId, @Query('parentId') String? parentId, @Query('fields') List? fields, @Query('includeItemTypes') List? includeItemTypes, diff --git a/lib/providers/library_screen_provider.g.dart b/lib/providers/library_screen_provider.g.dart index cd083d2..f66f571 100644 --- a/lib/providers/library_screen_provider.g.dart +++ b/lib/providers/library_screen_provider.g.dart @@ -6,7 +6,7 @@ part of 'library_screen_provider.dart'; // RiverpodGenerator // ************************************************************************** -String _$libraryScreenHash() => r'bc8b65f92715d1fa64884676b8455e1ba0e2aafa'; +String _$libraryScreenHash() => r'cec1aa3687d135e2117f3781312aaa0fb56b8d34'; /// See also [LibraryScreen]. @ProviderFor(LibraryScreen) diff --git a/lib/providers/service_provider.dart b/lib/providers/service_provider.dart index 0735117..15efc8c 100644 --- a/lib/providers/service_provider.dart +++ b/lib/providers/service_provider.dart @@ -252,7 +252,7 @@ class JellyService { bool? enableTotalRecordCount, bool? enableImages, }) async { - final response = await api.itemsGet( + final response = await api.usersUserIdItemsGet( userId: account?.id, maxOfficialRating: maxOfficialRating, hasThemeSong: hasThemeSong, @@ -497,7 +497,7 @@ class JellyService { int? limit, bool? groupItems, }) async { - return api.itemsLatestGet( + return api.usersUserIdItemsLatestGet( parentId: parentId, userId: account?.id, fields: fields, @@ -701,7 +701,7 @@ class JellyService { bool? recursive, List? includeItemTypes, }) async { - return api.itemsGet( + return api.usersUserIdItemsGet( parentId: parentId, userId: account?.id, recursive: recursive, diff --git a/swagger/jellyfin-open-api.json b/swagger/jellyfin-open-api.json index d508b31..b8d7ef7 100644 --- a/swagger/jellyfin-open-api.json +++ b/swagger/jellyfin-open-api.json @@ -22549,7 +22549,7 @@ ] } }, - "/Items": { + "/Users/{userId}/Items": { "get": { "tags": [ "Items" @@ -22559,7 +22559,8 @@ "parameters": [ { "name": "userId", - "in": "query", + "in": "path", + "required": true, "description": "The user id supplied as query parameter; this is required when not using an API key.", "schema": { "type": "string", @@ -51151,7 +51152,7 @@ ] } }, - "/Items/Latest": { + "Users/{userId}/Items/Latest": { "get": { "tags": [ "UserLibrary" @@ -51161,8 +51162,9 @@ "parameters": [ { "name": "userId", - "in": "query", + "in": "path", "description": "User id.", + "required": true, "schema": { "type": "string", "format": "uuid"