jellyfin api -> fetch
This commit is contained in:
23
server/jellyfin/.openapi-generator-ignore
Normal file
23
server/jellyfin/.openapi-generator-ignore
Normal file
@ -0,0 +1,23 @@
|
||||
# OpenAPI Generator Ignore
|
||||
# Generated by openapi-generator https://github.com/openapitools/openapi-generator
|
||||
|
||||
# Use this file to prevent files from being overwritten by the generator.
|
||||
# The patterns follow closely to .gitignore or .dockerignore.
|
||||
|
||||
# As an example, the C# client generator defines ApiClient.cs.
|
||||
# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line:
|
||||
#ApiClient.cs
|
||||
|
||||
# You can match any string of characters against a directory, file or extension with a single asterisk (*):
|
||||
#foo/*/qux
|
||||
# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux
|
||||
|
||||
# You can recursively match patterns against a directory, file or extension with a double asterisk (**):
|
||||
#foo/**/qux
|
||||
# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux
|
||||
|
||||
# You can also negate patterns with an exclamation (!).
|
||||
# For example, you can ignore all files in a docs folder with the file extension .md:
|
||||
#docs/*.md
|
||||
# Then explicitly reverse the ignore rule for a single file:
|
||||
#!docs/README.md
|
||||
439
server/jellyfin/.openapi-generator/FILES
Normal file
439
server/jellyfin/.openapi-generator/FILES
Normal file
@ -0,0 +1,439 @@
|
||||
apis/ActivityLogApi.ts
|
||||
apis/ApiKeyApi.ts
|
||||
apis/ArtistsApi.ts
|
||||
apis/AudioApi.ts
|
||||
apis/BrandingApi.ts
|
||||
apis/ChannelsApi.ts
|
||||
apis/ClientLogApi.ts
|
||||
apis/CollectionApi.ts
|
||||
apis/ConfigurationApi.ts
|
||||
apis/DashboardApi.ts
|
||||
apis/DevicesApi.ts
|
||||
apis/DisplayPreferencesApi.ts
|
||||
apis/DlnaApi.ts
|
||||
apis/DlnaServerApi.ts
|
||||
apis/DynamicHlsApi.ts
|
||||
apis/EnvironmentApi.ts
|
||||
apis/FilterApi.ts
|
||||
apis/GenresApi.ts
|
||||
apis/HlsSegmentApi.ts
|
||||
apis/ImageApi.ts
|
||||
apis/ImageByNameApi.ts
|
||||
apis/InstantMixApi.ts
|
||||
apis/ItemLookupApi.ts
|
||||
apis/ItemRefreshApi.ts
|
||||
apis/ItemUpdateApi.ts
|
||||
apis/ItemsApi.ts
|
||||
apis/LibraryApi.ts
|
||||
apis/LibraryStructureApi.ts
|
||||
apis/LiveTvApi.ts
|
||||
apis/LocalizationApi.ts
|
||||
apis/MediaInfoApi.ts
|
||||
apis/MoviesApi.ts
|
||||
apis/MusicGenresApi.ts
|
||||
apis/NotificationsApi.ts
|
||||
apis/PackageApi.ts
|
||||
apis/PersonsApi.ts
|
||||
apis/PlaylistsApi.ts
|
||||
apis/PlaystateApi.ts
|
||||
apis/PluginsApi.ts
|
||||
apis/QuickConnectApi.ts
|
||||
apis/RemoteImageApi.ts
|
||||
apis/ScheduledTasksApi.ts
|
||||
apis/SearchApi.ts
|
||||
apis/SessionApi.ts
|
||||
apis/StartupApi.ts
|
||||
apis/StudiosApi.ts
|
||||
apis/SubtitleApi.ts
|
||||
apis/SuggestionsApi.ts
|
||||
apis/SyncPlayApi.ts
|
||||
apis/SystemApi.ts
|
||||
apis/TimeSyncApi.ts
|
||||
apis/TmdbApi.ts
|
||||
apis/TrailersApi.ts
|
||||
apis/TvShowsApi.ts
|
||||
apis/UniversalAudioApi.ts
|
||||
apis/UserApi.ts
|
||||
apis/UserLibraryApi.ts
|
||||
apis/UserViewsApi.ts
|
||||
apis/VideoAttachmentsApi.ts
|
||||
apis/VideosApi.ts
|
||||
apis/YearsApi.ts
|
||||
apis/index.ts
|
||||
index.ts
|
||||
models/AccessSchedule.ts
|
||||
models/ActivityLogEntry.ts
|
||||
models/ActivityLogEntryQueryResult.ts
|
||||
models/AddListingProviderRequest.ts
|
||||
models/AddMediaPathRequest.ts
|
||||
models/AddTunerHostRequest.ts
|
||||
models/AddVirtualFolderDto.ts
|
||||
models/AddVirtualFolderDtoLibraryOptions.ts
|
||||
models/AddVirtualFolderRequest.ts
|
||||
models/AdminNotificationDto.ts
|
||||
models/AlbumInfo.ts
|
||||
models/AlbumInfoRemoteSearchQuery.ts
|
||||
models/AllThemeMediaResult.ts
|
||||
models/AllThemeMediaResultThemeVideosResult.ts
|
||||
models/ApplySearchCriteriaRequest.ts
|
||||
models/Architecture.ts
|
||||
models/ArtistInfo.ts
|
||||
models/ArtistInfoRemoteSearchQuery.ts
|
||||
models/AuthenticateUserByName.ts
|
||||
models/AuthenticateUserByNameRequest.ts
|
||||
models/AuthenticateWithQuickConnectRequest.ts
|
||||
models/AuthenticationInfo.ts
|
||||
models/AuthenticationInfoQueryResult.ts
|
||||
models/AuthenticationResult.ts
|
||||
models/AuthenticationResultSessionInfo.ts
|
||||
models/AuthenticationResultUser.ts
|
||||
models/BaseItem.ts
|
||||
models/BaseItemDto.ts
|
||||
models/BaseItemDtoCurrentProgram.ts
|
||||
models/BaseItemDtoImageBlurHashes.ts
|
||||
models/BaseItemDtoQueryResult.ts
|
||||
models/BaseItemDtoUserData.ts
|
||||
models/BaseItemKind.ts
|
||||
models/BaseItemPerson.ts
|
||||
models/BaseItemPersonImageBlurHashes.ts
|
||||
models/BookInfo.ts
|
||||
models/BookInfoRemoteSearchQuery.ts
|
||||
models/BoxSetInfo.ts
|
||||
models/BoxSetInfoRemoteSearchQuery.ts
|
||||
models/BrandingOptions.ts
|
||||
models/BufferRequestDto.ts
|
||||
models/ChannelFeatures.ts
|
||||
models/ChannelItemSortField.ts
|
||||
models/ChannelMappingOptionsDto.ts
|
||||
models/ChannelMediaContentType.ts
|
||||
models/ChannelMediaType.ts
|
||||
models/ChannelType.ts
|
||||
models/ChapterInfo.ts
|
||||
models/ClientCapabilities.ts
|
||||
models/ClientCapabilitiesDeviceProfile.ts
|
||||
models/ClientCapabilitiesDto.ts
|
||||
models/ClientCapabilitiesDtoDeviceProfile.ts
|
||||
models/ClientLogDocumentResponseDto.ts
|
||||
models/CodecProfile.ts
|
||||
models/CodecType.ts
|
||||
models/CollectionCreationResult.ts
|
||||
models/CollectionTypeOptions.ts
|
||||
models/ConfigImageTypes.ts
|
||||
models/ConfigurationPageInfo.ts
|
||||
models/ContainerProfile.ts
|
||||
models/ControlResponse.ts
|
||||
models/CountryInfo.ts
|
||||
models/CreateAdminNotificationRequest.ts
|
||||
models/CreatePlaylistDto.ts
|
||||
models/CreatePlaylistRequest.ts
|
||||
models/CreateProfileRequest.ts
|
||||
models/CreateSeriesTimerRequest.ts
|
||||
models/CreateTimerRequest.ts
|
||||
models/CreateUserByName.ts
|
||||
models/CreateUserByNameRequest.ts
|
||||
models/CultureDto.ts
|
||||
models/DayOfWeek.ts
|
||||
models/DayPattern.ts
|
||||
models/DefaultDirectoryBrowserInfoDto.ts
|
||||
models/DeviceIdentification.ts
|
||||
models/DeviceInfo.ts
|
||||
models/DeviceInfoCapabilities.ts
|
||||
models/DeviceInfoQueryResult.ts
|
||||
models/DeviceOptions.ts
|
||||
models/DeviceOptionsDto.ts
|
||||
models/DeviceProfile.ts
|
||||
models/DeviceProfileIdentification.ts
|
||||
models/DeviceProfileInfo.ts
|
||||
models/DeviceProfileType.ts
|
||||
models/DirectPlayProfile.ts
|
||||
models/DisplayPreferencesDto.ts
|
||||
models/DlnaOptions.ts
|
||||
models/DlnaProfileType.ts
|
||||
models/DynamicDayOfWeek.ts
|
||||
models/EmbeddedSubtitleOptions.ts
|
||||
models/EncodingContext.ts
|
||||
models/EncodingOptions.ts
|
||||
models/EndPointInfo.ts
|
||||
models/ExternalIdInfo.ts
|
||||
models/ExternalIdMediaType.ts
|
||||
models/ExternalUrl.ts
|
||||
models/FFmpegLocation.ts
|
||||
models/FileSystemEntryInfo.ts
|
||||
models/FileSystemEntryType.ts
|
||||
models/FontFile.ts
|
||||
models/ForgotPasswordAction.ts
|
||||
models/ForgotPasswordDto.ts
|
||||
models/ForgotPasswordPinDto.ts
|
||||
models/ForgotPasswordPinRequest.ts
|
||||
models/ForgotPasswordRequest.ts
|
||||
models/ForgotPasswordResult.ts
|
||||
models/GeneralCommand.ts
|
||||
models/GeneralCommandType.ts
|
||||
models/GetBookRemoteSearchResultsRequest.ts
|
||||
models/GetBoxSetRemoteSearchResultsRequest.ts
|
||||
models/GetMovieRemoteSearchResultsRequest.ts
|
||||
models/GetMusicAlbumRemoteSearchResultsRequest.ts
|
||||
models/GetMusicArtistRemoteSearchResultsRequest.ts
|
||||
models/GetMusicVideoRemoteSearchResultsRequest.ts
|
||||
models/GetPersonRemoteSearchResultsRequest.ts
|
||||
models/GetPostedPlaybackInfoRequest.ts
|
||||
models/GetProgramsDto.ts
|
||||
models/GetProgramsRequest.ts
|
||||
models/GetSeriesRemoteSearchResultsRequest.ts
|
||||
models/GetTrailerRemoteSearchResultsRequest.ts
|
||||
models/GroupInfoDto.ts
|
||||
models/GroupQueueMode.ts
|
||||
models/GroupRepeatMode.ts
|
||||
models/GroupShuffleMode.ts
|
||||
models/GroupStateType.ts
|
||||
models/GroupUpdateType.ts
|
||||
models/GuideInfo.ts
|
||||
models/HardwareEncodingType.ts
|
||||
models/HeaderMatchType.ts
|
||||
models/HttpHeaderInfo.ts
|
||||
models/IPlugin.ts
|
||||
models/IgnoreWaitRequestDto.ts
|
||||
models/ImageByNameInfo.ts
|
||||
models/ImageFormat.ts
|
||||
models/ImageInfo.ts
|
||||
models/ImageOption.ts
|
||||
models/ImageOrientation.ts
|
||||
models/ImageProviderInfo.ts
|
||||
models/ImageSavingConvention.ts
|
||||
models/ImageType.ts
|
||||
models/InstallationInfo.ts
|
||||
models/InstallationInfoPackageInfo.ts
|
||||
models/IsoType.ts
|
||||
models/ItemCounts.ts
|
||||
models/ItemFields.ts
|
||||
models/ItemFilter.ts
|
||||
models/JoinGroupRequestDto.ts
|
||||
models/KeepUntil.ts
|
||||
models/LibraryOptionInfoDto.ts
|
||||
models/LibraryOptions.ts
|
||||
models/LibraryOptionsResultDto.ts
|
||||
models/LibraryTypeOptionsDto.ts
|
||||
models/LibraryUpdateInfo.ts
|
||||
models/ListingsProviderInfo.ts
|
||||
models/LiveStreamResponse.ts
|
||||
models/LiveStreamResponseMediaSource.ts
|
||||
models/LiveTvInfo.ts
|
||||
models/LiveTvOptions.ts
|
||||
models/LiveTvServiceInfo.ts
|
||||
models/LiveTvServiceStatus.ts
|
||||
models/LocalizationOption.ts
|
||||
models/LocationType.ts
|
||||
models/LogFile.ts
|
||||
models/LogLevel.ts
|
||||
models/MediaAttachment.ts
|
||||
models/MediaEncoderPathDto.ts
|
||||
models/MediaPathDto.ts
|
||||
models/MediaPathDtoPathInfo.ts
|
||||
models/MediaPathInfo.ts
|
||||
models/MediaProtocol.ts
|
||||
models/MediaSourceInfo.ts
|
||||
models/MediaSourceType.ts
|
||||
models/MediaStream.ts
|
||||
models/MediaStreamType.ts
|
||||
models/MediaUpdateInfoDto.ts
|
||||
models/MediaUpdateInfoPathDto.ts
|
||||
models/MediaUrl.ts
|
||||
models/MessageCommand.ts
|
||||
models/MetadataConfiguration.ts
|
||||
models/MetadataEditorInfo.ts
|
||||
models/MetadataField.ts
|
||||
models/MetadataOptions.ts
|
||||
models/MetadataRefreshMode.ts
|
||||
models/MovePlaylistItemRequestDto.ts
|
||||
models/MovieInfo.ts
|
||||
models/MovieInfoRemoteSearchQuery.ts
|
||||
models/MusicVideoInfo.ts
|
||||
models/MusicVideoInfoRemoteSearchQuery.ts
|
||||
models/NameGuidPair.ts
|
||||
models/NameIdPair.ts
|
||||
models/NameValuePair.ts
|
||||
models/NetworkConfiguration.ts
|
||||
models/NewGroupRequestDto.ts
|
||||
models/NextItemRequestDto.ts
|
||||
models/NotificationDto.ts
|
||||
models/NotificationLevel.ts
|
||||
models/NotificationOption.ts
|
||||
models/NotificationOptions.ts
|
||||
models/NotificationResultDto.ts
|
||||
models/NotificationTypeInfo.ts
|
||||
models/NotificationsSummaryDto.ts
|
||||
models/ObjectGroupUpdate.ts
|
||||
models/OpenLiveStreamDto.ts
|
||||
models/OpenLiveStreamRequest.ts
|
||||
models/PackageInfo.ts
|
||||
models/ParentalRating.ts
|
||||
models/PathSubstitution.ts
|
||||
models/PersonLookupInfo.ts
|
||||
models/PersonLookupInfoRemoteSearchQuery.ts
|
||||
models/PinRedeemResult.ts
|
||||
models/PingRequestDto.ts
|
||||
models/PlayAccess.ts
|
||||
models/PlayCommand.ts
|
||||
models/PlayMethod.ts
|
||||
models/PlayRequest.ts
|
||||
models/PlayRequestDto.ts
|
||||
models/PlaybackErrorCode.ts
|
||||
models/PlaybackInfoDto.ts
|
||||
models/PlaybackInfoResponse.ts
|
||||
models/PlaybackProgressInfo.ts
|
||||
models/PlaybackProgressInfoItem.ts
|
||||
models/PlaybackStartInfo.ts
|
||||
models/PlaybackStopInfo.ts
|
||||
models/PlayerStateInfo.ts
|
||||
models/PlaylistCreationResult.ts
|
||||
models/PlaystateCommand.ts
|
||||
models/PlaystateRequest.ts
|
||||
models/PluginInfo.ts
|
||||
models/PluginStatus.ts
|
||||
models/PostFullCapabilitiesRequest.ts
|
||||
models/PostUpdatedMediaRequest.ts
|
||||
models/PreviousItemRequestDto.ts
|
||||
models/ProblemDetails.ts
|
||||
models/ProfileCondition.ts
|
||||
models/ProfileConditionType.ts
|
||||
models/ProfileConditionValue.ts
|
||||
models/ProgramAudio.ts
|
||||
models/PublicSystemInfo.ts
|
||||
models/QueryFilters.ts
|
||||
models/QueryFiltersLegacy.ts
|
||||
models/QueueItem.ts
|
||||
models/QueueRequestDto.ts
|
||||
models/QuickConnectDto.ts
|
||||
models/QuickConnectResult.ts
|
||||
models/RatingType.ts
|
||||
models/ReadyRequestDto.ts
|
||||
models/RecommendationDto.ts
|
||||
models/RecommendationType.ts
|
||||
models/RecordingStatus.ts
|
||||
models/RemoteImageInfo.ts
|
||||
models/RemoteImageResult.ts
|
||||
models/RemoteSearchResult.ts
|
||||
models/RemoteSubtitleInfo.ts
|
||||
models/RemoveFromPlaylistRequestDto.ts
|
||||
models/RepeatMode.ts
|
||||
models/ReportPlaybackProgressRequest.ts
|
||||
models/ReportPlaybackStartRequest.ts
|
||||
models/ReportPlaybackStoppedRequest.ts
|
||||
models/RepositoryInfo.ts
|
||||
models/ResponseProfile.ts
|
||||
models/ScrollDirection.ts
|
||||
models/SearchHint.ts
|
||||
models/SearchHintResult.ts
|
||||
models/SeekRequestDto.ts
|
||||
models/SendCommand.ts
|
||||
models/SendCommandType.ts
|
||||
models/SendFullGeneralCommandRequest.ts
|
||||
models/SendMessageCommandRequest.ts
|
||||
models/SendToUserType.ts
|
||||
models/SeriesInfo.ts
|
||||
models/SeriesInfoRemoteSearchQuery.ts
|
||||
models/SeriesStatus.ts
|
||||
models/SeriesTimerInfoDto.ts
|
||||
models/SeriesTimerInfoDtoQueryResult.ts
|
||||
models/ServerConfiguration.ts
|
||||
models/ServerDiscoveryInfo.ts
|
||||
models/SessionInfo.ts
|
||||
models/SessionInfoFullNowPlayingItem.ts
|
||||
models/SessionInfoNowPlayingItem.ts
|
||||
models/SessionMessageType.ts
|
||||
models/SessionUserInfo.ts
|
||||
models/SetChannelMappingDto.ts
|
||||
models/SetChannelMappingRequest.ts
|
||||
models/SetPlaylistItemRequestDto.ts
|
||||
models/SetRemoteAccessRequest.ts
|
||||
models/SetRepeatModeRequestDto.ts
|
||||
models/SetShuffleModeRequestDto.ts
|
||||
models/SongInfo.ts
|
||||
models/SortOrder.ts
|
||||
models/SpecialViewOptionDto.ts
|
||||
models/StartupConfigurationDto.ts
|
||||
models/StartupRemoteAccessDto.ts
|
||||
models/StartupUserDto.ts
|
||||
models/SubtitleDeliveryMethod.ts
|
||||
models/SubtitleOptions.ts
|
||||
models/SubtitlePlaybackMode.ts
|
||||
models/SubtitleProfile.ts
|
||||
models/SyncPlayBufferingRequest.ts
|
||||
models/SyncPlayCreateGroupRequest.ts
|
||||
models/SyncPlayJoinGroupRequest.ts
|
||||
models/SyncPlayMovePlaylistItemRequest.ts
|
||||
models/SyncPlayNextItemRequest.ts
|
||||
models/SyncPlayPingRequest.ts
|
||||
models/SyncPlayPreviousItemRequest.ts
|
||||
models/SyncPlayQueueRequest.ts
|
||||
models/SyncPlayReadyRequest.ts
|
||||
models/SyncPlayRemoveFromPlaylistRequest.ts
|
||||
models/SyncPlaySeekRequest.ts
|
||||
models/SyncPlaySetIgnoreWaitRequest.ts
|
||||
models/SyncPlaySetNewQueueRequest.ts
|
||||
models/SyncPlaySetPlaylistItemRequest.ts
|
||||
models/SyncPlaySetRepeatModeRequest.ts
|
||||
models/SyncPlaySetShuffleModeRequest.ts
|
||||
models/SyncPlayUserAccessType.ts
|
||||
models/SystemInfo.ts
|
||||
models/TaskCompletionStatus.ts
|
||||
models/TaskInfo.ts
|
||||
models/TaskInfoLastExecutionResult.ts
|
||||
models/TaskResult.ts
|
||||
models/TaskState.ts
|
||||
models/TaskTriggerInfo.ts
|
||||
models/ThemeMediaResult.ts
|
||||
models/TimerEventInfo.ts
|
||||
models/TimerInfoDto.ts
|
||||
models/TimerInfoDtoProgramInfo.ts
|
||||
models/TimerInfoDtoQueryResult.ts
|
||||
models/TrailerInfo.ts
|
||||
models/TrailerInfoRemoteSearchQuery.ts
|
||||
models/TranscodeReason.ts
|
||||
models/TranscodeSeekInfo.ts
|
||||
models/TranscodingInfo.ts
|
||||
models/TranscodingProfile.ts
|
||||
models/TransportStreamTimestamp.ts
|
||||
models/TunerChannelMapping.ts
|
||||
models/TunerHostInfo.ts
|
||||
models/TypeOptions.ts
|
||||
models/UnratedItem.ts
|
||||
models/UpdateConfigurationRequest.ts
|
||||
models/UpdateDeviceOptionsRequest.ts
|
||||
models/UpdateDisplayPreferencesRequest.ts
|
||||
models/UpdateInitialConfigurationRequest.ts
|
||||
models/UpdateItemRequest.ts
|
||||
models/UpdateLibraryOptionsDto.ts
|
||||
models/UpdateLibraryOptionsRequest.ts
|
||||
models/UpdateMediaEncoderPathRequest.ts
|
||||
models/UpdateMediaPathRequest.ts
|
||||
models/UpdateMediaPathRequestDto.ts
|
||||
models/UpdateMediaPathRequestDtoPathInfo.ts
|
||||
models/UpdateStartupUserRequest.ts
|
||||
models/UpdateUserConfigurationRequest.ts
|
||||
models/UpdateUserEasyPassword.ts
|
||||
models/UpdateUserEasyPasswordRequest.ts
|
||||
models/UpdateUserPassword.ts
|
||||
models/UpdateUserPasswordRequest.ts
|
||||
models/UpdateUserPolicyRequest.ts
|
||||
models/UpdateUserRequest.ts
|
||||
models/UploadSubtitleDto.ts
|
||||
models/UploadSubtitleRequest.ts
|
||||
models/UserConfiguration.ts
|
||||
models/UserDto.ts
|
||||
models/UserDtoConfiguration.ts
|
||||
models/UserDtoPolicy.ts
|
||||
models/UserItemDataDto.ts
|
||||
models/UserPolicy.ts
|
||||
models/UtcTimeResponse.ts
|
||||
models/ValidatePathDto.ts
|
||||
models/ValidatePathRequest.ts
|
||||
models/VersionInfo.ts
|
||||
models/Video3DFormat.ts
|
||||
models/VideoType.ts
|
||||
models/VirtualFolderInfo.ts
|
||||
models/WakeOnLanInfo.ts
|
||||
models/XbmcMetadataOptions.ts
|
||||
models/XmlAttribute.ts
|
||||
models/index.ts
|
||||
runtime.ts
|
||||
1
server/jellyfin/.openapi-generator/VERSION
Normal file
1
server/jellyfin/.openapi-generator/VERSION
Normal file
@ -0,0 +1 @@
|
||||
6.5.0
|
||||
83
server/jellyfin/apis/ActivityLogApi.ts
Normal file
83
server/jellyfin/apis/ActivityLogApi.ts
Normal file
@ -0,0 +1,83 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ActivityLogEntryQueryResult,
|
||||
} from '../models';
|
||||
import {
|
||||
ActivityLogEntryQueryResultFromJSON,
|
||||
ActivityLogEntryQueryResultToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetLogEntriesRequest {
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
minDate?: Date;
|
||||
hasUserId?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ActivityLogApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets activity log entries.
|
||||
*/
|
||||
async getLogEntriesRaw(requestParameters: GetLogEntriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ActivityLogEntryQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.minDate !== undefined) {
|
||||
queryParameters['minDate'] = (requestParameters.minDate as any).toISOString();
|
||||
}
|
||||
|
||||
if (requestParameters.hasUserId !== undefined) {
|
||||
queryParameters['hasUserId'] = requestParameters.hasUserId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/ActivityLog/Entries`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => ActivityLogEntryQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets activity log entries.
|
||||
*/
|
||||
async getLogEntries(requestParameters: GetLogEntriesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ActivityLogEntryQueryResult> {
|
||||
const response = await this.getLogEntriesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
138
server/jellyfin/apis/ApiKeyApi.ts
Normal file
138
server/jellyfin/apis/ApiKeyApi.ts
Normal file
@ -0,0 +1,138 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
AuthenticationInfoQueryResult,
|
||||
} from '../models';
|
||||
import {
|
||||
AuthenticationInfoQueryResultFromJSON,
|
||||
AuthenticationInfoQueryResultToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface CreateKeyRequest {
|
||||
app: string;
|
||||
}
|
||||
|
||||
export interface RevokeKeyRequest {
|
||||
key: string;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ApiKeyApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Create a new api key.
|
||||
*/
|
||||
async createKeyRaw(requestParameters: CreateKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.app === null || requestParameters.app === undefined) {
|
||||
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling createKey.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.app !== undefined) {
|
||||
queryParameters['app'] = requestParameters.app;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Auth/Keys`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new api key.
|
||||
*/
|
||||
async createKey(requestParameters: CreateKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.createKeyRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all keys.
|
||||
*/
|
||||
async getKeysRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<AuthenticationInfoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Auth/Keys`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => AuthenticationInfoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all keys.
|
||||
*/
|
||||
async getKeys(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<AuthenticationInfoQueryResult> {
|
||||
const response = await this.getKeysRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove an api key.
|
||||
*/
|
||||
async revokeKeyRaw(requestParameters: RevokeKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.key === null || requestParameters.key === undefined) {
|
||||
throw new runtime.RequiredError('key','Required parameter requestParameters.key was null or undefined when calling revokeKey.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Auth/Keys/{key}`.replace(`{${"key"}}`, encodeURIComponent(String(requestParameters.key))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove an api key.
|
||||
*/
|
||||
async revokeKey(requestParameters: RevokeKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.revokeKeyRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
477
server/jellyfin/apis/ArtistsApi.ts
Normal file
477
server/jellyfin/apis/ArtistsApi.ts
Normal file
@ -0,0 +1,477 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDto,
|
||||
BaseItemDtoQueryResult,
|
||||
BaseItemKind,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
ItemFilter,
|
||||
SortOrder,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoFromJSON,
|
||||
BaseItemDtoToJSON,
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
ItemFilterFromJSON,
|
||||
ItemFilterToJSON,
|
||||
SortOrderFromJSON,
|
||||
SortOrderToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetAlbumArtistsRequest {
|
||||
minCommunityRating?: number;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
searchTerm?: string;
|
||||
parentId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
excludeItemTypes?: Array<BaseItemKind>;
|
||||
includeItemTypes?: Array<BaseItemKind>;
|
||||
filters?: Array<ItemFilter>;
|
||||
isFavorite?: boolean;
|
||||
mediaTypes?: Array<string>;
|
||||
genres?: Array<string>;
|
||||
genreIds?: Array<string>;
|
||||
officialRatings?: Array<string>;
|
||||
tags?: Array<string>;
|
||||
years?: Array<number>;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
person?: string;
|
||||
personIds?: Array<string>;
|
||||
personTypes?: Array<string>;
|
||||
studios?: Array<string>;
|
||||
studioIds?: Array<string>;
|
||||
userId?: string;
|
||||
nameStartsWithOrGreater?: string;
|
||||
nameStartsWith?: string;
|
||||
nameLessThan?: string;
|
||||
sortBy?: Array<string>;
|
||||
sortOrder?: Array<SortOrder>;
|
||||
enableImages?: boolean;
|
||||
enableTotalRecordCount?: boolean;
|
||||
}
|
||||
|
||||
export interface GetArtistByNameRequest {
|
||||
name: string;
|
||||
userId?: string;
|
||||
}
|
||||
|
||||
export interface GetArtistsRequest {
|
||||
minCommunityRating?: number;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
searchTerm?: string;
|
||||
parentId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
excludeItemTypes?: Array<BaseItemKind>;
|
||||
includeItemTypes?: Array<BaseItemKind>;
|
||||
filters?: Array<ItemFilter>;
|
||||
isFavorite?: boolean;
|
||||
mediaTypes?: Array<string>;
|
||||
genres?: Array<string>;
|
||||
genreIds?: Array<string>;
|
||||
officialRatings?: Array<string>;
|
||||
tags?: Array<string>;
|
||||
years?: Array<number>;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
person?: string;
|
||||
personIds?: Array<string>;
|
||||
personTypes?: Array<string>;
|
||||
studios?: Array<string>;
|
||||
studioIds?: Array<string>;
|
||||
userId?: string;
|
||||
nameStartsWithOrGreater?: string;
|
||||
nameStartsWith?: string;
|
||||
nameLessThan?: string;
|
||||
sortBy?: Array<string>;
|
||||
sortOrder?: Array<SortOrder>;
|
||||
enableImages?: boolean;
|
||||
enableTotalRecordCount?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ArtistsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets all album artists from a given item, folder, or the entire library.
|
||||
*/
|
||||
async getAlbumArtistsRaw(requestParameters: GetAlbumArtistsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.minCommunityRating !== undefined) {
|
||||
queryParameters['minCommunityRating'] = requestParameters.minCommunityRating;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.searchTerm !== undefined) {
|
||||
queryParameters['searchTerm'] = requestParameters.searchTerm;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeItemTypes) {
|
||||
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.includeItemTypes) {
|
||||
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.filters) {
|
||||
queryParameters['filters'] = requestParameters.filters;
|
||||
}
|
||||
|
||||
if (requestParameters.isFavorite !== undefined) {
|
||||
queryParameters['isFavorite'] = requestParameters.isFavorite;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaTypes) {
|
||||
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.genres) {
|
||||
queryParameters['genres'] = requestParameters.genres;
|
||||
}
|
||||
|
||||
if (requestParameters.genreIds) {
|
||||
queryParameters['genreIds'] = requestParameters.genreIds;
|
||||
}
|
||||
|
||||
if (requestParameters.officialRatings) {
|
||||
queryParameters['officialRatings'] = requestParameters.officialRatings;
|
||||
}
|
||||
|
||||
if (requestParameters.tags) {
|
||||
queryParameters['tags'] = requestParameters.tags;
|
||||
}
|
||||
|
||||
if (requestParameters.years) {
|
||||
queryParameters['years'] = requestParameters.years;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.person !== undefined) {
|
||||
queryParameters['person'] = requestParameters.person;
|
||||
}
|
||||
|
||||
if (requestParameters.personIds) {
|
||||
queryParameters['personIds'] = requestParameters.personIds;
|
||||
}
|
||||
|
||||
if (requestParameters.personTypes) {
|
||||
queryParameters['personTypes'] = requestParameters.personTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.studios) {
|
||||
queryParameters['studios'] = requestParameters.studios;
|
||||
}
|
||||
|
||||
if (requestParameters.studioIds) {
|
||||
queryParameters['studioIds'] = requestParameters.studioIds;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWithOrGreater !== undefined) {
|
||||
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWith !== undefined) {
|
||||
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
|
||||
}
|
||||
|
||||
if (requestParameters.nameLessThan !== undefined) {
|
||||
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
|
||||
}
|
||||
|
||||
if (requestParameters.sortBy) {
|
||||
queryParameters['sortBy'] = requestParameters.sortBy;
|
||||
}
|
||||
|
||||
if (requestParameters.sortOrder) {
|
||||
queryParameters['sortOrder'] = requestParameters.sortOrder;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableTotalRecordCount !== undefined) {
|
||||
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Artists/AlbumArtists`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all album artists from a given item, folder, or the entire library.
|
||||
*/
|
||||
async getAlbumArtists(requestParameters: GetAlbumArtistsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getAlbumArtistsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets an artist by name.
|
||||
*/
|
||||
async getArtistByNameRaw(requestParameters: GetArtistByNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getArtistByName.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Artists/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets an artist by name.
|
||||
*/
|
||||
async getArtistByName(requestParameters: GetArtistByNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
|
||||
const response = await this.getArtistByNameRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all artists from a given item, folder, or the entire library.
|
||||
*/
|
||||
async getArtistsRaw(requestParameters: GetArtistsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.minCommunityRating !== undefined) {
|
||||
queryParameters['minCommunityRating'] = requestParameters.minCommunityRating;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.searchTerm !== undefined) {
|
||||
queryParameters['searchTerm'] = requestParameters.searchTerm;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeItemTypes) {
|
||||
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.includeItemTypes) {
|
||||
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.filters) {
|
||||
queryParameters['filters'] = requestParameters.filters;
|
||||
}
|
||||
|
||||
if (requestParameters.isFavorite !== undefined) {
|
||||
queryParameters['isFavorite'] = requestParameters.isFavorite;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaTypes) {
|
||||
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.genres) {
|
||||
queryParameters['genres'] = requestParameters.genres;
|
||||
}
|
||||
|
||||
if (requestParameters.genreIds) {
|
||||
queryParameters['genreIds'] = requestParameters.genreIds;
|
||||
}
|
||||
|
||||
if (requestParameters.officialRatings) {
|
||||
queryParameters['officialRatings'] = requestParameters.officialRatings;
|
||||
}
|
||||
|
||||
if (requestParameters.tags) {
|
||||
queryParameters['tags'] = requestParameters.tags;
|
||||
}
|
||||
|
||||
if (requestParameters.years) {
|
||||
queryParameters['years'] = requestParameters.years;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.person !== undefined) {
|
||||
queryParameters['person'] = requestParameters.person;
|
||||
}
|
||||
|
||||
if (requestParameters.personIds) {
|
||||
queryParameters['personIds'] = requestParameters.personIds;
|
||||
}
|
||||
|
||||
if (requestParameters.personTypes) {
|
||||
queryParameters['personTypes'] = requestParameters.personTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.studios) {
|
||||
queryParameters['studios'] = requestParameters.studios;
|
||||
}
|
||||
|
||||
if (requestParameters.studioIds) {
|
||||
queryParameters['studioIds'] = requestParameters.studioIds;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWithOrGreater !== undefined) {
|
||||
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWith !== undefined) {
|
||||
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
|
||||
}
|
||||
|
||||
if (requestParameters.nameLessThan !== undefined) {
|
||||
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
|
||||
}
|
||||
|
||||
if (requestParameters.sortBy) {
|
||||
queryParameters['sortBy'] = requestParameters.sortBy;
|
||||
}
|
||||
|
||||
if (requestParameters.sortOrder) {
|
||||
queryParameters['sortOrder'] = requestParameters.sortOrder;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableTotalRecordCount !== undefined) {
|
||||
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Artists`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all artists from a given item, folder, or the entire library.
|
||||
*/
|
||||
async getArtists(requestParameters: GetArtistsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getArtistsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
1129
server/jellyfin/apis/AudioApi.ts
Normal file
1129
server/jellyfin/apis/AudioApi.ts
Normal file
File diff suppressed because it is too large
Load Diff
116
server/jellyfin/apis/BrandingApi.ts
Normal file
116
server/jellyfin/apis/BrandingApi.ts
Normal file
@ -0,0 +1,116 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BrandingOptions,
|
||||
} from '../models';
|
||||
import {
|
||||
BrandingOptionsFromJSON,
|
||||
BrandingOptionsToJSON,
|
||||
} from '../models';
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class BrandingApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets branding css.
|
||||
*/
|
||||
async getBrandingCssRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Branding/Css`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
if (this.isJsonMime(response.headers.get('content-type'))) {
|
||||
return new runtime.JSONApiResponse<string>(response);
|
||||
} else {
|
||||
return new runtime.TextApiResponse(response) as any;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets branding css.
|
||||
*/
|
||||
async getBrandingCss(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
|
||||
const response = await this.getBrandingCssRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets branding css.
|
||||
*/
|
||||
async getBrandingCss2Raw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Branding/Css.css`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
if (this.isJsonMime(response.headers.get('content-type'))) {
|
||||
return new runtime.JSONApiResponse<string>(response);
|
||||
} else {
|
||||
return new runtime.TextApiResponse(response) as any;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets branding css.
|
||||
*/
|
||||
async getBrandingCss2(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
|
||||
const response = await this.getBrandingCss2Raw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets branding configuration.
|
||||
*/
|
||||
async getBrandingOptionsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BrandingOptions>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Branding/Configuration`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BrandingOptionsFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets branding configuration.
|
||||
*/
|
||||
async getBrandingOptions(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BrandingOptions> {
|
||||
const response = await this.getBrandingOptionsRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
314
server/jellyfin/apis/ChannelsApi.ts
Normal file
314
server/jellyfin/apis/ChannelsApi.ts
Normal file
@ -0,0 +1,314 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDtoQueryResult,
|
||||
ChannelFeatures,
|
||||
ItemFields,
|
||||
ItemFilter,
|
||||
SortOrder,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
ChannelFeaturesFromJSON,
|
||||
ChannelFeaturesToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
ItemFilterFromJSON,
|
||||
ItemFilterToJSON,
|
||||
SortOrderFromJSON,
|
||||
SortOrderToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetChannelFeaturesRequest {
|
||||
channelId: string;
|
||||
}
|
||||
|
||||
export interface GetChannelItemsRequest {
|
||||
channelId: string;
|
||||
folderId?: string;
|
||||
userId?: string;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
sortOrder?: Array<SortOrder>;
|
||||
filters?: Array<ItemFilter>;
|
||||
sortBy?: Array<string>;
|
||||
fields?: Array<ItemFields>;
|
||||
}
|
||||
|
||||
export interface GetChannelsRequest {
|
||||
userId?: string;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
supportsLatestItems?: boolean;
|
||||
supportsMediaDeletion?: boolean;
|
||||
isFavorite?: boolean;
|
||||
}
|
||||
|
||||
export interface GetLatestChannelItemsRequest {
|
||||
userId?: string;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
filters?: Array<ItemFilter>;
|
||||
fields?: Array<ItemFields>;
|
||||
channelIds?: Array<string>;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ChannelsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Get all channel features.
|
||||
*/
|
||||
async getAllChannelFeaturesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ChannelFeatures>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Channels/Features`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ChannelFeaturesFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all channel features.
|
||||
*/
|
||||
async getAllChannelFeatures(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ChannelFeatures>> {
|
||||
const response = await this.getAllChannelFeaturesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get channel features.
|
||||
*/
|
||||
async getChannelFeaturesRaw(requestParameters: GetChannelFeaturesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ChannelFeatures>> {
|
||||
if (requestParameters.channelId === null || requestParameters.channelId === undefined) {
|
||||
throw new runtime.RequiredError('channelId','Required parameter requestParameters.channelId was null or undefined when calling getChannelFeatures.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Channels/{channelId}/Features`.replace(`{${"channelId"}}`, encodeURIComponent(String(requestParameters.channelId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => ChannelFeaturesFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get channel features.
|
||||
*/
|
||||
async getChannelFeatures(requestParameters: GetChannelFeaturesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ChannelFeatures> {
|
||||
const response = await this.getChannelFeaturesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get channel items.
|
||||
*/
|
||||
async getChannelItemsRaw(requestParameters: GetChannelItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.channelId === null || requestParameters.channelId === undefined) {
|
||||
throw new runtime.RequiredError('channelId','Required parameter requestParameters.channelId was null or undefined when calling getChannelItems.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.folderId !== undefined) {
|
||||
queryParameters['folderId'] = requestParameters.folderId;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.sortOrder) {
|
||||
queryParameters['sortOrder'] = requestParameters.sortOrder;
|
||||
}
|
||||
|
||||
if (requestParameters.filters) {
|
||||
queryParameters['filters'] = requestParameters.filters;
|
||||
}
|
||||
|
||||
if (requestParameters.sortBy) {
|
||||
queryParameters['sortBy'] = requestParameters.sortBy;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Channels/{channelId}/Items`.replace(`{${"channelId"}}`, encodeURIComponent(String(requestParameters.channelId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get channel items.
|
||||
*/
|
||||
async getChannelItems(requestParameters: GetChannelItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getChannelItemsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets available channels.
|
||||
*/
|
||||
async getChannelsRaw(requestParameters: GetChannelsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.supportsLatestItems !== undefined) {
|
||||
queryParameters['supportsLatestItems'] = requestParameters.supportsLatestItems;
|
||||
}
|
||||
|
||||
if (requestParameters.supportsMediaDeletion !== undefined) {
|
||||
queryParameters['supportsMediaDeletion'] = requestParameters.supportsMediaDeletion;
|
||||
}
|
||||
|
||||
if (requestParameters.isFavorite !== undefined) {
|
||||
queryParameters['isFavorite'] = requestParameters.isFavorite;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Channels`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets available channels.
|
||||
*/
|
||||
async getChannels(requestParameters: GetChannelsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getChannelsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets latest channel items.
|
||||
*/
|
||||
async getLatestChannelItemsRaw(requestParameters: GetLatestChannelItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.filters) {
|
||||
queryParameters['filters'] = requestParameters.filters;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.channelIds) {
|
||||
queryParameters['channelIds'] = requestParameters.channelIds;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Channels/Items/Latest`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets latest channel items.
|
||||
*/
|
||||
async getLatestChannelItems(requestParameters: GetLatestChannelItemsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getLatestChannelItemsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
70
server/jellyfin/apis/ClientLogApi.ts
Normal file
70
server/jellyfin/apis/ClientLogApi.ts
Normal file
@ -0,0 +1,70 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ClientLogDocumentResponseDto,
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
ClientLogDocumentResponseDtoFromJSON,
|
||||
ClientLogDocumentResponseDtoToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface LogFileRequest {
|
||||
body?: Blob;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ClientLogApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Upload a document.
|
||||
*/
|
||||
async logFileRaw(requestParameters: LogFileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ClientLogDocumentResponseDto>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'text/plain';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/ClientLog/Document`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: requestParameters.body as any,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => ClientLogDocumentResponseDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Upload a document.
|
||||
*/
|
||||
async logFile(requestParameters: LogFileRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ClientLogDocumentResponseDto> {
|
||||
const response = await this.logFileRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
175
server/jellyfin/apis/CollectionApi.ts
Normal file
175
server/jellyfin/apis/CollectionApi.ts
Normal file
@ -0,0 +1,175 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
CollectionCreationResult,
|
||||
} from '../models';
|
||||
import {
|
||||
CollectionCreationResultFromJSON,
|
||||
CollectionCreationResultToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface AddToCollectionRequest {
|
||||
collectionId: string;
|
||||
ids: Array<string>;
|
||||
}
|
||||
|
||||
export interface CreateCollectionRequest {
|
||||
name?: string;
|
||||
ids?: Array<string>;
|
||||
parentId?: string;
|
||||
isLocked?: boolean;
|
||||
}
|
||||
|
||||
export interface RemoveFromCollectionRequest {
|
||||
collectionId: string;
|
||||
ids: Array<string>;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class CollectionApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Adds items to a collection.
|
||||
*/
|
||||
async addToCollectionRaw(requestParameters: AddToCollectionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.collectionId === null || requestParameters.collectionId === undefined) {
|
||||
throw new runtime.RequiredError('collectionId','Required parameter requestParameters.collectionId was null or undefined when calling addToCollection.');
|
||||
}
|
||||
|
||||
if (requestParameters.ids === null || requestParameters.ids === undefined) {
|
||||
throw new runtime.RequiredError('ids','Required parameter requestParameters.ids was null or undefined when calling addToCollection.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.ids) {
|
||||
queryParameters['ids'] = requestParameters.ids;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Collections/{collectionId}/Items`.replace(`{${"collectionId"}}`, encodeURIComponent(String(requestParameters.collectionId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds items to a collection.
|
||||
*/
|
||||
async addToCollection(requestParameters: AddToCollectionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.addToCollectionRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a new collection.
|
||||
*/
|
||||
async createCollectionRaw(requestParameters: CreateCollectionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CollectionCreationResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.name !== undefined) {
|
||||
queryParameters['name'] = requestParameters.name;
|
||||
}
|
||||
|
||||
if (requestParameters.ids) {
|
||||
queryParameters['ids'] = requestParameters.ids;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.isLocked !== undefined) {
|
||||
queryParameters['isLocked'] = requestParameters.isLocked;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Collections`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => CollectionCreationResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a new collection.
|
||||
*/
|
||||
async createCollection(requestParameters: CreateCollectionRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CollectionCreationResult> {
|
||||
const response = await this.createCollectionRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes items from a collection.
|
||||
*/
|
||||
async removeFromCollectionRaw(requestParameters: RemoveFromCollectionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.collectionId === null || requestParameters.collectionId === undefined) {
|
||||
throw new runtime.RequiredError('collectionId','Required parameter requestParameters.collectionId was null or undefined when calling removeFromCollection.');
|
||||
}
|
||||
|
||||
if (requestParameters.ids === null || requestParameters.ids === undefined) {
|
||||
throw new runtime.RequiredError('ids','Required parameter requestParameters.ids was null or undefined when calling removeFromCollection.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.ids) {
|
||||
queryParameters['ids'] = requestParameters.ids;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Collections/{collectionId}/Items`.replace(`{${"collectionId"}}`, encodeURIComponent(String(requestParameters.collectionId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes items from a collection.
|
||||
*/
|
||||
async removeFromCollection(requestParameters: RemoveFromCollectionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.removeFromCollectionRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
262
server/jellyfin/apis/ConfigurationApi.ts
Normal file
262
server/jellyfin/apis/ConfigurationApi.ts
Normal file
@ -0,0 +1,262 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
MetadataOptions,
|
||||
ServerConfiguration,
|
||||
UpdateConfigurationRequest,
|
||||
UpdateMediaEncoderPathRequest,
|
||||
} from '../models';
|
||||
import {
|
||||
MetadataOptionsFromJSON,
|
||||
MetadataOptionsToJSON,
|
||||
ServerConfigurationFromJSON,
|
||||
ServerConfigurationToJSON,
|
||||
UpdateConfigurationRequestFromJSON,
|
||||
UpdateConfigurationRequestToJSON,
|
||||
UpdateMediaEncoderPathRequestFromJSON,
|
||||
UpdateMediaEncoderPathRequestToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetNamedConfigurationRequest {
|
||||
key: string;
|
||||
}
|
||||
|
||||
export interface UpdateConfigurationOperationRequest {
|
||||
updateConfigurationRequest: UpdateConfigurationRequest;
|
||||
}
|
||||
|
||||
export interface UpdateMediaEncoderPathOperationRequest {
|
||||
updateMediaEncoderPathRequest: UpdateMediaEncoderPathRequest;
|
||||
}
|
||||
|
||||
export interface UpdateNamedConfigurationRequest {
|
||||
key: string;
|
||||
body: any | null;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ConfigurationApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets application configuration.
|
||||
*/
|
||||
async getConfigurationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ServerConfiguration>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Configuration`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => ServerConfigurationFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets application configuration.
|
||||
*/
|
||||
async getConfiguration(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ServerConfiguration> {
|
||||
const response = await this.getConfigurationRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a default MetadataOptions object.
|
||||
*/
|
||||
async getDefaultMetadataOptionsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<MetadataOptions>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Configuration/MetadataOptions/Default`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => MetadataOptionsFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a default MetadataOptions object.
|
||||
*/
|
||||
async getDefaultMetadataOptions(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<MetadataOptions> {
|
||||
const response = await this.getDefaultMetadataOptionsRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a named configuration.
|
||||
*/
|
||||
async getNamedConfigurationRaw(requestParameters: GetNamedConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.key === null || requestParameters.key === undefined) {
|
||||
throw new runtime.RequiredError('key','Required parameter requestParameters.key was null or undefined when calling getNamedConfiguration.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Configuration/{key}`.replace(`{${"key"}}`, encodeURIComponent(String(requestParameters.key))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a named configuration.
|
||||
*/
|
||||
async getNamedConfiguration(requestParameters: GetNamedConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getNamedConfigurationRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates application configuration.
|
||||
*/
|
||||
async updateConfigurationRaw(requestParameters: UpdateConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.updateConfigurationRequest === null || requestParameters.updateConfigurationRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateConfigurationRequest','Required parameter requestParameters.updateConfigurationRequest was null or undefined when calling updateConfiguration.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Configuration`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateConfigurationRequestToJSON(requestParameters.updateConfigurationRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates application configuration.
|
||||
*/
|
||||
async updateConfiguration(requestParameters: UpdateConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateConfigurationRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates the path to the media encoder.
|
||||
*/
|
||||
async updateMediaEncoderPathRaw(requestParameters: UpdateMediaEncoderPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.updateMediaEncoderPathRequest === null || requestParameters.updateMediaEncoderPathRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateMediaEncoderPathRequest','Required parameter requestParameters.updateMediaEncoderPathRequest was null or undefined when calling updateMediaEncoderPath.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/MediaEncoder/Path`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateMediaEncoderPathRequestToJSON(requestParameters.updateMediaEncoderPathRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates the path to the media encoder.
|
||||
*/
|
||||
async updateMediaEncoderPath(requestParameters: UpdateMediaEncoderPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateMediaEncoderPathRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates named configuration.
|
||||
*/
|
||||
async updateNamedConfigurationRaw(requestParameters: UpdateNamedConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.key === null || requestParameters.key === undefined) {
|
||||
throw new runtime.RequiredError('key','Required parameter requestParameters.key was null or undefined when calling updateNamedConfiguration.');
|
||||
}
|
||||
|
||||
if (requestParameters.body === null || requestParameters.body === undefined) {
|
||||
throw new runtime.RequiredError('body','Required parameter requestParameters.body was null or undefined when calling updateNamedConfiguration.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Configuration/{key}`.replace(`{${"key"}}`, encodeURIComponent(String(requestParameters.key))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: requestParameters.body as any,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates named configuration.
|
||||
*/
|
||||
async updateNamedConfiguration(requestParameters: UpdateNamedConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateNamedConfigurationRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
105
server/jellyfin/apis/DashboardApi.ts
Normal file
105
server/jellyfin/apis/DashboardApi.ts
Normal file
@ -0,0 +1,105 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ConfigurationPageInfo,
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
ConfigurationPageInfoFromJSON,
|
||||
ConfigurationPageInfoToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetConfigurationPagesRequest {
|
||||
enableInMainMenu?: boolean;
|
||||
}
|
||||
|
||||
export interface GetDashboardConfigurationPageRequest {
|
||||
name?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class DashboardApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets the configuration pages.
|
||||
*/
|
||||
async getConfigurationPagesRaw(requestParameters: GetConfigurationPagesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ConfigurationPageInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.enableInMainMenu !== undefined) {
|
||||
queryParameters['enableInMainMenu'] = requestParameters.enableInMainMenu;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/web/ConfigurationPages`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ConfigurationPageInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the configuration pages.
|
||||
*/
|
||||
async getConfigurationPages(requestParameters: GetConfigurationPagesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ConfigurationPageInfo>> {
|
||||
const response = await this.getConfigurationPagesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a dashboard configuration page.
|
||||
*/
|
||||
async getDashboardConfigurationPageRaw(requestParameters: GetDashboardConfigurationPageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.name !== undefined) {
|
||||
queryParameters['name'] = requestParameters.name;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/web/ConfigurationPage`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a dashboard configuration page.
|
||||
*/
|
||||
async getDashboardConfigurationPage(requestParameters: GetDashboardConfigurationPageRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getDashboardConfigurationPageRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
259
server/jellyfin/apis/DevicesApi.ts
Normal file
259
server/jellyfin/apis/DevicesApi.ts
Normal file
@ -0,0 +1,259 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
DeviceInfo,
|
||||
DeviceInfoQueryResult,
|
||||
DeviceOptions,
|
||||
ProblemDetails,
|
||||
UpdateDeviceOptionsRequest,
|
||||
} from '../models';
|
||||
import {
|
||||
DeviceInfoFromJSON,
|
||||
DeviceInfoToJSON,
|
||||
DeviceInfoQueryResultFromJSON,
|
||||
DeviceInfoQueryResultToJSON,
|
||||
DeviceOptionsFromJSON,
|
||||
DeviceOptionsToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
UpdateDeviceOptionsRequestFromJSON,
|
||||
UpdateDeviceOptionsRequestToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface DeleteDeviceRequest {
|
||||
id: string;
|
||||
}
|
||||
|
||||
export interface GetDeviceInfoRequest {
|
||||
id: string;
|
||||
}
|
||||
|
||||
export interface GetDeviceOptionsRequest {
|
||||
id: string;
|
||||
}
|
||||
|
||||
export interface GetDevicesRequest {
|
||||
supportsSync?: boolean;
|
||||
userId?: string;
|
||||
}
|
||||
|
||||
export interface UpdateDeviceOptionsOperationRequest {
|
||||
id: string;
|
||||
updateDeviceOptionsRequest: UpdateDeviceOptionsRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class DevicesApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Deletes a device.
|
||||
*/
|
||||
async deleteDeviceRaw(requestParameters: DeleteDeviceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling deleteDevice.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.id !== undefined) {
|
||||
queryParameters['id'] = requestParameters.id;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Devices`,
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes a device.
|
||||
*/
|
||||
async deleteDevice(requestParameters: DeleteDeviceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.deleteDeviceRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get info for a device.
|
||||
*/
|
||||
async getDeviceInfoRaw(requestParameters: GetDeviceInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DeviceInfo>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getDeviceInfo.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.id !== undefined) {
|
||||
queryParameters['id'] = requestParameters.id;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Devices/Info`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => DeviceInfoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get info for a device.
|
||||
*/
|
||||
async getDeviceInfo(requestParameters: GetDeviceInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeviceInfo> {
|
||||
const response = await this.getDeviceInfoRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get options for a device.
|
||||
*/
|
||||
async getDeviceOptionsRaw(requestParameters: GetDeviceOptionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DeviceOptions>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getDeviceOptions.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.id !== undefined) {
|
||||
queryParameters['id'] = requestParameters.id;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Devices/Options`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => DeviceOptionsFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get options for a device.
|
||||
*/
|
||||
async getDeviceOptions(requestParameters: GetDeviceOptionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeviceOptions> {
|
||||
const response = await this.getDeviceOptionsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Devices.
|
||||
*/
|
||||
async getDevicesRaw(requestParameters: GetDevicesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DeviceInfoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.supportsSync !== undefined) {
|
||||
queryParameters['supportsSync'] = requestParameters.supportsSync;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Devices`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => DeviceInfoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Devices.
|
||||
*/
|
||||
async getDevices(requestParameters: GetDevicesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeviceInfoQueryResult> {
|
||||
const response = await this.getDevicesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Update device options.
|
||||
*/
|
||||
async updateDeviceOptionsRaw(requestParameters: UpdateDeviceOptionsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling updateDeviceOptions.');
|
||||
}
|
||||
|
||||
if (requestParameters.updateDeviceOptionsRequest === null || requestParameters.updateDeviceOptionsRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateDeviceOptionsRequest','Required parameter requestParameters.updateDeviceOptionsRequest was null or undefined when calling updateDeviceOptions.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.id !== undefined) {
|
||||
queryParameters['id'] = requestParameters.id;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Devices/Options`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateDeviceOptionsRequestToJSON(requestParameters.updateDeviceOptionsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update device options.
|
||||
*/
|
||||
async updateDeviceOptions(requestParameters: UpdateDeviceOptionsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateDeviceOptionsRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
152
server/jellyfin/apis/DisplayPreferencesApi.ts
Normal file
152
server/jellyfin/apis/DisplayPreferencesApi.ts
Normal file
@ -0,0 +1,152 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
DisplayPreferencesDto,
|
||||
UpdateDisplayPreferencesRequest,
|
||||
} from '../models';
|
||||
import {
|
||||
DisplayPreferencesDtoFromJSON,
|
||||
DisplayPreferencesDtoToJSON,
|
||||
UpdateDisplayPreferencesRequestFromJSON,
|
||||
UpdateDisplayPreferencesRequestToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetDisplayPreferencesRequest {
|
||||
displayPreferencesId: string;
|
||||
userId: string;
|
||||
client: string;
|
||||
}
|
||||
|
||||
export interface UpdateDisplayPreferencesOperationRequest {
|
||||
displayPreferencesId: string;
|
||||
userId: string;
|
||||
client: string;
|
||||
updateDisplayPreferencesRequest: UpdateDisplayPreferencesRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class DisplayPreferencesApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Get Display Preferences.
|
||||
*/
|
||||
async getDisplayPreferencesRaw(requestParameters: GetDisplayPreferencesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DisplayPreferencesDto>> {
|
||||
if (requestParameters.displayPreferencesId === null || requestParameters.displayPreferencesId === undefined) {
|
||||
throw new runtime.RequiredError('displayPreferencesId','Required parameter requestParameters.displayPreferencesId was null or undefined when calling getDisplayPreferences.');
|
||||
}
|
||||
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getDisplayPreferences.');
|
||||
}
|
||||
|
||||
if (requestParameters.client === null || requestParameters.client === undefined) {
|
||||
throw new runtime.RequiredError('client','Required parameter requestParameters.client was null or undefined when calling getDisplayPreferences.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.client !== undefined) {
|
||||
queryParameters['client'] = requestParameters.client;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/DisplayPreferences/{displayPreferencesId}`.replace(`{${"displayPreferencesId"}}`, encodeURIComponent(String(requestParameters.displayPreferencesId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => DisplayPreferencesDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Display Preferences.
|
||||
*/
|
||||
async getDisplayPreferences(requestParameters: GetDisplayPreferencesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DisplayPreferencesDto> {
|
||||
const response = await this.getDisplayPreferencesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Display Preferences.
|
||||
*/
|
||||
async updateDisplayPreferencesRaw(requestParameters: UpdateDisplayPreferencesOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.displayPreferencesId === null || requestParameters.displayPreferencesId === undefined) {
|
||||
throw new runtime.RequiredError('displayPreferencesId','Required parameter requestParameters.displayPreferencesId was null or undefined when calling updateDisplayPreferences.');
|
||||
}
|
||||
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateDisplayPreferences.');
|
||||
}
|
||||
|
||||
if (requestParameters.client === null || requestParameters.client === undefined) {
|
||||
throw new runtime.RequiredError('client','Required parameter requestParameters.client was null or undefined when calling updateDisplayPreferences.');
|
||||
}
|
||||
|
||||
if (requestParameters.updateDisplayPreferencesRequest === null || requestParameters.updateDisplayPreferencesRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateDisplayPreferencesRequest','Required parameter requestParameters.updateDisplayPreferencesRequest was null or undefined when calling updateDisplayPreferences.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.client !== undefined) {
|
||||
queryParameters['client'] = requestParameters.client;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/DisplayPreferences/{displayPreferencesId}`.replace(`{${"displayPreferencesId"}}`, encodeURIComponent(String(requestParameters.displayPreferencesId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateDisplayPreferencesRequestToJSON(requestParameters.updateDisplayPreferencesRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update Display Preferences.
|
||||
*/
|
||||
async updateDisplayPreferences(requestParameters: UpdateDisplayPreferencesOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateDisplayPreferencesRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
251
server/jellyfin/apis/DlnaApi.ts
Normal file
251
server/jellyfin/apis/DlnaApi.ts
Normal file
@ -0,0 +1,251 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
CreateProfileRequest,
|
||||
DeviceProfile,
|
||||
DeviceProfileInfo,
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
CreateProfileRequestFromJSON,
|
||||
CreateProfileRequestToJSON,
|
||||
DeviceProfileFromJSON,
|
||||
DeviceProfileToJSON,
|
||||
DeviceProfileInfoFromJSON,
|
||||
DeviceProfileInfoToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface CreateProfileOperationRequest {
|
||||
createProfileRequest?: CreateProfileRequest;
|
||||
}
|
||||
|
||||
export interface DeleteProfileRequest {
|
||||
profileId: string;
|
||||
}
|
||||
|
||||
export interface GetProfileRequest {
|
||||
profileId: string;
|
||||
}
|
||||
|
||||
export interface UpdateProfileRequest {
|
||||
profileId: string;
|
||||
createProfileRequest?: CreateProfileRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class DlnaApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Creates a profile.
|
||||
*/
|
||||
async createProfileRaw(requestParameters: CreateProfileOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/Profiles`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: CreateProfileRequestToJSON(requestParameters.createProfileRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a profile.
|
||||
*/
|
||||
async createProfile(requestParameters: CreateProfileOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.createProfileRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes a profile.
|
||||
*/
|
||||
async deleteProfileRaw(requestParameters: DeleteProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.profileId === null || requestParameters.profileId === undefined) {
|
||||
throw new runtime.RequiredError('profileId','Required parameter requestParameters.profileId was null or undefined when calling deleteProfile.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/Profiles/{profileId}`.replace(`{${"profileId"}}`, encodeURIComponent(String(requestParameters.profileId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes a profile.
|
||||
*/
|
||||
async deleteProfile(requestParameters: DeleteProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.deleteProfileRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the default profile.
|
||||
*/
|
||||
async getDefaultProfileRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DeviceProfile>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/Profiles/Default`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => DeviceProfileFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the default profile.
|
||||
*/
|
||||
async getDefaultProfile(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeviceProfile> {
|
||||
const response = await this.getDefaultProfileRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a single profile.
|
||||
*/
|
||||
async getProfileRaw(requestParameters: GetProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DeviceProfile>> {
|
||||
if (requestParameters.profileId === null || requestParameters.profileId === undefined) {
|
||||
throw new runtime.RequiredError('profileId','Required parameter requestParameters.profileId was null or undefined when calling getProfile.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/Profiles/{profileId}`.replace(`{${"profileId"}}`, encodeURIComponent(String(requestParameters.profileId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => DeviceProfileFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a single profile.
|
||||
*/
|
||||
async getProfile(requestParameters: GetProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeviceProfile> {
|
||||
const response = await this.getProfileRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get profile infos.
|
||||
*/
|
||||
async getProfileInfosRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<DeviceProfileInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/ProfileInfos`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(DeviceProfileInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get profile infos.
|
||||
*/
|
||||
async getProfileInfos(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<DeviceProfileInfo>> {
|
||||
const response = await this.getProfileInfosRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a profile.
|
||||
*/
|
||||
async updateProfileRaw(requestParameters: UpdateProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.profileId === null || requestParameters.profileId === undefined) {
|
||||
throw new runtime.RequiredError('profileId','Required parameter requestParameters.profileId was null or undefined when calling updateProfile.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/Profiles/{profileId}`.replace(`{${"profileId"}}`, encodeURIComponent(String(requestParameters.profileId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: CreateProfileRequestToJSON(requestParameters.createProfileRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a profile.
|
||||
*/
|
||||
async updateProfile(requestParameters: UpdateProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateProfileRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
643
server/jellyfin/apis/DlnaServerApi.ts
Normal file
643
server/jellyfin/apis/DlnaServerApi.ts
Normal file
@ -0,0 +1,643 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetConnectionManagerRequest {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface GetConnectionManager2Request {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface GetConnectionManager3Request {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface GetContentDirectoryRequest {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface GetContentDirectory2Request {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface GetContentDirectory3Request {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface GetDescriptionXmlRequest {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface GetDescriptionXml2Request {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface GetIconRequest {
|
||||
fileName: string;
|
||||
}
|
||||
|
||||
export interface GetIconIdRequest {
|
||||
serverId: string;
|
||||
fileName: string;
|
||||
}
|
||||
|
||||
export interface GetMediaReceiverRegistrarRequest {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface GetMediaReceiverRegistrar2Request {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface GetMediaReceiverRegistrar3Request {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface ProcessConnectionManagerControlRequestRequest {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface ProcessContentDirectoryControlRequestRequest {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
export interface ProcessMediaReceiverRegistrarControlRequestRequest {
|
||||
serverId: string;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class DlnaServerApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getConnectionManagerRaw(requestParameters: GetConnectionManagerRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getConnectionManager.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/ConnectionManager`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getConnectionManager(requestParameters: GetConnectionManagerRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getConnectionManagerRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getConnectionManager2Raw(requestParameters: GetConnectionManager2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getConnectionManager2.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/ConnectionManager/ConnectionManager`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getConnectionManager2(requestParameters: GetConnectionManager2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getConnectionManager2Raw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getConnectionManager3Raw(requestParameters: GetConnectionManager3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getConnectionManager3.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/ConnectionManager/ConnectionManager.xml`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getConnectionManager3(requestParameters: GetConnectionManager3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getConnectionManager3Raw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna content directory xml.
|
||||
*/
|
||||
async getContentDirectoryRaw(requestParameters: GetContentDirectoryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getContentDirectory.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/ContentDirectory`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna content directory xml.
|
||||
*/
|
||||
async getContentDirectory(requestParameters: GetContentDirectoryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getContentDirectoryRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna content directory xml.
|
||||
*/
|
||||
async getContentDirectory2Raw(requestParameters: GetContentDirectory2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getContentDirectory2.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/ContentDirectory/ContentDirectory`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna content directory xml.
|
||||
*/
|
||||
async getContentDirectory2(requestParameters: GetContentDirectory2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getContentDirectory2Raw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna content directory xml.
|
||||
*/
|
||||
async getContentDirectory3Raw(requestParameters: GetContentDirectory3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getContentDirectory3.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/ContentDirectory/ContentDirectory.xml`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna content directory xml.
|
||||
*/
|
||||
async getContentDirectory3(requestParameters: GetContentDirectory3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getContentDirectory3Raw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Description Xml.
|
||||
*/
|
||||
async getDescriptionXmlRaw(requestParameters: GetDescriptionXmlRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getDescriptionXml.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/description`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Description Xml.
|
||||
*/
|
||||
async getDescriptionXml(requestParameters: GetDescriptionXmlRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getDescriptionXmlRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Description Xml.
|
||||
*/
|
||||
async getDescriptionXml2Raw(requestParameters: GetDescriptionXml2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getDescriptionXml2.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/description.xml`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Description Xml.
|
||||
*/
|
||||
async getDescriptionXml2(requestParameters: GetDescriptionXml2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getDescriptionXml2Raw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a server icon.
|
||||
*/
|
||||
async getIconRaw(requestParameters: GetIconRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.fileName === null || requestParameters.fileName === undefined) {
|
||||
throw new runtime.RequiredError('fileName','Required parameter requestParameters.fileName was null or undefined when calling getIcon.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/icons/{fileName}`.replace(`{${"fileName"}}`, encodeURIComponent(String(requestParameters.fileName))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a server icon.
|
||||
*/
|
||||
async getIcon(requestParameters: GetIconRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getIconRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a server icon.
|
||||
*/
|
||||
async getIconIdRaw(requestParameters: GetIconIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getIconId.');
|
||||
}
|
||||
|
||||
if (requestParameters.fileName === null || requestParameters.fileName === undefined) {
|
||||
throw new runtime.RequiredError('fileName','Required parameter requestParameters.fileName was null or undefined when calling getIconId.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/icons/{fileName}`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))).replace(`{${"fileName"}}`, encodeURIComponent(String(requestParameters.fileName))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a server icon.
|
||||
*/
|
||||
async getIconId(requestParameters: GetIconIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getIconIdRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getMediaReceiverRegistrarRaw(requestParameters: GetMediaReceiverRegistrarRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getMediaReceiverRegistrar.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/MediaReceiverRegistrar`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getMediaReceiverRegistrar(requestParameters: GetMediaReceiverRegistrarRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getMediaReceiverRegistrarRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getMediaReceiverRegistrar2Raw(requestParameters: GetMediaReceiverRegistrar2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getMediaReceiverRegistrar2.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/MediaReceiverRegistrar/MediaReceiverRegistrar`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getMediaReceiverRegistrar2(requestParameters: GetMediaReceiverRegistrar2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getMediaReceiverRegistrar2Raw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getMediaReceiverRegistrar3Raw(requestParameters: GetMediaReceiverRegistrar3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getMediaReceiverRegistrar3.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/MediaReceiverRegistrar/MediaReceiverRegistrar.xml`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets Dlna media receiver registrar xml.
|
||||
*/
|
||||
async getMediaReceiverRegistrar3(requestParameters: GetMediaReceiverRegistrar3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getMediaReceiverRegistrar3Raw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Process a connection manager control request.
|
||||
*/
|
||||
async processConnectionManagerControlRequestRaw(requestParameters: ProcessConnectionManagerControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling processConnectionManagerControlRequest.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/ConnectionManager/Control`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Process a connection manager control request.
|
||||
*/
|
||||
async processConnectionManagerControlRequest(requestParameters: ProcessConnectionManagerControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.processConnectionManagerControlRequestRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Process a content directory control request.
|
||||
*/
|
||||
async processContentDirectoryControlRequestRaw(requestParameters: ProcessContentDirectoryControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling processContentDirectoryControlRequest.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/ContentDirectory/Control`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Process a content directory control request.
|
||||
*/
|
||||
async processContentDirectoryControlRequest(requestParameters: ProcessContentDirectoryControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.processContentDirectoryControlRequestRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Process a media receiver registrar control request.
|
||||
*/
|
||||
async processMediaReceiverRegistrarControlRequestRaw(requestParameters: ProcessMediaReceiverRegistrarControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
|
||||
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling processMediaReceiverRegistrarControlRequest.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Dlna/{serverId}/MediaReceiverRegistrar/Control`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Process a media receiver registrar control request.
|
||||
*/
|
||||
async processMediaReceiverRegistrarControlRequest(requestParameters: ProcessMediaReceiverRegistrarControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.processMediaReceiverRegistrarControlRequestRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
2672
server/jellyfin/apis/DynamicHlsApi.ts
Normal file
2672
server/jellyfin/apis/DynamicHlsApi.ts
Normal file
File diff suppressed because it is too large
Load Diff
267
server/jellyfin/apis/EnvironmentApi.ts
Normal file
267
server/jellyfin/apis/EnvironmentApi.ts
Normal file
@ -0,0 +1,267 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
DefaultDirectoryBrowserInfoDto,
|
||||
FileSystemEntryInfo,
|
||||
ProblemDetails,
|
||||
ValidatePathRequest,
|
||||
} from '../models';
|
||||
import {
|
||||
DefaultDirectoryBrowserInfoDtoFromJSON,
|
||||
DefaultDirectoryBrowserInfoDtoToJSON,
|
||||
FileSystemEntryInfoFromJSON,
|
||||
FileSystemEntryInfoToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
ValidatePathRequestFromJSON,
|
||||
ValidatePathRequestToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetDirectoryContentsRequest {
|
||||
path: string;
|
||||
includeFiles?: boolean;
|
||||
includeDirectories?: boolean;
|
||||
}
|
||||
|
||||
export interface GetParentPathRequest {
|
||||
path: string;
|
||||
}
|
||||
|
||||
export interface ValidatePathOperationRequest {
|
||||
validatePathRequest: ValidatePathRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class EnvironmentApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Get Default directory browser.
|
||||
*/
|
||||
async getDefaultDirectoryBrowserRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DefaultDirectoryBrowserInfoDto>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Environment/DefaultDirectoryBrowser`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => DefaultDirectoryBrowserInfoDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Default directory browser.
|
||||
*/
|
||||
async getDefaultDirectoryBrowser(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DefaultDirectoryBrowserInfoDto> {
|
||||
const response = await this.getDefaultDirectoryBrowserRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the contents of a given directory in the file system.
|
||||
*/
|
||||
async getDirectoryContentsRaw(requestParameters: GetDirectoryContentsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<FileSystemEntryInfo>>> {
|
||||
if (requestParameters.path === null || requestParameters.path === undefined) {
|
||||
throw new runtime.RequiredError('path','Required parameter requestParameters.path was null or undefined when calling getDirectoryContents.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.path !== undefined) {
|
||||
queryParameters['path'] = requestParameters.path;
|
||||
}
|
||||
|
||||
if (requestParameters.includeFiles !== undefined) {
|
||||
queryParameters['includeFiles'] = requestParameters.includeFiles;
|
||||
}
|
||||
|
||||
if (requestParameters.includeDirectories !== undefined) {
|
||||
queryParameters['includeDirectories'] = requestParameters.includeDirectories;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Environment/DirectoryContents`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(FileSystemEntryInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the contents of a given directory in the file system.
|
||||
*/
|
||||
async getDirectoryContents(requestParameters: GetDirectoryContentsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<FileSystemEntryInfo>> {
|
||||
const response = await this.getDirectoryContentsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets available drives from the server\'s file system.
|
||||
*/
|
||||
async getDrivesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<FileSystemEntryInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Environment/Drives`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(FileSystemEntryInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets available drives from the server\'s file system.
|
||||
*/
|
||||
async getDrives(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<FileSystemEntryInfo>> {
|
||||
const response = await this.getDrivesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets network paths.
|
||||
*/
|
||||
async getNetworkSharesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<FileSystemEntryInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Environment/NetworkShares`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(FileSystemEntryInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets network paths.
|
||||
*/
|
||||
async getNetworkShares(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<FileSystemEntryInfo>> {
|
||||
const response = await this.getNetworkSharesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the parent path of a given path.
|
||||
*/
|
||||
async getParentPathRaw(requestParameters: GetParentPathRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
|
||||
if (requestParameters.path === null || requestParameters.path === undefined) {
|
||||
throw new runtime.RequiredError('path','Required parameter requestParameters.path was null or undefined when calling getParentPath.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.path !== undefined) {
|
||||
queryParameters['path'] = requestParameters.path;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Environment/ParentPath`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
if (this.isJsonMime(response.headers.get('content-type'))) {
|
||||
return new runtime.JSONApiResponse<string>(response);
|
||||
} else {
|
||||
return new runtime.TextApiResponse(response) as any;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the parent path of a given path.
|
||||
*/
|
||||
async getParentPath(requestParameters: GetParentPathRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
|
||||
const response = await this.getParentPathRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Validates path.
|
||||
*/
|
||||
async validatePathRaw(requestParameters: ValidatePathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.validatePathRequest === null || requestParameters.validatePathRequest === undefined) {
|
||||
throw new runtime.RequiredError('validatePathRequest','Required parameter requestParameters.validatePathRequest was null or undefined when calling validatePath.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Environment/ValidatePath`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: ValidatePathRequestToJSON(requestParameters.validatePathRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Validates path.
|
||||
*/
|
||||
async validatePath(requestParameters: ValidatePathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.validatePathRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
172
server/jellyfin/apis/FilterApi.ts
Normal file
172
server/jellyfin/apis/FilterApi.ts
Normal file
@ -0,0 +1,172 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemKind,
|
||||
QueryFilters,
|
||||
QueryFiltersLegacy,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
QueryFiltersFromJSON,
|
||||
QueryFiltersToJSON,
|
||||
QueryFiltersLegacyFromJSON,
|
||||
QueryFiltersLegacyToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetQueryFiltersRequest {
|
||||
userId?: string;
|
||||
parentId?: string;
|
||||
includeItemTypes?: Array<BaseItemKind>;
|
||||
isAiring?: boolean;
|
||||
isMovie?: boolean;
|
||||
isSports?: boolean;
|
||||
isKids?: boolean;
|
||||
isNews?: boolean;
|
||||
isSeries?: boolean;
|
||||
recursive?: boolean;
|
||||
}
|
||||
|
||||
export interface GetQueryFiltersLegacyRequest {
|
||||
userId?: string;
|
||||
parentId?: string;
|
||||
includeItemTypes?: Array<BaseItemKind>;
|
||||
mediaTypes?: Array<string>;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class FilterApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets query filters.
|
||||
*/
|
||||
async getQueryFiltersRaw(requestParameters: GetQueryFiltersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<QueryFilters>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.includeItemTypes) {
|
||||
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.isAiring !== undefined) {
|
||||
queryParameters['isAiring'] = requestParameters.isAiring;
|
||||
}
|
||||
|
||||
if (requestParameters.isMovie !== undefined) {
|
||||
queryParameters['isMovie'] = requestParameters.isMovie;
|
||||
}
|
||||
|
||||
if (requestParameters.isSports !== undefined) {
|
||||
queryParameters['isSports'] = requestParameters.isSports;
|
||||
}
|
||||
|
||||
if (requestParameters.isKids !== undefined) {
|
||||
queryParameters['isKids'] = requestParameters.isKids;
|
||||
}
|
||||
|
||||
if (requestParameters.isNews !== undefined) {
|
||||
queryParameters['isNews'] = requestParameters.isNews;
|
||||
}
|
||||
|
||||
if (requestParameters.isSeries !== undefined) {
|
||||
queryParameters['isSeries'] = requestParameters.isSeries;
|
||||
}
|
||||
|
||||
if (requestParameters.recursive !== undefined) {
|
||||
queryParameters['recursive'] = requestParameters.recursive;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/Filters2`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => QueryFiltersFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets query filters.
|
||||
*/
|
||||
async getQueryFilters(requestParameters: GetQueryFiltersRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<QueryFilters> {
|
||||
const response = await this.getQueryFiltersRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets legacy query filters.
|
||||
*/
|
||||
async getQueryFiltersLegacyRaw(requestParameters: GetQueryFiltersLegacyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<QueryFiltersLegacy>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.includeItemTypes) {
|
||||
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaTypes) {
|
||||
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/Filters`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => QueryFiltersLegacyFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets legacy query filters.
|
||||
*/
|
||||
async getQueryFiltersLegacy(requestParameters: GetQueryFiltersLegacyRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<QueryFiltersLegacy> {
|
||||
const response = await this.getQueryFiltersLegacyRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
211
server/jellyfin/apis/GenresApi.ts
Normal file
211
server/jellyfin/apis/GenresApi.ts
Normal file
@ -0,0 +1,211 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDto,
|
||||
BaseItemDtoQueryResult,
|
||||
BaseItemKind,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
SortOrder,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoFromJSON,
|
||||
BaseItemDtoToJSON,
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
SortOrderFromJSON,
|
||||
SortOrderToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetGenreRequest {
|
||||
genreName: string;
|
||||
userId?: string;
|
||||
}
|
||||
|
||||
export interface GetGenresRequest {
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
searchTerm?: string;
|
||||
parentId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
excludeItemTypes?: Array<BaseItemKind>;
|
||||
includeItemTypes?: Array<BaseItemKind>;
|
||||
isFavorite?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
userId?: string;
|
||||
nameStartsWithOrGreater?: string;
|
||||
nameStartsWith?: string;
|
||||
nameLessThan?: string;
|
||||
sortBy?: Array<string>;
|
||||
sortOrder?: Array<SortOrder>;
|
||||
enableImages?: boolean;
|
||||
enableTotalRecordCount?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class GenresApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets a genre, by name.
|
||||
*/
|
||||
async getGenreRaw(requestParameters: GetGenreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
|
||||
if (requestParameters.genreName === null || requestParameters.genreName === undefined) {
|
||||
throw new runtime.RequiredError('genreName','Required parameter requestParameters.genreName was null or undefined when calling getGenre.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Genres/{genreName}`.replace(`{${"genreName"}}`, encodeURIComponent(String(requestParameters.genreName))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a genre, by name.
|
||||
*/
|
||||
async getGenre(requestParameters: GetGenreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
|
||||
const response = await this.getGenreRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all genres from a given item, folder, or the entire library.
|
||||
*/
|
||||
async getGenresRaw(requestParameters: GetGenresRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.searchTerm !== undefined) {
|
||||
queryParameters['searchTerm'] = requestParameters.searchTerm;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeItemTypes) {
|
||||
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.includeItemTypes) {
|
||||
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.isFavorite !== undefined) {
|
||||
queryParameters['isFavorite'] = requestParameters.isFavorite;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWithOrGreater !== undefined) {
|
||||
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWith !== undefined) {
|
||||
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
|
||||
}
|
||||
|
||||
if (requestParameters.nameLessThan !== undefined) {
|
||||
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
|
||||
}
|
||||
|
||||
if (requestParameters.sortBy) {
|
||||
queryParameters['sortBy'] = requestParameters.sortBy;
|
||||
}
|
||||
|
||||
if (requestParameters.sortOrder) {
|
||||
queryParameters['sortOrder'] = requestParameters.sortOrder;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableTotalRecordCount !== undefined) {
|
||||
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Genres`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all genres from a given item, folder, or the entire library.
|
||||
*/
|
||||
async getGenres(requestParameters: GetGenresRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getGenresRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
250
server/jellyfin/apis/HlsSegmentApi.ts
Normal file
250
server/jellyfin/apis/HlsSegmentApi.ts
Normal file
@ -0,0 +1,250 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetHlsAudioSegmentLegacyAacRequest {
|
||||
itemId: string;
|
||||
segmentId: string;
|
||||
}
|
||||
|
||||
export interface GetHlsAudioSegmentLegacyMp3Request {
|
||||
itemId: string;
|
||||
segmentId: string;
|
||||
}
|
||||
|
||||
export interface GetHlsPlaylistLegacyRequest {
|
||||
itemId: string;
|
||||
playlistId: string;
|
||||
}
|
||||
|
||||
export interface GetHlsVideoSegmentLegacyRequest {
|
||||
itemId: string;
|
||||
playlistId: string;
|
||||
segmentId: string;
|
||||
segmentContainer: string;
|
||||
}
|
||||
|
||||
export interface StopEncodingProcessRequest {
|
||||
deviceId: string;
|
||||
playSessionId: string;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class HlsSegmentApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets the specified audio segment for an audio item.
|
||||
*/
|
||||
async getHlsAudioSegmentLegacyAacRaw(requestParameters: GetHlsAudioSegmentLegacyAacRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getHlsAudioSegmentLegacyAac.');
|
||||
}
|
||||
|
||||
if (requestParameters.segmentId === null || requestParameters.segmentId === undefined) {
|
||||
throw new runtime.RequiredError('segmentId','Required parameter requestParameters.segmentId was null or undefined when calling getHlsAudioSegmentLegacyAac.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Audio/{itemId}/hls/{segmentId}/stream.aac`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"segmentId"}}`, encodeURIComponent(String(requestParameters.segmentId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the specified audio segment for an audio item.
|
||||
*/
|
||||
async getHlsAudioSegmentLegacyAac(requestParameters: GetHlsAudioSegmentLegacyAacRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getHlsAudioSegmentLegacyAacRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the specified audio segment for an audio item.
|
||||
*/
|
||||
async getHlsAudioSegmentLegacyMp3Raw(requestParameters: GetHlsAudioSegmentLegacyMp3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getHlsAudioSegmentLegacyMp3.');
|
||||
}
|
||||
|
||||
if (requestParameters.segmentId === null || requestParameters.segmentId === undefined) {
|
||||
throw new runtime.RequiredError('segmentId','Required parameter requestParameters.segmentId was null or undefined when calling getHlsAudioSegmentLegacyMp3.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Audio/{itemId}/hls/{segmentId}/stream.mp3`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"segmentId"}}`, encodeURIComponent(String(requestParameters.segmentId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the specified audio segment for an audio item.
|
||||
*/
|
||||
async getHlsAudioSegmentLegacyMp3(requestParameters: GetHlsAudioSegmentLegacyMp3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getHlsAudioSegmentLegacyMp3Raw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a hls video playlist.
|
||||
*/
|
||||
async getHlsPlaylistLegacyRaw(requestParameters: GetHlsPlaylistLegacyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getHlsPlaylistLegacy.');
|
||||
}
|
||||
|
||||
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
|
||||
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling getHlsPlaylistLegacy.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Videos/{itemId}/hls/{playlistId}/stream.m3u8`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a hls video playlist.
|
||||
*/
|
||||
async getHlsPlaylistLegacy(requestParameters: GetHlsPlaylistLegacyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getHlsPlaylistLegacyRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a hls video segment.
|
||||
*/
|
||||
async getHlsVideoSegmentLegacyRaw(requestParameters: GetHlsVideoSegmentLegacyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getHlsVideoSegmentLegacy.');
|
||||
}
|
||||
|
||||
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
|
||||
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling getHlsVideoSegmentLegacy.');
|
||||
}
|
||||
|
||||
if (requestParameters.segmentId === null || requestParameters.segmentId === undefined) {
|
||||
throw new runtime.RequiredError('segmentId','Required parameter requestParameters.segmentId was null or undefined when calling getHlsVideoSegmentLegacy.');
|
||||
}
|
||||
|
||||
if (requestParameters.segmentContainer === null || requestParameters.segmentContainer === undefined) {
|
||||
throw new runtime.RequiredError('segmentContainer','Required parameter requestParameters.segmentContainer was null or undefined when calling getHlsVideoSegmentLegacy.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Videos/{itemId}/hls/{playlistId}/{segmentId}.{segmentContainer}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))).replace(`{${"segmentId"}}`, encodeURIComponent(String(requestParameters.segmentId))).replace(`{${"segmentContainer"}}`, encodeURIComponent(String(requestParameters.segmentContainer))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a hls video segment.
|
||||
*/
|
||||
async getHlsVideoSegmentLegacy(requestParameters: GetHlsVideoSegmentLegacyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getHlsVideoSegmentLegacyRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Stops an active encoding.
|
||||
*/
|
||||
async stopEncodingProcessRaw(requestParameters: StopEncodingProcessRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.deviceId === null || requestParameters.deviceId === undefined) {
|
||||
throw new runtime.RequiredError('deviceId','Required parameter requestParameters.deviceId was null or undefined when calling stopEncodingProcess.');
|
||||
}
|
||||
|
||||
if (requestParameters.playSessionId === null || requestParameters.playSessionId === undefined) {
|
||||
throw new runtime.RequiredError('playSessionId','Required parameter requestParameters.playSessionId was null or undefined when calling stopEncodingProcess.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.deviceId !== undefined) {
|
||||
queryParameters['deviceId'] = requestParameters.deviceId;
|
||||
}
|
||||
|
||||
if (requestParameters.playSessionId !== undefined) {
|
||||
queryParameters['playSessionId'] = requestParameters.playSessionId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Videos/ActiveEncodings`,
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Stops an active encoding.
|
||||
*/
|
||||
async stopEncodingProcess(requestParameters: StopEncodingProcessRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.stopEncodingProcessRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
4146
server/jellyfin/apis/ImageApi.ts
Normal file
4146
server/jellyfin/apis/ImageApi.ts
Normal file
File diff suppressed because it is too large
Load Diff
240
server/jellyfin/apis/ImageByNameApi.ts
Normal file
240
server/jellyfin/apis/ImageByNameApi.ts
Normal file
@ -0,0 +1,240 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ImageByNameInfo,
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
ImageByNameInfoFromJSON,
|
||||
ImageByNameInfoToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetGeneralImageRequest {
|
||||
name: string;
|
||||
type: string;
|
||||
}
|
||||
|
||||
export interface GetMediaInfoImageRequest {
|
||||
theme: string;
|
||||
name: string;
|
||||
}
|
||||
|
||||
export interface GetRatingImageRequest {
|
||||
theme: string;
|
||||
name: string;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ImageByNameApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Get General Image.
|
||||
*/
|
||||
async getGeneralImageRaw(requestParameters: GetGeneralImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getGeneralImage.');
|
||||
}
|
||||
|
||||
if (requestParameters.type === null || requestParameters.type === undefined) {
|
||||
throw new runtime.RequiredError('type','Required parameter requestParameters.type was null or undefined when calling getGeneralImage.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Images/General/{name}/{type}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))).replace(`{${"type"}}`, encodeURIComponent(String(requestParameters.type))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get General Image.
|
||||
*/
|
||||
async getGeneralImage(requestParameters: GetGeneralImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getGeneralImageRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all general images.
|
||||
*/
|
||||
async getGeneralImagesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ImageByNameInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Images/General`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ImageByNameInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all general images.
|
||||
*/
|
||||
async getGeneralImages(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ImageByNameInfo>> {
|
||||
const response = await this.getGeneralImagesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get media info image.
|
||||
*/
|
||||
async getMediaInfoImageRaw(requestParameters: GetMediaInfoImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.theme === null || requestParameters.theme === undefined) {
|
||||
throw new runtime.RequiredError('theme','Required parameter requestParameters.theme was null or undefined when calling getMediaInfoImage.');
|
||||
}
|
||||
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getMediaInfoImage.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Images/MediaInfo/{theme}/{name}`.replace(`{${"theme"}}`, encodeURIComponent(String(requestParameters.theme))).replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get media info image.
|
||||
*/
|
||||
async getMediaInfoImage(requestParameters: GetMediaInfoImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getMediaInfoImageRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all media info images.
|
||||
*/
|
||||
async getMediaInfoImagesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ImageByNameInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Images/MediaInfo`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ImageByNameInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all media info images.
|
||||
*/
|
||||
async getMediaInfoImages(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ImageByNameInfo>> {
|
||||
const response = await this.getMediaInfoImagesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get rating image.
|
||||
*/
|
||||
async getRatingImageRaw(requestParameters: GetRatingImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.theme === null || requestParameters.theme === undefined) {
|
||||
throw new runtime.RequiredError('theme','Required parameter requestParameters.theme was null or undefined when calling getRatingImage.');
|
||||
}
|
||||
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getRatingImage.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Images/Ratings/{theme}/{name}`.replace(`{${"theme"}}`, encodeURIComponent(String(requestParameters.theme))).replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get rating image.
|
||||
*/
|
||||
async getRatingImage(requestParameters: GetRatingImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getRatingImageRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all general images.
|
||||
*/
|
||||
async getRatingImagesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ImageByNameInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Images/Ratings`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ImageByNameInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all general images.
|
||||
*/
|
||||
async getRatingImages(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ImageByNameInfo>> {
|
||||
const response = await this.getRatingImagesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
628
server/jellyfin/apis/InstantMixApi.ts
Normal file
628
server/jellyfin/apis/InstantMixApi.ts
Normal file
@ -0,0 +1,628 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDtoQueryResult,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetInstantMixFromAlbumRequest {
|
||||
id: string;
|
||||
userId?: string;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
enableImages?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
}
|
||||
|
||||
export interface GetInstantMixFromArtistsRequest {
|
||||
id: string;
|
||||
userId?: string;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
enableImages?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
}
|
||||
|
||||
export interface GetInstantMixFromArtists2Request {
|
||||
id: string;
|
||||
userId?: string;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
enableImages?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
}
|
||||
|
||||
export interface GetInstantMixFromItemRequest {
|
||||
id: string;
|
||||
userId?: string;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
enableImages?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
}
|
||||
|
||||
export interface GetInstantMixFromMusicGenreByIdRequest {
|
||||
id: string;
|
||||
userId?: string;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
enableImages?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
}
|
||||
|
||||
export interface GetInstantMixFromMusicGenreByNameRequest {
|
||||
name: string;
|
||||
userId?: string;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
enableImages?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
}
|
||||
|
||||
export interface GetInstantMixFromPlaylistRequest {
|
||||
id: string;
|
||||
userId?: string;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
enableImages?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
}
|
||||
|
||||
export interface GetInstantMixFromSongRequest {
|
||||
id: string;
|
||||
userId?: string;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
enableImages?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class InstantMixApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given album.
|
||||
*/
|
||||
async getInstantMixFromAlbumRaw(requestParameters: GetInstantMixFromAlbumRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromAlbum.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Albums/{id}/InstantMix`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given album.
|
||||
*/
|
||||
async getInstantMixFromAlbum(requestParameters: GetInstantMixFromAlbumRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getInstantMixFromAlbumRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given artist.
|
||||
*/
|
||||
async getInstantMixFromArtistsRaw(requestParameters: GetInstantMixFromArtistsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromArtists.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Artists/{id}/InstantMix`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given artist.
|
||||
*/
|
||||
async getInstantMixFromArtists(requestParameters: GetInstantMixFromArtistsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getInstantMixFromArtistsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given artist.
|
||||
*/
|
||||
async getInstantMixFromArtists2Raw(requestParameters: GetInstantMixFromArtists2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromArtists2.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.id !== undefined) {
|
||||
queryParameters['id'] = requestParameters.id;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Artists/InstantMix`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given artist.
|
||||
*/
|
||||
async getInstantMixFromArtists2(requestParameters: GetInstantMixFromArtists2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getInstantMixFromArtists2Raw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given item.
|
||||
*/
|
||||
async getInstantMixFromItemRaw(requestParameters: GetInstantMixFromItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{id}/InstantMix`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given item.
|
||||
*/
|
||||
async getInstantMixFromItem(requestParameters: GetInstantMixFromItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getInstantMixFromItemRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given genre.
|
||||
*/
|
||||
async getInstantMixFromMusicGenreByIdRaw(requestParameters: GetInstantMixFromMusicGenreByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromMusicGenreById.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.id !== undefined) {
|
||||
queryParameters['id'] = requestParameters.id;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/MusicGenres/InstantMix`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given genre.
|
||||
*/
|
||||
async getInstantMixFromMusicGenreById(requestParameters: GetInstantMixFromMusicGenreByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getInstantMixFromMusicGenreByIdRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given genre.
|
||||
*/
|
||||
async getInstantMixFromMusicGenreByNameRaw(requestParameters: GetInstantMixFromMusicGenreByNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getInstantMixFromMusicGenreByName.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/MusicGenres/{name}/InstantMix`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given genre.
|
||||
*/
|
||||
async getInstantMixFromMusicGenreByName(requestParameters: GetInstantMixFromMusicGenreByNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getInstantMixFromMusicGenreByNameRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given playlist.
|
||||
*/
|
||||
async getInstantMixFromPlaylistRaw(requestParameters: GetInstantMixFromPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromPlaylist.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Playlists/{id}/InstantMix`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given playlist.
|
||||
*/
|
||||
async getInstantMixFromPlaylist(requestParameters: GetInstantMixFromPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getInstantMixFromPlaylistRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given song.
|
||||
*/
|
||||
async getInstantMixFromSongRaw(requestParameters: GetInstantMixFromSongRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromSong.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Songs/{id}/InstantMix`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instant playlist based on a given song.
|
||||
*/
|
||||
async getInstantMixFromSong(requestParameters: GetInstantMixFromSongRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getInstantMixFromSongRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
523
server/jellyfin/apis/ItemLookupApi.ts
Normal file
523
server/jellyfin/apis/ItemLookupApi.ts
Normal file
@ -0,0 +1,523 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ApplySearchCriteriaRequest,
|
||||
ExternalIdInfo,
|
||||
GetBookRemoteSearchResultsRequest,
|
||||
GetBoxSetRemoteSearchResultsRequest,
|
||||
GetMovieRemoteSearchResultsRequest,
|
||||
GetMusicAlbumRemoteSearchResultsRequest,
|
||||
GetMusicArtistRemoteSearchResultsRequest,
|
||||
GetMusicVideoRemoteSearchResultsRequest,
|
||||
GetPersonRemoteSearchResultsRequest,
|
||||
GetSeriesRemoteSearchResultsRequest,
|
||||
GetTrailerRemoteSearchResultsRequest,
|
||||
ProblemDetails,
|
||||
RemoteSearchResult,
|
||||
} from '../models';
|
||||
import {
|
||||
ApplySearchCriteriaRequestFromJSON,
|
||||
ApplySearchCriteriaRequestToJSON,
|
||||
ExternalIdInfoFromJSON,
|
||||
ExternalIdInfoToJSON,
|
||||
GetBookRemoteSearchResultsRequestFromJSON,
|
||||
GetBookRemoteSearchResultsRequestToJSON,
|
||||
GetBoxSetRemoteSearchResultsRequestFromJSON,
|
||||
GetBoxSetRemoteSearchResultsRequestToJSON,
|
||||
GetMovieRemoteSearchResultsRequestFromJSON,
|
||||
GetMovieRemoteSearchResultsRequestToJSON,
|
||||
GetMusicAlbumRemoteSearchResultsRequestFromJSON,
|
||||
GetMusicAlbumRemoteSearchResultsRequestToJSON,
|
||||
GetMusicArtistRemoteSearchResultsRequestFromJSON,
|
||||
GetMusicArtistRemoteSearchResultsRequestToJSON,
|
||||
GetMusicVideoRemoteSearchResultsRequestFromJSON,
|
||||
GetMusicVideoRemoteSearchResultsRequestToJSON,
|
||||
GetPersonRemoteSearchResultsRequestFromJSON,
|
||||
GetPersonRemoteSearchResultsRequestToJSON,
|
||||
GetSeriesRemoteSearchResultsRequestFromJSON,
|
||||
GetSeriesRemoteSearchResultsRequestToJSON,
|
||||
GetTrailerRemoteSearchResultsRequestFromJSON,
|
||||
GetTrailerRemoteSearchResultsRequestToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
RemoteSearchResultFromJSON,
|
||||
RemoteSearchResultToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface ApplySearchCriteriaOperationRequest {
|
||||
itemId: string;
|
||||
applySearchCriteriaRequest: ApplySearchCriteriaRequest;
|
||||
replaceAllImages?: boolean;
|
||||
}
|
||||
|
||||
export interface GetBookRemoteSearchResultsOperationRequest {
|
||||
getBookRemoteSearchResultsRequest: GetBookRemoteSearchResultsRequest;
|
||||
}
|
||||
|
||||
export interface GetBoxSetRemoteSearchResultsOperationRequest {
|
||||
getBoxSetRemoteSearchResultsRequest: GetBoxSetRemoteSearchResultsRequest;
|
||||
}
|
||||
|
||||
export interface GetExternalIdInfosRequest {
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface GetMovieRemoteSearchResultsOperationRequest {
|
||||
getMovieRemoteSearchResultsRequest: GetMovieRemoteSearchResultsRequest;
|
||||
}
|
||||
|
||||
export interface GetMusicAlbumRemoteSearchResultsOperationRequest {
|
||||
getMusicAlbumRemoteSearchResultsRequest: GetMusicAlbumRemoteSearchResultsRequest;
|
||||
}
|
||||
|
||||
export interface GetMusicArtistRemoteSearchResultsOperationRequest {
|
||||
getMusicArtistRemoteSearchResultsRequest: GetMusicArtistRemoteSearchResultsRequest;
|
||||
}
|
||||
|
||||
export interface GetMusicVideoRemoteSearchResultsOperationRequest {
|
||||
getMusicVideoRemoteSearchResultsRequest: GetMusicVideoRemoteSearchResultsRequest;
|
||||
}
|
||||
|
||||
export interface GetPersonRemoteSearchResultsOperationRequest {
|
||||
getPersonRemoteSearchResultsRequest: GetPersonRemoteSearchResultsRequest;
|
||||
}
|
||||
|
||||
export interface GetSeriesRemoteSearchResultsOperationRequest {
|
||||
getSeriesRemoteSearchResultsRequest: GetSeriesRemoteSearchResultsRequest;
|
||||
}
|
||||
|
||||
export interface GetTrailerRemoteSearchResultsOperationRequest {
|
||||
getTrailerRemoteSearchResultsRequest: GetTrailerRemoteSearchResultsRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ItemLookupApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Applies search criteria to an item and refreshes metadata.
|
||||
*/
|
||||
async applySearchCriteriaRaw(requestParameters: ApplySearchCriteriaOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling applySearchCriteria.');
|
||||
}
|
||||
|
||||
if (requestParameters.applySearchCriteriaRequest === null || requestParameters.applySearchCriteriaRequest === undefined) {
|
||||
throw new runtime.RequiredError('applySearchCriteriaRequest','Required parameter requestParameters.applySearchCriteriaRequest was null or undefined when calling applySearchCriteria.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.replaceAllImages !== undefined) {
|
||||
queryParameters['replaceAllImages'] = requestParameters.replaceAllImages;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/RemoteSearch/Apply/{itemId}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: ApplySearchCriteriaRequestToJSON(requestParameters.applySearchCriteriaRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Applies search criteria to an item and refreshes metadata.
|
||||
*/
|
||||
async applySearchCriteria(requestParameters: ApplySearchCriteriaOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.applySearchCriteriaRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get book remote search.
|
||||
*/
|
||||
async getBookRemoteSearchResultsRaw(requestParameters: GetBookRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
|
||||
if (requestParameters.getBookRemoteSearchResultsRequest === null || requestParameters.getBookRemoteSearchResultsRequest === undefined) {
|
||||
throw new runtime.RequiredError('getBookRemoteSearchResultsRequest','Required parameter requestParameters.getBookRemoteSearchResultsRequest was null or undefined when calling getBookRemoteSearchResults.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/RemoteSearch/Book`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: GetBookRemoteSearchResultsRequestToJSON(requestParameters.getBookRemoteSearchResultsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get book remote search.
|
||||
*/
|
||||
async getBookRemoteSearchResults(requestParameters: GetBookRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
|
||||
const response = await this.getBookRemoteSearchResultsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get box set remote search.
|
||||
*/
|
||||
async getBoxSetRemoteSearchResultsRaw(requestParameters: GetBoxSetRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
|
||||
if (requestParameters.getBoxSetRemoteSearchResultsRequest === null || requestParameters.getBoxSetRemoteSearchResultsRequest === undefined) {
|
||||
throw new runtime.RequiredError('getBoxSetRemoteSearchResultsRequest','Required parameter requestParameters.getBoxSetRemoteSearchResultsRequest was null or undefined when calling getBoxSetRemoteSearchResults.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/RemoteSearch/BoxSet`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: GetBoxSetRemoteSearchResultsRequestToJSON(requestParameters.getBoxSetRemoteSearchResultsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get box set remote search.
|
||||
*/
|
||||
async getBoxSetRemoteSearchResults(requestParameters: GetBoxSetRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
|
||||
const response = await this.getBoxSetRemoteSearchResultsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the item\'s external id info.
|
||||
*/
|
||||
async getExternalIdInfosRaw(requestParameters: GetExternalIdInfosRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ExternalIdInfo>>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getExternalIdInfos.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/ExternalIdInfos`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ExternalIdInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the item\'s external id info.
|
||||
*/
|
||||
async getExternalIdInfos(requestParameters: GetExternalIdInfosRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ExternalIdInfo>> {
|
||||
const response = await this.getExternalIdInfosRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get movie remote search.
|
||||
*/
|
||||
async getMovieRemoteSearchResultsRaw(requestParameters: GetMovieRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
|
||||
if (requestParameters.getMovieRemoteSearchResultsRequest === null || requestParameters.getMovieRemoteSearchResultsRequest === undefined) {
|
||||
throw new runtime.RequiredError('getMovieRemoteSearchResultsRequest','Required parameter requestParameters.getMovieRemoteSearchResultsRequest was null or undefined when calling getMovieRemoteSearchResults.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/RemoteSearch/Movie`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: GetMovieRemoteSearchResultsRequestToJSON(requestParameters.getMovieRemoteSearchResultsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get movie remote search.
|
||||
*/
|
||||
async getMovieRemoteSearchResults(requestParameters: GetMovieRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
|
||||
const response = await this.getMovieRemoteSearchResultsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get music album remote search.
|
||||
*/
|
||||
async getMusicAlbumRemoteSearchResultsRaw(requestParameters: GetMusicAlbumRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
|
||||
if (requestParameters.getMusicAlbumRemoteSearchResultsRequest === null || requestParameters.getMusicAlbumRemoteSearchResultsRequest === undefined) {
|
||||
throw new runtime.RequiredError('getMusicAlbumRemoteSearchResultsRequest','Required parameter requestParameters.getMusicAlbumRemoteSearchResultsRequest was null or undefined when calling getMusicAlbumRemoteSearchResults.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/RemoteSearch/MusicAlbum`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: GetMusicAlbumRemoteSearchResultsRequestToJSON(requestParameters.getMusicAlbumRemoteSearchResultsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get music album remote search.
|
||||
*/
|
||||
async getMusicAlbumRemoteSearchResults(requestParameters: GetMusicAlbumRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
|
||||
const response = await this.getMusicAlbumRemoteSearchResultsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get music artist remote search.
|
||||
*/
|
||||
async getMusicArtistRemoteSearchResultsRaw(requestParameters: GetMusicArtistRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
|
||||
if (requestParameters.getMusicArtistRemoteSearchResultsRequest === null || requestParameters.getMusicArtistRemoteSearchResultsRequest === undefined) {
|
||||
throw new runtime.RequiredError('getMusicArtistRemoteSearchResultsRequest','Required parameter requestParameters.getMusicArtistRemoteSearchResultsRequest was null or undefined when calling getMusicArtistRemoteSearchResults.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/RemoteSearch/MusicArtist`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: GetMusicArtistRemoteSearchResultsRequestToJSON(requestParameters.getMusicArtistRemoteSearchResultsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get music artist remote search.
|
||||
*/
|
||||
async getMusicArtistRemoteSearchResults(requestParameters: GetMusicArtistRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
|
||||
const response = await this.getMusicArtistRemoteSearchResultsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get music video remote search.
|
||||
*/
|
||||
async getMusicVideoRemoteSearchResultsRaw(requestParameters: GetMusicVideoRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
|
||||
if (requestParameters.getMusicVideoRemoteSearchResultsRequest === null || requestParameters.getMusicVideoRemoteSearchResultsRequest === undefined) {
|
||||
throw new runtime.RequiredError('getMusicVideoRemoteSearchResultsRequest','Required parameter requestParameters.getMusicVideoRemoteSearchResultsRequest was null or undefined when calling getMusicVideoRemoteSearchResults.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/RemoteSearch/MusicVideo`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: GetMusicVideoRemoteSearchResultsRequestToJSON(requestParameters.getMusicVideoRemoteSearchResultsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get music video remote search.
|
||||
*/
|
||||
async getMusicVideoRemoteSearchResults(requestParameters: GetMusicVideoRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
|
||||
const response = await this.getMusicVideoRemoteSearchResultsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get person remote search.
|
||||
*/
|
||||
async getPersonRemoteSearchResultsRaw(requestParameters: GetPersonRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
|
||||
if (requestParameters.getPersonRemoteSearchResultsRequest === null || requestParameters.getPersonRemoteSearchResultsRequest === undefined) {
|
||||
throw new runtime.RequiredError('getPersonRemoteSearchResultsRequest','Required parameter requestParameters.getPersonRemoteSearchResultsRequest was null or undefined when calling getPersonRemoteSearchResults.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/RemoteSearch/Person`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: GetPersonRemoteSearchResultsRequestToJSON(requestParameters.getPersonRemoteSearchResultsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get person remote search.
|
||||
*/
|
||||
async getPersonRemoteSearchResults(requestParameters: GetPersonRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
|
||||
const response = await this.getPersonRemoteSearchResultsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get series remote search.
|
||||
*/
|
||||
async getSeriesRemoteSearchResultsRaw(requestParameters: GetSeriesRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
|
||||
if (requestParameters.getSeriesRemoteSearchResultsRequest === null || requestParameters.getSeriesRemoteSearchResultsRequest === undefined) {
|
||||
throw new runtime.RequiredError('getSeriesRemoteSearchResultsRequest','Required parameter requestParameters.getSeriesRemoteSearchResultsRequest was null or undefined when calling getSeriesRemoteSearchResults.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/RemoteSearch/Series`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: GetSeriesRemoteSearchResultsRequestToJSON(requestParameters.getSeriesRemoteSearchResultsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get series remote search.
|
||||
*/
|
||||
async getSeriesRemoteSearchResults(requestParameters: GetSeriesRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
|
||||
const response = await this.getSeriesRemoteSearchResultsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get trailer remote search.
|
||||
*/
|
||||
async getTrailerRemoteSearchResultsRaw(requestParameters: GetTrailerRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
|
||||
if (requestParameters.getTrailerRemoteSearchResultsRequest === null || requestParameters.getTrailerRemoteSearchResultsRequest === undefined) {
|
||||
throw new runtime.RequiredError('getTrailerRemoteSearchResultsRequest','Required parameter requestParameters.getTrailerRemoteSearchResultsRequest was null or undefined when calling getTrailerRemoteSearchResults.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/RemoteSearch/Trailer`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: GetTrailerRemoteSearchResultsRequestToJSON(requestParameters.getTrailerRemoteSearchResultsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get trailer remote search.
|
||||
*/
|
||||
async getTrailerRemoteSearchResults(requestParameters: GetTrailerRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
|
||||
const response = await this.getTrailerRemoteSearchResultsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
90
server/jellyfin/apis/ItemRefreshApi.ts
Normal file
90
server/jellyfin/apis/ItemRefreshApi.ts
Normal file
@ -0,0 +1,90 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
MetadataRefreshMode,
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
MetadataRefreshModeFromJSON,
|
||||
MetadataRefreshModeToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface RefreshItemRequest {
|
||||
itemId: string;
|
||||
metadataRefreshMode?: MetadataRefreshMode;
|
||||
imageRefreshMode?: MetadataRefreshMode;
|
||||
replaceAllMetadata?: boolean;
|
||||
replaceAllImages?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ItemRefreshApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Refreshes metadata for an item.
|
||||
*/
|
||||
async refreshItemRaw(requestParameters: RefreshItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling refreshItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.metadataRefreshMode !== undefined) {
|
||||
queryParameters['metadataRefreshMode'] = requestParameters.metadataRefreshMode;
|
||||
}
|
||||
|
||||
if (requestParameters.imageRefreshMode !== undefined) {
|
||||
queryParameters['imageRefreshMode'] = requestParameters.imageRefreshMode;
|
||||
}
|
||||
|
||||
if (requestParameters.replaceAllMetadata !== undefined) {
|
||||
queryParameters['replaceAllMetadata'] = requestParameters.replaceAllMetadata;
|
||||
}
|
||||
|
||||
if (requestParameters.replaceAllImages !== undefined) {
|
||||
queryParameters['replaceAllImages'] = requestParameters.replaceAllImages;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/Refresh`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Refreshes metadata for an item.
|
||||
*/
|
||||
async refreshItem(requestParameters: RefreshItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.refreshItemRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
161
server/jellyfin/apis/ItemUpdateApi.ts
Normal file
161
server/jellyfin/apis/ItemUpdateApi.ts
Normal file
@ -0,0 +1,161 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
MetadataEditorInfo,
|
||||
ProblemDetails,
|
||||
UpdateItemRequest,
|
||||
} from '../models';
|
||||
import {
|
||||
MetadataEditorInfoFromJSON,
|
||||
MetadataEditorInfoToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
UpdateItemRequestFromJSON,
|
||||
UpdateItemRequestToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetMetadataEditorInfoRequest {
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface UpdateItemOperationRequest {
|
||||
itemId: string;
|
||||
updateItemRequest: UpdateItemRequest;
|
||||
}
|
||||
|
||||
export interface UpdateItemContentTypeRequest {
|
||||
itemId: string;
|
||||
contentType?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ItemUpdateApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets metadata editor info for an item.
|
||||
*/
|
||||
async getMetadataEditorInfoRaw(requestParameters: GetMetadataEditorInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<MetadataEditorInfo>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getMetadataEditorInfo.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/MetadataEditor`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => MetadataEditorInfoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets metadata editor info for an item.
|
||||
*/
|
||||
async getMetadataEditorInfo(requestParameters: GetMetadataEditorInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<MetadataEditorInfo> {
|
||||
const response = await this.getMetadataEditorInfoRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates an item.
|
||||
*/
|
||||
async updateItemRaw(requestParameters: UpdateItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling updateItem.');
|
||||
}
|
||||
|
||||
if (requestParameters.updateItemRequest === null || requestParameters.updateItemRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateItemRequest','Required parameter requestParameters.updateItemRequest was null or undefined when calling updateItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateItemRequestToJSON(requestParameters.updateItemRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates an item.
|
||||
*/
|
||||
async updateItem(requestParameters: UpdateItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateItemRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates an item\'s content type.
|
||||
*/
|
||||
async updateItemContentTypeRaw(requestParameters: UpdateItemContentTypeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling updateItemContentType.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.contentType !== undefined) {
|
||||
queryParameters['contentType'] = requestParameters.contentType;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/ContentType`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates an item\'s content type.
|
||||
*/
|
||||
async updateItemContentType(requestParameters: UpdateItemContentTypeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateItemContentTypeRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
1078
server/jellyfin/apis/ItemsApi.ts
Normal file
1078
server/jellyfin/apis/ItemsApi.ts
Normal file
File diff suppressed because it is too large
Load Diff
1158
server/jellyfin/apis/LibraryApi.ts
Normal file
1158
server/jellyfin/apis/LibraryApi.ts
Normal file
File diff suppressed because it is too large
Load Diff
391
server/jellyfin/apis/LibraryStructureApi.ts
Normal file
391
server/jellyfin/apis/LibraryStructureApi.ts
Normal file
@ -0,0 +1,391 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
AddMediaPathRequest,
|
||||
AddVirtualFolderRequest,
|
||||
CollectionTypeOptions,
|
||||
ProblemDetails,
|
||||
UpdateLibraryOptionsRequest,
|
||||
UpdateMediaPathRequest,
|
||||
VirtualFolderInfo,
|
||||
} from '../models';
|
||||
import {
|
||||
AddMediaPathRequestFromJSON,
|
||||
AddMediaPathRequestToJSON,
|
||||
AddVirtualFolderRequestFromJSON,
|
||||
AddVirtualFolderRequestToJSON,
|
||||
CollectionTypeOptionsFromJSON,
|
||||
CollectionTypeOptionsToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
UpdateLibraryOptionsRequestFromJSON,
|
||||
UpdateLibraryOptionsRequestToJSON,
|
||||
UpdateMediaPathRequestFromJSON,
|
||||
UpdateMediaPathRequestToJSON,
|
||||
VirtualFolderInfoFromJSON,
|
||||
VirtualFolderInfoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface AddMediaPathOperationRequest {
|
||||
addMediaPathRequest: AddMediaPathRequest;
|
||||
refreshLibrary?: boolean;
|
||||
}
|
||||
|
||||
export interface AddVirtualFolderOperationRequest {
|
||||
name?: string;
|
||||
collectionType?: CollectionTypeOptions;
|
||||
paths?: Array<string>;
|
||||
refreshLibrary?: boolean;
|
||||
addVirtualFolderRequest?: AddVirtualFolderRequest;
|
||||
}
|
||||
|
||||
export interface RemoveMediaPathRequest {
|
||||
name?: string;
|
||||
path?: string;
|
||||
refreshLibrary?: boolean;
|
||||
}
|
||||
|
||||
export interface RemoveVirtualFolderRequest {
|
||||
name?: string;
|
||||
refreshLibrary?: boolean;
|
||||
}
|
||||
|
||||
export interface RenameVirtualFolderRequest {
|
||||
name?: string;
|
||||
newName?: string;
|
||||
refreshLibrary?: boolean;
|
||||
}
|
||||
|
||||
export interface UpdateLibraryOptionsOperationRequest {
|
||||
updateLibraryOptionsRequest?: UpdateLibraryOptionsRequest;
|
||||
}
|
||||
|
||||
export interface UpdateMediaPathOperationRequest {
|
||||
updateMediaPathRequest: UpdateMediaPathRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class LibraryStructureApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Add a media path to a library.
|
||||
*/
|
||||
async addMediaPathRaw(requestParameters: AddMediaPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.addMediaPathRequest === null || requestParameters.addMediaPathRequest === undefined) {
|
||||
throw new runtime.RequiredError('addMediaPathRequest','Required parameter requestParameters.addMediaPathRequest was null or undefined when calling addMediaPath.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.refreshLibrary !== undefined) {
|
||||
queryParameters['refreshLibrary'] = requestParameters.refreshLibrary;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Library/VirtualFolders/Paths`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: AddMediaPathRequestToJSON(requestParameters.addMediaPathRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a media path to a library.
|
||||
*/
|
||||
async addMediaPath(requestParameters: AddMediaPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.addMediaPathRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds a virtual folder.
|
||||
*/
|
||||
async addVirtualFolderRaw(requestParameters: AddVirtualFolderOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.name !== undefined) {
|
||||
queryParameters['name'] = requestParameters.name;
|
||||
}
|
||||
|
||||
if (requestParameters.collectionType !== undefined) {
|
||||
queryParameters['collectionType'] = requestParameters.collectionType;
|
||||
}
|
||||
|
||||
if (requestParameters.paths) {
|
||||
queryParameters['paths'] = requestParameters.paths;
|
||||
}
|
||||
|
||||
if (requestParameters.refreshLibrary !== undefined) {
|
||||
queryParameters['refreshLibrary'] = requestParameters.refreshLibrary;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Library/VirtualFolders`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: AddVirtualFolderRequestToJSON(requestParameters.addVirtualFolderRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds a virtual folder.
|
||||
*/
|
||||
async addVirtualFolder(requestParameters: AddVirtualFolderOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.addVirtualFolderRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all virtual folders.
|
||||
*/
|
||||
async getVirtualFoldersRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<VirtualFolderInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Library/VirtualFolders`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(VirtualFolderInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all virtual folders.
|
||||
*/
|
||||
async getVirtualFolders(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<VirtualFolderInfo>> {
|
||||
const response = await this.getVirtualFoldersRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove a media path.
|
||||
*/
|
||||
async removeMediaPathRaw(requestParameters: RemoveMediaPathRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.name !== undefined) {
|
||||
queryParameters['name'] = requestParameters.name;
|
||||
}
|
||||
|
||||
if (requestParameters.path !== undefined) {
|
||||
queryParameters['path'] = requestParameters.path;
|
||||
}
|
||||
|
||||
if (requestParameters.refreshLibrary !== undefined) {
|
||||
queryParameters['refreshLibrary'] = requestParameters.refreshLibrary;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Library/VirtualFolders/Paths`,
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove a media path.
|
||||
*/
|
||||
async removeMediaPath(requestParameters: RemoveMediaPathRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.removeMediaPathRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes a virtual folder.
|
||||
*/
|
||||
async removeVirtualFolderRaw(requestParameters: RemoveVirtualFolderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.name !== undefined) {
|
||||
queryParameters['name'] = requestParameters.name;
|
||||
}
|
||||
|
||||
if (requestParameters.refreshLibrary !== undefined) {
|
||||
queryParameters['refreshLibrary'] = requestParameters.refreshLibrary;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Library/VirtualFolders`,
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes a virtual folder.
|
||||
*/
|
||||
async removeVirtualFolder(requestParameters: RemoveVirtualFolderRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.removeVirtualFolderRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Renames a virtual folder.
|
||||
*/
|
||||
async renameVirtualFolderRaw(requestParameters: RenameVirtualFolderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.name !== undefined) {
|
||||
queryParameters['name'] = requestParameters.name;
|
||||
}
|
||||
|
||||
if (requestParameters.newName !== undefined) {
|
||||
queryParameters['newName'] = requestParameters.newName;
|
||||
}
|
||||
|
||||
if (requestParameters.refreshLibrary !== undefined) {
|
||||
queryParameters['refreshLibrary'] = requestParameters.refreshLibrary;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Library/VirtualFolders/Name`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Renames a virtual folder.
|
||||
*/
|
||||
async renameVirtualFolder(requestParameters: RenameVirtualFolderRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.renameVirtualFolderRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update library options.
|
||||
*/
|
||||
async updateLibraryOptionsRaw(requestParameters: UpdateLibraryOptionsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Library/VirtualFolders/LibraryOptions`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateLibraryOptionsRequestToJSON(requestParameters.updateLibraryOptionsRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update library options.
|
||||
*/
|
||||
async updateLibraryOptions(requestParameters: UpdateLibraryOptionsOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateLibraryOptionsRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a media path.
|
||||
*/
|
||||
async updateMediaPathRaw(requestParameters: UpdateMediaPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.updateMediaPathRequest === null || requestParameters.updateMediaPathRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateMediaPathRequest','Required parameter requestParameters.updateMediaPathRequest was null or undefined when calling updateMediaPath.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Library/VirtualFolders/Paths/Update`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateMediaPathRequestToJSON(requestParameters.updateMediaPathRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a media path.
|
||||
*/
|
||||
async updateMediaPath(requestParameters: UpdateMediaPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateMediaPathRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
2137
server/jellyfin/apis/LiveTvApi.ts
Normal file
2137
server/jellyfin/apis/LiveTvApi.ts
Normal file
File diff suppressed because it is too large
Load Diff
159
server/jellyfin/apis/LocalizationApi.ts
Normal file
159
server/jellyfin/apis/LocalizationApi.ts
Normal file
@ -0,0 +1,159 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
CountryInfo,
|
||||
CultureDto,
|
||||
LocalizationOption,
|
||||
ParentalRating,
|
||||
} from '../models';
|
||||
import {
|
||||
CountryInfoFromJSON,
|
||||
CountryInfoToJSON,
|
||||
CultureDtoFromJSON,
|
||||
CultureDtoToJSON,
|
||||
LocalizationOptionFromJSON,
|
||||
LocalizationOptionToJSON,
|
||||
ParentalRatingFromJSON,
|
||||
ParentalRatingToJSON,
|
||||
} from '../models';
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class LocalizationApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets known countries.
|
||||
*/
|
||||
async getCountriesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<CountryInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Localization/Countries`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(CountryInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets known countries.
|
||||
*/
|
||||
async getCountries(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<CountryInfo>> {
|
||||
const response = await this.getCountriesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets known cultures.
|
||||
*/
|
||||
async getCulturesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<CultureDto>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Localization/Cultures`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(CultureDtoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets known cultures.
|
||||
*/
|
||||
async getCultures(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<CultureDto>> {
|
||||
const response = await this.getCulturesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets localization options.
|
||||
*/
|
||||
async getLocalizationOptionsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<LocalizationOption>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Localization/Options`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(LocalizationOptionFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets localization options.
|
||||
*/
|
||||
async getLocalizationOptions(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<LocalizationOption>> {
|
||||
const response = await this.getLocalizationOptionsRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets known parental ratings.
|
||||
*/
|
||||
async getParentalRatingsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ParentalRating>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Localization/ParentalRatings`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ParentalRatingFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets known parental ratings.
|
||||
*/
|
||||
async getParentalRatings(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ParentalRating>> {
|
||||
const response = await this.getParentalRatingsRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
371
server/jellyfin/apis/MediaInfoApi.ts
Normal file
371
server/jellyfin/apis/MediaInfoApi.ts
Normal file
@ -0,0 +1,371 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
GetPostedPlaybackInfoRequest,
|
||||
LiveStreamResponse,
|
||||
OpenLiveStreamRequest,
|
||||
PlaybackInfoResponse,
|
||||
} from '../models';
|
||||
import {
|
||||
GetPostedPlaybackInfoRequestFromJSON,
|
||||
GetPostedPlaybackInfoRequestToJSON,
|
||||
LiveStreamResponseFromJSON,
|
||||
LiveStreamResponseToJSON,
|
||||
OpenLiveStreamRequestFromJSON,
|
||||
OpenLiveStreamRequestToJSON,
|
||||
PlaybackInfoResponseFromJSON,
|
||||
PlaybackInfoResponseToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface CloseLiveStreamRequest {
|
||||
liveStreamId: string;
|
||||
}
|
||||
|
||||
export interface GetBitrateTestBytesRequest {
|
||||
size?: number;
|
||||
}
|
||||
|
||||
export interface GetPlaybackInfoRequest {
|
||||
itemId: string;
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface GetPostedPlaybackInfoOperationRequest {
|
||||
itemId: string;
|
||||
userId?: string;
|
||||
maxStreamingBitrate?: number;
|
||||
startTimeTicks?: number;
|
||||
audioStreamIndex?: number;
|
||||
subtitleStreamIndex?: number;
|
||||
maxAudioChannels?: number;
|
||||
mediaSourceId?: string;
|
||||
liveStreamId?: string;
|
||||
autoOpenLiveStream?: boolean;
|
||||
enableDirectPlay?: boolean;
|
||||
enableDirectStream?: boolean;
|
||||
enableTranscoding?: boolean;
|
||||
allowVideoStreamCopy?: boolean;
|
||||
allowAudioStreamCopy?: boolean;
|
||||
getPostedPlaybackInfoRequest?: GetPostedPlaybackInfoRequest;
|
||||
}
|
||||
|
||||
export interface OpenLiveStreamOperationRequest {
|
||||
openToken?: string;
|
||||
userId?: string;
|
||||
playSessionId?: string;
|
||||
maxStreamingBitrate?: number;
|
||||
startTimeTicks?: number;
|
||||
audioStreamIndex?: number;
|
||||
subtitleStreamIndex?: number;
|
||||
maxAudioChannels?: number;
|
||||
itemId?: string;
|
||||
enableDirectPlay?: boolean;
|
||||
enableDirectStream?: boolean;
|
||||
openLiveStreamRequest?: OpenLiveStreamRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class MediaInfoApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Closes a media source.
|
||||
*/
|
||||
async closeLiveStreamRaw(requestParameters: CloseLiveStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.liveStreamId === null || requestParameters.liveStreamId === undefined) {
|
||||
throw new runtime.RequiredError('liveStreamId','Required parameter requestParameters.liveStreamId was null or undefined when calling closeLiveStream.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.liveStreamId !== undefined) {
|
||||
queryParameters['liveStreamId'] = requestParameters.liveStreamId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/LiveStreams/Close`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Closes a media source.
|
||||
*/
|
||||
async closeLiveStream(requestParameters: CloseLiveStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.closeLiveStreamRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests the network with a request with the size of the bitrate.
|
||||
*/
|
||||
async getBitrateTestBytesRaw(requestParameters: GetBitrateTestBytesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.size !== undefined) {
|
||||
queryParameters['size'] = requestParameters.size;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Playback/BitrateTest`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests the network with a request with the size of the bitrate.
|
||||
*/
|
||||
async getBitrateTestBytes(requestParameters: GetBitrateTestBytesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getBitrateTestBytesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets live playback media info for an item.
|
||||
*/
|
||||
async getPlaybackInfoRaw(requestParameters: GetPlaybackInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PlaybackInfoResponse>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getPlaybackInfo.');
|
||||
}
|
||||
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getPlaybackInfo.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/PlaybackInfo`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => PlaybackInfoResponseFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets live playback media info for an item.
|
||||
*/
|
||||
async getPlaybackInfo(requestParameters: GetPlaybackInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PlaybackInfoResponse> {
|
||||
const response = await this.getPlaybackInfoRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* For backwards compatibility parameters can be sent via Query or Body, with Query having higher precedence. Query parameters are obsolete.
|
||||
* Gets live playback media info for an item.
|
||||
*/
|
||||
async getPostedPlaybackInfoRaw(requestParameters: GetPostedPlaybackInfoOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PlaybackInfoResponse>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getPostedPlaybackInfo.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.maxStreamingBitrate !== undefined) {
|
||||
queryParameters['maxStreamingBitrate'] = requestParameters.maxStreamingBitrate;
|
||||
}
|
||||
|
||||
if (requestParameters.startTimeTicks !== undefined) {
|
||||
queryParameters['startTimeTicks'] = requestParameters.startTimeTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.audioStreamIndex !== undefined) {
|
||||
queryParameters['audioStreamIndex'] = requestParameters.audioStreamIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.subtitleStreamIndex !== undefined) {
|
||||
queryParameters['subtitleStreamIndex'] = requestParameters.subtitleStreamIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.maxAudioChannels !== undefined) {
|
||||
queryParameters['maxAudioChannels'] = requestParameters.maxAudioChannels;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaSourceId !== undefined) {
|
||||
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
|
||||
}
|
||||
|
||||
if (requestParameters.liveStreamId !== undefined) {
|
||||
queryParameters['liveStreamId'] = requestParameters.liveStreamId;
|
||||
}
|
||||
|
||||
if (requestParameters.autoOpenLiveStream !== undefined) {
|
||||
queryParameters['autoOpenLiveStream'] = requestParameters.autoOpenLiveStream;
|
||||
}
|
||||
|
||||
if (requestParameters.enableDirectPlay !== undefined) {
|
||||
queryParameters['enableDirectPlay'] = requestParameters.enableDirectPlay;
|
||||
}
|
||||
|
||||
if (requestParameters.enableDirectStream !== undefined) {
|
||||
queryParameters['enableDirectStream'] = requestParameters.enableDirectStream;
|
||||
}
|
||||
|
||||
if (requestParameters.enableTranscoding !== undefined) {
|
||||
queryParameters['enableTranscoding'] = requestParameters.enableTranscoding;
|
||||
}
|
||||
|
||||
if (requestParameters.allowVideoStreamCopy !== undefined) {
|
||||
queryParameters['allowVideoStreamCopy'] = requestParameters.allowVideoStreamCopy;
|
||||
}
|
||||
|
||||
if (requestParameters.allowAudioStreamCopy !== undefined) {
|
||||
queryParameters['allowAudioStreamCopy'] = requestParameters.allowAudioStreamCopy;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/PlaybackInfo`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: GetPostedPlaybackInfoRequestToJSON(requestParameters.getPostedPlaybackInfoRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => PlaybackInfoResponseFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* For backwards compatibility parameters can be sent via Query or Body, with Query having higher precedence. Query parameters are obsolete.
|
||||
* Gets live playback media info for an item.
|
||||
*/
|
||||
async getPostedPlaybackInfo(requestParameters: GetPostedPlaybackInfoOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PlaybackInfoResponse> {
|
||||
const response = await this.getPostedPlaybackInfoRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Opens a media source.
|
||||
*/
|
||||
async openLiveStreamRaw(requestParameters: OpenLiveStreamOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<LiveStreamResponse>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.openToken !== undefined) {
|
||||
queryParameters['openToken'] = requestParameters.openToken;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.playSessionId !== undefined) {
|
||||
queryParameters['playSessionId'] = requestParameters.playSessionId;
|
||||
}
|
||||
|
||||
if (requestParameters.maxStreamingBitrate !== undefined) {
|
||||
queryParameters['maxStreamingBitrate'] = requestParameters.maxStreamingBitrate;
|
||||
}
|
||||
|
||||
if (requestParameters.startTimeTicks !== undefined) {
|
||||
queryParameters['startTimeTicks'] = requestParameters.startTimeTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.audioStreamIndex !== undefined) {
|
||||
queryParameters['audioStreamIndex'] = requestParameters.audioStreamIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.subtitleStreamIndex !== undefined) {
|
||||
queryParameters['subtitleStreamIndex'] = requestParameters.subtitleStreamIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.maxAudioChannels !== undefined) {
|
||||
queryParameters['maxAudioChannels'] = requestParameters.maxAudioChannels;
|
||||
}
|
||||
|
||||
if (requestParameters.itemId !== undefined) {
|
||||
queryParameters['itemId'] = requestParameters.itemId;
|
||||
}
|
||||
|
||||
if (requestParameters.enableDirectPlay !== undefined) {
|
||||
queryParameters['enableDirectPlay'] = requestParameters.enableDirectPlay;
|
||||
}
|
||||
|
||||
if (requestParameters.enableDirectStream !== undefined) {
|
||||
queryParameters['enableDirectStream'] = requestParameters.enableDirectStream;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/LiveStreams/Open`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: OpenLiveStreamRequestToJSON(requestParameters.openLiveStreamRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => LiveStreamResponseFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Opens a media source.
|
||||
*/
|
||||
async openLiveStream(requestParameters: OpenLiveStreamOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<LiveStreamResponse> {
|
||||
const response = await this.openLiveStreamRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
91
server/jellyfin/apis/MoviesApi.ts
Normal file
91
server/jellyfin/apis/MoviesApi.ts
Normal file
@ -0,0 +1,91 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ItemFields,
|
||||
RecommendationDto,
|
||||
} from '../models';
|
||||
import {
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
RecommendationDtoFromJSON,
|
||||
RecommendationDtoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetMovieRecommendationsRequest {
|
||||
userId?: string;
|
||||
parentId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
categoryLimit?: number;
|
||||
itemLimit?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class MoviesApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets movie recommendations.
|
||||
*/
|
||||
async getMovieRecommendationsRaw(requestParameters: GetMovieRecommendationsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RecommendationDto>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.categoryLimit !== undefined) {
|
||||
queryParameters['categoryLimit'] = requestParameters.categoryLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.itemLimit !== undefined) {
|
||||
queryParameters['itemLimit'] = requestParameters.itemLimit;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Movies/Recommendations`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RecommendationDtoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets movie recommendations.
|
||||
*/
|
||||
async getMovieRecommendations(requestParameters: GetMovieRecommendationsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RecommendationDto>> {
|
||||
const response = await this.getMovieRecommendationsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
211
server/jellyfin/apis/MusicGenresApi.ts
Normal file
211
server/jellyfin/apis/MusicGenresApi.ts
Normal file
@ -0,0 +1,211 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDto,
|
||||
BaseItemDtoQueryResult,
|
||||
BaseItemKind,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
SortOrder,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoFromJSON,
|
||||
BaseItemDtoToJSON,
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
SortOrderFromJSON,
|
||||
SortOrderToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetMusicGenreRequest {
|
||||
genreName: string;
|
||||
userId?: string;
|
||||
}
|
||||
|
||||
export interface GetMusicGenresRequest {
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
searchTerm?: string;
|
||||
parentId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
excludeItemTypes?: Array<BaseItemKind>;
|
||||
includeItemTypes?: Array<BaseItemKind>;
|
||||
isFavorite?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
userId?: string;
|
||||
nameStartsWithOrGreater?: string;
|
||||
nameStartsWith?: string;
|
||||
nameLessThan?: string;
|
||||
sortBy?: Array<string>;
|
||||
sortOrder?: Array<SortOrder>;
|
||||
enableImages?: boolean;
|
||||
enableTotalRecordCount?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class MusicGenresApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets a music genre, by name.
|
||||
*/
|
||||
async getMusicGenreRaw(requestParameters: GetMusicGenreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
|
||||
if (requestParameters.genreName === null || requestParameters.genreName === undefined) {
|
||||
throw new runtime.RequiredError('genreName','Required parameter requestParameters.genreName was null or undefined when calling getMusicGenre.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/MusicGenres/{genreName}`.replace(`{${"genreName"}}`, encodeURIComponent(String(requestParameters.genreName))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a music genre, by name.
|
||||
*/
|
||||
async getMusicGenre(requestParameters: GetMusicGenreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
|
||||
const response = await this.getMusicGenreRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all music genres from a given item, folder, or the entire library.
|
||||
*/
|
||||
async getMusicGenresRaw(requestParameters: GetMusicGenresRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.searchTerm !== undefined) {
|
||||
queryParameters['searchTerm'] = requestParameters.searchTerm;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeItemTypes) {
|
||||
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.includeItemTypes) {
|
||||
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.isFavorite !== undefined) {
|
||||
queryParameters['isFavorite'] = requestParameters.isFavorite;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWithOrGreater !== undefined) {
|
||||
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWith !== undefined) {
|
||||
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
|
||||
}
|
||||
|
||||
if (requestParameters.nameLessThan !== undefined) {
|
||||
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
|
||||
}
|
||||
|
||||
if (requestParameters.sortBy) {
|
||||
queryParameters['sortBy'] = requestParameters.sortBy;
|
||||
}
|
||||
|
||||
if (requestParameters.sortOrder) {
|
||||
queryParameters['sortOrder'] = requestParameters.sortOrder;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableTotalRecordCount !== undefined) {
|
||||
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/MusicGenres`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all music genres from a given item, folder, or the entire library.
|
||||
*/
|
||||
async getMusicGenres(requestParameters: GetMusicGenresRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getMusicGenresRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
292
server/jellyfin/apis/NotificationsApi.ts
Normal file
292
server/jellyfin/apis/NotificationsApi.ts
Normal file
@ -0,0 +1,292 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
CreateAdminNotificationRequest,
|
||||
NameIdPair,
|
||||
NotificationResultDto,
|
||||
NotificationTypeInfo,
|
||||
NotificationsSummaryDto,
|
||||
} from '../models';
|
||||
import {
|
||||
CreateAdminNotificationRequestFromJSON,
|
||||
CreateAdminNotificationRequestToJSON,
|
||||
NameIdPairFromJSON,
|
||||
NameIdPairToJSON,
|
||||
NotificationResultDtoFromJSON,
|
||||
NotificationResultDtoToJSON,
|
||||
NotificationTypeInfoFromJSON,
|
||||
NotificationTypeInfoToJSON,
|
||||
NotificationsSummaryDtoFromJSON,
|
||||
NotificationsSummaryDtoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface CreateAdminNotificationOperationRequest {
|
||||
createAdminNotificationRequest: CreateAdminNotificationRequest;
|
||||
}
|
||||
|
||||
export interface GetNotificationsRequest {
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface GetNotificationsSummaryRequest {
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface SetReadRequest {
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface SetUnreadRequest {
|
||||
userId: string;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class NotificationsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Sends a notification to all admins.
|
||||
*/
|
||||
async createAdminNotificationRaw(requestParameters: CreateAdminNotificationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.createAdminNotificationRequest === null || requestParameters.createAdminNotificationRequest === undefined) {
|
||||
throw new runtime.RequiredError('createAdminNotificationRequest','Required parameter requestParameters.createAdminNotificationRequest was null or undefined when calling createAdminNotification.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Notifications/Admin`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: CreateAdminNotificationRequestToJSON(requestParameters.createAdminNotificationRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sends a notification to all admins.
|
||||
*/
|
||||
async createAdminNotification(requestParameters: CreateAdminNotificationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.createAdminNotificationRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets notification services.
|
||||
*/
|
||||
async getNotificationServicesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<NameIdPair>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Notifications/Services`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NameIdPairFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets notification services.
|
||||
*/
|
||||
async getNotificationServices(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<NameIdPair>> {
|
||||
const response = await this.getNotificationServicesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets notification types.
|
||||
*/
|
||||
async getNotificationTypesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<NotificationTypeInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Notifications/Types`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NotificationTypeInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets notification types.
|
||||
*/
|
||||
async getNotificationTypes(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<NotificationTypeInfo>> {
|
||||
const response = await this.getNotificationTypesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a user\'s notifications.
|
||||
*/
|
||||
async getNotificationsRaw(requestParameters: GetNotificationsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<NotificationResultDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getNotifications.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Notifications/{userId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => NotificationResultDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a user\'s notifications.
|
||||
*/
|
||||
async getNotifications(requestParameters: GetNotificationsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<NotificationResultDto> {
|
||||
const response = await this.getNotificationsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a user\'s notification summary.
|
||||
*/
|
||||
async getNotificationsSummaryRaw(requestParameters: GetNotificationsSummaryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<NotificationsSummaryDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getNotificationsSummary.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Notifications/{userId}/Summary`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => NotificationsSummaryDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a user\'s notification summary.
|
||||
*/
|
||||
async getNotificationsSummary(requestParameters: GetNotificationsSummaryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<NotificationsSummaryDto> {
|
||||
const response = await this.getNotificationsSummaryRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets notifications as read.
|
||||
*/
|
||||
async setReadRaw(requestParameters: SetReadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling setRead.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Notifications/{userId}/Read`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets notifications as read.
|
||||
*/
|
||||
async setRead(requestParameters: SetReadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.setReadRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets notifications as unread.
|
||||
*/
|
||||
async setUnreadRaw(requestParameters: SetUnreadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling setUnread.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Notifications/{userId}/Unread`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets notifications as unread.
|
||||
*/
|
||||
async setUnread(requestParameters: SetUnreadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.setUnreadRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
268
server/jellyfin/apis/PackageApi.ts
Normal file
268
server/jellyfin/apis/PackageApi.ts
Normal file
@ -0,0 +1,268 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
PackageInfo,
|
||||
ProblemDetails,
|
||||
RepositoryInfo,
|
||||
} from '../models';
|
||||
import {
|
||||
PackageInfoFromJSON,
|
||||
PackageInfoToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
RepositoryInfoFromJSON,
|
||||
RepositoryInfoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface CancelPackageInstallationRequest {
|
||||
packageId: string;
|
||||
}
|
||||
|
||||
export interface GetPackageInfoRequest {
|
||||
name: string;
|
||||
assemblyGuid?: string;
|
||||
}
|
||||
|
||||
export interface InstallPackageRequest {
|
||||
name: string;
|
||||
assemblyGuid?: string;
|
||||
version?: string;
|
||||
repositoryUrl?: string;
|
||||
}
|
||||
|
||||
export interface SetRepositoriesRequest {
|
||||
repositoryInfo: Array<RepositoryInfo>;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class PackageApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Cancels a package installation.
|
||||
*/
|
||||
async cancelPackageInstallationRaw(requestParameters: CancelPackageInstallationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.packageId === null || requestParameters.packageId === undefined) {
|
||||
throw new runtime.RequiredError('packageId','Required parameter requestParameters.packageId was null or undefined when calling cancelPackageInstallation.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Packages/Installing/{packageId}`.replace(`{${"packageId"}}`, encodeURIComponent(String(requestParameters.packageId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Cancels a package installation.
|
||||
*/
|
||||
async cancelPackageInstallation(requestParameters: CancelPackageInstallationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.cancelPackageInstallationRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a package by name or assembly GUID.
|
||||
*/
|
||||
async getPackageInfoRaw(requestParameters: GetPackageInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PackageInfo>> {
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getPackageInfo.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.assemblyGuid !== undefined) {
|
||||
queryParameters['assemblyGuid'] = requestParameters.assemblyGuid;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Packages/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => PackageInfoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a package by name or assembly GUID.
|
||||
*/
|
||||
async getPackageInfo(requestParameters: GetPackageInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PackageInfo> {
|
||||
const response = await this.getPackageInfoRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets available packages.
|
||||
*/
|
||||
async getPackagesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<PackageInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Packages`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PackageInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets available packages.
|
||||
*/
|
||||
async getPackages(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<PackageInfo>> {
|
||||
const response = await this.getPackagesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all package repositories.
|
||||
*/
|
||||
async getRepositoriesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RepositoryInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Repositories`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RepositoryInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all package repositories.
|
||||
*/
|
||||
async getRepositories(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RepositoryInfo>> {
|
||||
const response = await this.getRepositoriesRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Installs a package.
|
||||
*/
|
||||
async installPackageRaw(requestParameters: InstallPackageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling installPackage.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.assemblyGuid !== undefined) {
|
||||
queryParameters['assemblyGuid'] = requestParameters.assemblyGuid;
|
||||
}
|
||||
|
||||
if (requestParameters.version !== undefined) {
|
||||
queryParameters['version'] = requestParameters.version;
|
||||
}
|
||||
|
||||
if (requestParameters.repositoryUrl !== undefined) {
|
||||
queryParameters['repositoryUrl'] = requestParameters.repositoryUrl;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Packages/Installed/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Installs a package.
|
||||
*/
|
||||
async installPackage(requestParameters: InstallPackageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.installPackageRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the enabled and existing package repositories.
|
||||
*/
|
||||
async setRepositoriesRaw(requestParameters: SetRepositoriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.repositoryInfo === null || requestParameters.repositoryInfo === undefined) {
|
||||
throw new runtime.RequiredError('repositoryInfo','Required parameter requestParameters.repositoryInfo was null or undefined when calling setRepositories.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Repositories`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: requestParameters.repositoryInfo.map(RepositoryInfoToJSON),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the enabled and existing package repositories.
|
||||
*/
|
||||
async setRepositories(requestParameters: SetRepositoriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.setRepositoriesRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
186
server/jellyfin/apis/PersonsApi.ts
Normal file
186
server/jellyfin/apis/PersonsApi.ts
Normal file
@ -0,0 +1,186 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDto,
|
||||
BaseItemDtoQueryResult,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
ItemFilter,
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoFromJSON,
|
||||
BaseItemDtoToJSON,
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
ItemFilterFromJSON,
|
||||
ItemFilterToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetPersonRequest {
|
||||
name: string;
|
||||
userId?: string;
|
||||
}
|
||||
|
||||
export interface GetPersonsRequest {
|
||||
limit?: number;
|
||||
searchTerm?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
filters?: Array<ItemFilter>;
|
||||
isFavorite?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
excludePersonTypes?: Array<string>;
|
||||
personTypes?: Array<string>;
|
||||
appearsInItemId?: string;
|
||||
userId?: string;
|
||||
enableImages?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class PersonsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Get person by name.
|
||||
*/
|
||||
async getPersonRaw(requestParameters: GetPersonRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getPerson.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Persons/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get person by name.
|
||||
*/
|
||||
async getPerson(requestParameters: GetPersonRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
|
||||
const response = await this.getPersonRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all persons.
|
||||
*/
|
||||
async getPersonsRaw(requestParameters: GetPersonsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.searchTerm !== undefined) {
|
||||
queryParameters['searchTerm'] = requestParameters.searchTerm;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.filters) {
|
||||
queryParameters['filters'] = requestParameters.filters;
|
||||
}
|
||||
|
||||
if (requestParameters.isFavorite !== undefined) {
|
||||
queryParameters['isFavorite'] = requestParameters.isFavorite;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.excludePersonTypes) {
|
||||
queryParameters['excludePersonTypes'] = requestParameters.excludePersonTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.personTypes) {
|
||||
queryParameters['personTypes'] = requestParameters.personTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.appearsInItemId !== undefined) {
|
||||
queryParameters['appearsInItemId'] = requestParameters.appearsInItemId;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Persons`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all persons.
|
||||
*/
|
||||
async getPersons(requestParameters: GetPersonsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getPersonsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
319
server/jellyfin/apis/PlaylistsApi.ts
Normal file
319
server/jellyfin/apis/PlaylistsApi.ts
Normal file
@ -0,0 +1,319 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDtoQueryResult,
|
||||
CreatePlaylistRequest,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
PlaylistCreationResult,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
CreatePlaylistRequestFromJSON,
|
||||
CreatePlaylistRequestToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
PlaylistCreationResultFromJSON,
|
||||
PlaylistCreationResultToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface AddToPlaylistRequest {
|
||||
playlistId: string;
|
||||
ids?: Array<string>;
|
||||
userId?: string;
|
||||
}
|
||||
|
||||
export interface CreatePlaylistOperationRequest {
|
||||
name?: string;
|
||||
ids?: Array<string>;
|
||||
userId?: string;
|
||||
mediaType?: string;
|
||||
createPlaylistRequest?: CreatePlaylistRequest;
|
||||
}
|
||||
|
||||
export interface GetPlaylistItemsRequest {
|
||||
playlistId: string;
|
||||
userId: string;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
enableImages?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
}
|
||||
|
||||
export interface MoveItemRequest {
|
||||
playlistId: string;
|
||||
itemId: string;
|
||||
newIndex: number;
|
||||
}
|
||||
|
||||
export interface RemoveFromPlaylistRequest {
|
||||
playlistId: string;
|
||||
entryIds?: Array<string>;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class PlaylistsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Adds items to a playlist.
|
||||
*/
|
||||
async addToPlaylistRaw(requestParameters: AddToPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
|
||||
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling addToPlaylist.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.ids) {
|
||||
queryParameters['ids'] = requestParameters.ids;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Playlists/{playlistId}/Items`.replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds items to a playlist.
|
||||
*/
|
||||
async addToPlaylist(requestParameters: AddToPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.addToPlaylistRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* For backwards compatibility parameters can be sent via Query or Body, with Query having higher precedence. Query parameters are obsolete.
|
||||
* Creates a new playlist.
|
||||
*/
|
||||
async createPlaylistRaw(requestParameters: CreatePlaylistOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PlaylistCreationResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.name !== undefined) {
|
||||
queryParameters['name'] = requestParameters.name;
|
||||
}
|
||||
|
||||
if (requestParameters.ids) {
|
||||
queryParameters['ids'] = requestParameters.ids;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaType !== undefined) {
|
||||
queryParameters['mediaType'] = requestParameters.mediaType;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Playlists`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: CreatePlaylistRequestToJSON(requestParameters.createPlaylistRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => PlaylistCreationResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* For backwards compatibility parameters can be sent via Query or Body, with Query having higher precedence. Query parameters are obsolete.
|
||||
* Creates a new playlist.
|
||||
*/
|
||||
async createPlaylist(requestParameters: CreatePlaylistOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PlaylistCreationResult> {
|
||||
const response = await this.createPlaylistRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the original items of a playlist.
|
||||
*/
|
||||
async getPlaylistItemsRaw(requestParameters: GetPlaylistItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
|
||||
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling getPlaylistItems.');
|
||||
}
|
||||
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getPlaylistItems.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Playlists/{playlistId}/Items`.replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the original items of a playlist.
|
||||
*/
|
||||
async getPlaylistItems(requestParameters: GetPlaylistItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getPlaylistItemsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Moves a playlist item.
|
||||
*/
|
||||
async moveItemRaw(requestParameters: MoveItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
|
||||
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling moveItem.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling moveItem.');
|
||||
}
|
||||
|
||||
if (requestParameters.newIndex === null || requestParameters.newIndex === undefined) {
|
||||
throw new runtime.RequiredError('newIndex','Required parameter requestParameters.newIndex was null or undefined when calling moveItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Playlists/{playlistId}/Items/{itemId}/Move/{newIndex}`.replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"newIndex"}}`, encodeURIComponent(String(requestParameters.newIndex))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Moves a playlist item.
|
||||
*/
|
||||
async moveItem(requestParameters: MoveItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.moveItemRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes items from a playlist.
|
||||
*/
|
||||
async removeFromPlaylistRaw(requestParameters: RemoveFromPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
|
||||
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling removeFromPlaylist.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.entryIds) {
|
||||
queryParameters['entryIds'] = requestParameters.entryIds;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Playlists/{playlistId}/Items`.replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes items from a playlist.
|
||||
*/
|
||||
async removeFromPlaylist(requestParameters: RemoveFromPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.removeFromPlaylistRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
526
server/jellyfin/apis/PlaystateApi.ts
Normal file
526
server/jellyfin/apis/PlaystateApi.ts
Normal file
@ -0,0 +1,526 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
PlayMethod,
|
||||
RepeatMode,
|
||||
ReportPlaybackProgressRequest,
|
||||
ReportPlaybackStartRequest,
|
||||
ReportPlaybackStoppedRequest,
|
||||
UserItemDataDto,
|
||||
} from '../models';
|
||||
import {
|
||||
PlayMethodFromJSON,
|
||||
PlayMethodToJSON,
|
||||
RepeatModeFromJSON,
|
||||
RepeatModeToJSON,
|
||||
ReportPlaybackProgressRequestFromJSON,
|
||||
ReportPlaybackProgressRequestToJSON,
|
||||
ReportPlaybackStartRequestFromJSON,
|
||||
ReportPlaybackStartRequestToJSON,
|
||||
ReportPlaybackStoppedRequestFromJSON,
|
||||
ReportPlaybackStoppedRequestToJSON,
|
||||
UserItemDataDtoFromJSON,
|
||||
UserItemDataDtoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface MarkPlayedItemRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
datePlayed?: Date;
|
||||
}
|
||||
|
||||
export interface MarkUnplayedItemRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface OnPlaybackProgressRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
mediaSourceId?: string;
|
||||
positionTicks?: number;
|
||||
audioStreamIndex?: number;
|
||||
subtitleStreamIndex?: number;
|
||||
volumeLevel?: number;
|
||||
playMethod?: PlayMethod;
|
||||
liveStreamId?: string;
|
||||
playSessionId?: string;
|
||||
repeatMode?: RepeatMode;
|
||||
isPaused?: boolean;
|
||||
isMuted?: boolean;
|
||||
}
|
||||
|
||||
export interface OnPlaybackStartRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
mediaSourceId?: string;
|
||||
audioStreamIndex?: number;
|
||||
subtitleStreamIndex?: number;
|
||||
playMethod?: PlayMethod;
|
||||
liveStreamId?: string;
|
||||
playSessionId?: string;
|
||||
canSeek?: boolean;
|
||||
}
|
||||
|
||||
export interface OnPlaybackStoppedRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
mediaSourceId?: string;
|
||||
nextMediaType?: string;
|
||||
positionTicks?: number;
|
||||
liveStreamId?: string;
|
||||
playSessionId?: string;
|
||||
}
|
||||
|
||||
export interface PingPlaybackSessionRequest {
|
||||
playSessionId: string;
|
||||
}
|
||||
|
||||
export interface ReportPlaybackProgressOperationRequest {
|
||||
reportPlaybackProgressRequest?: ReportPlaybackProgressRequest;
|
||||
}
|
||||
|
||||
export interface ReportPlaybackStartOperationRequest {
|
||||
reportPlaybackStartRequest?: ReportPlaybackStartRequest;
|
||||
}
|
||||
|
||||
export interface ReportPlaybackStoppedOperationRequest {
|
||||
reportPlaybackStoppedRequest?: ReportPlaybackStoppedRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class PlaystateApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Marks an item as played for user.
|
||||
*/
|
||||
async markPlayedItemRaw(requestParameters: MarkPlayedItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling markPlayedItem.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling markPlayedItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.datePlayed !== undefined) {
|
||||
queryParameters['datePlayed'] = (requestParameters.datePlayed as any).toISOString();
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/PlayedItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Marks an item as played for user.
|
||||
*/
|
||||
async markPlayedItem(requestParameters: MarkPlayedItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
|
||||
const response = await this.markPlayedItemRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Marks an item as unplayed for user.
|
||||
*/
|
||||
async markUnplayedItemRaw(requestParameters: MarkUnplayedItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling markUnplayedItem.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling markUnplayedItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/PlayedItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Marks an item as unplayed for user.
|
||||
*/
|
||||
async markUnplayedItem(requestParameters: MarkUnplayedItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
|
||||
const response = await this.markUnplayedItemRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports a user\'s playback progress.
|
||||
*/
|
||||
async onPlaybackProgressRaw(requestParameters: OnPlaybackProgressRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling onPlaybackProgress.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling onPlaybackProgress.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.mediaSourceId !== undefined) {
|
||||
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
|
||||
}
|
||||
|
||||
if (requestParameters.positionTicks !== undefined) {
|
||||
queryParameters['positionTicks'] = requestParameters.positionTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.audioStreamIndex !== undefined) {
|
||||
queryParameters['audioStreamIndex'] = requestParameters.audioStreamIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.subtitleStreamIndex !== undefined) {
|
||||
queryParameters['subtitleStreamIndex'] = requestParameters.subtitleStreamIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.volumeLevel !== undefined) {
|
||||
queryParameters['volumeLevel'] = requestParameters.volumeLevel;
|
||||
}
|
||||
|
||||
if (requestParameters.playMethod !== undefined) {
|
||||
queryParameters['playMethod'] = requestParameters.playMethod;
|
||||
}
|
||||
|
||||
if (requestParameters.liveStreamId !== undefined) {
|
||||
queryParameters['liveStreamId'] = requestParameters.liveStreamId;
|
||||
}
|
||||
|
||||
if (requestParameters.playSessionId !== undefined) {
|
||||
queryParameters['playSessionId'] = requestParameters.playSessionId;
|
||||
}
|
||||
|
||||
if (requestParameters.repeatMode !== undefined) {
|
||||
queryParameters['repeatMode'] = requestParameters.repeatMode;
|
||||
}
|
||||
|
||||
if (requestParameters.isPaused !== undefined) {
|
||||
queryParameters['isPaused'] = requestParameters.isPaused;
|
||||
}
|
||||
|
||||
if (requestParameters.isMuted !== undefined) {
|
||||
queryParameters['isMuted'] = requestParameters.isMuted;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/PlayingItems/{itemId}/Progress`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports a user\'s playback progress.
|
||||
*/
|
||||
async onPlaybackProgress(requestParameters: OnPlaybackProgressRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.onPlaybackProgressRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports that a user has begun playing an item.
|
||||
*/
|
||||
async onPlaybackStartRaw(requestParameters: OnPlaybackStartRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling onPlaybackStart.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling onPlaybackStart.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.mediaSourceId !== undefined) {
|
||||
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
|
||||
}
|
||||
|
||||
if (requestParameters.audioStreamIndex !== undefined) {
|
||||
queryParameters['audioStreamIndex'] = requestParameters.audioStreamIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.subtitleStreamIndex !== undefined) {
|
||||
queryParameters['subtitleStreamIndex'] = requestParameters.subtitleStreamIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.playMethod !== undefined) {
|
||||
queryParameters['playMethod'] = requestParameters.playMethod;
|
||||
}
|
||||
|
||||
if (requestParameters.liveStreamId !== undefined) {
|
||||
queryParameters['liveStreamId'] = requestParameters.liveStreamId;
|
||||
}
|
||||
|
||||
if (requestParameters.playSessionId !== undefined) {
|
||||
queryParameters['playSessionId'] = requestParameters.playSessionId;
|
||||
}
|
||||
|
||||
if (requestParameters.canSeek !== undefined) {
|
||||
queryParameters['canSeek'] = requestParameters.canSeek;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/PlayingItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports that a user has begun playing an item.
|
||||
*/
|
||||
async onPlaybackStart(requestParameters: OnPlaybackStartRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.onPlaybackStartRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports that a user has stopped playing an item.
|
||||
*/
|
||||
async onPlaybackStoppedRaw(requestParameters: OnPlaybackStoppedRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling onPlaybackStopped.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling onPlaybackStopped.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.mediaSourceId !== undefined) {
|
||||
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
|
||||
}
|
||||
|
||||
if (requestParameters.nextMediaType !== undefined) {
|
||||
queryParameters['nextMediaType'] = requestParameters.nextMediaType;
|
||||
}
|
||||
|
||||
if (requestParameters.positionTicks !== undefined) {
|
||||
queryParameters['positionTicks'] = requestParameters.positionTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.liveStreamId !== undefined) {
|
||||
queryParameters['liveStreamId'] = requestParameters.liveStreamId;
|
||||
}
|
||||
|
||||
if (requestParameters.playSessionId !== undefined) {
|
||||
queryParameters['playSessionId'] = requestParameters.playSessionId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/PlayingItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports that a user has stopped playing an item.
|
||||
*/
|
||||
async onPlaybackStopped(requestParameters: OnPlaybackStoppedRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.onPlaybackStoppedRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Pings a playback session.
|
||||
*/
|
||||
async pingPlaybackSessionRaw(requestParameters: PingPlaybackSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.playSessionId === null || requestParameters.playSessionId === undefined) {
|
||||
throw new runtime.RequiredError('playSessionId','Required parameter requestParameters.playSessionId was null or undefined when calling pingPlaybackSession.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.playSessionId !== undefined) {
|
||||
queryParameters['playSessionId'] = requestParameters.playSessionId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/Playing/Ping`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Pings a playback session.
|
||||
*/
|
||||
async pingPlaybackSession(requestParameters: PingPlaybackSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.pingPlaybackSessionRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports playback progress within a session.
|
||||
*/
|
||||
async reportPlaybackProgressRaw(requestParameters: ReportPlaybackProgressOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/Playing/Progress`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: ReportPlaybackProgressRequestToJSON(requestParameters.reportPlaybackProgressRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports playback progress within a session.
|
||||
*/
|
||||
async reportPlaybackProgress(requestParameters: ReportPlaybackProgressOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.reportPlaybackProgressRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports playback has started within a session.
|
||||
*/
|
||||
async reportPlaybackStartRaw(requestParameters: ReportPlaybackStartOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/Playing`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: ReportPlaybackStartRequestToJSON(requestParameters.reportPlaybackStartRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports playback has started within a session.
|
||||
*/
|
||||
async reportPlaybackStart(requestParameters: ReportPlaybackStartOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.reportPlaybackStartRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports playback has stopped within a session.
|
||||
*/
|
||||
async reportPlaybackStoppedRaw(requestParameters: ReportPlaybackStoppedOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/Playing/Stopped`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: ReportPlaybackStoppedRequestToJSON(requestParameters.reportPlaybackStoppedRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports playback has stopped within a session.
|
||||
*/
|
||||
async reportPlaybackStopped(requestParameters: ReportPlaybackStoppedOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.reportPlaybackStoppedRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
383
server/jellyfin/apis/PluginsApi.ts
Normal file
383
server/jellyfin/apis/PluginsApi.ts
Normal file
@ -0,0 +1,383 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
PluginInfo,
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
PluginInfoFromJSON,
|
||||
PluginInfoToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface DisablePluginRequest {
|
||||
pluginId: string;
|
||||
version: string;
|
||||
}
|
||||
|
||||
export interface EnablePluginRequest {
|
||||
pluginId: string;
|
||||
version: string;
|
||||
}
|
||||
|
||||
export interface GetPluginConfigurationRequest {
|
||||
pluginId: string;
|
||||
}
|
||||
|
||||
export interface GetPluginImageRequest {
|
||||
pluginId: string;
|
||||
version: string;
|
||||
}
|
||||
|
||||
export interface GetPluginManifestRequest {
|
||||
pluginId: string;
|
||||
}
|
||||
|
||||
export interface UninstallPluginRequest {
|
||||
pluginId: string;
|
||||
}
|
||||
|
||||
export interface UninstallPluginByVersionRequest {
|
||||
pluginId: string;
|
||||
version: string;
|
||||
}
|
||||
|
||||
export interface UpdatePluginConfigurationRequest {
|
||||
pluginId: string;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class PluginsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Disable a plugin.
|
||||
*/
|
||||
async disablePluginRaw(requestParameters: DisablePluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
|
||||
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling disablePlugin.');
|
||||
}
|
||||
|
||||
if (requestParameters.version === null || requestParameters.version === undefined) {
|
||||
throw new runtime.RequiredError('version','Required parameter requestParameters.version was null or undefined when calling disablePlugin.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Plugins/{pluginId}/{version}/Disable`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))).replace(`{${"version"}}`, encodeURIComponent(String(requestParameters.version))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Disable a plugin.
|
||||
*/
|
||||
async disablePlugin(requestParameters: DisablePluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.disablePluginRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Enables a disabled plugin.
|
||||
*/
|
||||
async enablePluginRaw(requestParameters: EnablePluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
|
||||
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling enablePlugin.');
|
||||
}
|
||||
|
||||
if (requestParameters.version === null || requestParameters.version === undefined) {
|
||||
throw new runtime.RequiredError('version','Required parameter requestParameters.version was null or undefined when calling enablePlugin.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Plugins/{pluginId}/{version}/Enable`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))).replace(`{${"version"}}`, encodeURIComponent(String(requestParameters.version))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Enables a disabled plugin.
|
||||
*/
|
||||
async enablePlugin(requestParameters: EnablePluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.enablePluginRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets plugin configuration.
|
||||
*/
|
||||
async getPluginConfigurationRaw(requestParameters: GetPluginConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<object>> {
|
||||
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
|
||||
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling getPluginConfiguration.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Plugins/{pluginId}/Configuration`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse<any>(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets plugin configuration.
|
||||
*/
|
||||
async getPluginConfiguration(requestParameters: GetPluginConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<object> {
|
||||
const response = await this.getPluginConfigurationRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a plugin\'s image.
|
||||
*/
|
||||
async getPluginImageRaw(requestParameters: GetPluginImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
|
||||
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling getPluginImage.');
|
||||
}
|
||||
|
||||
if (requestParameters.version === null || requestParameters.version === undefined) {
|
||||
throw new runtime.RequiredError('version','Required parameter requestParameters.version was null or undefined when calling getPluginImage.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Plugins/{pluginId}/{version}/Image`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))).replace(`{${"version"}}`, encodeURIComponent(String(requestParameters.version))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a plugin\'s image.
|
||||
*/
|
||||
async getPluginImage(requestParameters: GetPluginImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getPluginImageRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a plugin\'s manifest.
|
||||
*/
|
||||
async getPluginManifestRaw(requestParameters: GetPluginManifestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
|
||||
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling getPluginManifest.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Plugins/{pluginId}/Manifest`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a plugin\'s manifest.
|
||||
*/
|
||||
async getPluginManifest(requestParameters: GetPluginManifestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.getPluginManifestRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of currently installed plugins.
|
||||
*/
|
||||
async getPluginsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<PluginInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Plugins`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PluginInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of currently installed plugins.
|
||||
*/
|
||||
async getPlugins(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<PluginInfo>> {
|
||||
const response = await this.getPluginsRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Uninstalls a plugin.
|
||||
*/
|
||||
async uninstallPluginRaw(requestParameters: UninstallPluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
|
||||
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling uninstallPlugin.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Plugins/{pluginId}`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Uninstalls a plugin.
|
||||
*/
|
||||
async uninstallPlugin(requestParameters: UninstallPluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.uninstallPluginRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Uninstalls a plugin by version.
|
||||
*/
|
||||
async uninstallPluginByVersionRaw(requestParameters: UninstallPluginByVersionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
|
||||
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling uninstallPluginByVersion.');
|
||||
}
|
||||
|
||||
if (requestParameters.version === null || requestParameters.version === undefined) {
|
||||
throw new runtime.RequiredError('version','Required parameter requestParameters.version was null or undefined when calling uninstallPluginByVersion.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Plugins/{pluginId}/{version}`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))).replace(`{${"version"}}`, encodeURIComponent(String(requestParameters.version))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Uninstalls a plugin by version.
|
||||
*/
|
||||
async uninstallPluginByVersion(requestParameters: UninstallPluginByVersionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.uninstallPluginByVersionRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Accepts plugin configuration as JSON body.
|
||||
* Updates plugin configuration.
|
||||
*/
|
||||
async updatePluginConfigurationRaw(requestParameters: UpdatePluginConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
|
||||
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling updatePluginConfiguration.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Plugins/{pluginId}/Configuration`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Accepts plugin configuration as JSON body.
|
||||
* Updates plugin configuration.
|
||||
*/
|
||||
async updatePluginConfiguration(requestParameters: UpdatePluginConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updatePluginConfigurationRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
173
server/jellyfin/apis/QuickConnectApi.ts
Normal file
173
server/jellyfin/apis/QuickConnectApi.ts
Normal file
@ -0,0 +1,173 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ProblemDetails,
|
||||
QuickConnectResult,
|
||||
} from '../models';
|
||||
import {
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
QuickConnectResultFromJSON,
|
||||
QuickConnectResultToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface AuthorizeRequest {
|
||||
code: string;
|
||||
}
|
||||
|
||||
export interface ConnectRequest {
|
||||
secret: string;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class QuickConnectApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Authorizes a pending quick connect request.
|
||||
*/
|
||||
async authorizeRaw(requestParameters: AuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
|
||||
if (requestParameters.code === null || requestParameters.code === undefined) {
|
||||
throw new runtime.RequiredError('code','Required parameter requestParameters.code was null or undefined when calling authorize.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.code !== undefined) {
|
||||
queryParameters['code'] = requestParameters.code;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/QuickConnect/Authorize`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
if (this.isJsonMime(response.headers.get('content-type'))) {
|
||||
return new runtime.JSONApiResponse<boolean>(response);
|
||||
} else {
|
||||
return new runtime.TextApiResponse(response) as any;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Authorizes a pending quick connect request.
|
||||
*/
|
||||
async authorize(requestParameters: AuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
|
||||
const response = await this.authorizeRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Attempts to retrieve authentication information.
|
||||
*/
|
||||
async connectRaw(requestParameters: ConnectRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<QuickConnectResult>> {
|
||||
if (requestParameters.secret === null || requestParameters.secret === undefined) {
|
||||
throw new runtime.RequiredError('secret','Required parameter requestParameters.secret was null or undefined when calling connect.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.secret !== undefined) {
|
||||
queryParameters['secret'] = requestParameters.secret;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/QuickConnect/Connect`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => QuickConnectResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Attempts to retrieve authentication information.
|
||||
*/
|
||||
async connect(requestParameters: ConnectRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<QuickConnectResult> {
|
||||
const response = await this.connectRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the current quick connect state.
|
||||
*/
|
||||
async getEnabledRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/QuickConnect/Enabled`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
if (this.isJsonMime(response.headers.get('content-type'))) {
|
||||
return new runtime.JSONApiResponse<boolean>(response);
|
||||
} else {
|
||||
return new runtime.TextApiResponse(response) as any;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the current quick connect state.
|
||||
*/
|
||||
async getEnabled(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
|
||||
const response = await this.getEnabledRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Initiate a new quick connect request.
|
||||
*/
|
||||
async initiateRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<QuickConnectResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/QuickConnect/Initiate`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => QuickConnectResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Initiate a new quick connect request.
|
||||
*/
|
||||
async initiate(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<QuickConnectResult> {
|
||||
const response = await this.initiateRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
191
server/jellyfin/apis/RemoteImageApi.ts
Normal file
191
server/jellyfin/apis/RemoteImageApi.ts
Normal file
@ -0,0 +1,191 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ImageProviderInfo,
|
||||
ImageType,
|
||||
ProblemDetails,
|
||||
RemoteImageResult,
|
||||
} from '../models';
|
||||
import {
|
||||
ImageProviderInfoFromJSON,
|
||||
ImageProviderInfoToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
RemoteImageResultFromJSON,
|
||||
RemoteImageResultToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface DownloadRemoteImageRequest {
|
||||
itemId: string;
|
||||
type: ImageType;
|
||||
imageUrl?: string;
|
||||
}
|
||||
|
||||
export interface GetRemoteImageProvidersRequest {
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface GetRemoteImagesRequest {
|
||||
itemId: string;
|
||||
type?: ImageType;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
providerName?: string;
|
||||
includeAllLanguages?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class RemoteImageApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Downloads a remote image for an item.
|
||||
*/
|
||||
async downloadRemoteImageRaw(requestParameters: DownloadRemoteImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling downloadRemoteImage.');
|
||||
}
|
||||
|
||||
if (requestParameters.type === null || requestParameters.type === undefined) {
|
||||
throw new runtime.RequiredError('type','Required parameter requestParameters.type was null or undefined when calling downloadRemoteImage.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.type !== undefined) {
|
||||
queryParameters['type'] = requestParameters.type;
|
||||
}
|
||||
|
||||
if (requestParameters.imageUrl !== undefined) {
|
||||
queryParameters['imageUrl'] = requestParameters.imageUrl;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/RemoteImages/Download`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Downloads a remote image for an item.
|
||||
*/
|
||||
async downloadRemoteImage(requestParameters: DownloadRemoteImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.downloadRemoteImageRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets available remote image providers for an item.
|
||||
*/
|
||||
async getRemoteImageProvidersRaw(requestParameters: GetRemoteImageProvidersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ImageProviderInfo>>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getRemoteImageProviders.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/RemoteImages/Providers`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ImageProviderInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets available remote image providers for an item.
|
||||
*/
|
||||
async getRemoteImageProviders(requestParameters: GetRemoteImageProvidersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ImageProviderInfo>> {
|
||||
const response = await this.getRemoteImageProvidersRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets available remote images for an item.
|
||||
*/
|
||||
async getRemoteImagesRaw(requestParameters: GetRemoteImagesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RemoteImageResult>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getRemoteImages.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.type !== undefined) {
|
||||
queryParameters['type'] = requestParameters.type;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.providerName !== undefined) {
|
||||
queryParameters['providerName'] = requestParameters.providerName;
|
||||
}
|
||||
|
||||
if (requestParameters.includeAllLanguages !== undefined) {
|
||||
queryParameters['includeAllLanguages'] = requestParameters.includeAllLanguages;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/RemoteImages`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => RemoteImageResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets available remote images for an item.
|
||||
*/
|
||||
async getRemoteImages(requestParameters: GetRemoteImagesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RemoteImageResult> {
|
||||
const response = await this.getRemoteImagesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
236
server/jellyfin/apis/ScheduledTasksApi.ts
Normal file
236
server/jellyfin/apis/ScheduledTasksApi.ts
Normal file
@ -0,0 +1,236 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ProblemDetails,
|
||||
TaskInfo,
|
||||
TaskTriggerInfo,
|
||||
} from '../models';
|
||||
import {
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
TaskInfoFromJSON,
|
||||
TaskInfoToJSON,
|
||||
TaskTriggerInfoFromJSON,
|
||||
TaskTriggerInfoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetTaskRequest {
|
||||
taskId: string;
|
||||
}
|
||||
|
||||
export interface GetTasksRequest {
|
||||
isHidden?: boolean;
|
||||
isEnabled?: boolean;
|
||||
}
|
||||
|
||||
export interface StartTaskRequest {
|
||||
taskId: string;
|
||||
}
|
||||
|
||||
export interface StopTaskRequest {
|
||||
taskId: string;
|
||||
}
|
||||
|
||||
export interface UpdateTaskRequest {
|
||||
taskId: string;
|
||||
taskTriggerInfo: Array<TaskTriggerInfo>;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class ScheduledTasksApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Get task by id.
|
||||
*/
|
||||
async getTaskRaw(requestParameters: GetTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TaskInfo>> {
|
||||
if (requestParameters.taskId === null || requestParameters.taskId === undefined) {
|
||||
throw new runtime.RequiredError('taskId','Required parameter requestParameters.taskId was null or undefined when calling getTask.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/ScheduledTasks/{taskId}`.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters.taskId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => TaskInfoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get task by id.
|
||||
*/
|
||||
async getTask(requestParameters: GetTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TaskInfo> {
|
||||
const response = await this.getTaskRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get tasks.
|
||||
*/
|
||||
async getTasksRaw(requestParameters: GetTasksRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<TaskInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.isHidden !== undefined) {
|
||||
queryParameters['isHidden'] = requestParameters.isHidden;
|
||||
}
|
||||
|
||||
if (requestParameters.isEnabled !== undefined) {
|
||||
queryParameters['isEnabled'] = requestParameters.isEnabled;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/ScheduledTasks`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(TaskInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get tasks.
|
||||
*/
|
||||
async getTasks(requestParameters: GetTasksRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<TaskInfo>> {
|
||||
const response = await this.getTasksRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Start specified task.
|
||||
*/
|
||||
async startTaskRaw(requestParameters: StartTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.taskId === null || requestParameters.taskId === undefined) {
|
||||
throw new runtime.RequiredError('taskId','Required parameter requestParameters.taskId was null or undefined when calling startTask.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/ScheduledTasks/Running/{taskId}`.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters.taskId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Start specified task.
|
||||
*/
|
||||
async startTask(requestParameters: StartTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.startTaskRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Stop specified task.
|
||||
*/
|
||||
async stopTaskRaw(requestParameters: StopTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.taskId === null || requestParameters.taskId === undefined) {
|
||||
throw new runtime.RequiredError('taskId','Required parameter requestParameters.taskId was null or undefined when calling stopTask.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/ScheduledTasks/Running/{taskId}`.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters.taskId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Stop specified task.
|
||||
*/
|
||||
async stopTask(requestParameters: StopTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.stopTaskRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update specified task triggers.
|
||||
*/
|
||||
async updateTaskRaw(requestParameters: UpdateTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.taskId === null || requestParameters.taskId === undefined) {
|
||||
throw new runtime.RequiredError('taskId','Required parameter requestParameters.taskId was null or undefined when calling updateTask.');
|
||||
}
|
||||
|
||||
if (requestParameters.taskTriggerInfo === null || requestParameters.taskTriggerInfo === undefined) {
|
||||
throw new runtime.RequiredError('taskTriggerInfo','Required parameter requestParameters.taskTriggerInfo was null or undefined when calling updateTask.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/ScheduledTasks/{taskId}/Triggers`.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters.taskId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: requestParameters.taskTriggerInfo.map(TaskTriggerInfoToJSON),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update specified task triggers.
|
||||
*/
|
||||
async updateTask(requestParameters: UpdateTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateTaskRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
160
server/jellyfin/apis/SearchApi.ts
Normal file
160
server/jellyfin/apis/SearchApi.ts
Normal file
@ -0,0 +1,160 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemKind,
|
||||
SearchHintResult,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
SearchHintResultFromJSON,
|
||||
SearchHintResultToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetRequest {
|
||||
searchTerm: string;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
userId?: string;
|
||||
includeItemTypes?: Array<BaseItemKind>;
|
||||
excludeItemTypes?: Array<BaseItemKind>;
|
||||
mediaTypes?: Array<string>;
|
||||
parentId?: string;
|
||||
isMovie?: boolean;
|
||||
isSeries?: boolean;
|
||||
isNews?: boolean;
|
||||
isKids?: boolean;
|
||||
isSports?: boolean;
|
||||
includePeople?: boolean;
|
||||
includeMedia?: boolean;
|
||||
includeGenres?: boolean;
|
||||
includeStudios?: boolean;
|
||||
includeArtists?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class SearchApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets the search hint result.
|
||||
*/
|
||||
async getRaw(requestParameters: GetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SearchHintResult>> {
|
||||
if (requestParameters.searchTerm === null || requestParameters.searchTerm === undefined) {
|
||||
throw new runtime.RequiredError('searchTerm','Required parameter requestParameters.searchTerm was null or undefined when calling get.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.searchTerm !== undefined) {
|
||||
queryParameters['searchTerm'] = requestParameters.searchTerm;
|
||||
}
|
||||
|
||||
if (requestParameters.includeItemTypes) {
|
||||
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeItemTypes) {
|
||||
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaTypes) {
|
||||
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.isMovie !== undefined) {
|
||||
queryParameters['isMovie'] = requestParameters.isMovie;
|
||||
}
|
||||
|
||||
if (requestParameters.isSeries !== undefined) {
|
||||
queryParameters['isSeries'] = requestParameters.isSeries;
|
||||
}
|
||||
|
||||
if (requestParameters.isNews !== undefined) {
|
||||
queryParameters['isNews'] = requestParameters.isNews;
|
||||
}
|
||||
|
||||
if (requestParameters.isKids !== undefined) {
|
||||
queryParameters['isKids'] = requestParameters.isKids;
|
||||
}
|
||||
|
||||
if (requestParameters.isSports !== undefined) {
|
||||
queryParameters['isSports'] = requestParameters.isSports;
|
||||
}
|
||||
|
||||
if (requestParameters.includePeople !== undefined) {
|
||||
queryParameters['includePeople'] = requestParameters.includePeople;
|
||||
}
|
||||
|
||||
if (requestParameters.includeMedia !== undefined) {
|
||||
queryParameters['includeMedia'] = requestParameters.includeMedia;
|
||||
}
|
||||
|
||||
if (requestParameters.includeGenres !== undefined) {
|
||||
queryParameters['includeGenres'] = requestParameters.includeGenres;
|
||||
}
|
||||
|
||||
if (requestParameters.includeStudios !== undefined) {
|
||||
queryParameters['includeStudios'] = requestParameters.includeStudios;
|
||||
}
|
||||
|
||||
if (requestParameters.includeArtists !== undefined) {
|
||||
queryParameters['includeArtists'] = requestParameters.includeArtists;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Search/Hints`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => SearchHintResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the search hint result.
|
||||
*/
|
||||
async get(requestParameters: GetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SearchHintResult> {
|
||||
const response = await this.getRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
798
server/jellyfin/apis/SessionApi.ts
Normal file
798
server/jellyfin/apis/SessionApi.ts
Normal file
@ -0,0 +1,798 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemKind,
|
||||
GeneralCommandType,
|
||||
NameIdPair,
|
||||
PlayCommand,
|
||||
PlaystateCommand,
|
||||
PostFullCapabilitiesRequest,
|
||||
SendFullGeneralCommandRequest,
|
||||
SendMessageCommandRequest,
|
||||
SessionInfo,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
GeneralCommandTypeFromJSON,
|
||||
GeneralCommandTypeToJSON,
|
||||
NameIdPairFromJSON,
|
||||
NameIdPairToJSON,
|
||||
PlayCommandFromJSON,
|
||||
PlayCommandToJSON,
|
||||
PlaystateCommandFromJSON,
|
||||
PlaystateCommandToJSON,
|
||||
PostFullCapabilitiesRequestFromJSON,
|
||||
PostFullCapabilitiesRequestToJSON,
|
||||
SendFullGeneralCommandRequestFromJSON,
|
||||
SendFullGeneralCommandRequestToJSON,
|
||||
SendMessageCommandRequestFromJSON,
|
||||
SendMessageCommandRequestToJSON,
|
||||
SessionInfoFromJSON,
|
||||
SessionInfoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface AddUserToSessionRequest {
|
||||
sessionId: string;
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface DisplayContentRequest {
|
||||
sessionId: string;
|
||||
itemType: BaseItemKind;
|
||||
itemId: string;
|
||||
itemName: string;
|
||||
}
|
||||
|
||||
export interface GetSessionsRequest {
|
||||
controllableByUserId?: string;
|
||||
deviceId?: string;
|
||||
activeWithinSeconds?: number;
|
||||
}
|
||||
|
||||
export interface PlayRequest {
|
||||
sessionId: string;
|
||||
playCommand: PlayCommand;
|
||||
itemIds: Array<string>;
|
||||
startPositionTicks?: number;
|
||||
mediaSourceId?: string;
|
||||
audioStreamIndex?: number;
|
||||
subtitleStreamIndex?: number;
|
||||
startIndex?: number;
|
||||
}
|
||||
|
||||
export interface PostCapabilitiesRequest {
|
||||
id?: string;
|
||||
playableMediaTypes?: Array<string>;
|
||||
supportedCommands?: Array<GeneralCommandType>;
|
||||
supportsMediaControl?: boolean;
|
||||
supportsSync?: boolean;
|
||||
supportsPersistentIdentifier?: boolean;
|
||||
}
|
||||
|
||||
export interface PostFullCapabilitiesOperationRequest {
|
||||
postFullCapabilitiesRequest: PostFullCapabilitiesRequest;
|
||||
id?: string;
|
||||
}
|
||||
|
||||
export interface RemoveUserFromSessionRequest {
|
||||
sessionId: string;
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface ReportViewingRequest {
|
||||
itemId: string;
|
||||
sessionId?: string;
|
||||
}
|
||||
|
||||
export interface SendFullGeneralCommandOperationRequest {
|
||||
sessionId: string;
|
||||
sendFullGeneralCommandRequest: SendFullGeneralCommandRequest;
|
||||
}
|
||||
|
||||
export interface SendGeneralCommandRequest {
|
||||
sessionId: string;
|
||||
command: GeneralCommandType;
|
||||
}
|
||||
|
||||
export interface SendMessageCommandOperationRequest {
|
||||
sessionId: string;
|
||||
sendMessageCommandRequest: SendMessageCommandRequest;
|
||||
}
|
||||
|
||||
export interface SendPlaystateCommandRequest {
|
||||
sessionId: string;
|
||||
command: PlaystateCommand;
|
||||
seekPositionTicks?: number;
|
||||
controllingUserId?: string;
|
||||
}
|
||||
|
||||
export interface SendSystemCommandRequest {
|
||||
sessionId: string;
|
||||
command: GeneralCommandType;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class SessionApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Adds an additional user to a session.
|
||||
*/
|
||||
async addUserToSessionRaw(requestParameters: AddUserToSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
|
||||
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling addUserToSession.');
|
||||
}
|
||||
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling addUserToSession.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/{sessionId}/User/{userId}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))).replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds an additional user to a session.
|
||||
*/
|
||||
async addUserToSession(requestParameters: AddUserToSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.addUserToSessionRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Instructs a session to browse to an item or view.
|
||||
*/
|
||||
async displayContentRaw(requestParameters: DisplayContentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
|
||||
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling displayContent.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemType === null || requestParameters.itemType === undefined) {
|
||||
throw new runtime.RequiredError('itemType','Required parameter requestParameters.itemType was null or undefined when calling displayContent.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling displayContent.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemName === null || requestParameters.itemName === undefined) {
|
||||
throw new runtime.RequiredError('itemName','Required parameter requestParameters.itemName was null or undefined when calling displayContent.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.itemType !== undefined) {
|
||||
queryParameters['itemType'] = requestParameters.itemType;
|
||||
}
|
||||
|
||||
if (requestParameters.itemId !== undefined) {
|
||||
queryParameters['itemId'] = requestParameters.itemId;
|
||||
}
|
||||
|
||||
if (requestParameters.itemName !== undefined) {
|
||||
queryParameters['itemName'] = requestParameters.itemName;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/{sessionId}/Viewing`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Instructs a session to browse to an item or view.
|
||||
*/
|
||||
async displayContent(requestParameters: DisplayContentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.displayContentRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all auth providers.
|
||||
*/
|
||||
async getAuthProvidersRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<NameIdPair>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Auth/Providers`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NameIdPairFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all auth providers.
|
||||
*/
|
||||
async getAuthProviders(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<NameIdPair>> {
|
||||
const response = await this.getAuthProvidersRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all password reset providers.
|
||||
*/
|
||||
async getPasswordResetProvidersRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<NameIdPair>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Auth/PasswordResetProviders`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NameIdPairFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all password reset providers.
|
||||
*/
|
||||
async getPasswordResetProviders(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<NameIdPair>> {
|
||||
const response = await this.getPasswordResetProvidersRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of sessions.
|
||||
*/
|
||||
async getSessionsRaw(requestParameters: GetSessionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<SessionInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.controllableByUserId !== undefined) {
|
||||
queryParameters['controllableByUserId'] = requestParameters.controllableByUserId;
|
||||
}
|
||||
|
||||
if (requestParameters.deviceId !== undefined) {
|
||||
queryParameters['deviceId'] = requestParameters.deviceId;
|
||||
}
|
||||
|
||||
if (requestParameters.activeWithinSeconds !== undefined) {
|
||||
queryParameters['activeWithinSeconds'] = requestParameters.activeWithinSeconds;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(SessionInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of sessions.
|
||||
*/
|
||||
async getSessions(requestParameters: GetSessionsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<SessionInfo>> {
|
||||
const response = await this.getSessionsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Instructs a session to play an item.
|
||||
*/
|
||||
async playRaw(requestParameters: PlayRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
|
||||
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling play.');
|
||||
}
|
||||
|
||||
if (requestParameters.playCommand === null || requestParameters.playCommand === undefined) {
|
||||
throw new runtime.RequiredError('playCommand','Required parameter requestParameters.playCommand was null or undefined when calling play.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemIds === null || requestParameters.itemIds === undefined) {
|
||||
throw new runtime.RequiredError('itemIds','Required parameter requestParameters.itemIds was null or undefined when calling play.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.playCommand !== undefined) {
|
||||
queryParameters['playCommand'] = requestParameters.playCommand;
|
||||
}
|
||||
|
||||
if (requestParameters.itemIds) {
|
||||
queryParameters['itemIds'] = requestParameters.itemIds;
|
||||
}
|
||||
|
||||
if (requestParameters.startPositionTicks !== undefined) {
|
||||
queryParameters['startPositionTicks'] = requestParameters.startPositionTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaSourceId !== undefined) {
|
||||
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
|
||||
}
|
||||
|
||||
if (requestParameters.audioStreamIndex !== undefined) {
|
||||
queryParameters['audioStreamIndex'] = requestParameters.audioStreamIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.subtitleStreamIndex !== undefined) {
|
||||
queryParameters['subtitleStreamIndex'] = requestParameters.subtitleStreamIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/{sessionId}/Playing`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Instructs a session to play an item.
|
||||
*/
|
||||
async play(requestParameters: PlayRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.playRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates capabilities for a device.
|
||||
*/
|
||||
async postCapabilitiesRaw(requestParameters: PostCapabilitiesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.id !== undefined) {
|
||||
queryParameters['id'] = requestParameters.id;
|
||||
}
|
||||
|
||||
if (requestParameters.playableMediaTypes) {
|
||||
queryParameters['playableMediaTypes'] = requestParameters.playableMediaTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.supportedCommands) {
|
||||
queryParameters['supportedCommands'] = requestParameters.supportedCommands;
|
||||
}
|
||||
|
||||
if (requestParameters.supportsMediaControl !== undefined) {
|
||||
queryParameters['supportsMediaControl'] = requestParameters.supportsMediaControl;
|
||||
}
|
||||
|
||||
if (requestParameters.supportsSync !== undefined) {
|
||||
queryParameters['supportsSync'] = requestParameters.supportsSync;
|
||||
}
|
||||
|
||||
if (requestParameters.supportsPersistentIdentifier !== undefined) {
|
||||
queryParameters['supportsPersistentIdentifier'] = requestParameters.supportsPersistentIdentifier;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/Capabilities`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates capabilities for a device.
|
||||
*/
|
||||
async postCapabilities(requestParameters: PostCapabilitiesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.postCapabilitiesRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates capabilities for a device.
|
||||
*/
|
||||
async postFullCapabilitiesRaw(requestParameters: PostFullCapabilitiesOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.postFullCapabilitiesRequest === null || requestParameters.postFullCapabilitiesRequest === undefined) {
|
||||
throw new runtime.RequiredError('postFullCapabilitiesRequest','Required parameter requestParameters.postFullCapabilitiesRequest was null or undefined when calling postFullCapabilities.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.id !== undefined) {
|
||||
queryParameters['id'] = requestParameters.id;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/Capabilities/Full`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: PostFullCapabilitiesRequestToJSON(requestParameters.postFullCapabilitiesRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates capabilities for a device.
|
||||
*/
|
||||
async postFullCapabilities(requestParameters: PostFullCapabilitiesOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.postFullCapabilitiesRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes an additional user from a session.
|
||||
*/
|
||||
async removeUserFromSessionRaw(requestParameters: RemoveUserFromSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
|
||||
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling removeUserFromSession.');
|
||||
}
|
||||
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling removeUserFromSession.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/{sessionId}/User/{userId}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))).replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes an additional user from a session.
|
||||
*/
|
||||
async removeUserFromSession(requestParameters: RemoveUserFromSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.removeUserFromSessionRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports that a session has ended.
|
||||
*/
|
||||
async reportSessionEndedRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/Logout`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports that a session has ended.
|
||||
*/
|
||||
async reportSessionEnded(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.reportSessionEndedRaw(initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports that a session is viewing an item.
|
||||
*/
|
||||
async reportViewingRaw(requestParameters: ReportViewingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling reportViewing.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.sessionId !== undefined) {
|
||||
queryParameters['sessionId'] = requestParameters.sessionId;
|
||||
}
|
||||
|
||||
if (requestParameters.itemId !== undefined) {
|
||||
queryParameters['itemId'] = requestParameters.itemId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/Viewing`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Reports that a session is viewing an item.
|
||||
*/
|
||||
async reportViewing(requestParameters: ReportViewingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.reportViewingRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Issues a full general command to a client.
|
||||
*/
|
||||
async sendFullGeneralCommandRaw(requestParameters: SendFullGeneralCommandOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
|
||||
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling sendFullGeneralCommand.');
|
||||
}
|
||||
|
||||
if (requestParameters.sendFullGeneralCommandRequest === null || requestParameters.sendFullGeneralCommandRequest === undefined) {
|
||||
throw new runtime.RequiredError('sendFullGeneralCommandRequest','Required parameter requestParameters.sendFullGeneralCommandRequest was null or undefined when calling sendFullGeneralCommand.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/{sessionId}/Command`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SendFullGeneralCommandRequestToJSON(requestParameters.sendFullGeneralCommandRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Issues a full general command to a client.
|
||||
*/
|
||||
async sendFullGeneralCommand(requestParameters: SendFullGeneralCommandOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.sendFullGeneralCommandRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Issues a general command to a client.
|
||||
*/
|
||||
async sendGeneralCommandRaw(requestParameters: SendGeneralCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
|
||||
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling sendGeneralCommand.');
|
||||
}
|
||||
|
||||
if (requestParameters.command === null || requestParameters.command === undefined) {
|
||||
throw new runtime.RequiredError('command','Required parameter requestParameters.command was null or undefined when calling sendGeneralCommand.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/{sessionId}/Command/{command}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))).replace(`{${"command"}}`, encodeURIComponent(String(requestParameters.command))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Issues a general command to a client.
|
||||
*/
|
||||
async sendGeneralCommand(requestParameters: SendGeneralCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.sendGeneralCommandRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Issues a command to a client to display a message to the user.
|
||||
*/
|
||||
async sendMessageCommandRaw(requestParameters: SendMessageCommandOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
|
||||
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling sendMessageCommand.');
|
||||
}
|
||||
|
||||
if (requestParameters.sendMessageCommandRequest === null || requestParameters.sendMessageCommandRequest === undefined) {
|
||||
throw new runtime.RequiredError('sendMessageCommandRequest','Required parameter requestParameters.sendMessageCommandRequest was null or undefined when calling sendMessageCommand.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/{sessionId}/Message`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SendMessageCommandRequestToJSON(requestParameters.sendMessageCommandRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Issues a command to a client to display a message to the user.
|
||||
*/
|
||||
async sendMessageCommand(requestParameters: SendMessageCommandOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.sendMessageCommandRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Issues a playstate command to a client.
|
||||
*/
|
||||
async sendPlaystateCommandRaw(requestParameters: SendPlaystateCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
|
||||
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling sendPlaystateCommand.');
|
||||
}
|
||||
|
||||
if (requestParameters.command === null || requestParameters.command === undefined) {
|
||||
throw new runtime.RequiredError('command','Required parameter requestParameters.command was null or undefined when calling sendPlaystateCommand.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.seekPositionTicks !== undefined) {
|
||||
queryParameters['seekPositionTicks'] = requestParameters.seekPositionTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.controllingUserId !== undefined) {
|
||||
queryParameters['controllingUserId'] = requestParameters.controllingUserId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/{sessionId}/Playing/{command}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))).replace(`{${"command"}}`, encodeURIComponent(String(requestParameters.command))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Issues a playstate command to a client.
|
||||
*/
|
||||
async sendPlaystateCommand(requestParameters: SendPlaystateCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.sendPlaystateCommandRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Issues a system command to a client.
|
||||
*/
|
||||
async sendSystemCommandRaw(requestParameters: SendSystemCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
|
||||
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling sendSystemCommand.');
|
||||
}
|
||||
|
||||
if (requestParameters.command === null || requestParameters.command === undefined) {
|
||||
throw new runtime.RequiredError('command','Required parameter requestParameters.command was null or undefined when calling sendSystemCommand.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Sessions/{sessionId}/System/{command}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))).replace(`{${"command"}}`, encodeURIComponent(String(requestParameters.command))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Issues a system command to a client.
|
||||
*/
|
||||
async sendSystemCommand(requestParameters: SendSystemCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.sendSystemCommandRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
277
server/jellyfin/apis/StartupApi.ts
Normal file
277
server/jellyfin/apis/StartupApi.ts
Normal file
@ -0,0 +1,277 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
SetRemoteAccessRequest,
|
||||
StartupConfigurationDto,
|
||||
StartupUserDto,
|
||||
UpdateInitialConfigurationRequest,
|
||||
UpdateStartupUserRequest,
|
||||
} from '../models';
|
||||
import {
|
||||
SetRemoteAccessRequestFromJSON,
|
||||
SetRemoteAccessRequestToJSON,
|
||||
StartupConfigurationDtoFromJSON,
|
||||
StartupConfigurationDtoToJSON,
|
||||
StartupUserDtoFromJSON,
|
||||
StartupUserDtoToJSON,
|
||||
UpdateInitialConfigurationRequestFromJSON,
|
||||
UpdateInitialConfigurationRequestToJSON,
|
||||
UpdateStartupUserRequestFromJSON,
|
||||
UpdateStartupUserRequestToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface SetRemoteAccessOperationRequest {
|
||||
setRemoteAccessRequest: SetRemoteAccessRequest;
|
||||
}
|
||||
|
||||
export interface UpdateInitialConfigurationOperationRequest {
|
||||
updateInitialConfigurationRequest: UpdateInitialConfigurationRequest;
|
||||
}
|
||||
|
||||
export interface UpdateStartupUserOperationRequest {
|
||||
updateStartupUserRequest?: UpdateStartupUserRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class StartupApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Completes the startup wizard.
|
||||
*/
|
||||
async completeWizardRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Startup/Complete`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Completes the startup wizard.
|
||||
*/
|
||||
async completeWizard(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.completeWizardRaw(initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the first user.
|
||||
*/
|
||||
async getFirstUserRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<StartupUserDto>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Startup/User`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => StartupUserDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the first user.
|
||||
*/
|
||||
async getFirstUser(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<StartupUserDto> {
|
||||
const response = await this.getFirstUserRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the first user.
|
||||
*/
|
||||
async getFirstUser2Raw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<StartupUserDto>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Startup/FirstUser`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => StartupUserDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the first user.
|
||||
*/
|
||||
async getFirstUser2(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<StartupUserDto> {
|
||||
const response = await this.getFirstUser2Raw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the initial startup wizard configuration.
|
||||
*/
|
||||
async getStartupConfigurationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<StartupConfigurationDto>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Startup/Configuration`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => StartupConfigurationDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the initial startup wizard configuration.
|
||||
*/
|
||||
async getStartupConfiguration(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<StartupConfigurationDto> {
|
||||
const response = await this.getStartupConfigurationRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets remote access and UPnP.
|
||||
*/
|
||||
async setRemoteAccessRaw(requestParameters: SetRemoteAccessOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.setRemoteAccessRequest === null || requestParameters.setRemoteAccessRequest === undefined) {
|
||||
throw new runtime.RequiredError('setRemoteAccessRequest','Required parameter requestParameters.setRemoteAccessRequest was null or undefined when calling setRemoteAccess.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Startup/RemoteAccess`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SetRemoteAccessRequestToJSON(requestParameters.setRemoteAccessRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets remote access and UPnP.
|
||||
*/
|
||||
async setRemoteAccess(requestParameters: SetRemoteAccessOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.setRemoteAccessRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the initial startup wizard configuration.
|
||||
*/
|
||||
async updateInitialConfigurationRaw(requestParameters: UpdateInitialConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.updateInitialConfigurationRequest === null || requestParameters.updateInitialConfigurationRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateInitialConfigurationRequest','Required parameter requestParameters.updateInitialConfigurationRequest was null or undefined when calling updateInitialConfiguration.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Startup/Configuration`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateInitialConfigurationRequestToJSON(requestParameters.updateInitialConfigurationRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the initial startup wizard configuration.
|
||||
*/
|
||||
async updateInitialConfiguration(requestParameters: UpdateInitialConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateInitialConfigurationRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the user name and password.
|
||||
*/
|
||||
async updateStartupUserRaw(requestParameters: UpdateStartupUserOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Startup/User`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateStartupUserRequestToJSON(requestParameters.updateStartupUserRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the user name and password.
|
||||
*/
|
||||
async updateStartupUser(requestParameters: UpdateStartupUserOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateStartupUserRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
203
server/jellyfin/apis/StudiosApi.ts
Normal file
203
server/jellyfin/apis/StudiosApi.ts
Normal file
@ -0,0 +1,203 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDto,
|
||||
BaseItemDtoQueryResult,
|
||||
BaseItemKind,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoFromJSON,
|
||||
BaseItemDtoToJSON,
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetStudioRequest {
|
||||
name: string;
|
||||
userId?: string;
|
||||
}
|
||||
|
||||
export interface GetStudiosRequest {
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
searchTerm?: string;
|
||||
parentId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
excludeItemTypes?: Array<BaseItemKind>;
|
||||
includeItemTypes?: Array<BaseItemKind>;
|
||||
isFavorite?: boolean;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
userId?: string;
|
||||
nameStartsWithOrGreater?: string;
|
||||
nameStartsWith?: string;
|
||||
nameLessThan?: string;
|
||||
enableImages?: boolean;
|
||||
enableTotalRecordCount?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class StudiosApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets a studio by name.
|
||||
*/
|
||||
async getStudioRaw(requestParameters: GetStudioRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getStudio.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Studios/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a studio by name.
|
||||
*/
|
||||
async getStudio(requestParameters: GetStudioRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
|
||||
const response = await this.getStudioRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all studios from a given item, folder, or the entire library.
|
||||
*/
|
||||
async getStudiosRaw(requestParameters: GetStudiosRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.searchTerm !== undefined) {
|
||||
queryParameters['searchTerm'] = requestParameters.searchTerm;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeItemTypes) {
|
||||
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.includeItemTypes) {
|
||||
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.isFavorite !== undefined) {
|
||||
queryParameters['isFavorite'] = requestParameters.isFavorite;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWithOrGreater !== undefined) {
|
||||
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWith !== undefined) {
|
||||
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
|
||||
}
|
||||
|
||||
if (requestParameters.nameLessThan !== undefined) {
|
||||
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.enableTotalRecordCount !== undefined) {
|
||||
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Studios`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all studios from a given item, folder, or the entire library.
|
||||
*/
|
||||
async getStudios(requestParameters: GetStudiosRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getStudiosRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
562
server/jellyfin/apis/SubtitleApi.ts
Normal file
562
server/jellyfin/apis/SubtitleApi.ts
Normal file
@ -0,0 +1,562 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
FontFile,
|
||||
ProblemDetails,
|
||||
RemoteSubtitleInfo,
|
||||
UploadSubtitleRequest,
|
||||
} from '../models';
|
||||
import {
|
||||
FontFileFromJSON,
|
||||
FontFileToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
RemoteSubtitleInfoFromJSON,
|
||||
RemoteSubtitleInfoToJSON,
|
||||
UploadSubtitleRequestFromJSON,
|
||||
UploadSubtitleRequestToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface DeleteSubtitleRequest {
|
||||
itemId: string;
|
||||
index: number;
|
||||
}
|
||||
|
||||
export interface DownloadRemoteSubtitlesRequest {
|
||||
itemId: string;
|
||||
subtitleId: string;
|
||||
}
|
||||
|
||||
export interface GetFallbackFontRequest {
|
||||
name: string;
|
||||
}
|
||||
|
||||
export interface GetRemoteSubtitlesRequest {
|
||||
id: string;
|
||||
}
|
||||
|
||||
export interface GetSubtitleRequest {
|
||||
routeItemId: string;
|
||||
routeMediaSourceId: string;
|
||||
routeIndex: number;
|
||||
routeFormat: string;
|
||||
itemId?: string;
|
||||
mediaSourceId?: string;
|
||||
index?: number;
|
||||
format?: string;
|
||||
endPositionTicks?: number;
|
||||
copyTimestamps?: boolean;
|
||||
addVttTimeMap?: boolean;
|
||||
startPositionTicks?: number;
|
||||
}
|
||||
|
||||
export interface GetSubtitlePlaylistRequest {
|
||||
itemId: string;
|
||||
index: number;
|
||||
mediaSourceId: string;
|
||||
segmentLength: number;
|
||||
}
|
||||
|
||||
export interface GetSubtitleWithTicksRequest {
|
||||
routeItemId: string;
|
||||
routeMediaSourceId: string;
|
||||
routeIndex: number;
|
||||
routeStartPositionTicks: number;
|
||||
routeFormat: string;
|
||||
itemId?: string;
|
||||
mediaSourceId?: string;
|
||||
index?: number;
|
||||
startPositionTicks?: number;
|
||||
format?: string;
|
||||
endPositionTicks?: number;
|
||||
copyTimestamps?: boolean;
|
||||
addVttTimeMap?: boolean;
|
||||
}
|
||||
|
||||
export interface SearchRemoteSubtitlesRequest {
|
||||
itemId: string;
|
||||
language: string;
|
||||
isPerfectMatch?: boolean;
|
||||
}
|
||||
|
||||
export interface UploadSubtitleOperationRequest {
|
||||
itemId: string;
|
||||
uploadSubtitleRequest: UploadSubtitleRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class SubtitleApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Deletes an external subtitle file.
|
||||
*/
|
||||
async deleteSubtitleRaw(requestParameters: DeleteSubtitleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling deleteSubtitle.');
|
||||
}
|
||||
|
||||
if (requestParameters.index === null || requestParameters.index === undefined) {
|
||||
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling deleteSubtitle.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Videos/{itemId}/Subtitles/{index}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes an external subtitle file.
|
||||
*/
|
||||
async deleteSubtitle(requestParameters: DeleteSubtitleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.deleteSubtitleRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Downloads a remote subtitle.
|
||||
*/
|
||||
async downloadRemoteSubtitlesRaw(requestParameters: DownloadRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling downloadRemoteSubtitles.');
|
||||
}
|
||||
|
||||
if (requestParameters.subtitleId === null || requestParameters.subtitleId === undefined) {
|
||||
throw new runtime.RequiredError('subtitleId','Required parameter requestParameters.subtitleId was null or undefined when calling downloadRemoteSubtitles.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/RemoteSearch/Subtitles/{subtitleId}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"subtitleId"}}`, encodeURIComponent(String(requestParameters.subtitleId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Downloads a remote subtitle.
|
||||
*/
|
||||
async downloadRemoteSubtitles(requestParameters: DownloadRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.downloadRemoteSubtitlesRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a fallback font file.
|
||||
*/
|
||||
async getFallbackFontRaw(requestParameters: GetFallbackFontRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getFallbackFont.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/FallbackFont/Fonts/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a fallback font file.
|
||||
*/
|
||||
async getFallbackFont(requestParameters: GetFallbackFontRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getFallbackFontRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of available fallback font files.
|
||||
*/
|
||||
async getFallbackFontListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<FontFile>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/FallbackFont/Fonts`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(FontFileFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of available fallback font files.
|
||||
*/
|
||||
async getFallbackFontList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<FontFile>> {
|
||||
const response = await this.getFallbackFontListRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the remote subtitles.
|
||||
*/
|
||||
async getRemoteSubtitlesRaw(requestParameters: GetRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.id === null || requestParameters.id === undefined) {
|
||||
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getRemoteSubtitles.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Providers/Subtitles/Subtitles/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the remote subtitles.
|
||||
*/
|
||||
async getRemoteSubtitles(requestParameters: GetRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getRemoteSubtitlesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets subtitles in a specified format.
|
||||
*/
|
||||
async getSubtitleRaw(requestParameters: GetSubtitleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.routeItemId === null || requestParameters.routeItemId === undefined) {
|
||||
throw new runtime.RequiredError('routeItemId','Required parameter requestParameters.routeItemId was null or undefined when calling getSubtitle.');
|
||||
}
|
||||
|
||||
if (requestParameters.routeMediaSourceId === null || requestParameters.routeMediaSourceId === undefined) {
|
||||
throw new runtime.RequiredError('routeMediaSourceId','Required parameter requestParameters.routeMediaSourceId was null or undefined when calling getSubtitle.');
|
||||
}
|
||||
|
||||
if (requestParameters.routeIndex === null || requestParameters.routeIndex === undefined) {
|
||||
throw new runtime.RequiredError('routeIndex','Required parameter requestParameters.routeIndex was null or undefined when calling getSubtitle.');
|
||||
}
|
||||
|
||||
if (requestParameters.routeFormat === null || requestParameters.routeFormat === undefined) {
|
||||
throw new runtime.RequiredError('routeFormat','Required parameter requestParameters.routeFormat was null or undefined when calling getSubtitle.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.itemId !== undefined) {
|
||||
queryParameters['itemId'] = requestParameters.itemId;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaSourceId !== undefined) {
|
||||
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
|
||||
}
|
||||
|
||||
if (requestParameters.index !== undefined) {
|
||||
queryParameters['index'] = requestParameters.index;
|
||||
}
|
||||
|
||||
if (requestParameters.format !== undefined) {
|
||||
queryParameters['format'] = requestParameters.format;
|
||||
}
|
||||
|
||||
if (requestParameters.endPositionTicks !== undefined) {
|
||||
queryParameters['endPositionTicks'] = requestParameters.endPositionTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.copyTimestamps !== undefined) {
|
||||
queryParameters['copyTimestamps'] = requestParameters.copyTimestamps;
|
||||
}
|
||||
|
||||
if (requestParameters.addVttTimeMap !== undefined) {
|
||||
queryParameters['addVttTimeMap'] = requestParameters.addVttTimeMap;
|
||||
}
|
||||
|
||||
if (requestParameters.startPositionTicks !== undefined) {
|
||||
queryParameters['startPositionTicks'] = requestParameters.startPositionTicks;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Videos/{routeItemId}/{routeMediaSourceId}/Subtitles/{routeIndex}/Stream.{routeFormat}`.replace(`{${"routeItemId"}}`, encodeURIComponent(String(requestParameters.routeItemId))).replace(`{${"routeMediaSourceId"}}`, encodeURIComponent(String(requestParameters.routeMediaSourceId))).replace(`{${"routeIndex"}}`, encodeURIComponent(String(requestParameters.routeIndex))).replace(`{${"routeFormat"}}`, encodeURIComponent(String(requestParameters.routeFormat))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets subtitles in a specified format.
|
||||
*/
|
||||
async getSubtitle(requestParameters: GetSubtitleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getSubtitleRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets an HLS subtitle playlist.
|
||||
*/
|
||||
async getSubtitlePlaylistRaw(requestParameters: GetSubtitlePlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getSubtitlePlaylist.');
|
||||
}
|
||||
|
||||
if (requestParameters.index === null || requestParameters.index === undefined) {
|
||||
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling getSubtitlePlaylist.');
|
||||
}
|
||||
|
||||
if (requestParameters.mediaSourceId === null || requestParameters.mediaSourceId === undefined) {
|
||||
throw new runtime.RequiredError('mediaSourceId','Required parameter requestParameters.mediaSourceId was null or undefined when calling getSubtitlePlaylist.');
|
||||
}
|
||||
|
||||
if (requestParameters.segmentLength === null || requestParameters.segmentLength === undefined) {
|
||||
throw new runtime.RequiredError('segmentLength','Required parameter requestParameters.segmentLength was null or undefined when calling getSubtitlePlaylist.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.segmentLength !== undefined) {
|
||||
queryParameters['segmentLength'] = requestParameters.segmentLength;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Videos/{itemId}/{mediaSourceId}/Subtitles/{index}/subtitles.m3u8`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))).replace(`{${"mediaSourceId"}}`, encodeURIComponent(String(requestParameters.mediaSourceId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets an HLS subtitle playlist.
|
||||
*/
|
||||
async getSubtitlePlaylist(requestParameters: GetSubtitlePlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getSubtitlePlaylistRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets subtitles in a specified format.
|
||||
*/
|
||||
async getSubtitleWithTicksRaw(requestParameters: GetSubtitleWithTicksRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.routeItemId === null || requestParameters.routeItemId === undefined) {
|
||||
throw new runtime.RequiredError('routeItemId','Required parameter requestParameters.routeItemId was null or undefined when calling getSubtitleWithTicks.');
|
||||
}
|
||||
|
||||
if (requestParameters.routeMediaSourceId === null || requestParameters.routeMediaSourceId === undefined) {
|
||||
throw new runtime.RequiredError('routeMediaSourceId','Required parameter requestParameters.routeMediaSourceId was null or undefined when calling getSubtitleWithTicks.');
|
||||
}
|
||||
|
||||
if (requestParameters.routeIndex === null || requestParameters.routeIndex === undefined) {
|
||||
throw new runtime.RequiredError('routeIndex','Required parameter requestParameters.routeIndex was null or undefined when calling getSubtitleWithTicks.');
|
||||
}
|
||||
|
||||
if (requestParameters.routeStartPositionTicks === null || requestParameters.routeStartPositionTicks === undefined) {
|
||||
throw new runtime.RequiredError('routeStartPositionTicks','Required parameter requestParameters.routeStartPositionTicks was null or undefined when calling getSubtitleWithTicks.');
|
||||
}
|
||||
|
||||
if (requestParameters.routeFormat === null || requestParameters.routeFormat === undefined) {
|
||||
throw new runtime.RequiredError('routeFormat','Required parameter requestParameters.routeFormat was null or undefined when calling getSubtitleWithTicks.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.itemId !== undefined) {
|
||||
queryParameters['itemId'] = requestParameters.itemId;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaSourceId !== undefined) {
|
||||
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
|
||||
}
|
||||
|
||||
if (requestParameters.index !== undefined) {
|
||||
queryParameters['index'] = requestParameters.index;
|
||||
}
|
||||
|
||||
if (requestParameters.startPositionTicks !== undefined) {
|
||||
queryParameters['startPositionTicks'] = requestParameters.startPositionTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.format !== undefined) {
|
||||
queryParameters['format'] = requestParameters.format;
|
||||
}
|
||||
|
||||
if (requestParameters.endPositionTicks !== undefined) {
|
||||
queryParameters['endPositionTicks'] = requestParameters.endPositionTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.copyTimestamps !== undefined) {
|
||||
queryParameters['copyTimestamps'] = requestParameters.copyTimestamps;
|
||||
}
|
||||
|
||||
if (requestParameters.addVttTimeMap !== undefined) {
|
||||
queryParameters['addVttTimeMap'] = requestParameters.addVttTimeMap;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Videos/{routeItemId}/{routeMediaSourceId}/Subtitles/{routeIndex}/{routeStartPositionTicks}/Stream.{routeFormat}`.replace(`{${"routeItemId"}}`, encodeURIComponent(String(requestParameters.routeItemId))).replace(`{${"routeMediaSourceId"}}`, encodeURIComponent(String(requestParameters.routeMediaSourceId))).replace(`{${"routeIndex"}}`, encodeURIComponent(String(requestParameters.routeIndex))).replace(`{${"routeStartPositionTicks"}}`, encodeURIComponent(String(requestParameters.routeStartPositionTicks))).replace(`{${"routeFormat"}}`, encodeURIComponent(String(requestParameters.routeFormat))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets subtitles in a specified format.
|
||||
*/
|
||||
async getSubtitleWithTicks(requestParameters: GetSubtitleWithTicksRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getSubtitleWithTicksRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Search remote subtitles.
|
||||
*/
|
||||
async searchRemoteSubtitlesRaw(requestParameters: SearchRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSubtitleInfo>>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling searchRemoteSubtitles.');
|
||||
}
|
||||
|
||||
if (requestParameters.language === null || requestParameters.language === undefined) {
|
||||
throw new runtime.RequiredError('language','Required parameter requestParameters.language was null or undefined when calling searchRemoteSubtitles.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.isPerfectMatch !== undefined) {
|
||||
queryParameters['isPerfectMatch'] = requestParameters.isPerfectMatch;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Items/{itemId}/RemoteSearch/Subtitles/{language}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"language"}}`, encodeURIComponent(String(requestParameters.language))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSubtitleInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Search remote subtitles.
|
||||
*/
|
||||
async searchRemoteSubtitles(requestParameters: SearchRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSubtitleInfo>> {
|
||||
const response = await this.searchRemoteSubtitlesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Upload an external subtitle file.
|
||||
*/
|
||||
async uploadSubtitleRaw(requestParameters: UploadSubtitleOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling uploadSubtitle.');
|
||||
}
|
||||
|
||||
if (requestParameters.uploadSubtitleRequest === null || requestParameters.uploadSubtitleRequest === undefined) {
|
||||
throw new runtime.RequiredError('uploadSubtitleRequest','Required parameter requestParameters.uploadSubtitleRequest was null or undefined when calling uploadSubtitle.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Videos/{itemId}/Subtitles`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UploadSubtitleRequestToJSON(requestParameters.uploadSubtitleRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Upload an external subtitle file.
|
||||
*/
|
||||
async uploadSubtitle(requestParameters: UploadSubtitleOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.uploadSubtitleRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
96
server/jellyfin/apis/SuggestionsApi.ts
Normal file
96
server/jellyfin/apis/SuggestionsApi.ts
Normal file
@ -0,0 +1,96 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDtoQueryResult,
|
||||
BaseItemKind,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetSuggestionsRequest {
|
||||
userId: string;
|
||||
mediaType?: Array<string>;
|
||||
type?: Array<BaseItemKind>;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
enableTotalRecordCount?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class SuggestionsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets suggestions.
|
||||
*/
|
||||
async getSuggestionsRaw(requestParameters: GetSuggestionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getSuggestions.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.mediaType) {
|
||||
queryParameters['mediaType'] = requestParameters.mediaType;
|
||||
}
|
||||
|
||||
if (requestParameters.type) {
|
||||
queryParameters['type'] = requestParameters.type;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableTotalRecordCount !== undefined) {
|
||||
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Suggestions`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets suggestions.
|
||||
*/
|
||||
async getSuggestions(requestParameters: GetSuggestionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getSuggestionsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
864
server/jellyfin/apis/SyncPlayApi.ts
Normal file
864
server/jellyfin/apis/SyncPlayApi.ts
Normal file
@ -0,0 +1,864 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
GroupInfoDto,
|
||||
SyncPlayBufferingRequest,
|
||||
SyncPlayCreateGroupRequest,
|
||||
SyncPlayJoinGroupRequest,
|
||||
SyncPlayMovePlaylistItemRequest,
|
||||
SyncPlayNextItemRequest,
|
||||
SyncPlayPingRequest,
|
||||
SyncPlayPreviousItemRequest,
|
||||
SyncPlayQueueRequest,
|
||||
SyncPlayReadyRequest,
|
||||
SyncPlayRemoveFromPlaylistRequest,
|
||||
SyncPlaySeekRequest,
|
||||
SyncPlaySetIgnoreWaitRequest,
|
||||
SyncPlaySetNewQueueRequest,
|
||||
SyncPlaySetPlaylistItemRequest,
|
||||
SyncPlaySetRepeatModeRequest,
|
||||
SyncPlaySetShuffleModeRequest,
|
||||
} from '../models';
|
||||
import {
|
||||
GroupInfoDtoFromJSON,
|
||||
GroupInfoDtoToJSON,
|
||||
SyncPlayBufferingRequestFromJSON,
|
||||
SyncPlayBufferingRequestToJSON,
|
||||
SyncPlayCreateGroupRequestFromJSON,
|
||||
SyncPlayCreateGroupRequestToJSON,
|
||||
SyncPlayJoinGroupRequestFromJSON,
|
||||
SyncPlayJoinGroupRequestToJSON,
|
||||
SyncPlayMovePlaylistItemRequestFromJSON,
|
||||
SyncPlayMovePlaylistItemRequestToJSON,
|
||||
SyncPlayNextItemRequestFromJSON,
|
||||
SyncPlayNextItemRequestToJSON,
|
||||
SyncPlayPingRequestFromJSON,
|
||||
SyncPlayPingRequestToJSON,
|
||||
SyncPlayPreviousItemRequestFromJSON,
|
||||
SyncPlayPreviousItemRequestToJSON,
|
||||
SyncPlayQueueRequestFromJSON,
|
||||
SyncPlayQueueRequestToJSON,
|
||||
SyncPlayReadyRequestFromJSON,
|
||||
SyncPlayReadyRequestToJSON,
|
||||
SyncPlayRemoveFromPlaylistRequestFromJSON,
|
||||
SyncPlayRemoveFromPlaylistRequestToJSON,
|
||||
SyncPlaySeekRequestFromJSON,
|
||||
SyncPlaySeekRequestToJSON,
|
||||
SyncPlaySetIgnoreWaitRequestFromJSON,
|
||||
SyncPlaySetIgnoreWaitRequestToJSON,
|
||||
SyncPlaySetNewQueueRequestFromJSON,
|
||||
SyncPlaySetNewQueueRequestToJSON,
|
||||
SyncPlaySetPlaylistItemRequestFromJSON,
|
||||
SyncPlaySetPlaylistItemRequestToJSON,
|
||||
SyncPlaySetRepeatModeRequestFromJSON,
|
||||
SyncPlaySetRepeatModeRequestToJSON,
|
||||
SyncPlaySetShuffleModeRequestFromJSON,
|
||||
SyncPlaySetShuffleModeRequestToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface SyncPlayBufferingOperationRequest {
|
||||
syncPlayBufferingRequest: SyncPlayBufferingRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlayCreateGroupOperationRequest {
|
||||
syncPlayCreateGroupRequest: SyncPlayCreateGroupRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlayJoinGroupOperationRequest {
|
||||
syncPlayJoinGroupRequest: SyncPlayJoinGroupRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlayMovePlaylistItemOperationRequest {
|
||||
syncPlayMovePlaylistItemRequest: SyncPlayMovePlaylistItemRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlayNextItemOperationRequest {
|
||||
syncPlayNextItemRequest: SyncPlayNextItemRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlayPingOperationRequest {
|
||||
syncPlayPingRequest: SyncPlayPingRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlayPreviousItemOperationRequest {
|
||||
syncPlayPreviousItemRequest: SyncPlayPreviousItemRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlayQueueOperationRequest {
|
||||
syncPlayQueueRequest: SyncPlayQueueRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlayReadyOperationRequest {
|
||||
syncPlayReadyRequest: SyncPlayReadyRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlayRemoveFromPlaylistOperationRequest {
|
||||
syncPlayRemoveFromPlaylistRequest: SyncPlayRemoveFromPlaylistRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlaySeekOperationRequest {
|
||||
syncPlaySeekRequest: SyncPlaySeekRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlaySetIgnoreWaitOperationRequest {
|
||||
syncPlaySetIgnoreWaitRequest: SyncPlaySetIgnoreWaitRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlaySetNewQueueOperationRequest {
|
||||
syncPlaySetNewQueueRequest: SyncPlaySetNewQueueRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlaySetPlaylistItemOperationRequest {
|
||||
syncPlaySetPlaylistItemRequest: SyncPlaySetPlaylistItemRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlaySetRepeatModeOperationRequest {
|
||||
syncPlaySetRepeatModeRequest: SyncPlaySetRepeatModeRequest;
|
||||
}
|
||||
|
||||
export interface SyncPlaySetShuffleModeOperationRequest {
|
||||
syncPlaySetShuffleModeRequest: SyncPlaySetShuffleModeRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class SyncPlayApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Notify SyncPlay group that member is buffering.
|
||||
*/
|
||||
async syncPlayBufferingRaw(requestParameters: SyncPlayBufferingOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlayBufferingRequest === null || requestParameters.syncPlayBufferingRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlayBufferingRequest','Required parameter requestParameters.syncPlayBufferingRequest was null or undefined when calling syncPlayBuffering.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/Buffering`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlayBufferingRequestToJSON(requestParameters.syncPlayBufferingRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify SyncPlay group that member is buffering.
|
||||
*/
|
||||
async syncPlayBuffering(requestParameters: SyncPlayBufferingOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayBufferingRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new SyncPlay group.
|
||||
*/
|
||||
async syncPlayCreateGroupRaw(requestParameters: SyncPlayCreateGroupOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlayCreateGroupRequest === null || requestParameters.syncPlayCreateGroupRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlayCreateGroupRequest','Required parameter requestParameters.syncPlayCreateGroupRequest was null or undefined when calling syncPlayCreateGroup.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/New`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlayCreateGroupRequestToJSON(requestParameters.syncPlayCreateGroupRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new SyncPlay group.
|
||||
*/
|
||||
async syncPlayCreateGroup(requestParameters: SyncPlayCreateGroupOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayCreateGroupRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all SyncPlay groups.
|
||||
*/
|
||||
async syncPlayGetGroupsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<GroupInfoDto>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/List`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GroupInfoDtoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets all SyncPlay groups.
|
||||
*/
|
||||
async syncPlayGetGroups(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<GroupInfoDto>> {
|
||||
const response = await this.syncPlayGetGroupsRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Join an existing SyncPlay group.
|
||||
*/
|
||||
async syncPlayJoinGroupRaw(requestParameters: SyncPlayJoinGroupOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlayJoinGroupRequest === null || requestParameters.syncPlayJoinGroupRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlayJoinGroupRequest','Required parameter requestParameters.syncPlayJoinGroupRequest was null or undefined when calling syncPlayJoinGroup.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/Join`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlayJoinGroupRequestToJSON(requestParameters.syncPlayJoinGroupRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Join an existing SyncPlay group.
|
||||
*/
|
||||
async syncPlayJoinGroup(requestParameters: SyncPlayJoinGroupOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayJoinGroupRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Leave the joined SyncPlay group.
|
||||
*/
|
||||
async syncPlayLeaveGroupRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/Leave`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Leave the joined SyncPlay group.
|
||||
*/
|
||||
async syncPlayLeaveGroup(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayLeaveGroupRaw(initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to move an item in the playlist in SyncPlay group.
|
||||
*/
|
||||
async syncPlayMovePlaylistItemRaw(requestParameters: SyncPlayMovePlaylistItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlayMovePlaylistItemRequest === null || requestParameters.syncPlayMovePlaylistItemRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlayMovePlaylistItemRequest','Required parameter requestParameters.syncPlayMovePlaylistItemRequest was null or undefined when calling syncPlayMovePlaylistItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/MovePlaylistItem`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlayMovePlaylistItemRequestToJSON(requestParameters.syncPlayMovePlaylistItemRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to move an item in the playlist in SyncPlay group.
|
||||
*/
|
||||
async syncPlayMovePlaylistItem(requestParameters: SyncPlayMovePlaylistItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayMovePlaylistItemRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request next item in SyncPlay group.
|
||||
*/
|
||||
async syncPlayNextItemRaw(requestParameters: SyncPlayNextItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlayNextItemRequest === null || requestParameters.syncPlayNextItemRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlayNextItemRequest','Required parameter requestParameters.syncPlayNextItemRequest was null or undefined when calling syncPlayNextItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/NextItem`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlayNextItemRequestToJSON(requestParameters.syncPlayNextItemRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request next item in SyncPlay group.
|
||||
*/
|
||||
async syncPlayNextItem(requestParameters: SyncPlayNextItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayNextItemRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request pause in SyncPlay group.
|
||||
*/
|
||||
async syncPlayPauseRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/Pause`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request pause in SyncPlay group.
|
||||
*/
|
||||
async syncPlayPause(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayPauseRaw(initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update session ping.
|
||||
*/
|
||||
async syncPlayPingRaw(requestParameters: SyncPlayPingOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlayPingRequest === null || requestParameters.syncPlayPingRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlayPingRequest','Required parameter requestParameters.syncPlayPingRequest was null or undefined when calling syncPlayPing.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/Ping`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlayPingRequestToJSON(requestParameters.syncPlayPingRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update session ping.
|
||||
*/
|
||||
async syncPlayPing(requestParameters: SyncPlayPingOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayPingRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request previous item in SyncPlay group.
|
||||
*/
|
||||
async syncPlayPreviousItemRaw(requestParameters: SyncPlayPreviousItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlayPreviousItemRequest === null || requestParameters.syncPlayPreviousItemRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlayPreviousItemRequest','Required parameter requestParameters.syncPlayPreviousItemRequest was null or undefined when calling syncPlayPreviousItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/PreviousItem`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlayPreviousItemRequestToJSON(requestParameters.syncPlayPreviousItemRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request previous item in SyncPlay group.
|
||||
*/
|
||||
async syncPlayPreviousItem(requestParameters: SyncPlayPreviousItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayPreviousItemRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to queue items to the playlist of a SyncPlay group.
|
||||
*/
|
||||
async syncPlayQueueRaw(requestParameters: SyncPlayQueueOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlayQueueRequest === null || requestParameters.syncPlayQueueRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlayQueueRequest','Required parameter requestParameters.syncPlayQueueRequest was null or undefined when calling syncPlayQueue.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/Queue`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlayQueueRequestToJSON(requestParameters.syncPlayQueueRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to queue items to the playlist of a SyncPlay group.
|
||||
*/
|
||||
async syncPlayQueue(requestParameters: SyncPlayQueueOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayQueueRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify SyncPlay group that member is ready for playback.
|
||||
*/
|
||||
async syncPlayReadyRaw(requestParameters: SyncPlayReadyOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlayReadyRequest === null || requestParameters.syncPlayReadyRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlayReadyRequest','Required parameter requestParameters.syncPlayReadyRequest was null or undefined when calling syncPlayReady.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/Ready`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlayReadyRequestToJSON(requestParameters.syncPlayReadyRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify SyncPlay group that member is ready for playback.
|
||||
*/
|
||||
async syncPlayReady(requestParameters: SyncPlayReadyOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayReadyRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to remove items from the playlist in SyncPlay group.
|
||||
*/
|
||||
async syncPlayRemoveFromPlaylistRaw(requestParameters: SyncPlayRemoveFromPlaylistOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlayRemoveFromPlaylistRequest === null || requestParameters.syncPlayRemoveFromPlaylistRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlayRemoveFromPlaylistRequest','Required parameter requestParameters.syncPlayRemoveFromPlaylistRequest was null or undefined when calling syncPlayRemoveFromPlaylist.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/RemoveFromPlaylist`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlayRemoveFromPlaylistRequestToJSON(requestParameters.syncPlayRemoveFromPlaylistRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to remove items from the playlist in SyncPlay group.
|
||||
*/
|
||||
async syncPlayRemoveFromPlaylist(requestParameters: SyncPlayRemoveFromPlaylistOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayRemoveFromPlaylistRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request seek in SyncPlay group.
|
||||
*/
|
||||
async syncPlaySeekRaw(requestParameters: SyncPlaySeekOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlaySeekRequest === null || requestParameters.syncPlaySeekRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlaySeekRequest','Required parameter requestParameters.syncPlaySeekRequest was null or undefined when calling syncPlaySeek.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/Seek`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlaySeekRequestToJSON(requestParameters.syncPlaySeekRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request seek in SyncPlay group.
|
||||
*/
|
||||
async syncPlaySeek(requestParameters: SyncPlaySeekOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlaySeekRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request SyncPlay group to ignore member during group-wait.
|
||||
*/
|
||||
async syncPlaySetIgnoreWaitRaw(requestParameters: SyncPlaySetIgnoreWaitOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlaySetIgnoreWaitRequest === null || requestParameters.syncPlaySetIgnoreWaitRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlaySetIgnoreWaitRequest','Required parameter requestParameters.syncPlaySetIgnoreWaitRequest was null or undefined when calling syncPlaySetIgnoreWait.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/SetIgnoreWait`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlaySetIgnoreWaitRequestToJSON(requestParameters.syncPlaySetIgnoreWaitRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request SyncPlay group to ignore member during group-wait.
|
||||
*/
|
||||
async syncPlaySetIgnoreWait(requestParameters: SyncPlaySetIgnoreWaitOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlaySetIgnoreWaitRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to set new playlist in SyncPlay group.
|
||||
*/
|
||||
async syncPlaySetNewQueueRaw(requestParameters: SyncPlaySetNewQueueOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlaySetNewQueueRequest === null || requestParameters.syncPlaySetNewQueueRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlaySetNewQueueRequest','Required parameter requestParameters.syncPlaySetNewQueueRequest was null or undefined when calling syncPlaySetNewQueue.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/SetNewQueue`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlaySetNewQueueRequestToJSON(requestParameters.syncPlaySetNewQueueRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to set new playlist in SyncPlay group.
|
||||
*/
|
||||
async syncPlaySetNewQueue(requestParameters: SyncPlaySetNewQueueOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlaySetNewQueueRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to change playlist item in SyncPlay group.
|
||||
*/
|
||||
async syncPlaySetPlaylistItemRaw(requestParameters: SyncPlaySetPlaylistItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlaySetPlaylistItemRequest === null || requestParameters.syncPlaySetPlaylistItemRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlaySetPlaylistItemRequest','Required parameter requestParameters.syncPlaySetPlaylistItemRequest was null or undefined when calling syncPlaySetPlaylistItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/SetPlaylistItem`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlaySetPlaylistItemRequestToJSON(requestParameters.syncPlaySetPlaylistItemRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to change playlist item in SyncPlay group.
|
||||
*/
|
||||
async syncPlaySetPlaylistItem(requestParameters: SyncPlaySetPlaylistItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlaySetPlaylistItemRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to set repeat mode in SyncPlay group.
|
||||
*/
|
||||
async syncPlaySetRepeatModeRaw(requestParameters: SyncPlaySetRepeatModeOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlaySetRepeatModeRequest === null || requestParameters.syncPlaySetRepeatModeRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlaySetRepeatModeRequest','Required parameter requestParameters.syncPlaySetRepeatModeRequest was null or undefined when calling syncPlaySetRepeatMode.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/SetRepeatMode`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlaySetRepeatModeRequestToJSON(requestParameters.syncPlaySetRepeatModeRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to set repeat mode in SyncPlay group.
|
||||
*/
|
||||
async syncPlaySetRepeatMode(requestParameters: SyncPlaySetRepeatModeOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlaySetRepeatModeRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to set shuffle mode in SyncPlay group.
|
||||
*/
|
||||
async syncPlaySetShuffleModeRaw(requestParameters: SyncPlaySetShuffleModeOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.syncPlaySetShuffleModeRequest === null || requestParameters.syncPlaySetShuffleModeRequest === undefined) {
|
||||
throw new runtime.RequiredError('syncPlaySetShuffleModeRequest','Required parameter requestParameters.syncPlaySetShuffleModeRequest was null or undefined when calling syncPlaySetShuffleMode.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/SetShuffleMode`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: SyncPlaySetShuffleModeRequestToJSON(requestParameters.syncPlaySetShuffleModeRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request to set shuffle mode in SyncPlay group.
|
||||
*/
|
||||
async syncPlaySetShuffleMode(requestParameters: SyncPlaySetShuffleModeOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlaySetShuffleModeRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request stop in SyncPlay group.
|
||||
*/
|
||||
async syncPlayStopRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/Stop`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request stop in SyncPlay group.
|
||||
*/
|
||||
async syncPlayStop(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayStopRaw(initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request unpause in SyncPlay group.
|
||||
*/
|
||||
async syncPlayUnpauseRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/SyncPlay/Unpause`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Request unpause in SyncPlay group.
|
||||
*/
|
||||
async syncPlayUnpause(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.syncPlayUnpauseRaw(initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
348
server/jellyfin/apis/SystemApi.ts
Normal file
348
server/jellyfin/apis/SystemApi.ts
Normal file
@ -0,0 +1,348 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
EndPointInfo,
|
||||
LogFile,
|
||||
PublicSystemInfo,
|
||||
SystemInfo,
|
||||
WakeOnLanInfo,
|
||||
} from '../models';
|
||||
import {
|
||||
EndPointInfoFromJSON,
|
||||
EndPointInfoToJSON,
|
||||
LogFileFromJSON,
|
||||
LogFileToJSON,
|
||||
PublicSystemInfoFromJSON,
|
||||
PublicSystemInfoToJSON,
|
||||
SystemInfoFromJSON,
|
||||
SystemInfoToJSON,
|
||||
WakeOnLanInfoFromJSON,
|
||||
WakeOnLanInfoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetLogFileRequest {
|
||||
name: string;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class SystemApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets information about the request endpoint.
|
||||
*/
|
||||
async getEndpointInfoRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<EndPointInfo>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Endpoint`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => EndPointInfoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets information about the request endpoint.
|
||||
*/
|
||||
async getEndpointInfo(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<EndPointInfo> {
|
||||
const response = await this.getEndpointInfoRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a log file.
|
||||
*/
|
||||
async getLogFileRaw(requestParameters: GetLogFileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.name === null || requestParameters.name === undefined) {
|
||||
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getLogFile.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.name !== undefined) {
|
||||
queryParameters['name'] = requestParameters.name;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Logs/Log`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a log file.
|
||||
*/
|
||||
async getLogFile(requestParameters: GetLogFileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getLogFileRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Pings the system.
|
||||
*/
|
||||
async getPingSystemRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Ping`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
if (this.isJsonMime(response.headers.get('content-type'))) {
|
||||
return new runtime.JSONApiResponse<string>(response);
|
||||
} else {
|
||||
return new runtime.TextApiResponse(response) as any;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Pings the system.
|
||||
*/
|
||||
async getPingSystem(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
|
||||
const response = await this.getPingSystemRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets public information about the server.
|
||||
*/
|
||||
async getPublicSystemInfoRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PublicSystemInfo>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Info/Public`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => PublicSystemInfoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets public information about the server.
|
||||
*/
|
||||
async getPublicSystemInfo(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PublicSystemInfo> {
|
||||
const response = await this.getPublicSystemInfoRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of available server log files.
|
||||
*/
|
||||
async getServerLogsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<LogFile>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Logs`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(LogFileFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of available server log files.
|
||||
*/
|
||||
async getServerLogs(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<LogFile>> {
|
||||
const response = await this.getServerLogsRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets information about the server.
|
||||
*/
|
||||
async getSystemInfoRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SystemInfo>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Info`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => SystemInfoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets information about the server.
|
||||
*/
|
||||
async getSystemInfo(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SystemInfo> {
|
||||
const response = await this.getSystemInfoRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets wake on lan information.
|
||||
*/
|
||||
async getWakeOnLanInfoRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<WakeOnLanInfo>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/WakeOnLanInfo`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(WakeOnLanInfoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets wake on lan information.
|
||||
*/
|
||||
async getWakeOnLanInfo(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<WakeOnLanInfo>> {
|
||||
const response = await this.getWakeOnLanInfoRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Pings the system.
|
||||
*/
|
||||
async postPingSystemRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Ping`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
if (this.isJsonMime(response.headers.get('content-type'))) {
|
||||
return new runtime.JSONApiResponse<string>(response);
|
||||
} else {
|
||||
return new runtime.TextApiResponse(response) as any;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Pings the system.
|
||||
*/
|
||||
async postPingSystem(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
|
||||
const response = await this.postPingSystemRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Restarts the application.
|
||||
*/
|
||||
async restartApplicationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Restart`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Restarts the application.
|
||||
*/
|
||||
async restartApplication(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.restartApplicationRaw(initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Shuts down the application.
|
||||
*/
|
||||
async shutdownApplicationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/System/Shutdown`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Shuts down the application.
|
||||
*/
|
||||
async shutdownApplication(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.shutdownApplicationRaw(initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
56
server/jellyfin/apis/TimeSyncApi.ts
Normal file
56
server/jellyfin/apis/TimeSyncApi.ts
Normal file
@ -0,0 +1,56 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
UtcTimeResponse,
|
||||
} from '../models';
|
||||
import {
|
||||
UtcTimeResponseFromJSON,
|
||||
UtcTimeResponseToJSON,
|
||||
} from '../models';
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class TimeSyncApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets the current UTC time.
|
||||
*/
|
||||
async getUtcTimeRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UtcTimeResponse>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/GetUtcTime`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => UtcTimeResponseFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the current UTC time.
|
||||
*/
|
||||
async getUtcTime(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UtcTimeResponse> {
|
||||
const response = await this.getUtcTimeRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
60
server/jellyfin/apis/TmdbApi.ts
Normal file
60
server/jellyfin/apis/TmdbApi.ts
Normal file
@ -0,0 +1,60 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ConfigImageTypes,
|
||||
} from '../models';
|
||||
import {
|
||||
ConfigImageTypesFromJSON,
|
||||
ConfigImageTypesToJSON,
|
||||
} from '../models';
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class TmdbApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets the TMDb image configuration options.
|
||||
*/
|
||||
async tmdbClientConfigurationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ConfigImageTypes>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Tmdb/ClientConfiguration`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => ConfigImageTypesFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the TMDb image configuration options.
|
||||
*/
|
||||
async tmdbClientConfiguration(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ConfigImageTypes> {
|
||||
const response = await this.tmdbClientConfigurationRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
507
server/jellyfin/apis/TrailersApi.ts
Normal file
507
server/jellyfin/apis/TrailersApi.ts
Normal file
@ -0,0 +1,507 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDtoQueryResult,
|
||||
BaseItemKind,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
ItemFilter,
|
||||
LocationType,
|
||||
SeriesStatus,
|
||||
SortOrder,
|
||||
VideoType,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
ItemFilterFromJSON,
|
||||
ItemFilterToJSON,
|
||||
LocationTypeFromJSON,
|
||||
LocationTypeToJSON,
|
||||
SeriesStatusFromJSON,
|
||||
SeriesStatusToJSON,
|
||||
SortOrderFromJSON,
|
||||
SortOrderToJSON,
|
||||
VideoTypeFromJSON,
|
||||
VideoTypeToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetTrailersRequest {
|
||||
userId?: string;
|
||||
maxOfficialRating?: string;
|
||||
hasThemeSong?: boolean;
|
||||
hasThemeVideo?: boolean;
|
||||
hasSubtitles?: boolean;
|
||||
hasSpecialFeature?: boolean;
|
||||
hasTrailer?: boolean;
|
||||
adjacentTo?: string;
|
||||
parentIndexNumber?: number;
|
||||
hasParentalRating?: boolean;
|
||||
isHd?: boolean;
|
||||
is4K?: boolean;
|
||||
locationTypes?: Array<LocationType>;
|
||||
excludeLocationTypes?: Array<LocationType>;
|
||||
isMissing?: boolean;
|
||||
isUnaired?: boolean;
|
||||
minCommunityRating?: number;
|
||||
minCriticRating?: number;
|
||||
minPremiereDate?: Date;
|
||||
minDateLastSaved?: Date;
|
||||
minDateLastSavedForUser?: Date;
|
||||
maxPremiereDate?: Date;
|
||||
hasOverview?: boolean;
|
||||
hasImdbId?: boolean;
|
||||
hasTmdbId?: boolean;
|
||||
hasTvdbId?: boolean;
|
||||
isMovie?: boolean;
|
||||
isSeries?: boolean;
|
||||
isNews?: boolean;
|
||||
isKids?: boolean;
|
||||
isSports?: boolean;
|
||||
excludeItemIds?: Array<string>;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
recursive?: boolean;
|
||||
searchTerm?: string;
|
||||
sortOrder?: Array<SortOrder>;
|
||||
parentId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
excludeItemTypes?: Array<BaseItemKind>;
|
||||
filters?: Array<ItemFilter>;
|
||||
isFavorite?: boolean;
|
||||
mediaTypes?: Array<string>;
|
||||
imageTypes?: Array<ImageType>;
|
||||
sortBy?: Array<string>;
|
||||
isPlayed?: boolean;
|
||||
genres?: Array<string>;
|
||||
officialRatings?: Array<string>;
|
||||
tags?: Array<string>;
|
||||
years?: Array<number>;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
person?: string;
|
||||
personIds?: Array<string>;
|
||||
personTypes?: Array<string>;
|
||||
studios?: Array<string>;
|
||||
artists?: Array<string>;
|
||||
excludeArtistIds?: Array<string>;
|
||||
artistIds?: Array<string>;
|
||||
albumArtistIds?: Array<string>;
|
||||
contributingArtistIds?: Array<string>;
|
||||
albums?: Array<string>;
|
||||
albumIds?: Array<string>;
|
||||
ids?: Array<string>;
|
||||
videoTypes?: Array<VideoType>;
|
||||
minOfficialRating?: string;
|
||||
isLocked?: boolean;
|
||||
isPlaceHolder?: boolean;
|
||||
hasOfficialRating?: boolean;
|
||||
collapseBoxSetItems?: boolean;
|
||||
minWidth?: number;
|
||||
minHeight?: number;
|
||||
maxWidth?: number;
|
||||
maxHeight?: number;
|
||||
is3D?: boolean;
|
||||
seriesStatus?: Array<SeriesStatus>;
|
||||
nameStartsWithOrGreater?: string;
|
||||
nameStartsWith?: string;
|
||||
nameLessThan?: string;
|
||||
studioIds?: Array<string>;
|
||||
genreIds?: Array<string>;
|
||||
enableTotalRecordCount?: boolean;
|
||||
enableImages?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class TrailersApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Finds movies and trailers similar to a given trailer.
|
||||
*/
|
||||
async getTrailersRaw(requestParameters: GetTrailersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.maxOfficialRating !== undefined) {
|
||||
queryParameters['maxOfficialRating'] = requestParameters.maxOfficialRating;
|
||||
}
|
||||
|
||||
if (requestParameters.hasThemeSong !== undefined) {
|
||||
queryParameters['hasThemeSong'] = requestParameters.hasThemeSong;
|
||||
}
|
||||
|
||||
if (requestParameters.hasThemeVideo !== undefined) {
|
||||
queryParameters['hasThemeVideo'] = requestParameters.hasThemeVideo;
|
||||
}
|
||||
|
||||
if (requestParameters.hasSubtitles !== undefined) {
|
||||
queryParameters['hasSubtitles'] = requestParameters.hasSubtitles;
|
||||
}
|
||||
|
||||
if (requestParameters.hasSpecialFeature !== undefined) {
|
||||
queryParameters['hasSpecialFeature'] = requestParameters.hasSpecialFeature;
|
||||
}
|
||||
|
||||
if (requestParameters.hasTrailer !== undefined) {
|
||||
queryParameters['hasTrailer'] = requestParameters.hasTrailer;
|
||||
}
|
||||
|
||||
if (requestParameters.adjacentTo !== undefined) {
|
||||
queryParameters['adjacentTo'] = requestParameters.adjacentTo;
|
||||
}
|
||||
|
||||
if (requestParameters.parentIndexNumber !== undefined) {
|
||||
queryParameters['parentIndexNumber'] = requestParameters.parentIndexNumber;
|
||||
}
|
||||
|
||||
if (requestParameters.hasParentalRating !== undefined) {
|
||||
queryParameters['hasParentalRating'] = requestParameters.hasParentalRating;
|
||||
}
|
||||
|
||||
if (requestParameters.isHd !== undefined) {
|
||||
queryParameters['isHd'] = requestParameters.isHd;
|
||||
}
|
||||
|
||||
if (requestParameters.is4K !== undefined) {
|
||||
queryParameters['is4K'] = requestParameters.is4K;
|
||||
}
|
||||
|
||||
if (requestParameters.locationTypes) {
|
||||
queryParameters['locationTypes'] = requestParameters.locationTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeLocationTypes) {
|
||||
queryParameters['excludeLocationTypes'] = requestParameters.excludeLocationTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.isMissing !== undefined) {
|
||||
queryParameters['isMissing'] = requestParameters.isMissing;
|
||||
}
|
||||
|
||||
if (requestParameters.isUnaired !== undefined) {
|
||||
queryParameters['isUnaired'] = requestParameters.isUnaired;
|
||||
}
|
||||
|
||||
if (requestParameters.minCommunityRating !== undefined) {
|
||||
queryParameters['minCommunityRating'] = requestParameters.minCommunityRating;
|
||||
}
|
||||
|
||||
if (requestParameters.minCriticRating !== undefined) {
|
||||
queryParameters['minCriticRating'] = requestParameters.minCriticRating;
|
||||
}
|
||||
|
||||
if (requestParameters.minPremiereDate !== undefined) {
|
||||
queryParameters['minPremiereDate'] = (requestParameters.minPremiereDate as any).toISOString();
|
||||
}
|
||||
|
||||
if (requestParameters.minDateLastSaved !== undefined) {
|
||||
queryParameters['minDateLastSaved'] = (requestParameters.minDateLastSaved as any).toISOString();
|
||||
}
|
||||
|
||||
if (requestParameters.minDateLastSavedForUser !== undefined) {
|
||||
queryParameters['minDateLastSavedForUser'] = (requestParameters.minDateLastSavedForUser as any).toISOString();
|
||||
}
|
||||
|
||||
if (requestParameters.maxPremiereDate !== undefined) {
|
||||
queryParameters['maxPremiereDate'] = (requestParameters.maxPremiereDate as any).toISOString();
|
||||
}
|
||||
|
||||
if (requestParameters.hasOverview !== undefined) {
|
||||
queryParameters['hasOverview'] = requestParameters.hasOverview;
|
||||
}
|
||||
|
||||
if (requestParameters.hasImdbId !== undefined) {
|
||||
queryParameters['hasImdbId'] = requestParameters.hasImdbId;
|
||||
}
|
||||
|
||||
if (requestParameters.hasTmdbId !== undefined) {
|
||||
queryParameters['hasTmdbId'] = requestParameters.hasTmdbId;
|
||||
}
|
||||
|
||||
if (requestParameters.hasTvdbId !== undefined) {
|
||||
queryParameters['hasTvdbId'] = requestParameters.hasTvdbId;
|
||||
}
|
||||
|
||||
if (requestParameters.isMovie !== undefined) {
|
||||
queryParameters['isMovie'] = requestParameters.isMovie;
|
||||
}
|
||||
|
||||
if (requestParameters.isSeries !== undefined) {
|
||||
queryParameters['isSeries'] = requestParameters.isSeries;
|
||||
}
|
||||
|
||||
if (requestParameters.isNews !== undefined) {
|
||||
queryParameters['isNews'] = requestParameters.isNews;
|
||||
}
|
||||
|
||||
if (requestParameters.isKids !== undefined) {
|
||||
queryParameters['isKids'] = requestParameters.isKids;
|
||||
}
|
||||
|
||||
if (requestParameters.isSports !== undefined) {
|
||||
queryParameters['isSports'] = requestParameters.isSports;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeItemIds) {
|
||||
queryParameters['excludeItemIds'] = requestParameters.excludeItemIds;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.recursive !== undefined) {
|
||||
queryParameters['recursive'] = requestParameters.recursive;
|
||||
}
|
||||
|
||||
if (requestParameters.searchTerm !== undefined) {
|
||||
queryParameters['searchTerm'] = requestParameters.searchTerm;
|
||||
}
|
||||
|
||||
if (requestParameters.sortOrder) {
|
||||
queryParameters['sortOrder'] = requestParameters.sortOrder;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeItemTypes) {
|
||||
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.filters) {
|
||||
queryParameters['filters'] = requestParameters.filters;
|
||||
}
|
||||
|
||||
if (requestParameters.isFavorite !== undefined) {
|
||||
queryParameters['isFavorite'] = requestParameters.isFavorite;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaTypes) {
|
||||
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypes) {
|
||||
queryParameters['imageTypes'] = requestParameters.imageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.sortBy) {
|
||||
queryParameters['sortBy'] = requestParameters.sortBy;
|
||||
}
|
||||
|
||||
if (requestParameters.isPlayed !== undefined) {
|
||||
queryParameters['isPlayed'] = requestParameters.isPlayed;
|
||||
}
|
||||
|
||||
if (requestParameters.genres) {
|
||||
queryParameters['genres'] = requestParameters.genres;
|
||||
}
|
||||
|
||||
if (requestParameters.officialRatings) {
|
||||
queryParameters['officialRatings'] = requestParameters.officialRatings;
|
||||
}
|
||||
|
||||
if (requestParameters.tags) {
|
||||
queryParameters['tags'] = requestParameters.tags;
|
||||
}
|
||||
|
||||
if (requestParameters.years) {
|
||||
queryParameters['years'] = requestParameters.years;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.person !== undefined) {
|
||||
queryParameters['person'] = requestParameters.person;
|
||||
}
|
||||
|
||||
if (requestParameters.personIds) {
|
||||
queryParameters['personIds'] = requestParameters.personIds;
|
||||
}
|
||||
|
||||
if (requestParameters.personTypes) {
|
||||
queryParameters['personTypes'] = requestParameters.personTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.studios) {
|
||||
queryParameters['studios'] = requestParameters.studios;
|
||||
}
|
||||
|
||||
if (requestParameters.artists) {
|
||||
queryParameters['artists'] = requestParameters.artists;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeArtistIds) {
|
||||
queryParameters['excludeArtistIds'] = requestParameters.excludeArtistIds;
|
||||
}
|
||||
|
||||
if (requestParameters.artistIds) {
|
||||
queryParameters['artistIds'] = requestParameters.artistIds;
|
||||
}
|
||||
|
||||
if (requestParameters.albumArtistIds) {
|
||||
queryParameters['albumArtistIds'] = requestParameters.albumArtistIds;
|
||||
}
|
||||
|
||||
if (requestParameters.contributingArtistIds) {
|
||||
queryParameters['contributingArtistIds'] = requestParameters.contributingArtistIds;
|
||||
}
|
||||
|
||||
if (requestParameters.albums) {
|
||||
queryParameters['albums'] = requestParameters.albums;
|
||||
}
|
||||
|
||||
if (requestParameters.albumIds) {
|
||||
queryParameters['albumIds'] = requestParameters.albumIds;
|
||||
}
|
||||
|
||||
if (requestParameters.ids) {
|
||||
queryParameters['ids'] = requestParameters.ids;
|
||||
}
|
||||
|
||||
if (requestParameters.videoTypes) {
|
||||
queryParameters['videoTypes'] = requestParameters.videoTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.minOfficialRating !== undefined) {
|
||||
queryParameters['minOfficialRating'] = requestParameters.minOfficialRating;
|
||||
}
|
||||
|
||||
if (requestParameters.isLocked !== undefined) {
|
||||
queryParameters['isLocked'] = requestParameters.isLocked;
|
||||
}
|
||||
|
||||
if (requestParameters.isPlaceHolder !== undefined) {
|
||||
queryParameters['isPlaceHolder'] = requestParameters.isPlaceHolder;
|
||||
}
|
||||
|
||||
if (requestParameters.hasOfficialRating !== undefined) {
|
||||
queryParameters['hasOfficialRating'] = requestParameters.hasOfficialRating;
|
||||
}
|
||||
|
||||
if (requestParameters.collapseBoxSetItems !== undefined) {
|
||||
queryParameters['collapseBoxSetItems'] = requestParameters.collapseBoxSetItems;
|
||||
}
|
||||
|
||||
if (requestParameters.minWidth !== undefined) {
|
||||
queryParameters['minWidth'] = requestParameters.minWidth;
|
||||
}
|
||||
|
||||
if (requestParameters.minHeight !== undefined) {
|
||||
queryParameters['minHeight'] = requestParameters.minHeight;
|
||||
}
|
||||
|
||||
if (requestParameters.maxWidth !== undefined) {
|
||||
queryParameters['maxWidth'] = requestParameters.maxWidth;
|
||||
}
|
||||
|
||||
if (requestParameters.maxHeight !== undefined) {
|
||||
queryParameters['maxHeight'] = requestParameters.maxHeight;
|
||||
}
|
||||
|
||||
if (requestParameters.is3D !== undefined) {
|
||||
queryParameters['is3D'] = requestParameters.is3D;
|
||||
}
|
||||
|
||||
if (requestParameters.seriesStatus) {
|
||||
queryParameters['seriesStatus'] = requestParameters.seriesStatus;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWithOrGreater !== undefined) {
|
||||
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
|
||||
}
|
||||
|
||||
if (requestParameters.nameStartsWith !== undefined) {
|
||||
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
|
||||
}
|
||||
|
||||
if (requestParameters.nameLessThan !== undefined) {
|
||||
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
|
||||
}
|
||||
|
||||
if (requestParameters.studioIds) {
|
||||
queryParameters['studioIds'] = requestParameters.studioIds;
|
||||
}
|
||||
|
||||
if (requestParameters.genreIds) {
|
||||
queryParameters['genreIds'] = requestParameters.genreIds;
|
||||
}
|
||||
|
||||
if (requestParameters.enableTotalRecordCount !== undefined) {
|
||||
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Trailers`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Finds movies and trailers similar to a given trailer.
|
||||
*/
|
||||
async getTrailers(requestParameters: GetTrailersRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getTrailersRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
411
server/jellyfin/apis/TvShowsApi.ts
Normal file
411
server/jellyfin/apis/TvShowsApi.ts
Normal file
@ -0,0 +1,411 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDtoQueryResult,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetEpisodesRequest {
|
||||
seriesId: string;
|
||||
userId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
season?: number;
|
||||
seasonId?: string;
|
||||
isMissing?: boolean;
|
||||
adjacentTo?: string;
|
||||
startItemId?: string;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
enableImages?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
enableUserData?: boolean;
|
||||
sortBy?: string;
|
||||
}
|
||||
|
||||
export interface GetNextUpRequest {
|
||||
userId?: string;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
seriesId?: string;
|
||||
parentId?: string;
|
||||
enableImages?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
enableUserData?: boolean;
|
||||
nextUpDateCutoff?: Date;
|
||||
enableTotalRecordCount?: boolean;
|
||||
disableFirstEpisode?: boolean;
|
||||
enableRewatching?: boolean;
|
||||
}
|
||||
|
||||
export interface GetSeasonsRequest {
|
||||
seriesId: string;
|
||||
userId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
isSpecialSeason?: boolean;
|
||||
isMissing?: boolean;
|
||||
adjacentTo?: string;
|
||||
enableImages?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
enableUserData?: boolean;
|
||||
}
|
||||
|
||||
export interface GetUpcomingEpisodesRequest {
|
||||
userId?: string;
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
fields?: Array<ItemFields>;
|
||||
parentId?: string;
|
||||
enableImages?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
enableUserData?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class TvShowsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets episodes for a tv season.
|
||||
*/
|
||||
async getEpisodesRaw(requestParameters: GetEpisodesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.seriesId === null || requestParameters.seriesId === undefined) {
|
||||
throw new runtime.RequiredError('seriesId','Required parameter requestParameters.seriesId was null or undefined when calling getEpisodes.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.season !== undefined) {
|
||||
queryParameters['season'] = requestParameters.season;
|
||||
}
|
||||
|
||||
if (requestParameters.seasonId !== undefined) {
|
||||
queryParameters['seasonId'] = requestParameters.seasonId;
|
||||
}
|
||||
|
||||
if (requestParameters.isMissing !== undefined) {
|
||||
queryParameters['isMissing'] = requestParameters.isMissing;
|
||||
}
|
||||
|
||||
if (requestParameters.adjacentTo !== undefined) {
|
||||
queryParameters['adjacentTo'] = requestParameters.adjacentTo;
|
||||
}
|
||||
|
||||
if (requestParameters.startItemId !== undefined) {
|
||||
queryParameters['startItemId'] = requestParameters.startItemId;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.sortBy !== undefined) {
|
||||
queryParameters['sortBy'] = requestParameters.sortBy;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Shows/{seriesId}/Episodes`.replace(`{${"seriesId"}}`, encodeURIComponent(String(requestParameters.seriesId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets episodes for a tv season.
|
||||
*/
|
||||
async getEpisodes(requestParameters: GetEpisodesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getEpisodesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of next up episodes.
|
||||
*/
|
||||
async getNextUpRaw(requestParameters: GetNextUpRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.seriesId !== undefined) {
|
||||
queryParameters['seriesId'] = requestParameters.seriesId;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.nextUpDateCutoff !== undefined) {
|
||||
queryParameters['nextUpDateCutoff'] = (requestParameters.nextUpDateCutoff as any).toISOString();
|
||||
}
|
||||
|
||||
if (requestParameters.enableTotalRecordCount !== undefined) {
|
||||
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
|
||||
}
|
||||
|
||||
if (requestParameters.disableFirstEpisode !== undefined) {
|
||||
queryParameters['disableFirstEpisode'] = requestParameters.disableFirstEpisode;
|
||||
}
|
||||
|
||||
if (requestParameters.enableRewatching !== undefined) {
|
||||
queryParameters['enableRewatching'] = requestParameters.enableRewatching;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Shows/NextUp`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of next up episodes.
|
||||
*/
|
||||
async getNextUp(requestParameters: GetNextUpRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getNextUpRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets seasons for a tv series.
|
||||
*/
|
||||
async getSeasonsRaw(requestParameters: GetSeasonsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.seriesId === null || requestParameters.seriesId === undefined) {
|
||||
throw new runtime.RequiredError('seriesId','Required parameter requestParameters.seriesId was null or undefined when calling getSeasons.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.isSpecialSeason !== undefined) {
|
||||
queryParameters['isSpecialSeason'] = requestParameters.isSpecialSeason;
|
||||
}
|
||||
|
||||
if (requestParameters.isMissing !== undefined) {
|
||||
queryParameters['isMissing'] = requestParameters.isMissing;
|
||||
}
|
||||
|
||||
if (requestParameters.adjacentTo !== undefined) {
|
||||
queryParameters['adjacentTo'] = requestParameters.adjacentTo;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Shows/{seriesId}/Seasons`.replace(`{${"seriesId"}}`, encodeURIComponent(String(requestParameters.seriesId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets seasons for a tv series.
|
||||
*/
|
||||
async getSeasons(requestParameters: GetSeasonsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getSeasonsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of upcoming episodes.
|
||||
*/
|
||||
async getUpcomingEpisodesRaw(requestParameters: GetUpcomingEpisodesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Shows/Upcoming`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of upcoming episodes.
|
||||
*/
|
||||
async getUpcomingEpisodes(requestParameters: GetUpcomingEpisodesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getUpcomingEpisodesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
269
server/jellyfin/apis/UniversalAudioApi.ts
Normal file
269
server/jellyfin/apis/UniversalAudioApi.ts
Normal file
@ -0,0 +1,269 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
|
||||
export interface GetUniversalAudioStreamRequest {
|
||||
itemId: string;
|
||||
container?: Array<string>;
|
||||
mediaSourceId?: string;
|
||||
deviceId?: string;
|
||||
userId?: string;
|
||||
audioCodec?: string;
|
||||
maxAudioChannels?: number;
|
||||
transcodingAudioChannels?: number;
|
||||
maxStreamingBitrate?: number;
|
||||
audioBitRate?: number;
|
||||
startTimeTicks?: number;
|
||||
transcodingContainer?: string;
|
||||
transcodingProtocol?: string;
|
||||
maxAudioSampleRate?: number;
|
||||
maxAudioBitDepth?: number;
|
||||
enableRemoteMedia?: boolean;
|
||||
breakOnNonKeyFrames?: boolean;
|
||||
enableRedirection?: boolean;
|
||||
}
|
||||
|
||||
export interface HeadUniversalAudioStreamRequest {
|
||||
itemId: string;
|
||||
container?: Array<string>;
|
||||
mediaSourceId?: string;
|
||||
deviceId?: string;
|
||||
userId?: string;
|
||||
audioCodec?: string;
|
||||
maxAudioChannels?: number;
|
||||
transcodingAudioChannels?: number;
|
||||
maxStreamingBitrate?: number;
|
||||
audioBitRate?: number;
|
||||
startTimeTicks?: number;
|
||||
transcodingContainer?: string;
|
||||
transcodingProtocol?: string;
|
||||
maxAudioSampleRate?: number;
|
||||
maxAudioBitDepth?: number;
|
||||
enableRemoteMedia?: boolean;
|
||||
breakOnNonKeyFrames?: boolean;
|
||||
enableRedirection?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class UniversalAudioApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets an audio stream.
|
||||
*/
|
||||
async getUniversalAudioStreamRaw(requestParameters: GetUniversalAudioStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getUniversalAudioStream.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.container) {
|
||||
queryParameters['container'] = requestParameters.container;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaSourceId !== undefined) {
|
||||
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
|
||||
}
|
||||
|
||||
if (requestParameters.deviceId !== undefined) {
|
||||
queryParameters['deviceId'] = requestParameters.deviceId;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.audioCodec !== undefined) {
|
||||
queryParameters['audioCodec'] = requestParameters.audioCodec;
|
||||
}
|
||||
|
||||
if (requestParameters.maxAudioChannels !== undefined) {
|
||||
queryParameters['maxAudioChannels'] = requestParameters.maxAudioChannels;
|
||||
}
|
||||
|
||||
if (requestParameters.transcodingAudioChannels !== undefined) {
|
||||
queryParameters['transcodingAudioChannels'] = requestParameters.transcodingAudioChannels;
|
||||
}
|
||||
|
||||
if (requestParameters.maxStreamingBitrate !== undefined) {
|
||||
queryParameters['maxStreamingBitrate'] = requestParameters.maxStreamingBitrate;
|
||||
}
|
||||
|
||||
if (requestParameters.audioBitRate !== undefined) {
|
||||
queryParameters['audioBitRate'] = requestParameters.audioBitRate;
|
||||
}
|
||||
|
||||
if (requestParameters.startTimeTicks !== undefined) {
|
||||
queryParameters['startTimeTicks'] = requestParameters.startTimeTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.transcodingContainer !== undefined) {
|
||||
queryParameters['transcodingContainer'] = requestParameters.transcodingContainer;
|
||||
}
|
||||
|
||||
if (requestParameters.transcodingProtocol !== undefined) {
|
||||
queryParameters['transcodingProtocol'] = requestParameters.transcodingProtocol;
|
||||
}
|
||||
|
||||
if (requestParameters.maxAudioSampleRate !== undefined) {
|
||||
queryParameters['maxAudioSampleRate'] = requestParameters.maxAudioSampleRate;
|
||||
}
|
||||
|
||||
if (requestParameters.maxAudioBitDepth !== undefined) {
|
||||
queryParameters['maxAudioBitDepth'] = requestParameters.maxAudioBitDepth;
|
||||
}
|
||||
|
||||
if (requestParameters.enableRemoteMedia !== undefined) {
|
||||
queryParameters['enableRemoteMedia'] = requestParameters.enableRemoteMedia;
|
||||
}
|
||||
|
||||
if (requestParameters.breakOnNonKeyFrames !== undefined) {
|
||||
queryParameters['breakOnNonKeyFrames'] = requestParameters.breakOnNonKeyFrames;
|
||||
}
|
||||
|
||||
if (requestParameters.enableRedirection !== undefined) {
|
||||
queryParameters['enableRedirection'] = requestParameters.enableRedirection;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Audio/{itemId}/universal`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets an audio stream.
|
||||
*/
|
||||
async getUniversalAudioStream(requestParameters: GetUniversalAudioStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getUniversalAudioStreamRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets an audio stream.
|
||||
*/
|
||||
async headUniversalAudioStreamRaw(requestParameters: HeadUniversalAudioStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling headUniversalAudioStream.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.container) {
|
||||
queryParameters['container'] = requestParameters.container;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaSourceId !== undefined) {
|
||||
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
|
||||
}
|
||||
|
||||
if (requestParameters.deviceId !== undefined) {
|
||||
queryParameters['deviceId'] = requestParameters.deviceId;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.audioCodec !== undefined) {
|
||||
queryParameters['audioCodec'] = requestParameters.audioCodec;
|
||||
}
|
||||
|
||||
if (requestParameters.maxAudioChannels !== undefined) {
|
||||
queryParameters['maxAudioChannels'] = requestParameters.maxAudioChannels;
|
||||
}
|
||||
|
||||
if (requestParameters.transcodingAudioChannels !== undefined) {
|
||||
queryParameters['transcodingAudioChannels'] = requestParameters.transcodingAudioChannels;
|
||||
}
|
||||
|
||||
if (requestParameters.maxStreamingBitrate !== undefined) {
|
||||
queryParameters['maxStreamingBitrate'] = requestParameters.maxStreamingBitrate;
|
||||
}
|
||||
|
||||
if (requestParameters.audioBitRate !== undefined) {
|
||||
queryParameters['audioBitRate'] = requestParameters.audioBitRate;
|
||||
}
|
||||
|
||||
if (requestParameters.startTimeTicks !== undefined) {
|
||||
queryParameters['startTimeTicks'] = requestParameters.startTimeTicks;
|
||||
}
|
||||
|
||||
if (requestParameters.transcodingContainer !== undefined) {
|
||||
queryParameters['transcodingContainer'] = requestParameters.transcodingContainer;
|
||||
}
|
||||
|
||||
if (requestParameters.transcodingProtocol !== undefined) {
|
||||
queryParameters['transcodingProtocol'] = requestParameters.transcodingProtocol;
|
||||
}
|
||||
|
||||
if (requestParameters.maxAudioSampleRate !== undefined) {
|
||||
queryParameters['maxAudioSampleRate'] = requestParameters.maxAudioSampleRate;
|
||||
}
|
||||
|
||||
if (requestParameters.maxAudioBitDepth !== undefined) {
|
||||
queryParameters['maxAudioBitDepth'] = requestParameters.maxAudioBitDepth;
|
||||
}
|
||||
|
||||
if (requestParameters.enableRemoteMedia !== undefined) {
|
||||
queryParameters['enableRemoteMedia'] = requestParameters.enableRemoteMedia;
|
||||
}
|
||||
|
||||
if (requestParameters.breakOnNonKeyFrames !== undefined) {
|
||||
queryParameters['breakOnNonKeyFrames'] = requestParameters.breakOnNonKeyFrames;
|
||||
}
|
||||
|
||||
if (requestParameters.enableRedirection !== undefined) {
|
||||
queryParameters['enableRedirection'] = requestParameters.enableRedirection;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Audio/{itemId}/universal`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'HEAD',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets an audio stream.
|
||||
*/
|
||||
async headUniversalAudioStream(requestParameters: HeadUniversalAudioStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.headUniversalAudioStreamRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
708
server/jellyfin/apis/UserApi.ts
Normal file
708
server/jellyfin/apis/UserApi.ts
Normal file
@ -0,0 +1,708 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
AuthenticateUserByNameRequest,
|
||||
AuthenticateWithQuickConnectRequest,
|
||||
AuthenticationResult,
|
||||
CreateUserByNameRequest,
|
||||
ForgotPasswordPinRequest,
|
||||
ForgotPasswordRequest,
|
||||
ForgotPasswordResult,
|
||||
PinRedeemResult,
|
||||
ProblemDetails,
|
||||
UpdateUserConfigurationRequest,
|
||||
UpdateUserEasyPasswordRequest,
|
||||
UpdateUserPasswordRequest,
|
||||
UpdateUserPolicyRequest,
|
||||
UpdateUserRequest,
|
||||
UserDto,
|
||||
} from '../models';
|
||||
import {
|
||||
AuthenticateUserByNameRequestFromJSON,
|
||||
AuthenticateUserByNameRequestToJSON,
|
||||
AuthenticateWithQuickConnectRequestFromJSON,
|
||||
AuthenticateWithQuickConnectRequestToJSON,
|
||||
AuthenticationResultFromJSON,
|
||||
AuthenticationResultToJSON,
|
||||
CreateUserByNameRequestFromJSON,
|
||||
CreateUserByNameRequestToJSON,
|
||||
ForgotPasswordPinRequestFromJSON,
|
||||
ForgotPasswordPinRequestToJSON,
|
||||
ForgotPasswordRequestFromJSON,
|
||||
ForgotPasswordRequestToJSON,
|
||||
ForgotPasswordResultFromJSON,
|
||||
ForgotPasswordResultToJSON,
|
||||
PinRedeemResultFromJSON,
|
||||
PinRedeemResultToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
UpdateUserConfigurationRequestFromJSON,
|
||||
UpdateUserConfigurationRequestToJSON,
|
||||
UpdateUserEasyPasswordRequestFromJSON,
|
||||
UpdateUserEasyPasswordRequestToJSON,
|
||||
UpdateUserPasswordRequestFromJSON,
|
||||
UpdateUserPasswordRequestToJSON,
|
||||
UpdateUserPolicyRequestFromJSON,
|
||||
UpdateUserPolicyRequestToJSON,
|
||||
UpdateUserRequestFromJSON,
|
||||
UpdateUserRequestToJSON,
|
||||
UserDtoFromJSON,
|
||||
UserDtoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface AuthenticateUserRequest {
|
||||
userId: string;
|
||||
pw: string;
|
||||
password?: string;
|
||||
}
|
||||
|
||||
export interface AuthenticateUserByNameOperationRequest {
|
||||
authenticateUserByNameRequest: AuthenticateUserByNameRequest;
|
||||
}
|
||||
|
||||
export interface AuthenticateWithQuickConnectOperationRequest {
|
||||
authenticateWithQuickConnectRequest: AuthenticateWithQuickConnectRequest;
|
||||
}
|
||||
|
||||
export interface CreateUserByNameOperationRequest {
|
||||
createUserByNameRequest: CreateUserByNameRequest;
|
||||
}
|
||||
|
||||
export interface DeleteUserRequest {
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface ForgotPasswordOperationRequest {
|
||||
forgotPasswordRequest: ForgotPasswordRequest;
|
||||
}
|
||||
|
||||
export interface ForgotPasswordPinOperationRequest {
|
||||
forgotPasswordPinRequest: ForgotPasswordPinRequest;
|
||||
}
|
||||
|
||||
export interface GetUserByIdRequest {
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface GetUsersRequest {
|
||||
isHidden?: boolean;
|
||||
isDisabled?: boolean;
|
||||
}
|
||||
|
||||
export interface UpdateUserOperationRequest {
|
||||
userId: string;
|
||||
updateUserRequest: UpdateUserRequest;
|
||||
}
|
||||
|
||||
export interface UpdateUserConfigurationOperationRequest {
|
||||
userId: string;
|
||||
updateUserConfigurationRequest: UpdateUserConfigurationRequest;
|
||||
}
|
||||
|
||||
export interface UpdateUserEasyPasswordOperationRequest {
|
||||
userId: string;
|
||||
updateUserEasyPasswordRequest: UpdateUserEasyPasswordRequest;
|
||||
}
|
||||
|
||||
export interface UpdateUserPasswordOperationRequest {
|
||||
userId: string;
|
||||
updateUserPasswordRequest: UpdateUserPasswordRequest;
|
||||
}
|
||||
|
||||
export interface UpdateUserPolicyOperationRequest {
|
||||
userId: string;
|
||||
updateUserPolicyRequest: UpdateUserPolicyRequest;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class UserApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Authenticates a user.
|
||||
*/
|
||||
async authenticateUserRaw(requestParameters: AuthenticateUserRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<AuthenticationResult>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling authenticateUser.');
|
||||
}
|
||||
|
||||
if (requestParameters.pw === null || requestParameters.pw === undefined) {
|
||||
throw new runtime.RequiredError('pw','Required parameter requestParameters.pw was null or undefined when calling authenticateUser.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.pw !== undefined) {
|
||||
queryParameters['pw'] = requestParameters.pw;
|
||||
}
|
||||
|
||||
if (requestParameters.password !== undefined) {
|
||||
queryParameters['password'] = requestParameters.password;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Authenticate`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => AuthenticationResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Authenticates a user.
|
||||
*/
|
||||
async authenticateUser(requestParameters: AuthenticateUserRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<AuthenticationResult> {
|
||||
const response = await this.authenticateUserRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Authenticates a user by name.
|
||||
*/
|
||||
async authenticateUserByNameRaw(requestParameters: AuthenticateUserByNameOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<AuthenticationResult>> {
|
||||
if (requestParameters.authenticateUserByNameRequest === null || requestParameters.authenticateUserByNameRequest === undefined) {
|
||||
throw new runtime.RequiredError('authenticateUserByNameRequest','Required parameter requestParameters.authenticateUserByNameRequest was null or undefined when calling authenticateUserByName.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/AuthenticateByName`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: AuthenticateUserByNameRequestToJSON(requestParameters.authenticateUserByNameRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => AuthenticationResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Authenticates a user by name.
|
||||
*/
|
||||
async authenticateUserByName(requestParameters: AuthenticateUserByNameOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<AuthenticationResult> {
|
||||
const response = await this.authenticateUserByNameRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Authenticates a user with quick connect.
|
||||
*/
|
||||
async authenticateWithQuickConnectRaw(requestParameters: AuthenticateWithQuickConnectOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<AuthenticationResult>> {
|
||||
if (requestParameters.authenticateWithQuickConnectRequest === null || requestParameters.authenticateWithQuickConnectRequest === undefined) {
|
||||
throw new runtime.RequiredError('authenticateWithQuickConnectRequest','Required parameter requestParameters.authenticateWithQuickConnectRequest was null or undefined when calling authenticateWithQuickConnect.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/AuthenticateWithQuickConnect`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: AuthenticateWithQuickConnectRequestToJSON(requestParameters.authenticateWithQuickConnectRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => AuthenticationResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Authenticates a user with quick connect.
|
||||
*/
|
||||
async authenticateWithQuickConnect(requestParameters: AuthenticateWithQuickConnectOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<AuthenticationResult> {
|
||||
const response = await this.authenticateWithQuickConnectRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a user.
|
||||
*/
|
||||
async createUserByNameRaw(requestParameters: CreateUserByNameOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserDto>> {
|
||||
if (requestParameters.createUserByNameRequest === null || requestParameters.createUserByNameRequest === undefined) {
|
||||
throw new runtime.RequiredError('createUserByNameRequest','Required parameter requestParameters.createUserByNameRequest was null or undefined when calling createUserByName.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/New`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: CreateUserByNameRequestToJSON(requestParameters.createUserByNameRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => UserDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a user.
|
||||
*/
|
||||
async createUserByName(requestParameters: CreateUserByNameOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserDto> {
|
||||
const response = await this.createUserByNameRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes a user.
|
||||
*/
|
||||
async deleteUserRaw(requestParameters: DeleteUserRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling deleteUser.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes a user.
|
||||
*/
|
||||
async deleteUser(requestParameters: DeleteUserRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.deleteUserRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Initiates the forgot password process for a local user.
|
||||
*/
|
||||
async forgotPasswordRaw(requestParameters: ForgotPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ForgotPasswordResult>> {
|
||||
if (requestParameters.forgotPasswordRequest === null || requestParameters.forgotPasswordRequest === undefined) {
|
||||
throw new runtime.RequiredError('forgotPasswordRequest','Required parameter requestParameters.forgotPasswordRequest was null or undefined when calling forgotPassword.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/ForgotPassword`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: ForgotPasswordRequestToJSON(requestParameters.forgotPasswordRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => ForgotPasswordResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Initiates the forgot password process for a local user.
|
||||
*/
|
||||
async forgotPassword(requestParameters: ForgotPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ForgotPasswordResult> {
|
||||
const response = await this.forgotPasswordRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Redeems a forgot password pin.
|
||||
*/
|
||||
async forgotPasswordPinRaw(requestParameters: ForgotPasswordPinOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PinRedeemResult>> {
|
||||
if (requestParameters.forgotPasswordPinRequest === null || requestParameters.forgotPasswordPinRequest === undefined) {
|
||||
throw new runtime.RequiredError('forgotPasswordPinRequest','Required parameter requestParameters.forgotPasswordPinRequest was null or undefined when calling forgotPasswordPin.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/ForgotPassword/Pin`,
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: ForgotPasswordPinRequestToJSON(requestParameters.forgotPasswordPinRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => PinRedeemResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Redeems a forgot password pin.
|
||||
*/
|
||||
async forgotPasswordPin(requestParameters: ForgotPasswordPinOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PinRedeemResult> {
|
||||
const response = await this.forgotPasswordPinRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the user based on auth token.
|
||||
*/
|
||||
async getCurrentUserRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserDto>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/Me`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => UserDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the user based on auth token.
|
||||
*/
|
||||
async getCurrentUser(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserDto> {
|
||||
const response = await this.getCurrentUserRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of publicly visible users for display on a login screen.
|
||||
*/
|
||||
async getPublicUsersRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<UserDto>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/Public`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(UserDtoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of publicly visible users for display on a login screen.
|
||||
*/
|
||||
async getPublicUsers(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<UserDto>> {
|
||||
const response = await this.getPublicUsersRaw(initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a user by Id.
|
||||
*/
|
||||
async getUserByIdRaw(requestParameters: GetUserByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getUserById.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => UserDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a user by Id.
|
||||
*/
|
||||
async getUserById(requestParameters: GetUserByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserDto> {
|
||||
const response = await this.getUserByIdRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of users.
|
||||
*/
|
||||
async getUsersRaw(requestParameters: GetUsersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<UserDto>>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.isHidden !== undefined) {
|
||||
queryParameters['isHidden'] = requestParameters.isHidden;
|
||||
}
|
||||
|
||||
if (requestParameters.isDisabled !== undefined) {
|
||||
queryParameters['isDisabled'] = requestParameters.isDisabled;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(UserDtoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a list of users.
|
||||
*/
|
||||
async getUsers(requestParameters: GetUsersRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<UserDto>> {
|
||||
const response = await this.getUsersRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user.
|
||||
*/
|
||||
async updateUserRaw(requestParameters: UpdateUserOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUser.');
|
||||
}
|
||||
|
||||
if (requestParameters.updateUserRequest === null || requestParameters.updateUserRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateUserRequest','Required parameter requestParameters.updateUserRequest was null or undefined when calling updateUser.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateUserRequestToJSON(requestParameters.updateUserRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user.
|
||||
*/
|
||||
async updateUser(requestParameters: UpdateUserOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateUserRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user configuration.
|
||||
*/
|
||||
async updateUserConfigurationRaw(requestParameters: UpdateUserConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUserConfiguration.');
|
||||
}
|
||||
|
||||
if (requestParameters.updateUserConfigurationRequest === null || requestParameters.updateUserConfigurationRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateUserConfigurationRequest','Required parameter requestParameters.updateUserConfigurationRequest was null or undefined when calling updateUserConfiguration.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Configuration`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateUserConfigurationRequestToJSON(requestParameters.updateUserConfigurationRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user configuration.
|
||||
*/
|
||||
async updateUserConfiguration(requestParameters: UpdateUserConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateUserConfigurationRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user\'s easy password.
|
||||
*/
|
||||
async updateUserEasyPasswordRaw(requestParameters: UpdateUserEasyPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUserEasyPassword.');
|
||||
}
|
||||
|
||||
if (requestParameters.updateUserEasyPasswordRequest === null || requestParameters.updateUserEasyPasswordRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateUserEasyPasswordRequest','Required parameter requestParameters.updateUserEasyPasswordRequest was null or undefined when calling updateUserEasyPassword.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/EasyPassword`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateUserEasyPasswordRequestToJSON(requestParameters.updateUserEasyPasswordRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user\'s easy password.
|
||||
*/
|
||||
async updateUserEasyPassword(requestParameters: UpdateUserEasyPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateUserEasyPasswordRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user\'s password.
|
||||
*/
|
||||
async updateUserPasswordRaw(requestParameters: UpdateUserPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUserPassword.');
|
||||
}
|
||||
|
||||
if (requestParameters.updateUserPasswordRequest === null || requestParameters.updateUserPasswordRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateUserPasswordRequest','Required parameter requestParameters.updateUserPasswordRequest was null or undefined when calling updateUserPassword.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Password`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateUserPasswordRequestToJSON(requestParameters.updateUserPasswordRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user\'s password.
|
||||
*/
|
||||
async updateUserPassword(requestParameters: UpdateUserPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateUserPasswordRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user policy.
|
||||
*/
|
||||
async updateUserPolicyRaw(requestParameters: UpdateUserPolicyOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUserPolicy.');
|
||||
}
|
||||
|
||||
if (requestParameters.updateUserPolicyRequest === null || requestParameters.updateUserPolicyRequest === undefined) {
|
||||
throw new runtime.RequiredError('updateUserPolicyRequest','Required parameter requestParameters.updateUserPolicyRequest was null or undefined when calling updateUserPolicy.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
headerParameters['Content-Type'] = 'application/json';
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Policy`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
body: UpdateUserPolicyRequestToJSON(requestParameters.updateUserPolicyRequest),
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.VoidApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user policy.
|
||||
*/
|
||||
async updateUserPolicy(requestParameters: UpdateUserPolicyOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
|
||||
await this.updateUserPolicyRaw(requestParameters, initOverrides);
|
||||
}
|
||||
|
||||
}
|
||||
520
server/jellyfin/apis/UserLibraryApi.ts
Normal file
520
server/jellyfin/apis/UserLibraryApi.ts
Normal file
@ -0,0 +1,520 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDto,
|
||||
BaseItemDtoQueryResult,
|
||||
BaseItemKind,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
UserItemDataDto,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoFromJSON,
|
||||
BaseItemDtoToJSON,
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
UserItemDataDtoFromJSON,
|
||||
UserItemDataDtoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface DeleteUserItemRatingRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface GetIntrosRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface GetItemRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface GetLatestMediaRequest {
|
||||
userId: string;
|
||||
parentId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
includeItemTypes?: Array<BaseItemKind>;
|
||||
isPlayed?: boolean;
|
||||
enableImages?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
enableUserData?: boolean;
|
||||
limit?: number;
|
||||
groupItems?: boolean;
|
||||
}
|
||||
|
||||
export interface GetLocalTrailersRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface GetRootFolderRequest {
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface GetSpecialFeaturesRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface MarkFavoriteItemRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface UnmarkFavoriteItemRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
}
|
||||
|
||||
export interface UpdateUserItemRatingRequest {
|
||||
userId: string;
|
||||
itemId: string;
|
||||
likes?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class UserLibraryApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Deletes a user\'s saved personal rating for an item.
|
||||
*/
|
||||
async deleteUserItemRatingRaw(requestParameters: DeleteUserItemRatingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling deleteUserItemRating.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling deleteUserItemRating.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Items/{itemId}/Rating`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes a user\'s saved personal rating for an item.
|
||||
*/
|
||||
async deleteUserItemRating(requestParameters: DeleteUserItemRatingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
|
||||
const response = await this.deleteUserItemRatingRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets intros to play before the main media item plays.
|
||||
*/
|
||||
async getIntrosRaw(requestParameters: GetIntrosRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getIntros.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getIntros.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Items/{itemId}/Intros`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets intros to play before the main media item plays.
|
||||
*/
|
||||
async getIntros(requestParameters: GetIntrosRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getIntrosRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets an item from a user\'s library.
|
||||
*/
|
||||
async getItemRaw(requestParameters: GetItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getItem.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Items/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets an item from a user\'s library.
|
||||
*/
|
||||
async getItem(requestParameters: GetItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
|
||||
const response = await this.getItemRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets latest media.
|
||||
*/
|
||||
async getLatestMediaRaw(requestParameters: GetLatestMediaRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<BaseItemDto>>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getLatestMedia.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.includeItemTypes) {
|
||||
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.isPlayed !== undefined) {
|
||||
queryParameters['isPlayed'] = requestParameters.isPlayed;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.groupItems !== undefined) {
|
||||
queryParameters['groupItems'] = requestParameters.groupItems;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Items/Latest`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(BaseItemDtoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets latest media.
|
||||
*/
|
||||
async getLatestMedia(requestParameters: GetLatestMediaRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<BaseItemDto>> {
|
||||
const response = await this.getLatestMediaRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets local trailers for an item.
|
||||
*/
|
||||
async getLocalTrailersRaw(requestParameters: GetLocalTrailersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<BaseItemDto>>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getLocalTrailers.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getLocalTrailers.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Items/{itemId}/LocalTrailers`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(BaseItemDtoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets local trailers for an item.
|
||||
*/
|
||||
async getLocalTrailers(requestParameters: GetLocalTrailersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<BaseItemDto>> {
|
||||
const response = await this.getLocalTrailersRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the root folder from a user\'s library.
|
||||
*/
|
||||
async getRootFolderRaw(requestParameters: GetRootFolderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getRootFolder.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Items/Root`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the root folder from a user\'s library.
|
||||
*/
|
||||
async getRootFolder(requestParameters: GetRootFolderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
|
||||
const response = await this.getRootFolderRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets special features for an item.
|
||||
*/
|
||||
async getSpecialFeaturesRaw(requestParameters: GetSpecialFeaturesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<BaseItemDto>>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getSpecialFeatures.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getSpecialFeatures.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Items/{itemId}/SpecialFeatures`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(BaseItemDtoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets special features for an item.
|
||||
*/
|
||||
async getSpecialFeatures(requestParameters: GetSpecialFeaturesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<BaseItemDto>> {
|
||||
const response = await this.getSpecialFeaturesRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Marks an item as a favorite.
|
||||
*/
|
||||
async markFavoriteItemRaw(requestParameters: MarkFavoriteItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling markFavoriteItem.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling markFavoriteItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/FavoriteItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Marks an item as a favorite.
|
||||
*/
|
||||
async markFavoriteItem(requestParameters: MarkFavoriteItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
|
||||
const response = await this.markFavoriteItemRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Unmarks item as a favorite.
|
||||
*/
|
||||
async unmarkFavoriteItemRaw(requestParameters: UnmarkFavoriteItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling unmarkFavoriteItem.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling unmarkFavoriteItem.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/FavoriteItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'DELETE',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Unmarks item as a favorite.
|
||||
*/
|
||||
async unmarkFavoriteItem(requestParameters: UnmarkFavoriteItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
|
||||
const response = await this.unmarkFavoriteItemRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user\'s rating for an item.
|
||||
*/
|
||||
async updateUserItemRatingRaw(requestParameters: UpdateUserItemRatingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUserItemRating.');
|
||||
}
|
||||
|
||||
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
|
||||
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling updateUserItemRating.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.likes !== undefined) {
|
||||
queryParameters['likes'] = requestParameters.likes;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Items/{itemId}/Rating`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
|
||||
method: 'POST',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Updates a user\'s rating for an item.
|
||||
*/
|
||||
async updateUserItemRating(requestParameters: UpdateUserItemRatingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
|
||||
const response = await this.updateUserItemRatingRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
127
server/jellyfin/apis/UserViewsApi.ts
Normal file
127
server/jellyfin/apis/UserViewsApi.ts
Normal file
@ -0,0 +1,127 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDtoQueryResult,
|
||||
ProblemDetails,
|
||||
SpecialViewOptionDto,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
SpecialViewOptionDtoFromJSON,
|
||||
SpecialViewOptionDtoToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetGroupingOptionsRequest {
|
||||
userId: string;
|
||||
}
|
||||
|
||||
export interface GetUserViewsRequest {
|
||||
userId: string;
|
||||
includeExternalContent?: boolean;
|
||||
presetViews?: Array<string>;
|
||||
includeHidden?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class UserViewsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Get user view grouping options.
|
||||
*/
|
||||
async getGroupingOptionsRaw(requestParameters: GetGroupingOptionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<SpecialViewOptionDto>>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getGroupingOptions.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/GroupingOptions`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(SpecialViewOptionDtoFromJSON));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get user view grouping options.
|
||||
*/
|
||||
async getGroupingOptions(requestParameters: GetGroupingOptionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<SpecialViewOptionDto>> {
|
||||
const response = await this.getGroupingOptionsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get user views.
|
||||
*/
|
||||
async getUserViewsRaw(requestParameters: GetUserViewsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
if (requestParameters.userId === null || requestParameters.userId === undefined) {
|
||||
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getUserViews.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.includeExternalContent !== undefined) {
|
||||
queryParameters['includeExternalContent'] = requestParameters.includeExternalContent;
|
||||
}
|
||||
|
||||
if (requestParameters.presetViews) {
|
||||
queryParameters['presetViews'] = requestParameters.presetViews;
|
||||
}
|
||||
|
||||
if (requestParameters.includeHidden !== undefined) {
|
||||
queryParameters['includeHidden'] = requestParameters.includeHidden;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Users/{userId}/Views`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get user views.
|
||||
*/
|
||||
async getUserViews(requestParameters: GetUserViewsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getUserViewsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
74
server/jellyfin/apis/VideoAttachmentsApi.ts
Normal file
74
server/jellyfin/apis/VideoAttachmentsApi.ts
Normal file
@ -0,0 +1,74 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
ProblemDetails,
|
||||
} from '../models';
|
||||
import {
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetAttachmentRequest {
|
||||
videoId: string;
|
||||
mediaSourceId: string;
|
||||
index: number;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class VideoAttachmentsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Get video attachment.
|
||||
*/
|
||||
async getAttachmentRaw(requestParameters: GetAttachmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
||||
if (requestParameters.videoId === null || requestParameters.videoId === undefined) {
|
||||
throw new runtime.RequiredError('videoId','Required parameter requestParameters.videoId was null or undefined when calling getAttachment.');
|
||||
}
|
||||
|
||||
if (requestParameters.mediaSourceId === null || requestParameters.mediaSourceId === undefined) {
|
||||
throw new runtime.RequiredError('mediaSourceId','Required parameter requestParameters.mediaSourceId was null or undefined when calling getAttachment.');
|
||||
}
|
||||
|
||||
if (requestParameters.index === null || requestParameters.index === undefined) {
|
||||
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling getAttachment.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Videos/{videoId}/{mediaSourceId}/Attachments/{index}`.replace(`{${"videoId"}}`, encodeURIComponent(String(requestParameters.videoId))).replace(`{${"mediaSourceId"}}`, encodeURIComponent(String(requestParameters.mediaSourceId))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.BlobApiResponse(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get video attachment.
|
||||
*/
|
||||
async getAttachment(requestParameters: GetAttachmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
||||
const response = await this.getAttachmentRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
1296
server/jellyfin/apis/VideosApi.ts
Normal file
1296
server/jellyfin/apis/VideosApi.ts
Normal file
File diff suppressed because it is too large
Load Diff
199
server/jellyfin/apis/YearsApi.ts
Normal file
199
server/jellyfin/apis/YearsApi.ts
Normal file
@ -0,0 +1,199 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
import * as runtime from '../runtime';
|
||||
import type {
|
||||
BaseItemDto,
|
||||
BaseItemDtoQueryResult,
|
||||
BaseItemKind,
|
||||
ImageType,
|
||||
ItemFields,
|
||||
ProblemDetails,
|
||||
SortOrder,
|
||||
} from '../models';
|
||||
import {
|
||||
BaseItemDtoFromJSON,
|
||||
BaseItemDtoToJSON,
|
||||
BaseItemDtoQueryResultFromJSON,
|
||||
BaseItemDtoQueryResultToJSON,
|
||||
BaseItemKindFromJSON,
|
||||
BaseItemKindToJSON,
|
||||
ImageTypeFromJSON,
|
||||
ImageTypeToJSON,
|
||||
ItemFieldsFromJSON,
|
||||
ItemFieldsToJSON,
|
||||
ProblemDetailsFromJSON,
|
||||
ProblemDetailsToJSON,
|
||||
SortOrderFromJSON,
|
||||
SortOrderToJSON,
|
||||
} from '../models';
|
||||
|
||||
export interface GetYearRequest {
|
||||
year: number;
|
||||
userId?: string;
|
||||
}
|
||||
|
||||
export interface GetYearsRequest {
|
||||
startIndex?: number;
|
||||
limit?: number;
|
||||
sortOrder?: Array<SortOrder>;
|
||||
parentId?: string;
|
||||
fields?: Array<ItemFields>;
|
||||
excludeItemTypes?: Array<BaseItemKind>;
|
||||
includeItemTypes?: Array<BaseItemKind>;
|
||||
mediaTypes?: Array<string>;
|
||||
sortBy?: Array<string>;
|
||||
enableUserData?: boolean;
|
||||
imageTypeLimit?: number;
|
||||
enableImageTypes?: Array<ImageType>;
|
||||
userId?: string;
|
||||
recursive?: boolean;
|
||||
enableImages?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
export class YearsApi extends runtime.BaseAPI {
|
||||
|
||||
/**
|
||||
* Gets a year.
|
||||
*/
|
||||
async getYearRaw(requestParameters: GetYearRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
|
||||
if (requestParameters.year === null || requestParameters.year === undefined) {
|
||||
throw new runtime.RequiredError('year','Required parameter requestParameters.year was null or undefined when calling getYear.');
|
||||
}
|
||||
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Years/{year}`.replace(`{${"year"}}`, encodeURIComponent(String(requestParameters.year))),
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a year.
|
||||
*/
|
||||
async getYear(requestParameters: GetYearRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
|
||||
const response = await this.getYearRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get years.
|
||||
*/
|
||||
async getYearsRaw(requestParameters: GetYearsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
|
||||
const queryParameters: any = {};
|
||||
|
||||
if (requestParameters.startIndex !== undefined) {
|
||||
queryParameters['startIndex'] = requestParameters.startIndex;
|
||||
}
|
||||
|
||||
if (requestParameters.limit !== undefined) {
|
||||
queryParameters['limit'] = requestParameters.limit;
|
||||
}
|
||||
|
||||
if (requestParameters.sortOrder) {
|
||||
queryParameters['sortOrder'] = requestParameters.sortOrder;
|
||||
}
|
||||
|
||||
if (requestParameters.parentId !== undefined) {
|
||||
queryParameters['parentId'] = requestParameters.parentId;
|
||||
}
|
||||
|
||||
if (requestParameters.fields) {
|
||||
queryParameters['fields'] = requestParameters.fields;
|
||||
}
|
||||
|
||||
if (requestParameters.excludeItemTypes) {
|
||||
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.includeItemTypes) {
|
||||
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.mediaTypes) {
|
||||
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.sortBy) {
|
||||
queryParameters['sortBy'] = requestParameters.sortBy;
|
||||
}
|
||||
|
||||
if (requestParameters.enableUserData !== undefined) {
|
||||
queryParameters['enableUserData'] = requestParameters.enableUserData;
|
||||
}
|
||||
|
||||
if (requestParameters.imageTypeLimit !== undefined) {
|
||||
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImageTypes) {
|
||||
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
|
||||
}
|
||||
|
||||
if (requestParameters.userId !== undefined) {
|
||||
queryParameters['userId'] = requestParameters.userId;
|
||||
}
|
||||
|
||||
if (requestParameters.recursive !== undefined) {
|
||||
queryParameters['recursive'] = requestParameters.recursive;
|
||||
}
|
||||
|
||||
if (requestParameters.enableImages !== undefined) {
|
||||
queryParameters['enableImages'] = requestParameters.enableImages;
|
||||
}
|
||||
|
||||
const headerParameters: runtime.HTTPHeaders = {};
|
||||
|
||||
if (this.configuration && this.configuration.apiKey) {
|
||||
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
|
||||
}
|
||||
|
||||
const response = await this.request({
|
||||
path: `/Years`,
|
||||
method: 'GET',
|
||||
headers: headerParameters,
|
||||
query: queryParameters,
|
||||
}, initOverrides);
|
||||
|
||||
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get years.
|
||||
*/
|
||||
async getYears(requestParameters: GetYearsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
|
||||
const response = await this.getYearsRaw(requestParameters, initOverrides);
|
||||
return await response.value();
|
||||
}
|
||||
|
||||
}
|
||||
63
server/jellyfin/apis/index.ts
Normal file
63
server/jellyfin/apis/index.ts
Normal file
@ -0,0 +1,63 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export * from './ActivityLogApi';
|
||||
export * from './ApiKeyApi';
|
||||
export * from './ArtistsApi';
|
||||
export * from './AudioApi';
|
||||
export * from './BrandingApi';
|
||||
export * from './ChannelsApi';
|
||||
export * from './ClientLogApi';
|
||||
export * from './CollectionApi';
|
||||
export * from './ConfigurationApi';
|
||||
export * from './DashboardApi';
|
||||
export * from './DevicesApi';
|
||||
export * from './DisplayPreferencesApi';
|
||||
export * from './DlnaApi';
|
||||
export * from './DlnaServerApi';
|
||||
export * from './DynamicHlsApi';
|
||||
export * from './EnvironmentApi';
|
||||
export * from './FilterApi';
|
||||
export * from './GenresApi';
|
||||
export * from './HlsSegmentApi';
|
||||
export * from './ImageApi';
|
||||
export * from './ImageByNameApi';
|
||||
export * from './InstantMixApi';
|
||||
export * from './ItemLookupApi';
|
||||
export * from './ItemRefreshApi';
|
||||
export * from './ItemUpdateApi';
|
||||
export * from './ItemsApi';
|
||||
export * from './LibraryApi';
|
||||
export * from './LibraryStructureApi';
|
||||
export * from './LiveTvApi';
|
||||
export * from './LocalizationApi';
|
||||
export * from './MediaInfoApi';
|
||||
export * from './MoviesApi';
|
||||
export * from './MusicGenresApi';
|
||||
export * from './NotificationsApi';
|
||||
export * from './PackageApi';
|
||||
export * from './PersonsApi';
|
||||
export * from './PlaylistsApi';
|
||||
export * from './PlaystateApi';
|
||||
export * from './PluginsApi';
|
||||
export * from './QuickConnectApi';
|
||||
export * from './RemoteImageApi';
|
||||
export * from './ScheduledTasksApi';
|
||||
export * from './SearchApi';
|
||||
export * from './SessionApi';
|
||||
export * from './StartupApi';
|
||||
export * from './StudiosApi';
|
||||
export * from './SubtitleApi';
|
||||
export * from './SuggestionsApi';
|
||||
export * from './SyncPlayApi';
|
||||
export * from './SystemApi';
|
||||
export * from './TimeSyncApi';
|
||||
export * from './TmdbApi';
|
||||
export * from './TrailersApi';
|
||||
export * from './TvShowsApi';
|
||||
export * from './UniversalAudioApi';
|
||||
export * from './UserApi';
|
||||
export * from './UserLibraryApi';
|
||||
export * from './UserViewsApi';
|
||||
export * from './VideoAttachmentsApi';
|
||||
export * from './VideosApi';
|
||||
export * from './YearsApi';
|
||||
152
server/jellyfin/handler.ts
Normal file
152
server/jellyfin/handler.ts
Normal file
@ -0,0 +1,152 @@
|
||||
import { GuildMember } from "discord.js";
|
||||
import { CreateUserByNameOperationRequest, SystemApi, UpdateUserPolicyOperationRequest, UserApi } from "./apis";
|
||||
import { UserDto } from "./models/UserDto";
|
||||
import { Configuration, ConfigurationParameters } from "./runtime";
|
||||
import { CreateUserByNameRequest, UpdateUserPolicyRequest } from "./models";
|
||||
import { Config } from "../configuration";
|
||||
import { logger } from "../logger";
|
||||
import { Maybe } from "../interfaces";
|
||||
|
||||
export class JellyfinHandler {
|
||||
|
||||
private userApi: UserApi
|
||||
private systemApi: SystemApi
|
||||
private token: string
|
||||
private authHeader: { headers: { 'X-MediaBrowser-Token': string } }
|
||||
private config: Config
|
||||
private serverName = "";
|
||||
|
||||
public async ServerName(): Promise<string> {
|
||||
if (this.serverName === "") {
|
||||
const info = await this.systemApi.getSystemInfo(this.authHeader)
|
||||
this.serverName = info.serverName ?? this.config.bot.jellyfin_url
|
||||
}
|
||||
return this.serverName
|
||||
}
|
||||
constructor(_config: Config, _userApi?: UserApi, _systemApi?: SystemApi) {
|
||||
this.config = _config
|
||||
const userApiConfigurationParams: ConfigurationParameters = {
|
||||
basePath: this.config.bot.jellyfin_url
|
||||
}
|
||||
const systemApiConfigurationParams: ConfigurationParameters = {
|
||||
basePath: this.config.bot.jellyfin_url
|
||||
}
|
||||
this.userApi = _userApi ?? new UserApi(new Configuration(userApiConfigurationParams))
|
||||
this.systemApi = _systemApi ?? new SystemApi(new Configuration(systemApiConfigurationParams))
|
||||
this.token = this.config.bot.jellfin_token
|
||||
this.authHeader = {
|
||||
headers: {
|
||||
"X-MediaBrowser-Token": this.token
|
||||
}
|
||||
}
|
||||
logger.info(`Initialized Jellyfin handler`, { requestId: 'Init' })
|
||||
}
|
||||
|
||||
private generateJFUserName(discordUser: GuildMember): string {
|
||||
return discordUser.displayName
|
||||
}
|
||||
|
||||
public async addPermissionsToUserAccount(jfUserAccount: UserDto, guildId: string, requestId: string): Promise<UserDto> {
|
||||
throw new Error("Method not implemented.");
|
||||
}
|
||||
|
||||
private generatePasswordForUser(user: GuildMember): string {
|
||||
return user.nickname + user.user.discriminator
|
||||
}
|
||||
|
||||
public async createUserAccountForDiscordUser(discordUser: GuildMember, guildId?: string, requestId?: string): Promise<UserDto> {
|
||||
const newUserName = this.generateJFUserName(discordUser)
|
||||
logger.info(`New Username for ${discordUser.displayName}: ${newUserName}`, { guildId, requestId })
|
||||
const req: CreateUserByNameOperationRequest = {
|
||||
createUserByNameRequest: {
|
||||
name: newUserName,
|
||||
password: this.generatePasswordForUser(discordUser),
|
||||
}
|
||||
}
|
||||
logger.debug(JSON.stringify(req))
|
||||
const createResult = await this.userApi.createUserByName(req, this.authHeader)
|
||||
if (createResult)
|
||||
return createResult
|
||||
else throw new Error('Could not create User in Jellyfin')
|
||||
}
|
||||
|
||||
public async disableJfUser(user: UserDto, guildId?: string, requestId?: string): Promise<void> {
|
||||
if (user.id) {
|
||||
logger.info(`Trying to disable user: ${user.name}|${user.id}`)
|
||||
const r: UpdateUserPolicyOperationRequest = {
|
||||
userId: user.id,
|
||||
updateUserPolicyRequest: {
|
||||
isDisabled: true
|
||||
},
|
||||
}
|
||||
await this.userApi.updateUserPolicy(r, this.authHeader)
|
||||
logger.info(`Succeeded with disabling user: ${user.name}`)
|
||||
}
|
||||
else {
|
||||
logger.error(`Can not disable user ${JSON.stringify(user)}, has no id?!`, { requestId, guildId })
|
||||
}
|
||||
}
|
||||
|
||||
public async isUserAlreadyPresent(discordUser: GuildMember, requestId?: string): Promise<boolean> {
|
||||
const jfuser = await this.getUser(discordUser, requestId)
|
||||
logger.debug(`Presence for DiscordUser ${discordUser.id}:${jfuser !== undefined}`)
|
||||
return jfuser !== undefined
|
||||
}
|
||||
|
||||
public async getCurrentUsers(guildId: string, requestId?: string): Promise<UserDto[]> {
|
||||
try {
|
||||
logger.info(`Fetching current users from Jellyfin`, { requestId, guildId })
|
||||
const result = await this.userApi.getUsers(undefined, this.authHeader)
|
||||
return result
|
||||
} catch (error) {
|
||||
logger.error(`Could not fetch current users from jellyfin`, { guildId, requestId })
|
||||
}
|
||||
return []
|
||||
}
|
||||
|
||||
public async getUser(discordUser: GuildMember, requestId?: string): Promise<Maybe<UserDto>> {
|
||||
const jfUsernameFromDiscordUsername = this.generateJFUserName(discordUser)
|
||||
const jfUsers = await this.getCurrentUsers(discordUser.guild.id, requestId)
|
||||
const foundUser = jfUsers.find(x => x.name === jfUsernameFromDiscordUsername)
|
||||
return foundUser
|
||||
}
|
||||
|
||||
public async removeUser(newMember: GuildMember, requestId?: string) {
|
||||
logger.error(`Trying to remove user ${newMember.displayName}, but method is not implemented`)
|
||||
const jfuser = await this.getUser(newMember, requestId)
|
||||
if (jfuser) {
|
||||
await this.disableJfUser(jfuser, newMember.guild.id, requestId)
|
||||
}
|
||||
}
|
||||
|
||||
public async enableUser(user: UserDto, guildId?: string, requestId?: string): Promise<void> {
|
||||
if (user.id) {
|
||||
logger.info(`Trying to enable user: ${user.name}|${user.id}`)
|
||||
const r: UpdateUserPolicyOperationRequest = {
|
||||
userId: user.id ?? "",
|
||||
updateUserPolicyRequest: {
|
||||
}
|
||||
}
|
||||
await this.userApi.updateUserPolicy(r, this.authHeader)
|
||||
logger.info(`Succeeded with enabling user: ${user.name}`)
|
||||
}
|
||||
else {
|
||||
logger.error(`Can not enable user ${JSON.stringify(user)}, has no id?!`, { requestId, guildId })
|
||||
}
|
||||
}
|
||||
|
||||
public async upsertUser(newMember: GuildMember, level: string, requestId?: string) {
|
||||
logger.error(`Trying to upsert user ${newMember.displayName}, with permissionLevel ${level}`)
|
||||
const jfuser = await this.getUser(newMember, requestId)
|
||||
if (jfuser) {
|
||||
logger.info(`User with name ${newMember.displayName} is already present`)
|
||||
await this.enableUser(jfuser, requestId)
|
||||
} else {
|
||||
this.createUserAccountForDiscordUser(newMember, newMember.guild.id, requestId)
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
5
server/jellyfin/index.ts
Normal file
5
server/jellyfin/index.ts
Normal file
@ -0,0 +1,5 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
export * from './runtime';
|
||||
export * as JellyfinAPI from './apis';
|
||||
export * from './models';
|
||||
103
server/jellyfin/models/AccessSchedule.ts
Normal file
103
server/jellyfin/models/AccessSchedule.ts
Normal file
@ -0,0 +1,103 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { DynamicDayOfWeek } from './DynamicDayOfWeek';
|
||||
import {
|
||||
DynamicDayOfWeekFromJSON,
|
||||
DynamicDayOfWeekFromJSONTyped,
|
||||
DynamicDayOfWeekToJSON,
|
||||
} from './DynamicDayOfWeek';
|
||||
|
||||
/**
|
||||
* An entity representing a user's access schedule.
|
||||
* @export
|
||||
* @interface AccessSchedule
|
||||
*/
|
||||
export interface AccessSchedule {
|
||||
/**
|
||||
* Gets the id of this instance.
|
||||
* @type {number}
|
||||
* @memberof AccessSchedule
|
||||
*/
|
||||
readonly id?: number;
|
||||
/**
|
||||
* Gets the id of the associated user.
|
||||
* @type {string}
|
||||
* @memberof AccessSchedule
|
||||
*/
|
||||
userId?: string;
|
||||
/**
|
||||
*
|
||||
* @type {DynamicDayOfWeek}
|
||||
* @memberof AccessSchedule
|
||||
*/
|
||||
dayOfWeek?: DynamicDayOfWeek;
|
||||
/**
|
||||
* Gets or sets the start hour.
|
||||
* @type {number}
|
||||
* @memberof AccessSchedule
|
||||
*/
|
||||
startHour?: number;
|
||||
/**
|
||||
* Gets or sets the end hour.
|
||||
* @type {number}
|
||||
* @memberof AccessSchedule
|
||||
*/
|
||||
endHour?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AccessSchedule interface.
|
||||
*/
|
||||
export function instanceOfAccessSchedule(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AccessScheduleFromJSON(json: any): AccessSchedule {
|
||||
return AccessScheduleFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AccessScheduleFromJSONTyped(json: any, ignoreDiscriminator: boolean): AccessSchedule {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'id': !exists(json, 'Id') ? undefined : json['Id'],
|
||||
'userId': !exists(json, 'UserId') ? undefined : json['UserId'],
|
||||
'dayOfWeek': !exists(json, 'DayOfWeek') ? undefined : DynamicDayOfWeekFromJSON(json['DayOfWeek']),
|
||||
'startHour': !exists(json, 'StartHour') ? undefined : json['StartHour'],
|
||||
'endHour': !exists(json, 'EndHour') ? undefined : json['EndHour'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AccessScheduleToJSON(value?: AccessSchedule | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'UserId': value.userId,
|
||||
'DayOfWeek': DynamicDayOfWeekToJSON(value.dayOfWeek),
|
||||
'StartHour': value.startHour,
|
||||
'EndHour': value.endHour,
|
||||
};
|
||||
}
|
||||
|
||||
145
server/jellyfin/models/ActivityLogEntry.ts
Normal file
145
server/jellyfin/models/ActivityLogEntry.ts
Normal file
@ -0,0 +1,145 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { LogLevel } from './LogLevel';
|
||||
import {
|
||||
LogLevelFromJSON,
|
||||
LogLevelFromJSONTyped,
|
||||
LogLevelToJSON,
|
||||
} from './LogLevel';
|
||||
|
||||
/**
|
||||
* An activity log entry.
|
||||
* @export
|
||||
* @interface ActivityLogEntry
|
||||
*/
|
||||
export interface ActivityLogEntry {
|
||||
/**
|
||||
* Gets or sets the identifier.
|
||||
* @type {number}
|
||||
* @memberof ActivityLogEntry
|
||||
*/
|
||||
id?: number;
|
||||
/**
|
||||
* Gets or sets the name.
|
||||
* @type {string}
|
||||
* @memberof ActivityLogEntry
|
||||
*/
|
||||
name?: string;
|
||||
/**
|
||||
* Gets or sets the overview.
|
||||
* @type {string}
|
||||
* @memberof ActivityLogEntry
|
||||
*/
|
||||
overview?: string | null;
|
||||
/**
|
||||
* Gets or sets the short overview.
|
||||
* @type {string}
|
||||
* @memberof ActivityLogEntry
|
||||
*/
|
||||
shortOverview?: string | null;
|
||||
/**
|
||||
* Gets or sets the type.
|
||||
* @type {string}
|
||||
* @memberof ActivityLogEntry
|
||||
*/
|
||||
type?: string;
|
||||
/**
|
||||
* Gets or sets the item identifier.
|
||||
* @type {string}
|
||||
* @memberof ActivityLogEntry
|
||||
*/
|
||||
itemId?: string | null;
|
||||
/**
|
||||
* Gets or sets the date.
|
||||
* @type {Date}
|
||||
* @memberof ActivityLogEntry
|
||||
*/
|
||||
date?: Date;
|
||||
/**
|
||||
* Gets or sets the user identifier.
|
||||
* @type {string}
|
||||
* @memberof ActivityLogEntry
|
||||
*/
|
||||
userId?: string;
|
||||
/**
|
||||
* Gets or sets the user primary image tag.
|
||||
* @type {string}
|
||||
* @memberof ActivityLogEntry
|
||||
* @deprecated
|
||||
*/
|
||||
userPrimaryImageTag?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {LogLevel}
|
||||
* @memberof ActivityLogEntry
|
||||
*/
|
||||
severity?: LogLevel;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the ActivityLogEntry interface.
|
||||
*/
|
||||
export function instanceOfActivityLogEntry(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function ActivityLogEntryFromJSON(json: any): ActivityLogEntry {
|
||||
return ActivityLogEntryFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function ActivityLogEntryFromJSONTyped(json: any, ignoreDiscriminator: boolean): ActivityLogEntry {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'id': !exists(json, 'Id') ? undefined : json['Id'],
|
||||
'name': !exists(json, 'Name') ? undefined : json['Name'],
|
||||
'overview': !exists(json, 'Overview') ? undefined : json['Overview'],
|
||||
'shortOverview': !exists(json, 'ShortOverview') ? undefined : json['ShortOverview'],
|
||||
'type': !exists(json, 'Type') ? undefined : json['Type'],
|
||||
'itemId': !exists(json, 'ItemId') ? undefined : json['ItemId'],
|
||||
'date': !exists(json, 'Date') ? undefined : (new Date(json['Date'])),
|
||||
'userId': !exists(json, 'UserId') ? undefined : json['UserId'],
|
||||
'userPrimaryImageTag': !exists(json, 'UserPrimaryImageTag') ? undefined : json['UserPrimaryImageTag'],
|
||||
'severity': !exists(json, 'Severity') ? undefined : LogLevelFromJSON(json['Severity']),
|
||||
};
|
||||
}
|
||||
|
||||
export function ActivityLogEntryToJSON(value?: ActivityLogEntry | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Id': value.id,
|
||||
'Name': value.name,
|
||||
'Overview': value.overview,
|
||||
'ShortOverview': value.shortOverview,
|
||||
'Type': value.type,
|
||||
'ItemId': value.itemId,
|
||||
'Date': value.date === undefined ? undefined : (value.date.toISOString()),
|
||||
'UserId': value.userId,
|
||||
'UserPrimaryImageTag': value.userPrimaryImageTag,
|
||||
'Severity': LogLevelToJSON(value.severity),
|
||||
};
|
||||
}
|
||||
|
||||
88
server/jellyfin/models/ActivityLogEntryQueryResult.ts
Normal file
88
server/jellyfin/models/ActivityLogEntryQueryResult.ts
Normal file
@ -0,0 +1,88 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { ActivityLogEntry } from './ActivityLogEntry';
|
||||
import {
|
||||
ActivityLogEntryFromJSON,
|
||||
ActivityLogEntryFromJSONTyped,
|
||||
ActivityLogEntryToJSON,
|
||||
} from './ActivityLogEntry';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface ActivityLogEntryQueryResult
|
||||
*/
|
||||
export interface ActivityLogEntryQueryResult {
|
||||
/**
|
||||
* Gets or sets the items.
|
||||
* @type {Array<ActivityLogEntry>}
|
||||
* @memberof ActivityLogEntryQueryResult
|
||||
*/
|
||||
items?: Array<ActivityLogEntry> | null;
|
||||
/**
|
||||
* Gets or sets the total number of records available.
|
||||
* @type {number}
|
||||
* @memberof ActivityLogEntryQueryResult
|
||||
*/
|
||||
totalRecordCount?: number;
|
||||
/**
|
||||
* Gets or sets the index of the first record in Items.
|
||||
* @type {number}
|
||||
* @memberof ActivityLogEntryQueryResult
|
||||
*/
|
||||
startIndex?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the ActivityLogEntryQueryResult interface.
|
||||
*/
|
||||
export function instanceOfActivityLogEntryQueryResult(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function ActivityLogEntryQueryResultFromJSON(json: any): ActivityLogEntryQueryResult {
|
||||
return ActivityLogEntryQueryResultFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function ActivityLogEntryQueryResultFromJSONTyped(json: any, ignoreDiscriminator: boolean): ActivityLogEntryQueryResult {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'items': !exists(json, 'Items') ? undefined : (json['Items'] === null ? null : (json['Items'] as Array<any>).map(ActivityLogEntryFromJSON)),
|
||||
'totalRecordCount': !exists(json, 'TotalRecordCount') ? undefined : json['TotalRecordCount'],
|
||||
'startIndex': !exists(json, 'StartIndex') ? undefined : json['StartIndex'],
|
||||
};
|
||||
}
|
||||
|
||||
export function ActivityLogEntryQueryResultToJSON(value?: ActivityLogEntryQueryResult | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Items': value.items === undefined ? undefined : (value.items === null ? null : (value.items as Array<any>).map(ActivityLogEntryToJSON)),
|
||||
'TotalRecordCount': value.totalRecordCount,
|
||||
'StartIndex': value.startIndex,
|
||||
};
|
||||
}
|
||||
|
||||
208
server/jellyfin/models/AddListingProviderRequest.ts
Normal file
208
server/jellyfin/models/AddListingProviderRequest.ts
Normal file
@ -0,0 +1,208 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { NameValuePair } from './NameValuePair';
|
||||
import {
|
||||
NameValuePairFromJSON,
|
||||
NameValuePairFromJSONTyped,
|
||||
NameValuePairToJSON,
|
||||
} from './NameValuePair';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface AddListingProviderRequest
|
||||
*/
|
||||
export interface AddListingProviderRequest {
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
id?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
type?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
username?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
password?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
listingsId?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
zipCode?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
country?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
path?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
enabledTuners?: Array<string> | null;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
enableAllTuners?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
newsCategories?: Array<string> | null;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
sportsCategories?: Array<string> | null;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
kidsCategories?: Array<string> | null;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
movieCategories?: Array<string> | null;
|
||||
/**
|
||||
*
|
||||
* @type {Array<NameValuePair>}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
channelMappings?: Array<NameValuePair> | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
moviePrefix?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
preferredLanguage?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddListingProviderRequest
|
||||
*/
|
||||
userAgent?: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AddListingProviderRequest interface.
|
||||
*/
|
||||
export function instanceOfAddListingProviderRequest(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AddListingProviderRequestFromJSON(json: any): AddListingProviderRequest {
|
||||
return AddListingProviderRequestFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AddListingProviderRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AddListingProviderRequest {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'id': !exists(json, 'Id') ? undefined : json['Id'],
|
||||
'type': !exists(json, 'Type') ? undefined : json['Type'],
|
||||
'username': !exists(json, 'Username') ? undefined : json['Username'],
|
||||
'password': !exists(json, 'Password') ? undefined : json['Password'],
|
||||
'listingsId': !exists(json, 'ListingsId') ? undefined : json['ListingsId'],
|
||||
'zipCode': !exists(json, 'ZipCode') ? undefined : json['ZipCode'],
|
||||
'country': !exists(json, 'Country') ? undefined : json['Country'],
|
||||
'path': !exists(json, 'Path') ? undefined : json['Path'],
|
||||
'enabledTuners': !exists(json, 'EnabledTuners') ? undefined : json['EnabledTuners'],
|
||||
'enableAllTuners': !exists(json, 'EnableAllTuners') ? undefined : json['EnableAllTuners'],
|
||||
'newsCategories': !exists(json, 'NewsCategories') ? undefined : json['NewsCategories'],
|
||||
'sportsCategories': !exists(json, 'SportsCategories') ? undefined : json['SportsCategories'],
|
||||
'kidsCategories': !exists(json, 'KidsCategories') ? undefined : json['KidsCategories'],
|
||||
'movieCategories': !exists(json, 'MovieCategories') ? undefined : json['MovieCategories'],
|
||||
'channelMappings': !exists(json, 'ChannelMappings') ? undefined : (json['ChannelMappings'] === null ? null : (json['ChannelMappings'] as Array<any>).map(NameValuePairFromJSON)),
|
||||
'moviePrefix': !exists(json, 'MoviePrefix') ? undefined : json['MoviePrefix'],
|
||||
'preferredLanguage': !exists(json, 'PreferredLanguage') ? undefined : json['PreferredLanguage'],
|
||||
'userAgent': !exists(json, 'UserAgent') ? undefined : json['UserAgent'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AddListingProviderRequestToJSON(value?: AddListingProviderRequest | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Id': value.id,
|
||||
'Type': value.type,
|
||||
'Username': value.username,
|
||||
'Password': value.password,
|
||||
'ListingsId': value.listingsId,
|
||||
'ZipCode': value.zipCode,
|
||||
'Country': value.country,
|
||||
'Path': value.path,
|
||||
'EnabledTuners': value.enabledTuners,
|
||||
'EnableAllTuners': value.enableAllTuners,
|
||||
'NewsCategories': value.newsCategories,
|
||||
'SportsCategories': value.sportsCategories,
|
||||
'KidsCategories': value.kidsCategories,
|
||||
'MovieCategories': value.movieCategories,
|
||||
'ChannelMappings': value.channelMappings === undefined ? undefined : (value.channelMappings === null ? null : (value.channelMappings as Array<any>).map(NameValuePairToJSON)),
|
||||
'MoviePrefix': value.moviePrefix,
|
||||
'PreferredLanguage': value.preferredLanguage,
|
||||
'UserAgent': value.userAgent,
|
||||
};
|
||||
}
|
||||
|
||||
89
server/jellyfin/models/AddMediaPathRequest.ts
Normal file
89
server/jellyfin/models/AddMediaPathRequest.ts
Normal file
@ -0,0 +1,89 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { MediaPathDtoPathInfo } from './MediaPathDtoPathInfo';
|
||||
import {
|
||||
MediaPathDtoPathInfoFromJSON,
|
||||
MediaPathDtoPathInfoFromJSONTyped,
|
||||
MediaPathDtoPathInfoToJSON,
|
||||
} from './MediaPathDtoPathInfo';
|
||||
|
||||
/**
|
||||
* Media Path dto.
|
||||
* @export
|
||||
* @interface AddMediaPathRequest
|
||||
*/
|
||||
export interface AddMediaPathRequest {
|
||||
/**
|
||||
* Gets or sets the name of the library.
|
||||
* @type {string}
|
||||
* @memberof AddMediaPathRequest
|
||||
*/
|
||||
name: string;
|
||||
/**
|
||||
* Gets or sets the path to add.
|
||||
* @type {string}
|
||||
* @memberof AddMediaPathRequest
|
||||
*/
|
||||
path?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {MediaPathDtoPathInfo}
|
||||
* @memberof AddMediaPathRequest
|
||||
*/
|
||||
pathInfo?: MediaPathDtoPathInfo | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AddMediaPathRequest interface.
|
||||
*/
|
||||
export function instanceOfAddMediaPathRequest(value: object): boolean {
|
||||
let isInstance = true;
|
||||
isInstance = isInstance && "name" in value;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AddMediaPathRequestFromJSON(json: any): AddMediaPathRequest {
|
||||
return AddMediaPathRequestFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AddMediaPathRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AddMediaPathRequest {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'name': json['Name'],
|
||||
'path': !exists(json, 'Path') ? undefined : json['Path'],
|
||||
'pathInfo': !exists(json, 'PathInfo') ? undefined : MediaPathDtoPathInfoFromJSON(json['PathInfo']),
|
||||
};
|
||||
}
|
||||
|
||||
export function AddMediaPathRequestToJSON(value?: AddMediaPathRequest | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Name': value.name,
|
||||
'Path': value.path,
|
||||
'PathInfo': MediaPathDtoPathInfoToJSON(value.pathInfo),
|
||||
};
|
||||
}
|
||||
|
||||
145
server/jellyfin/models/AddTunerHostRequest.ts
Normal file
145
server/jellyfin/models/AddTunerHostRequest.ts
Normal file
@ -0,0 +1,145 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface AddTunerHostRequest
|
||||
*/
|
||||
export interface AddTunerHostRequest {
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
id?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
url?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
type?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
deviceId?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
friendlyName?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
importFavoritesOnly?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
allowHWTranscoding?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
enableStreamLooping?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
source?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
tunerCount?: number;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddTunerHostRequest
|
||||
*/
|
||||
userAgent?: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AddTunerHostRequest interface.
|
||||
*/
|
||||
export function instanceOfAddTunerHostRequest(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AddTunerHostRequestFromJSON(json: any): AddTunerHostRequest {
|
||||
return AddTunerHostRequestFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AddTunerHostRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AddTunerHostRequest {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'id': !exists(json, 'Id') ? undefined : json['Id'],
|
||||
'url': !exists(json, 'Url') ? undefined : json['Url'],
|
||||
'type': !exists(json, 'Type') ? undefined : json['Type'],
|
||||
'deviceId': !exists(json, 'DeviceId') ? undefined : json['DeviceId'],
|
||||
'friendlyName': !exists(json, 'FriendlyName') ? undefined : json['FriendlyName'],
|
||||
'importFavoritesOnly': !exists(json, 'ImportFavoritesOnly') ? undefined : json['ImportFavoritesOnly'],
|
||||
'allowHWTranscoding': !exists(json, 'AllowHWTranscoding') ? undefined : json['AllowHWTranscoding'],
|
||||
'enableStreamLooping': !exists(json, 'EnableStreamLooping') ? undefined : json['EnableStreamLooping'],
|
||||
'source': !exists(json, 'Source') ? undefined : json['Source'],
|
||||
'tunerCount': !exists(json, 'TunerCount') ? undefined : json['TunerCount'],
|
||||
'userAgent': !exists(json, 'UserAgent') ? undefined : json['UserAgent'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AddTunerHostRequestToJSON(value?: AddTunerHostRequest | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Id': value.id,
|
||||
'Url': value.url,
|
||||
'Type': value.type,
|
||||
'DeviceId': value.deviceId,
|
||||
'FriendlyName': value.friendlyName,
|
||||
'ImportFavoritesOnly': value.importFavoritesOnly,
|
||||
'AllowHWTranscoding': value.allowHWTranscoding,
|
||||
'EnableStreamLooping': value.enableStreamLooping,
|
||||
'Source': value.source,
|
||||
'TunerCount': value.tunerCount,
|
||||
'UserAgent': value.userAgent,
|
||||
};
|
||||
}
|
||||
|
||||
72
server/jellyfin/models/AddVirtualFolderDto.ts
Normal file
72
server/jellyfin/models/AddVirtualFolderDto.ts
Normal file
@ -0,0 +1,72 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { AddVirtualFolderDtoLibraryOptions } from './AddVirtualFolderDtoLibraryOptions';
|
||||
import {
|
||||
AddVirtualFolderDtoLibraryOptionsFromJSON,
|
||||
AddVirtualFolderDtoLibraryOptionsFromJSONTyped,
|
||||
AddVirtualFolderDtoLibraryOptionsToJSON,
|
||||
} from './AddVirtualFolderDtoLibraryOptions';
|
||||
|
||||
/**
|
||||
* Add virtual folder dto.
|
||||
* @export
|
||||
* @interface AddVirtualFolderDto
|
||||
*/
|
||||
export interface AddVirtualFolderDto {
|
||||
/**
|
||||
*
|
||||
* @type {AddVirtualFolderDtoLibraryOptions}
|
||||
* @memberof AddVirtualFolderDto
|
||||
*/
|
||||
libraryOptions?: AddVirtualFolderDtoLibraryOptions | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AddVirtualFolderDto interface.
|
||||
*/
|
||||
export function instanceOfAddVirtualFolderDto(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AddVirtualFolderDtoFromJSON(json: any): AddVirtualFolderDto {
|
||||
return AddVirtualFolderDtoFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AddVirtualFolderDtoFromJSONTyped(json: any, ignoreDiscriminator: boolean): AddVirtualFolderDto {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'libraryOptions': !exists(json, 'LibraryOptions') ? undefined : AddVirtualFolderDtoLibraryOptionsFromJSON(json['LibraryOptions']),
|
||||
};
|
||||
}
|
||||
|
||||
export function AddVirtualFolderDtoToJSON(value?: AddVirtualFolderDto | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'LibraryOptions': AddVirtualFolderDtoLibraryOptionsToJSON(value.libraryOptions),
|
||||
};
|
||||
}
|
||||
|
||||
293
server/jellyfin/models/AddVirtualFolderDtoLibraryOptions.ts
Normal file
293
server/jellyfin/models/AddVirtualFolderDtoLibraryOptions.ts
Normal file
@ -0,0 +1,293 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { EmbeddedSubtitleOptions } from './EmbeddedSubtitleOptions';
|
||||
import {
|
||||
EmbeddedSubtitleOptionsFromJSON,
|
||||
EmbeddedSubtitleOptionsFromJSONTyped,
|
||||
EmbeddedSubtitleOptionsToJSON,
|
||||
} from './EmbeddedSubtitleOptions';
|
||||
import type { MediaPathInfo } from './MediaPathInfo';
|
||||
import {
|
||||
MediaPathInfoFromJSON,
|
||||
MediaPathInfoFromJSONTyped,
|
||||
MediaPathInfoToJSON,
|
||||
} from './MediaPathInfo';
|
||||
import type { TypeOptions } from './TypeOptions';
|
||||
import {
|
||||
TypeOptionsFromJSON,
|
||||
TypeOptionsFromJSONTyped,
|
||||
TypeOptionsToJSON,
|
||||
} from './TypeOptions';
|
||||
|
||||
/**
|
||||
* Gets or sets library options.
|
||||
* @export
|
||||
* @interface AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
export interface AddVirtualFolderDtoLibraryOptions {
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
enablePhotos?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
enableRealtimeMonitor?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
enableChapterImageExtraction?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
extractChapterImagesDuringLibraryScan?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {Array<MediaPathInfo>}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
pathInfos?: Array<MediaPathInfo>;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
saveLocalMetadata?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
* @deprecated
|
||||
*/
|
||||
enableInternetProviders?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
enableAutomaticSeriesGrouping?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
enableEmbeddedTitles?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
enableEmbeddedEpisodeInfos?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
automaticRefreshIntervalDays?: number;
|
||||
/**
|
||||
* Gets or sets the preferred metadata language.
|
||||
* @type {string}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
preferredMetadataLanguage?: string | null;
|
||||
/**
|
||||
* Gets or sets the metadata country code.
|
||||
* @type {string}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
metadataCountryCode?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
seasonZeroDisplayName?: string;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
metadataSavers?: Array<string> | null;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
disabledLocalMetadataReaders?: Array<string>;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
localMetadataReaderOrder?: Array<string> | null;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
disabledSubtitleFetchers?: Array<string>;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
subtitleFetcherOrder?: Array<string>;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
skipSubtitlesIfEmbeddedSubtitlesPresent?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
skipSubtitlesIfAudioTrackMatches?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
subtitleDownloadLanguages?: Array<string> | null;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
requirePerfectSubtitleMatch?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
saveSubtitlesWithMedia?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
automaticallyAddToCollection?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {EmbeddedSubtitleOptions}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
allowEmbeddedSubtitles?: EmbeddedSubtitleOptions;
|
||||
/**
|
||||
*
|
||||
* @type {Array<TypeOptions>}
|
||||
* @memberof AddVirtualFolderDtoLibraryOptions
|
||||
*/
|
||||
typeOptions?: Array<TypeOptions>;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AddVirtualFolderDtoLibraryOptions interface.
|
||||
*/
|
||||
export function instanceOfAddVirtualFolderDtoLibraryOptions(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AddVirtualFolderDtoLibraryOptionsFromJSON(json: any): AddVirtualFolderDtoLibraryOptions {
|
||||
return AddVirtualFolderDtoLibraryOptionsFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AddVirtualFolderDtoLibraryOptionsFromJSONTyped(json: any, ignoreDiscriminator: boolean): AddVirtualFolderDtoLibraryOptions {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'enablePhotos': !exists(json, 'EnablePhotos') ? undefined : json['EnablePhotos'],
|
||||
'enableRealtimeMonitor': !exists(json, 'EnableRealtimeMonitor') ? undefined : json['EnableRealtimeMonitor'],
|
||||
'enableChapterImageExtraction': !exists(json, 'EnableChapterImageExtraction') ? undefined : json['EnableChapterImageExtraction'],
|
||||
'extractChapterImagesDuringLibraryScan': !exists(json, 'ExtractChapterImagesDuringLibraryScan') ? undefined : json['ExtractChapterImagesDuringLibraryScan'],
|
||||
'pathInfos': !exists(json, 'PathInfos') ? undefined : ((json['PathInfos'] as Array<any>).map(MediaPathInfoFromJSON)),
|
||||
'saveLocalMetadata': !exists(json, 'SaveLocalMetadata') ? undefined : json['SaveLocalMetadata'],
|
||||
'enableInternetProviders': !exists(json, 'EnableInternetProviders') ? undefined : json['EnableInternetProviders'],
|
||||
'enableAutomaticSeriesGrouping': !exists(json, 'EnableAutomaticSeriesGrouping') ? undefined : json['EnableAutomaticSeriesGrouping'],
|
||||
'enableEmbeddedTitles': !exists(json, 'EnableEmbeddedTitles') ? undefined : json['EnableEmbeddedTitles'],
|
||||
'enableEmbeddedEpisodeInfos': !exists(json, 'EnableEmbeddedEpisodeInfos') ? undefined : json['EnableEmbeddedEpisodeInfos'],
|
||||
'automaticRefreshIntervalDays': !exists(json, 'AutomaticRefreshIntervalDays') ? undefined : json['AutomaticRefreshIntervalDays'],
|
||||
'preferredMetadataLanguage': !exists(json, 'PreferredMetadataLanguage') ? undefined : json['PreferredMetadataLanguage'],
|
||||
'metadataCountryCode': !exists(json, 'MetadataCountryCode') ? undefined : json['MetadataCountryCode'],
|
||||
'seasonZeroDisplayName': !exists(json, 'SeasonZeroDisplayName') ? undefined : json['SeasonZeroDisplayName'],
|
||||
'metadataSavers': !exists(json, 'MetadataSavers') ? undefined : json['MetadataSavers'],
|
||||
'disabledLocalMetadataReaders': !exists(json, 'DisabledLocalMetadataReaders') ? undefined : json['DisabledLocalMetadataReaders'],
|
||||
'localMetadataReaderOrder': !exists(json, 'LocalMetadataReaderOrder') ? undefined : json['LocalMetadataReaderOrder'],
|
||||
'disabledSubtitleFetchers': !exists(json, 'DisabledSubtitleFetchers') ? undefined : json['DisabledSubtitleFetchers'],
|
||||
'subtitleFetcherOrder': !exists(json, 'SubtitleFetcherOrder') ? undefined : json['SubtitleFetcherOrder'],
|
||||
'skipSubtitlesIfEmbeddedSubtitlesPresent': !exists(json, 'SkipSubtitlesIfEmbeddedSubtitlesPresent') ? undefined : json['SkipSubtitlesIfEmbeddedSubtitlesPresent'],
|
||||
'skipSubtitlesIfAudioTrackMatches': !exists(json, 'SkipSubtitlesIfAudioTrackMatches') ? undefined : json['SkipSubtitlesIfAudioTrackMatches'],
|
||||
'subtitleDownloadLanguages': !exists(json, 'SubtitleDownloadLanguages') ? undefined : json['SubtitleDownloadLanguages'],
|
||||
'requirePerfectSubtitleMatch': !exists(json, 'RequirePerfectSubtitleMatch') ? undefined : json['RequirePerfectSubtitleMatch'],
|
||||
'saveSubtitlesWithMedia': !exists(json, 'SaveSubtitlesWithMedia') ? undefined : json['SaveSubtitlesWithMedia'],
|
||||
'automaticallyAddToCollection': !exists(json, 'AutomaticallyAddToCollection') ? undefined : json['AutomaticallyAddToCollection'],
|
||||
'allowEmbeddedSubtitles': !exists(json, 'AllowEmbeddedSubtitles') ? undefined : EmbeddedSubtitleOptionsFromJSON(json['AllowEmbeddedSubtitles']),
|
||||
'typeOptions': !exists(json, 'TypeOptions') ? undefined : ((json['TypeOptions'] as Array<any>).map(TypeOptionsFromJSON)),
|
||||
};
|
||||
}
|
||||
|
||||
export function AddVirtualFolderDtoLibraryOptionsToJSON(value?: AddVirtualFolderDtoLibraryOptions | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'EnablePhotos': value.enablePhotos,
|
||||
'EnableRealtimeMonitor': value.enableRealtimeMonitor,
|
||||
'EnableChapterImageExtraction': value.enableChapterImageExtraction,
|
||||
'ExtractChapterImagesDuringLibraryScan': value.extractChapterImagesDuringLibraryScan,
|
||||
'PathInfos': value.pathInfos === undefined ? undefined : ((value.pathInfos as Array<any>).map(MediaPathInfoToJSON)),
|
||||
'SaveLocalMetadata': value.saveLocalMetadata,
|
||||
'EnableInternetProviders': value.enableInternetProviders,
|
||||
'EnableAutomaticSeriesGrouping': value.enableAutomaticSeriesGrouping,
|
||||
'EnableEmbeddedTitles': value.enableEmbeddedTitles,
|
||||
'EnableEmbeddedEpisodeInfos': value.enableEmbeddedEpisodeInfos,
|
||||
'AutomaticRefreshIntervalDays': value.automaticRefreshIntervalDays,
|
||||
'PreferredMetadataLanguage': value.preferredMetadataLanguage,
|
||||
'MetadataCountryCode': value.metadataCountryCode,
|
||||
'SeasonZeroDisplayName': value.seasonZeroDisplayName,
|
||||
'MetadataSavers': value.metadataSavers,
|
||||
'DisabledLocalMetadataReaders': value.disabledLocalMetadataReaders,
|
||||
'LocalMetadataReaderOrder': value.localMetadataReaderOrder,
|
||||
'DisabledSubtitleFetchers': value.disabledSubtitleFetchers,
|
||||
'SubtitleFetcherOrder': value.subtitleFetcherOrder,
|
||||
'SkipSubtitlesIfEmbeddedSubtitlesPresent': value.skipSubtitlesIfEmbeddedSubtitlesPresent,
|
||||
'SkipSubtitlesIfAudioTrackMatches': value.skipSubtitlesIfAudioTrackMatches,
|
||||
'SubtitleDownloadLanguages': value.subtitleDownloadLanguages,
|
||||
'RequirePerfectSubtitleMatch': value.requirePerfectSubtitleMatch,
|
||||
'SaveSubtitlesWithMedia': value.saveSubtitlesWithMedia,
|
||||
'AutomaticallyAddToCollection': value.automaticallyAddToCollection,
|
||||
'AllowEmbeddedSubtitles': EmbeddedSubtitleOptionsToJSON(value.allowEmbeddedSubtitles),
|
||||
'TypeOptions': value.typeOptions === undefined ? undefined : ((value.typeOptions as Array<any>).map(TypeOptionsToJSON)),
|
||||
};
|
||||
}
|
||||
|
||||
72
server/jellyfin/models/AddVirtualFolderRequest.ts
Normal file
72
server/jellyfin/models/AddVirtualFolderRequest.ts
Normal file
@ -0,0 +1,72 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { AddVirtualFolderDtoLibraryOptions } from './AddVirtualFolderDtoLibraryOptions';
|
||||
import {
|
||||
AddVirtualFolderDtoLibraryOptionsFromJSON,
|
||||
AddVirtualFolderDtoLibraryOptionsFromJSONTyped,
|
||||
AddVirtualFolderDtoLibraryOptionsToJSON,
|
||||
} from './AddVirtualFolderDtoLibraryOptions';
|
||||
|
||||
/**
|
||||
* Add virtual folder dto.
|
||||
* @export
|
||||
* @interface AddVirtualFolderRequest
|
||||
*/
|
||||
export interface AddVirtualFolderRequest {
|
||||
/**
|
||||
*
|
||||
* @type {AddVirtualFolderDtoLibraryOptions}
|
||||
* @memberof AddVirtualFolderRequest
|
||||
*/
|
||||
libraryOptions?: AddVirtualFolderDtoLibraryOptions | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AddVirtualFolderRequest interface.
|
||||
*/
|
||||
export function instanceOfAddVirtualFolderRequest(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AddVirtualFolderRequestFromJSON(json: any): AddVirtualFolderRequest {
|
||||
return AddVirtualFolderRequestFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AddVirtualFolderRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AddVirtualFolderRequest {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'libraryOptions': !exists(json, 'LibraryOptions') ? undefined : AddVirtualFolderDtoLibraryOptionsFromJSON(json['LibraryOptions']),
|
||||
};
|
||||
}
|
||||
|
||||
export function AddVirtualFolderRequestToJSON(value?: AddVirtualFolderRequest | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'LibraryOptions': AddVirtualFolderDtoLibraryOptionsToJSON(value.libraryOptions),
|
||||
};
|
||||
}
|
||||
|
||||
96
server/jellyfin/models/AdminNotificationDto.ts
Normal file
96
server/jellyfin/models/AdminNotificationDto.ts
Normal file
@ -0,0 +1,96 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { NotificationLevel } from './NotificationLevel';
|
||||
import {
|
||||
NotificationLevelFromJSON,
|
||||
NotificationLevelFromJSONTyped,
|
||||
NotificationLevelToJSON,
|
||||
} from './NotificationLevel';
|
||||
|
||||
/**
|
||||
* The admin notification dto.
|
||||
* @export
|
||||
* @interface AdminNotificationDto
|
||||
*/
|
||||
export interface AdminNotificationDto {
|
||||
/**
|
||||
* Gets or sets the notification name.
|
||||
* @type {string}
|
||||
* @memberof AdminNotificationDto
|
||||
*/
|
||||
name?: string | null;
|
||||
/**
|
||||
* Gets or sets the notification description.
|
||||
* @type {string}
|
||||
* @memberof AdminNotificationDto
|
||||
*/
|
||||
description?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {NotificationLevel}
|
||||
* @memberof AdminNotificationDto
|
||||
*/
|
||||
notificationLevel?: NotificationLevel | null;
|
||||
/**
|
||||
* Gets or sets the notification url.
|
||||
* @type {string}
|
||||
* @memberof AdminNotificationDto
|
||||
*/
|
||||
url?: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AdminNotificationDto interface.
|
||||
*/
|
||||
export function instanceOfAdminNotificationDto(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AdminNotificationDtoFromJSON(json: any): AdminNotificationDto {
|
||||
return AdminNotificationDtoFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AdminNotificationDtoFromJSONTyped(json: any, ignoreDiscriminator: boolean): AdminNotificationDto {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'name': !exists(json, 'Name') ? undefined : json['Name'],
|
||||
'description': !exists(json, 'Description') ? undefined : json['Description'],
|
||||
'notificationLevel': !exists(json, 'NotificationLevel') ? undefined : NotificationLevelFromJSON(json['NotificationLevel']),
|
||||
'url': !exists(json, 'Url') ? undefined : json['Url'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AdminNotificationDtoToJSON(value?: AdminNotificationDto | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Name': value.name,
|
||||
'Description': value.description,
|
||||
'NotificationLevel': NotificationLevelToJSON(value.notificationLevel),
|
||||
'Url': value.url,
|
||||
};
|
||||
}
|
||||
|
||||
176
server/jellyfin/models/AlbumInfo.ts
Normal file
176
server/jellyfin/models/AlbumInfo.ts
Normal file
@ -0,0 +1,176 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { SongInfo } from './SongInfo';
|
||||
import {
|
||||
SongInfoFromJSON,
|
||||
SongInfoFromJSONTyped,
|
||||
SongInfoToJSON,
|
||||
} from './SongInfo';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface AlbumInfo
|
||||
*/
|
||||
export interface AlbumInfo {
|
||||
/**
|
||||
* Gets or sets the name.
|
||||
* @type {string}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
name?: string | null;
|
||||
/**
|
||||
* Gets or sets the original title.
|
||||
* @type {string}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
originalTitle?: string | null;
|
||||
/**
|
||||
* Gets or sets the path.
|
||||
* @type {string}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
path?: string | null;
|
||||
/**
|
||||
* Gets or sets the metadata language.
|
||||
* @type {string}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
metadataLanguage?: string | null;
|
||||
/**
|
||||
* Gets or sets the metadata country code.
|
||||
* @type {string}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
metadataCountryCode?: string | null;
|
||||
/**
|
||||
* Gets or sets the provider ids.
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
providerIds?: { [key: string]: string; } | null;
|
||||
/**
|
||||
* Gets or sets the year.
|
||||
* @type {number}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
year?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
indexNumber?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
parentIndexNumber?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
premiereDate?: Date | null;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
isAutomated?: boolean;
|
||||
/**
|
||||
* Gets or sets the album artist.
|
||||
* @type {Array<string>}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
albumArtists?: Array<string>;
|
||||
/**
|
||||
* Gets or sets the artist provider ids.
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
artistProviderIds?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {Array<SongInfo>}
|
||||
* @memberof AlbumInfo
|
||||
*/
|
||||
songInfos?: Array<SongInfo>;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AlbumInfo interface.
|
||||
*/
|
||||
export function instanceOfAlbumInfo(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AlbumInfoFromJSON(json: any): AlbumInfo {
|
||||
return AlbumInfoFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AlbumInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): AlbumInfo {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'name': !exists(json, 'Name') ? undefined : json['Name'],
|
||||
'originalTitle': !exists(json, 'OriginalTitle') ? undefined : json['OriginalTitle'],
|
||||
'path': !exists(json, 'Path') ? undefined : json['Path'],
|
||||
'metadataLanguage': !exists(json, 'MetadataLanguage') ? undefined : json['MetadataLanguage'],
|
||||
'metadataCountryCode': !exists(json, 'MetadataCountryCode') ? undefined : json['MetadataCountryCode'],
|
||||
'providerIds': !exists(json, 'ProviderIds') ? undefined : json['ProviderIds'],
|
||||
'year': !exists(json, 'Year') ? undefined : json['Year'],
|
||||
'indexNumber': !exists(json, 'IndexNumber') ? undefined : json['IndexNumber'],
|
||||
'parentIndexNumber': !exists(json, 'ParentIndexNumber') ? undefined : json['ParentIndexNumber'],
|
||||
'premiereDate': !exists(json, 'PremiereDate') ? undefined : (json['PremiereDate'] === null ? null : new Date(json['PremiereDate'])),
|
||||
'isAutomated': !exists(json, 'IsAutomated') ? undefined : json['IsAutomated'],
|
||||
'albumArtists': !exists(json, 'AlbumArtists') ? undefined : json['AlbumArtists'],
|
||||
'artistProviderIds': !exists(json, 'ArtistProviderIds') ? undefined : json['ArtistProviderIds'],
|
||||
'songInfos': !exists(json, 'SongInfos') ? undefined : ((json['SongInfos'] as Array<any>).map(SongInfoFromJSON)),
|
||||
};
|
||||
}
|
||||
|
||||
export function AlbumInfoToJSON(value?: AlbumInfo | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Name': value.name,
|
||||
'OriginalTitle': value.originalTitle,
|
||||
'Path': value.path,
|
||||
'MetadataLanguage': value.metadataLanguage,
|
||||
'MetadataCountryCode': value.metadataCountryCode,
|
||||
'ProviderIds': value.providerIds,
|
||||
'Year': value.year,
|
||||
'IndexNumber': value.indexNumber,
|
||||
'ParentIndexNumber': value.parentIndexNumber,
|
||||
'PremiereDate': value.premiereDate === undefined ? undefined : (value.premiereDate === null ? null : value.premiereDate.toISOString()),
|
||||
'IsAutomated': value.isAutomated,
|
||||
'AlbumArtists': value.albumArtists,
|
||||
'ArtistProviderIds': value.artistProviderIds,
|
||||
'SongInfos': value.songInfos === undefined ? undefined : ((value.songInfos as Array<any>).map(SongInfoToJSON)),
|
||||
};
|
||||
}
|
||||
|
||||
96
server/jellyfin/models/AlbumInfoRemoteSearchQuery.ts
Normal file
96
server/jellyfin/models/AlbumInfoRemoteSearchQuery.ts
Normal file
@ -0,0 +1,96 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { AlbumInfo } from './AlbumInfo';
|
||||
import {
|
||||
AlbumInfoFromJSON,
|
||||
AlbumInfoFromJSONTyped,
|
||||
AlbumInfoToJSON,
|
||||
} from './AlbumInfo';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface AlbumInfoRemoteSearchQuery
|
||||
*/
|
||||
export interface AlbumInfoRemoteSearchQuery {
|
||||
/**
|
||||
*
|
||||
* @type {AlbumInfo}
|
||||
* @memberof AlbumInfoRemoteSearchQuery
|
||||
*/
|
||||
searchInfo?: AlbumInfo | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AlbumInfoRemoteSearchQuery
|
||||
*/
|
||||
itemId?: string;
|
||||
/**
|
||||
* Gets or sets the provider name to search within if set.
|
||||
* @type {string}
|
||||
* @memberof AlbumInfoRemoteSearchQuery
|
||||
*/
|
||||
searchProviderName?: string | null;
|
||||
/**
|
||||
* Gets or sets a value indicating whether disabled providers should be included.
|
||||
* @type {boolean}
|
||||
* @memberof AlbumInfoRemoteSearchQuery
|
||||
*/
|
||||
includeDisabledProviders?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AlbumInfoRemoteSearchQuery interface.
|
||||
*/
|
||||
export function instanceOfAlbumInfoRemoteSearchQuery(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AlbumInfoRemoteSearchQueryFromJSON(json: any): AlbumInfoRemoteSearchQuery {
|
||||
return AlbumInfoRemoteSearchQueryFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AlbumInfoRemoteSearchQueryFromJSONTyped(json: any, ignoreDiscriminator: boolean): AlbumInfoRemoteSearchQuery {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'searchInfo': !exists(json, 'SearchInfo') ? undefined : AlbumInfoFromJSON(json['SearchInfo']),
|
||||
'itemId': !exists(json, 'ItemId') ? undefined : json['ItemId'],
|
||||
'searchProviderName': !exists(json, 'SearchProviderName') ? undefined : json['SearchProviderName'],
|
||||
'includeDisabledProviders': !exists(json, 'IncludeDisabledProviders') ? undefined : json['IncludeDisabledProviders'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AlbumInfoRemoteSearchQueryToJSON(value?: AlbumInfoRemoteSearchQuery | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'SearchInfo': AlbumInfoToJSON(value.searchInfo),
|
||||
'ItemId': value.itemId,
|
||||
'SearchProviderName': value.searchProviderName,
|
||||
'IncludeDisabledProviders': value.includeDisabledProviders,
|
||||
};
|
||||
}
|
||||
|
||||
88
server/jellyfin/models/AllThemeMediaResult.ts
Normal file
88
server/jellyfin/models/AllThemeMediaResult.ts
Normal file
@ -0,0 +1,88 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { AllThemeMediaResultThemeVideosResult } from './AllThemeMediaResultThemeVideosResult';
|
||||
import {
|
||||
AllThemeMediaResultThemeVideosResultFromJSON,
|
||||
AllThemeMediaResultThemeVideosResultFromJSONTyped,
|
||||
AllThemeMediaResultThemeVideosResultToJSON,
|
||||
} from './AllThemeMediaResultThemeVideosResult';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface AllThemeMediaResult
|
||||
*/
|
||||
export interface AllThemeMediaResult {
|
||||
/**
|
||||
*
|
||||
* @type {AllThemeMediaResultThemeVideosResult}
|
||||
* @memberof AllThemeMediaResult
|
||||
*/
|
||||
themeVideosResult?: AllThemeMediaResultThemeVideosResult | null;
|
||||
/**
|
||||
*
|
||||
* @type {AllThemeMediaResultThemeVideosResult}
|
||||
* @memberof AllThemeMediaResult
|
||||
*/
|
||||
themeSongsResult?: AllThemeMediaResultThemeVideosResult | null;
|
||||
/**
|
||||
*
|
||||
* @type {AllThemeMediaResultThemeVideosResult}
|
||||
* @memberof AllThemeMediaResult
|
||||
*/
|
||||
soundtrackSongsResult?: AllThemeMediaResultThemeVideosResult | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AllThemeMediaResult interface.
|
||||
*/
|
||||
export function instanceOfAllThemeMediaResult(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AllThemeMediaResultFromJSON(json: any): AllThemeMediaResult {
|
||||
return AllThemeMediaResultFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AllThemeMediaResultFromJSONTyped(json: any, ignoreDiscriminator: boolean): AllThemeMediaResult {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'themeVideosResult': !exists(json, 'ThemeVideosResult') ? undefined : AllThemeMediaResultThemeVideosResultFromJSON(json['ThemeVideosResult']),
|
||||
'themeSongsResult': !exists(json, 'ThemeSongsResult') ? undefined : AllThemeMediaResultThemeVideosResultFromJSON(json['ThemeSongsResult']),
|
||||
'soundtrackSongsResult': !exists(json, 'SoundtrackSongsResult') ? undefined : AllThemeMediaResultThemeVideosResultFromJSON(json['SoundtrackSongsResult']),
|
||||
};
|
||||
}
|
||||
|
||||
export function AllThemeMediaResultToJSON(value?: AllThemeMediaResult | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'ThemeVideosResult': AllThemeMediaResultThemeVideosResultToJSON(value.themeVideosResult),
|
||||
'ThemeSongsResult': AllThemeMediaResultThemeVideosResultToJSON(value.themeSongsResult),
|
||||
'SoundtrackSongsResult': AllThemeMediaResultThemeVideosResultToJSON(value.soundtrackSongsResult),
|
||||
};
|
||||
}
|
||||
|
||||
@ -0,0 +1,96 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { BaseItemDto } from './BaseItemDto';
|
||||
import {
|
||||
BaseItemDtoFromJSON,
|
||||
BaseItemDtoFromJSONTyped,
|
||||
BaseItemDtoToJSON,
|
||||
} from './BaseItemDto';
|
||||
|
||||
/**
|
||||
* Class ThemeMediaResult.
|
||||
* @export
|
||||
* @interface AllThemeMediaResultThemeVideosResult
|
||||
*/
|
||||
export interface AllThemeMediaResultThemeVideosResult {
|
||||
/**
|
||||
* Gets or sets the items.
|
||||
* @type {Array<BaseItemDto>}
|
||||
* @memberof AllThemeMediaResultThemeVideosResult
|
||||
*/
|
||||
items?: Array<BaseItemDto> | null;
|
||||
/**
|
||||
* Gets or sets the total number of records available.
|
||||
* @type {number}
|
||||
* @memberof AllThemeMediaResultThemeVideosResult
|
||||
*/
|
||||
totalRecordCount?: number;
|
||||
/**
|
||||
* Gets or sets the index of the first record in Items.
|
||||
* @type {number}
|
||||
* @memberof AllThemeMediaResultThemeVideosResult
|
||||
*/
|
||||
startIndex?: number;
|
||||
/**
|
||||
* Gets or sets the owner id.
|
||||
* @type {string}
|
||||
* @memberof AllThemeMediaResultThemeVideosResult
|
||||
*/
|
||||
ownerId?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AllThemeMediaResultThemeVideosResult interface.
|
||||
*/
|
||||
export function instanceOfAllThemeMediaResultThemeVideosResult(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AllThemeMediaResultThemeVideosResultFromJSON(json: any): AllThemeMediaResultThemeVideosResult {
|
||||
return AllThemeMediaResultThemeVideosResultFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AllThemeMediaResultThemeVideosResultFromJSONTyped(json: any, ignoreDiscriminator: boolean): AllThemeMediaResultThemeVideosResult {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'items': !exists(json, 'Items') ? undefined : (json['Items'] === null ? null : (json['Items'] as Array<any>).map(BaseItemDtoFromJSON)),
|
||||
'totalRecordCount': !exists(json, 'TotalRecordCount') ? undefined : json['TotalRecordCount'],
|
||||
'startIndex': !exists(json, 'StartIndex') ? undefined : json['StartIndex'],
|
||||
'ownerId': !exists(json, 'OwnerId') ? undefined : json['OwnerId'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AllThemeMediaResultThemeVideosResultToJSON(value?: AllThemeMediaResultThemeVideosResult | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Items': value.items === undefined ? undefined : (value.items === null ? null : (value.items as Array<any>).map(BaseItemDtoToJSON)),
|
||||
'TotalRecordCount': value.totalRecordCount,
|
||||
'StartIndex': value.startIndex,
|
||||
'OwnerId': value.ownerId,
|
||||
};
|
||||
}
|
||||
|
||||
160
server/jellyfin/models/ApplySearchCriteriaRequest.ts
Normal file
160
server/jellyfin/models/ApplySearchCriteriaRequest.ts
Normal file
@ -0,0 +1,160 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { RemoteSearchResult } from './RemoteSearchResult';
|
||||
import {
|
||||
RemoteSearchResultFromJSON,
|
||||
RemoteSearchResultFromJSONTyped,
|
||||
RemoteSearchResultToJSON,
|
||||
} from './RemoteSearchResult';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface ApplySearchCriteriaRequest
|
||||
*/
|
||||
export interface ApplySearchCriteriaRequest {
|
||||
/**
|
||||
* Gets or sets the name.
|
||||
* @type {string}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
name?: string | null;
|
||||
/**
|
||||
* Gets or sets the provider ids.
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
providerIds?: { [key: string]: string; } | null;
|
||||
/**
|
||||
* Gets or sets the year.
|
||||
* @type {number}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
productionYear?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
indexNumber?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
indexNumberEnd?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
parentIndexNumber?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
premiereDate?: Date | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
imageUrl?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
searchProviderName?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
overview?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {RemoteSearchResult}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
albumArtist?: RemoteSearchResult | null;
|
||||
/**
|
||||
*
|
||||
* @type {Array<RemoteSearchResult>}
|
||||
* @memberof ApplySearchCriteriaRequest
|
||||
*/
|
||||
artists?: Array<RemoteSearchResult> | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the ApplySearchCriteriaRequest interface.
|
||||
*/
|
||||
export function instanceOfApplySearchCriteriaRequest(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function ApplySearchCriteriaRequestFromJSON(json: any): ApplySearchCriteriaRequest {
|
||||
return ApplySearchCriteriaRequestFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function ApplySearchCriteriaRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): ApplySearchCriteriaRequest {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'name': !exists(json, 'Name') ? undefined : json['Name'],
|
||||
'providerIds': !exists(json, 'ProviderIds') ? undefined : json['ProviderIds'],
|
||||
'productionYear': !exists(json, 'ProductionYear') ? undefined : json['ProductionYear'],
|
||||
'indexNumber': !exists(json, 'IndexNumber') ? undefined : json['IndexNumber'],
|
||||
'indexNumberEnd': !exists(json, 'IndexNumberEnd') ? undefined : json['IndexNumberEnd'],
|
||||
'parentIndexNumber': !exists(json, 'ParentIndexNumber') ? undefined : json['ParentIndexNumber'],
|
||||
'premiereDate': !exists(json, 'PremiereDate') ? undefined : (json['PremiereDate'] === null ? null : new Date(json['PremiereDate'])),
|
||||
'imageUrl': !exists(json, 'ImageUrl') ? undefined : json['ImageUrl'],
|
||||
'searchProviderName': !exists(json, 'SearchProviderName') ? undefined : json['SearchProviderName'],
|
||||
'overview': !exists(json, 'Overview') ? undefined : json['Overview'],
|
||||
'albumArtist': !exists(json, 'AlbumArtist') ? undefined : RemoteSearchResultFromJSON(json['AlbumArtist']),
|
||||
'artists': !exists(json, 'Artists') ? undefined : (json['Artists'] === null ? null : (json['Artists'] as Array<any>).map(RemoteSearchResultFromJSON)),
|
||||
};
|
||||
}
|
||||
|
||||
export function ApplySearchCriteriaRequestToJSON(value?: ApplySearchCriteriaRequest | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Name': value.name,
|
||||
'ProviderIds': value.providerIds,
|
||||
'ProductionYear': value.productionYear,
|
||||
'IndexNumber': value.indexNumber,
|
||||
'IndexNumberEnd': value.indexNumberEnd,
|
||||
'ParentIndexNumber': value.parentIndexNumber,
|
||||
'PremiereDate': value.premiereDate === undefined ? undefined : (value.premiereDate === null ? null : value.premiereDate.toISOString()),
|
||||
'ImageUrl': value.imageUrl,
|
||||
'SearchProviderName': value.searchProviderName,
|
||||
'Overview': value.overview,
|
||||
'AlbumArtist': RemoteSearchResultToJSON(value.albumArtist),
|
||||
'Artists': value.artists === undefined ? undefined : (value.artists === null ? null : (value.artists as Array<any>).map(RemoteSearchResultToJSON)),
|
||||
};
|
||||
}
|
||||
|
||||
42
server/jellyfin/models/Architecture.ts
Normal file
42
server/jellyfin/models/Architecture.ts
Normal file
@ -0,0 +1,42 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
*/
|
||||
export const Architecture = {
|
||||
X86: 'X86',
|
||||
X64: 'X64',
|
||||
Arm: 'Arm',
|
||||
Arm64: 'Arm64',
|
||||
Wasm: 'Wasm',
|
||||
S390x: 'S390x'
|
||||
} as const;
|
||||
export type Architecture = typeof Architecture[keyof typeof Architecture];
|
||||
|
||||
|
||||
export function ArchitectureFromJSON(json: any): Architecture {
|
||||
return ArchitectureFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function ArchitectureFromJSONTyped(json: any, ignoreDiscriminator: boolean): Architecture {
|
||||
return json as Architecture;
|
||||
}
|
||||
|
||||
export function ArchitectureToJSON(value?: Architecture | null): any {
|
||||
return value as any;
|
||||
}
|
||||
|
||||
160
server/jellyfin/models/ArtistInfo.ts
Normal file
160
server/jellyfin/models/ArtistInfo.ts
Normal file
@ -0,0 +1,160 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { SongInfo } from './SongInfo';
|
||||
import {
|
||||
SongInfoFromJSON,
|
||||
SongInfoFromJSONTyped,
|
||||
SongInfoToJSON,
|
||||
} from './SongInfo';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface ArtistInfo
|
||||
*/
|
||||
export interface ArtistInfo {
|
||||
/**
|
||||
* Gets or sets the name.
|
||||
* @type {string}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
name?: string | null;
|
||||
/**
|
||||
* Gets or sets the original title.
|
||||
* @type {string}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
originalTitle?: string | null;
|
||||
/**
|
||||
* Gets or sets the path.
|
||||
* @type {string}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
path?: string | null;
|
||||
/**
|
||||
* Gets or sets the metadata language.
|
||||
* @type {string}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
metadataLanguage?: string | null;
|
||||
/**
|
||||
* Gets or sets the metadata country code.
|
||||
* @type {string}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
metadataCountryCode?: string | null;
|
||||
/**
|
||||
* Gets or sets the provider ids.
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
providerIds?: { [key: string]: string; } | null;
|
||||
/**
|
||||
* Gets or sets the year.
|
||||
* @type {number}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
year?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
indexNumber?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
parentIndexNumber?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
premiereDate?: Date | null;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
isAutomated?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {Array<SongInfo>}
|
||||
* @memberof ArtistInfo
|
||||
*/
|
||||
songInfos?: Array<SongInfo>;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the ArtistInfo interface.
|
||||
*/
|
||||
export function instanceOfArtistInfo(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function ArtistInfoFromJSON(json: any): ArtistInfo {
|
||||
return ArtistInfoFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function ArtistInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): ArtistInfo {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'name': !exists(json, 'Name') ? undefined : json['Name'],
|
||||
'originalTitle': !exists(json, 'OriginalTitle') ? undefined : json['OriginalTitle'],
|
||||
'path': !exists(json, 'Path') ? undefined : json['Path'],
|
||||
'metadataLanguage': !exists(json, 'MetadataLanguage') ? undefined : json['MetadataLanguage'],
|
||||
'metadataCountryCode': !exists(json, 'MetadataCountryCode') ? undefined : json['MetadataCountryCode'],
|
||||
'providerIds': !exists(json, 'ProviderIds') ? undefined : json['ProviderIds'],
|
||||
'year': !exists(json, 'Year') ? undefined : json['Year'],
|
||||
'indexNumber': !exists(json, 'IndexNumber') ? undefined : json['IndexNumber'],
|
||||
'parentIndexNumber': !exists(json, 'ParentIndexNumber') ? undefined : json['ParentIndexNumber'],
|
||||
'premiereDate': !exists(json, 'PremiereDate') ? undefined : (json['PremiereDate'] === null ? null : new Date(json['PremiereDate'])),
|
||||
'isAutomated': !exists(json, 'IsAutomated') ? undefined : json['IsAutomated'],
|
||||
'songInfos': !exists(json, 'SongInfos') ? undefined : ((json['SongInfos'] as Array<any>).map(SongInfoFromJSON)),
|
||||
};
|
||||
}
|
||||
|
||||
export function ArtistInfoToJSON(value?: ArtistInfo | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Name': value.name,
|
||||
'OriginalTitle': value.originalTitle,
|
||||
'Path': value.path,
|
||||
'MetadataLanguage': value.metadataLanguage,
|
||||
'MetadataCountryCode': value.metadataCountryCode,
|
||||
'ProviderIds': value.providerIds,
|
||||
'Year': value.year,
|
||||
'IndexNumber': value.indexNumber,
|
||||
'ParentIndexNumber': value.parentIndexNumber,
|
||||
'PremiereDate': value.premiereDate === undefined ? undefined : (value.premiereDate === null ? null : value.premiereDate.toISOString()),
|
||||
'IsAutomated': value.isAutomated,
|
||||
'SongInfos': value.songInfos === undefined ? undefined : ((value.songInfos as Array<any>).map(SongInfoToJSON)),
|
||||
};
|
||||
}
|
||||
|
||||
96
server/jellyfin/models/ArtistInfoRemoteSearchQuery.ts
Normal file
96
server/jellyfin/models/ArtistInfoRemoteSearchQuery.ts
Normal file
@ -0,0 +1,96 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { ArtistInfo } from './ArtistInfo';
|
||||
import {
|
||||
ArtistInfoFromJSON,
|
||||
ArtistInfoFromJSONTyped,
|
||||
ArtistInfoToJSON,
|
||||
} from './ArtistInfo';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface ArtistInfoRemoteSearchQuery
|
||||
*/
|
||||
export interface ArtistInfoRemoteSearchQuery {
|
||||
/**
|
||||
*
|
||||
* @type {ArtistInfo}
|
||||
* @memberof ArtistInfoRemoteSearchQuery
|
||||
*/
|
||||
searchInfo?: ArtistInfo | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof ArtistInfoRemoteSearchQuery
|
||||
*/
|
||||
itemId?: string;
|
||||
/**
|
||||
* Gets or sets the provider name to search within if set.
|
||||
* @type {string}
|
||||
* @memberof ArtistInfoRemoteSearchQuery
|
||||
*/
|
||||
searchProviderName?: string | null;
|
||||
/**
|
||||
* Gets or sets a value indicating whether disabled providers should be included.
|
||||
* @type {boolean}
|
||||
* @memberof ArtistInfoRemoteSearchQuery
|
||||
*/
|
||||
includeDisabledProviders?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the ArtistInfoRemoteSearchQuery interface.
|
||||
*/
|
||||
export function instanceOfArtistInfoRemoteSearchQuery(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function ArtistInfoRemoteSearchQueryFromJSON(json: any): ArtistInfoRemoteSearchQuery {
|
||||
return ArtistInfoRemoteSearchQueryFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function ArtistInfoRemoteSearchQueryFromJSONTyped(json: any, ignoreDiscriminator: boolean): ArtistInfoRemoteSearchQuery {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'searchInfo': !exists(json, 'SearchInfo') ? undefined : ArtistInfoFromJSON(json['SearchInfo']),
|
||||
'itemId': !exists(json, 'ItemId') ? undefined : json['ItemId'],
|
||||
'searchProviderName': !exists(json, 'SearchProviderName') ? undefined : json['SearchProviderName'],
|
||||
'includeDisabledProviders': !exists(json, 'IncludeDisabledProviders') ? undefined : json['IncludeDisabledProviders'],
|
||||
};
|
||||
}
|
||||
|
||||
export function ArtistInfoRemoteSearchQueryToJSON(value?: ArtistInfoRemoteSearchQuery | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'SearchInfo': ArtistInfoToJSON(value.searchInfo),
|
||||
'ItemId': value.itemId,
|
||||
'SearchProviderName': value.searchProviderName,
|
||||
'IncludeDisabledProviders': value.includeDisabledProviders,
|
||||
};
|
||||
}
|
||||
|
||||
82
server/jellyfin/models/AuthenticateUserByName.ts
Normal file
82
server/jellyfin/models/AuthenticateUserByName.ts
Normal file
@ -0,0 +1,82 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
/**
|
||||
* The authenticate user by name request body.
|
||||
* @export
|
||||
* @interface AuthenticateUserByName
|
||||
*/
|
||||
export interface AuthenticateUserByName {
|
||||
/**
|
||||
* Gets or sets the username.
|
||||
* @type {string}
|
||||
* @memberof AuthenticateUserByName
|
||||
*/
|
||||
username?: string | null;
|
||||
/**
|
||||
* Gets or sets the plain text password.
|
||||
* @type {string}
|
||||
* @memberof AuthenticateUserByName
|
||||
*/
|
||||
pw?: string | null;
|
||||
/**
|
||||
* Gets or sets the sha1-hashed password.
|
||||
* @type {string}
|
||||
* @memberof AuthenticateUserByName
|
||||
* @deprecated
|
||||
*/
|
||||
password?: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AuthenticateUserByName interface.
|
||||
*/
|
||||
export function instanceOfAuthenticateUserByName(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AuthenticateUserByNameFromJSON(json: any): AuthenticateUserByName {
|
||||
return AuthenticateUserByNameFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AuthenticateUserByNameFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthenticateUserByName {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'username': !exists(json, 'Username') ? undefined : json['Username'],
|
||||
'pw': !exists(json, 'Pw') ? undefined : json['Pw'],
|
||||
'password': !exists(json, 'Password') ? undefined : json['Password'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AuthenticateUserByNameToJSON(value?: AuthenticateUserByName | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Username': value.username,
|
||||
'Pw': value.pw,
|
||||
'Password': value.password,
|
||||
};
|
||||
}
|
||||
|
||||
82
server/jellyfin/models/AuthenticateUserByNameRequest.ts
Normal file
82
server/jellyfin/models/AuthenticateUserByNameRequest.ts
Normal file
@ -0,0 +1,82 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
/**
|
||||
* The authenticate user by name request body.
|
||||
* @export
|
||||
* @interface AuthenticateUserByNameRequest
|
||||
*/
|
||||
export interface AuthenticateUserByNameRequest {
|
||||
/**
|
||||
* Gets or sets the username.
|
||||
* @type {string}
|
||||
* @memberof AuthenticateUserByNameRequest
|
||||
*/
|
||||
username?: string | null;
|
||||
/**
|
||||
* Gets or sets the plain text password.
|
||||
* @type {string}
|
||||
* @memberof AuthenticateUserByNameRequest
|
||||
*/
|
||||
pw?: string | null;
|
||||
/**
|
||||
* Gets or sets the sha1-hashed password.
|
||||
* @type {string}
|
||||
* @memberof AuthenticateUserByNameRequest
|
||||
* @deprecated
|
||||
*/
|
||||
password?: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AuthenticateUserByNameRequest interface.
|
||||
*/
|
||||
export function instanceOfAuthenticateUserByNameRequest(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AuthenticateUserByNameRequestFromJSON(json: any): AuthenticateUserByNameRequest {
|
||||
return AuthenticateUserByNameRequestFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AuthenticateUserByNameRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthenticateUserByNameRequest {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'username': !exists(json, 'Username') ? undefined : json['Username'],
|
||||
'pw': !exists(json, 'Pw') ? undefined : json['Pw'],
|
||||
'password': !exists(json, 'Password') ? undefined : json['Password'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AuthenticateUserByNameRequestToJSON(value?: AuthenticateUserByNameRequest | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Username': value.username,
|
||||
'Pw': value.pw,
|
||||
'Password': value.password,
|
||||
};
|
||||
}
|
||||
|
||||
@ -0,0 +1,66 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
/**
|
||||
* The quick connect request body.
|
||||
* @export
|
||||
* @interface AuthenticateWithQuickConnectRequest
|
||||
*/
|
||||
export interface AuthenticateWithQuickConnectRequest {
|
||||
/**
|
||||
* Gets or sets the quick connect secret.
|
||||
* @type {string}
|
||||
* @memberof AuthenticateWithQuickConnectRequest
|
||||
*/
|
||||
secret: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AuthenticateWithQuickConnectRequest interface.
|
||||
*/
|
||||
export function instanceOfAuthenticateWithQuickConnectRequest(value: object): boolean {
|
||||
let isInstance = true;
|
||||
isInstance = isInstance && "secret" in value;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AuthenticateWithQuickConnectRequestFromJSON(json: any): AuthenticateWithQuickConnectRequest {
|
||||
return AuthenticateWithQuickConnectRequestFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AuthenticateWithQuickConnectRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthenticateWithQuickConnectRequest {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'secret': json['Secret'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AuthenticateWithQuickConnectRequestToJSON(value?: AuthenticateWithQuickConnectRequest | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Secret': value.secret,
|
||||
};
|
||||
}
|
||||
|
||||
153
server/jellyfin/models/AuthenticationInfo.ts
Normal file
153
server/jellyfin/models/AuthenticationInfo.ts
Normal file
@ -0,0 +1,153 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface AuthenticationInfo
|
||||
*/
|
||||
export interface AuthenticationInfo {
|
||||
/**
|
||||
* Gets or sets the identifier.
|
||||
* @type {number}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
id?: number;
|
||||
/**
|
||||
* Gets or sets the access token.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
accessToken?: string | null;
|
||||
/**
|
||||
* Gets or sets the device identifier.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
deviceId?: string | null;
|
||||
/**
|
||||
* Gets or sets the name of the application.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
appName?: string | null;
|
||||
/**
|
||||
* Gets or sets the application version.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
appVersion?: string | null;
|
||||
/**
|
||||
* Gets or sets the name of the device.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
deviceName?: string | null;
|
||||
/**
|
||||
* Gets or sets the user identifier.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
userId?: string;
|
||||
/**
|
||||
* Gets or sets a value indicating whether this instance is active.
|
||||
* @type {boolean}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
isActive?: boolean;
|
||||
/**
|
||||
* Gets or sets the date created.
|
||||
* @type {Date}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
dateCreated?: Date;
|
||||
/**
|
||||
* Gets or sets the date revoked.
|
||||
* @type {Date}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
dateRevoked?: Date | null;
|
||||
/**
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
dateLastActivity?: Date;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AuthenticationInfo
|
||||
*/
|
||||
userName?: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AuthenticationInfo interface.
|
||||
*/
|
||||
export function instanceOfAuthenticationInfo(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AuthenticationInfoFromJSON(json: any): AuthenticationInfo {
|
||||
return AuthenticationInfoFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AuthenticationInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthenticationInfo {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'id': !exists(json, 'Id') ? undefined : json['Id'],
|
||||
'accessToken': !exists(json, 'AccessToken') ? undefined : json['AccessToken'],
|
||||
'deviceId': !exists(json, 'DeviceId') ? undefined : json['DeviceId'],
|
||||
'appName': !exists(json, 'AppName') ? undefined : json['AppName'],
|
||||
'appVersion': !exists(json, 'AppVersion') ? undefined : json['AppVersion'],
|
||||
'deviceName': !exists(json, 'DeviceName') ? undefined : json['DeviceName'],
|
||||
'userId': !exists(json, 'UserId') ? undefined : json['UserId'],
|
||||
'isActive': !exists(json, 'IsActive') ? undefined : json['IsActive'],
|
||||
'dateCreated': !exists(json, 'DateCreated') ? undefined : (new Date(json['DateCreated'])),
|
||||
'dateRevoked': !exists(json, 'DateRevoked') ? undefined : (json['DateRevoked'] === null ? null : new Date(json['DateRevoked'])),
|
||||
'dateLastActivity': !exists(json, 'DateLastActivity') ? undefined : (new Date(json['DateLastActivity'])),
|
||||
'userName': !exists(json, 'UserName') ? undefined : json['UserName'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AuthenticationInfoToJSON(value?: AuthenticationInfo | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Id': value.id,
|
||||
'AccessToken': value.accessToken,
|
||||
'DeviceId': value.deviceId,
|
||||
'AppName': value.appName,
|
||||
'AppVersion': value.appVersion,
|
||||
'DeviceName': value.deviceName,
|
||||
'UserId': value.userId,
|
||||
'IsActive': value.isActive,
|
||||
'DateCreated': value.dateCreated === undefined ? undefined : (value.dateCreated.toISOString()),
|
||||
'DateRevoked': value.dateRevoked === undefined ? undefined : (value.dateRevoked === null ? null : value.dateRevoked.toISOString()),
|
||||
'DateLastActivity': value.dateLastActivity === undefined ? undefined : (value.dateLastActivity.toISOString()),
|
||||
'UserName': value.userName,
|
||||
};
|
||||
}
|
||||
|
||||
88
server/jellyfin/models/AuthenticationInfoQueryResult.ts
Normal file
88
server/jellyfin/models/AuthenticationInfoQueryResult.ts
Normal file
@ -0,0 +1,88 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { AuthenticationInfo } from './AuthenticationInfo';
|
||||
import {
|
||||
AuthenticationInfoFromJSON,
|
||||
AuthenticationInfoFromJSONTyped,
|
||||
AuthenticationInfoToJSON,
|
||||
} from './AuthenticationInfo';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface AuthenticationInfoQueryResult
|
||||
*/
|
||||
export interface AuthenticationInfoQueryResult {
|
||||
/**
|
||||
* Gets or sets the items.
|
||||
* @type {Array<AuthenticationInfo>}
|
||||
* @memberof AuthenticationInfoQueryResult
|
||||
*/
|
||||
items?: Array<AuthenticationInfo> | null;
|
||||
/**
|
||||
* Gets or sets the total number of records available.
|
||||
* @type {number}
|
||||
* @memberof AuthenticationInfoQueryResult
|
||||
*/
|
||||
totalRecordCount?: number;
|
||||
/**
|
||||
* Gets or sets the index of the first record in Items.
|
||||
* @type {number}
|
||||
* @memberof AuthenticationInfoQueryResult
|
||||
*/
|
||||
startIndex?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AuthenticationInfoQueryResult interface.
|
||||
*/
|
||||
export function instanceOfAuthenticationInfoQueryResult(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AuthenticationInfoQueryResultFromJSON(json: any): AuthenticationInfoQueryResult {
|
||||
return AuthenticationInfoQueryResultFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AuthenticationInfoQueryResultFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthenticationInfoQueryResult {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'items': !exists(json, 'Items') ? undefined : (json['Items'] === null ? null : (json['Items'] as Array<any>).map(AuthenticationInfoFromJSON)),
|
||||
'totalRecordCount': !exists(json, 'TotalRecordCount') ? undefined : json['TotalRecordCount'],
|
||||
'startIndex': !exists(json, 'StartIndex') ? undefined : json['StartIndex'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AuthenticationInfoQueryResultToJSON(value?: AuthenticationInfoQueryResult | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Items': value.items === undefined ? undefined : (value.items === null ? null : (value.items as Array<any>).map(AuthenticationInfoToJSON)),
|
||||
'TotalRecordCount': value.totalRecordCount,
|
||||
'StartIndex': value.startIndex,
|
||||
};
|
||||
}
|
||||
|
||||
102
server/jellyfin/models/AuthenticationResult.ts
Normal file
102
server/jellyfin/models/AuthenticationResult.ts
Normal file
@ -0,0 +1,102 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { AuthenticationResultSessionInfo } from './AuthenticationResultSessionInfo';
|
||||
import {
|
||||
AuthenticationResultSessionInfoFromJSON,
|
||||
AuthenticationResultSessionInfoFromJSONTyped,
|
||||
AuthenticationResultSessionInfoToJSON,
|
||||
} from './AuthenticationResultSessionInfo';
|
||||
import type { AuthenticationResultUser } from './AuthenticationResultUser';
|
||||
import {
|
||||
AuthenticationResultUserFromJSON,
|
||||
AuthenticationResultUserFromJSONTyped,
|
||||
AuthenticationResultUserToJSON,
|
||||
} from './AuthenticationResultUser';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface AuthenticationResult
|
||||
*/
|
||||
export interface AuthenticationResult {
|
||||
/**
|
||||
*
|
||||
* @type {AuthenticationResultUser}
|
||||
* @memberof AuthenticationResult
|
||||
*/
|
||||
user?: AuthenticationResultUser | null;
|
||||
/**
|
||||
*
|
||||
* @type {AuthenticationResultSessionInfo}
|
||||
* @memberof AuthenticationResult
|
||||
*/
|
||||
sessionInfo?: AuthenticationResultSessionInfo | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResult
|
||||
*/
|
||||
accessToken?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResult
|
||||
*/
|
||||
serverId?: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AuthenticationResult interface.
|
||||
*/
|
||||
export function instanceOfAuthenticationResult(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AuthenticationResultFromJSON(json: any): AuthenticationResult {
|
||||
return AuthenticationResultFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AuthenticationResultFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthenticationResult {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'user': !exists(json, 'User') ? undefined : AuthenticationResultUserFromJSON(json['User']),
|
||||
'sessionInfo': !exists(json, 'SessionInfo') ? undefined : AuthenticationResultSessionInfoFromJSON(json['SessionInfo']),
|
||||
'accessToken': !exists(json, 'AccessToken') ? undefined : json['AccessToken'],
|
||||
'serverId': !exists(json, 'ServerId') ? undefined : json['ServerId'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AuthenticationResultToJSON(value?: AuthenticationResult | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'User': AuthenticationResultUserToJSON(value.user),
|
||||
'SessionInfo': AuthenticationResultSessionInfoToJSON(value.sessionInfo),
|
||||
'AccessToken': value.accessToken,
|
||||
'ServerId': value.serverId,
|
||||
};
|
||||
}
|
||||
|
||||
339
server/jellyfin/models/AuthenticationResultSessionInfo.ts
Normal file
339
server/jellyfin/models/AuthenticationResultSessionInfo.ts
Normal file
@ -0,0 +1,339 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { BaseItemDto } from './BaseItemDto';
|
||||
import {
|
||||
BaseItemDtoFromJSON,
|
||||
BaseItemDtoFromJSONTyped,
|
||||
BaseItemDtoToJSON,
|
||||
} from './BaseItemDto';
|
||||
import type { ClientCapabilities } from './ClientCapabilities';
|
||||
import {
|
||||
ClientCapabilitiesFromJSON,
|
||||
ClientCapabilitiesFromJSONTyped,
|
||||
ClientCapabilitiesToJSON,
|
||||
} from './ClientCapabilities';
|
||||
import type { GeneralCommandType } from './GeneralCommandType';
|
||||
import {
|
||||
GeneralCommandTypeFromJSON,
|
||||
GeneralCommandTypeFromJSONTyped,
|
||||
GeneralCommandTypeToJSON,
|
||||
} from './GeneralCommandType';
|
||||
import type { PlayerStateInfo } from './PlayerStateInfo';
|
||||
import {
|
||||
PlayerStateInfoFromJSON,
|
||||
PlayerStateInfoFromJSONTyped,
|
||||
PlayerStateInfoToJSON,
|
||||
} from './PlayerStateInfo';
|
||||
import type { QueueItem } from './QueueItem';
|
||||
import {
|
||||
QueueItemFromJSON,
|
||||
QueueItemFromJSONTyped,
|
||||
QueueItemToJSON,
|
||||
} from './QueueItem';
|
||||
import type { SessionInfoFullNowPlayingItem } from './SessionInfoFullNowPlayingItem';
|
||||
import {
|
||||
SessionInfoFullNowPlayingItemFromJSON,
|
||||
SessionInfoFullNowPlayingItemFromJSONTyped,
|
||||
SessionInfoFullNowPlayingItemToJSON,
|
||||
} from './SessionInfoFullNowPlayingItem';
|
||||
import type { SessionInfoNowPlayingItem } from './SessionInfoNowPlayingItem';
|
||||
import {
|
||||
SessionInfoNowPlayingItemFromJSON,
|
||||
SessionInfoNowPlayingItemFromJSONTyped,
|
||||
SessionInfoNowPlayingItemToJSON,
|
||||
} from './SessionInfoNowPlayingItem';
|
||||
import type { SessionUserInfo } from './SessionUserInfo';
|
||||
import {
|
||||
SessionUserInfoFromJSON,
|
||||
SessionUserInfoFromJSONTyped,
|
||||
SessionUserInfoToJSON,
|
||||
} from './SessionUserInfo';
|
||||
import type { TranscodingInfo } from './TranscodingInfo';
|
||||
import {
|
||||
TranscodingInfoFromJSON,
|
||||
TranscodingInfoFromJSONTyped,
|
||||
TranscodingInfoToJSON,
|
||||
} from './TranscodingInfo';
|
||||
|
||||
/**
|
||||
* Class SessionInfo.
|
||||
* @export
|
||||
* @interface AuthenticationResultSessionInfo
|
||||
*/
|
||||
export interface AuthenticationResultSessionInfo {
|
||||
/**
|
||||
*
|
||||
* @type {PlayerStateInfo}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
playState?: PlayerStateInfo | null;
|
||||
/**
|
||||
*
|
||||
* @type {Array<SessionUserInfo>}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
additionalUsers?: Array<SessionUserInfo> | null;
|
||||
/**
|
||||
*
|
||||
* @type {ClientCapabilities}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
capabilities?: ClientCapabilities | null;
|
||||
/**
|
||||
* Gets or sets the remote end point.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
remoteEndPoint?: string | null;
|
||||
/**
|
||||
* Gets the playable media types.
|
||||
* @type {Array<string>}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
readonly playableMediaTypes?: Array<string> | null;
|
||||
/**
|
||||
* Gets or sets the id.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
id?: string | null;
|
||||
/**
|
||||
* Gets or sets the user id.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
userId?: string;
|
||||
/**
|
||||
* Gets or sets the username.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
userName?: string | null;
|
||||
/**
|
||||
* Gets or sets the type of the client.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
client?: string | null;
|
||||
/**
|
||||
* Gets or sets the last activity date.
|
||||
* @type {Date}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
lastActivityDate?: Date;
|
||||
/**
|
||||
* Gets or sets the last playback check in.
|
||||
* @type {Date}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
lastPlaybackCheckIn?: Date;
|
||||
/**
|
||||
* Gets or sets the name of the device.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
deviceName?: string | null;
|
||||
/**
|
||||
* Gets or sets the type of the device.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
deviceType?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {SessionInfoNowPlayingItem}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
nowPlayingItem?: SessionInfoNowPlayingItem | null;
|
||||
/**
|
||||
*
|
||||
* @type {SessionInfoFullNowPlayingItem}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
fullNowPlayingItem?: SessionInfoFullNowPlayingItem | null;
|
||||
/**
|
||||
*
|
||||
* @type {SessionInfoNowPlayingItem}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
nowViewingItem?: SessionInfoNowPlayingItem | null;
|
||||
/**
|
||||
* Gets or sets the device id.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
deviceId?: string | null;
|
||||
/**
|
||||
* Gets or sets the application version.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
applicationVersion?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {TranscodingInfo}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
transcodingInfo?: TranscodingInfo | null;
|
||||
/**
|
||||
* Gets a value indicating whether this instance is active.
|
||||
* @type {boolean}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
readonly isActive?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
readonly supportsMediaControl?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
readonly supportsRemoteControl?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {Array<QueueItem>}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
nowPlayingQueue?: Array<QueueItem> | null;
|
||||
/**
|
||||
*
|
||||
* @type {Array<BaseItemDto>}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
nowPlayingQueueFullItems?: Array<BaseItemDto> | null;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
hasCustomDeviceName?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
playlistItemId?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
serverId?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
userPrimaryImageTag?: string | null;
|
||||
/**
|
||||
* Gets the supported commands.
|
||||
* @type {Array<GeneralCommandType>}
|
||||
* @memberof AuthenticationResultSessionInfo
|
||||
*/
|
||||
readonly supportedCommands?: Array<GeneralCommandType> | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AuthenticationResultSessionInfo interface.
|
||||
*/
|
||||
export function instanceOfAuthenticationResultSessionInfo(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AuthenticationResultSessionInfoFromJSON(json: any): AuthenticationResultSessionInfo {
|
||||
return AuthenticationResultSessionInfoFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AuthenticationResultSessionInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthenticationResultSessionInfo {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'playState': !exists(json, 'PlayState') ? undefined : PlayerStateInfoFromJSON(json['PlayState']),
|
||||
'additionalUsers': !exists(json, 'AdditionalUsers') ? undefined : (json['AdditionalUsers'] === null ? null : (json['AdditionalUsers'] as Array<any>).map(SessionUserInfoFromJSON)),
|
||||
'capabilities': !exists(json, 'Capabilities') ? undefined : ClientCapabilitiesFromJSON(json['Capabilities']),
|
||||
'remoteEndPoint': !exists(json, 'RemoteEndPoint') ? undefined : json['RemoteEndPoint'],
|
||||
'playableMediaTypes': !exists(json, 'PlayableMediaTypes') ? undefined : json['PlayableMediaTypes'],
|
||||
'id': !exists(json, 'Id') ? undefined : json['Id'],
|
||||
'userId': !exists(json, 'UserId') ? undefined : json['UserId'],
|
||||
'userName': !exists(json, 'UserName') ? undefined : json['UserName'],
|
||||
'client': !exists(json, 'Client') ? undefined : json['Client'],
|
||||
'lastActivityDate': !exists(json, 'LastActivityDate') ? undefined : (new Date(json['LastActivityDate'])),
|
||||
'lastPlaybackCheckIn': !exists(json, 'LastPlaybackCheckIn') ? undefined : (new Date(json['LastPlaybackCheckIn'])),
|
||||
'deviceName': !exists(json, 'DeviceName') ? undefined : json['DeviceName'],
|
||||
'deviceType': !exists(json, 'DeviceType') ? undefined : json['DeviceType'],
|
||||
'nowPlayingItem': !exists(json, 'NowPlayingItem') ? undefined : SessionInfoNowPlayingItemFromJSON(json['NowPlayingItem']),
|
||||
'fullNowPlayingItem': !exists(json, 'FullNowPlayingItem') ? undefined : SessionInfoFullNowPlayingItemFromJSON(json['FullNowPlayingItem']),
|
||||
'nowViewingItem': !exists(json, 'NowViewingItem') ? undefined : SessionInfoNowPlayingItemFromJSON(json['NowViewingItem']),
|
||||
'deviceId': !exists(json, 'DeviceId') ? undefined : json['DeviceId'],
|
||||
'applicationVersion': !exists(json, 'ApplicationVersion') ? undefined : json['ApplicationVersion'],
|
||||
'transcodingInfo': !exists(json, 'TranscodingInfo') ? undefined : TranscodingInfoFromJSON(json['TranscodingInfo']),
|
||||
'isActive': !exists(json, 'IsActive') ? undefined : json['IsActive'],
|
||||
'supportsMediaControl': !exists(json, 'SupportsMediaControl') ? undefined : json['SupportsMediaControl'],
|
||||
'supportsRemoteControl': !exists(json, 'SupportsRemoteControl') ? undefined : json['SupportsRemoteControl'],
|
||||
'nowPlayingQueue': !exists(json, 'NowPlayingQueue') ? undefined : (json['NowPlayingQueue'] === null ? null : (json['NowPlayingQueue'] as Array<any>).map(QueueItemFromJSON)),
|
||||
'nowPlayingQueueFullItems': !exists(json, 'NowPlayingQueueFullItems') ? undefined : (json['NowPlayingQueueFullItems'] === null ? null : (json['NowPlayingQueueFullItems'] as Array<any>).map(BaseItemDtoFromJSON)),
|
||||
'hasCustomDeviceName': !exists(json, 'HasCustomDeviceName') ? undefined : json['HasCustomDeviceName'],
|
||||
'playlistItemId': !exists(json, 'PlaylistItemId') ? undefined : json['PlaylistItemId'],
|
||||
'serverId': !exists(json, 'ServerId') ? undefined : json['ServerId'],
|
||||
'userPrimaryImageTag': !exists(json, 'UserPrimaryImageTag') ? undefined : json['UserPrimaryImageTag'],
|
||||
'supportedCommands': !exists(json, 'SupportedCommands') ? undefined : (json['SupportedCommands'] === null ? null : (json['SupportedCommands'] as Array<any>).map(GeneralCommandTypeFromJSON)),
|
||||
};
|
||||
}
|
||||
|
||||
export function AuthenticationResultSessionInfoToJSON(value?: AuthenticationResultSessionInfo | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'PlayState': PlayerStateInfoToJSON(value.playState),
|
||||
'AdditionalUsers': value.additionalUsers === undefined ? undefined : (value.additionalUsers === null ? null : (value.additionalUsers as Array<any>).map(SessionUserInfoToJSON)),
|
||||
'Capabilities': ClientCapabilitiesToJSON(value.capabilities),
|
||||
'RemoteEndPoint': value.remoteEndPoint,
|
||||
'Id': value.id,
|
||||
'UserId': value.userId,
|
||||
'UserName': value.userName,
|
||||
'Client': value.client,
|
||||
'LastActivityDate': value.lastActivityDate === undefined ? undefined : (value.lastActivityDate.toISOString()),
|
||||
'LastPlaybackCheckIn': value.lastPlaybackCheckIn === undefined ? undefined : (value.lastPlaybackCheckIn.toISOString()),
|
||||
'DeviceName': value.deviceName,
|
||||
'DeviceType': value.deviceType,
|
||||
'NowPlayingItem': SessionInfoNowPlayingItemToJSON(value.nowPlayingItem),
|
||||
'FullNowPlayingItem': SessionInfoFullNowPlayingItemToJSON(value.fullNowPlayingItem),
|
||||
'NowViewingItem': SessionInfoNowPlayingItemToJSON(value.nowViewingItem),
|
||||
'DeviceId': value.deviceId,
|
||||
'ApplicationVersion': value.applicationVersion,
|
||||
'TranscodingInfo': TranscodingInfoToJSON(value.transcodingInfo),
|
||||
'NowPlayingQueue': value.nowPlayingQueue === undefined ? undefined : (value.nowPlayingQueue === null ? null : (value.nowPlayingQueue as Array<any>).map(QueueItemToJSON)),
|
||||
'NowPlayingQueueFullItems': value.nowPlayingQueueFullItems === undefined ? undefined : (value.nowPlayingQueueFullItems === null ? null : (value.nowPlayingQueueFullItems as Array<any>).map(BaseItemDtoToJSON)),
|
||||
'HasCustomDeviceName': value.hasCustomDeviceName,
|
||||
'PlaylistItemId': value.playlistItemId,
|
||||
'ServerId': value.serverId,
|
||||
'UserPrimaryImageTag': value.userPrimaryImageTag,
|
||||
};
|
||||
}
|
||||
|
||||
183
server/jellyfin/models/AuthenticationResultUser.ts
Normal file
183
server/jellyfin/models/AuthenticationResultUser.ts
Normal file
@ -0,0 +1,183 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { UserDtoConfiguration } from './UserDtoConfiguration';
|
||||
import {
|
||||
UserDtoConfigurationFromJSON,
|
||||
UserDtoConfigurationFromJSONTyped,
|
||||
UserDtoConfigurationToJSON,
|
||||
} from './UserDtoConfiguration';
|
||||
import type { UserDtoPolicy } from './UserDtoPolicy';
|
||||
import {
|
||||
UserDtoPolicyFromJSON,
|
||||
UserDtoPolicyFromJSONTyped,
|
||||
UserDtoPolicyToJSON,
|
||||
} from './UserDtoPolicy';
|
||||
|
||||
/**
|
||||
* Class UserDto.
|
||||
* @export
|
||||
* @interface AuthenticationResultUser
|
||||
*/
|
||||
export interface AuthenticationResultUser {
|
||||
/**
|
||||
* Gets or sets the name.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
name?: string | null;
|
||||
/**
|
||||
* Gets or sets the server identifier.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
serverId?: string | null;
|
||||
/**
|
||||
* Gets or sets the name of the server.
|
||||
* This is not used by the server and is for client-side usage only.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
serverName?: string | null;
|
||||
/**
|
||||
* Gets or sets the id.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
id?: string;
|
||||
/**
|
||||
* Gets or sets the primary image tag.
|
||||
* @type {string}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
primaryImageTag?: string | null;
|
||||
/**
|
||||
* Gets or sets a value indicating whether this instance has password.
|
||||
* @type {boolean}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
hasPassword?: boolean;
|
||||
/**
|
||||
* Gets or sets a value indicating whether this instance has configured password.
|
||||
* @type {boolean}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
hasConfiguredPassword?: boolean;
|
||||
/**
|
||||
* Gets or sets a value indicating whether this instance has configured easy password.
|
||||
* @type {boolean}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
hasConfiguredEasyPassword?: boolean;
|
||||
/**
|
||||
* Gets or sets whether async login is enabled or not.
|
||||
* @type {boolean}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
enableAutoLogin?: boolean | null;
|
||||
/**
|
||||
* Gets or sets the last login date.
|
||||
* @type {Date}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
lastLoginDate?: Date | null;
|
||||
/**
|
||||
* Gets or sets the last activity date.
|
||||
* @type {Date}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
lastActivityDate?: Date | null;
|
||||
/**
|
||||
*
|
||||
* @type {UserDtoConfiguration}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
_configuration?: UserDtoConfiguration | null;
|
||||
/**
|
||||
*
|
||||
* @type {UserDtoPolicy}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
policy?: UserDtoPolicy | null;
|
||||
/**
|
||||
* Gets or sets the primary image aspect ratio.
|
||||
* @type {number}
|
||||
* @memberof AuthenticationResultUser
|
||||
*/
|
||||
primaryImageAspectRatio?: number | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the AuthenticationResultUser interface.
|
||||
*/
|
||||
export function instanceOfAuthenticationResultUser(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function AuthenticationResultUserFromJSON(json: any): AuthenticationResultUser {
|
||||
return AuthenticationResultUserFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function AuthenticationResultUserFromJSONTyped(json: any, ignoreDiscriminator: boolean): AuthenticationResultUser {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'name': !exists(json, 'Name') ? undefined : json['Name'],
|
||||
'serverId': !exists(json, 'ServerId') ? undefined : json['ServerId'],
|
||||
'serverName': !exists(json, 'ServerName') ? undefined : json['ServerName'],
|
||||
'id': !exists(json, 'Id') ? undefined : json['Id'],
|
||||
'primaryImageTag': !exists(json, 'PrimaryImageTag') ? undefined : json['PrimaryImageTag'],
|
||||
'hasPassword': !exists(json, 'HasPassword') ? undefined : json['HasPassword'],
|
||||
'hasConfiguredPassword': !exists(json, 'HasConfiguredPassword') ? undefined : json['HasConfiguredPassword'],
|
||||
'hasConfiguredEasyPassword': !exists(json, 'HasConfiguredEasyPassword') ? undefined : json['HasConfiguredEasyPassword'],
|
||||
'enableAutoLogin': !exists(json, 'EnableAutoLogin') ? undefined : json['EnableAutoLogin'],
|
||||
'lastLoginDate': !exists(json, 'LastLoginDate') ? undefined : (json['LastLoginDate'] === null ? null : new Date(json['LastLoginDate'])),
|
||||
'lastActivityDate': !exists(json, 'LastActivityDate') ? undefined : (json['LastActivityDate'] === null ? null : new Date(json['LastActivityDate'])),
|
||||
'_configuration': !exists(json, 'Configuration') ? undefined : UserDtoConfigurationFromJSON(json['Configuration']),
|
||||
'policy': !exists(json, 'Policy') ? undefined : UserDtoPolicyFromJSON(json['Policy']),
|
||||
'primaryImageAspectRatio': !exists(json, 'PrimaryImageAspectRatio') ? undefined : json['PrimaryImageAspectRatio'],
|
||||
};
|
||||
}
|
||||
|
||||
export function AuthenticationResultUserToJSON(value?: AuthenticationResultUser | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Name': value.name,
|
||||
'ServerId': value.serverId,
|
||||
'ServerName': value.serverName,
|
||||
'Id': value.id,
|
||||
'PrimaryImageTag': value.primaryImageTag,
|
||||
'HasPassword': value.hasPassword,
|
||||
'HasConfiguredPassword': value.hasConfiguredPassword,
|
||||
'HasConfiguredEasyPassword': value.hasConfiguredEasyPassword,
|
||||
'EnableAutoLogin': value.enableAutoLogin,
|
||||
'LastLoginDate': value.lastLoginDate === undefined ? undefined : (value.lastLoginDate === null ? null : value.lastLoginDate.toISOString()),
|
||||
'LastActivityDate': value.lastActivityDate === undefined ? undefined : (value.lastActivityDate === null ? null : value.lastActivityDate.toISOString()),
|
||||
'Configuration': UserDtoConfigurationToJSON(value._configuration),
|
||||
'Policy': UserDtoPolicyToJSON(value.policy),
|
||||
'PrimaryImageAspectRatio': value.primaryImageAspectRatio,
|
||||
};
|
||||
}
|
||||
|
||||
150
server/jellyfin/models/BaseItem.ts
Normal file
150
server/jellyfin/models/BaseItem.ts
Normal file
@ -0,0 +1,150 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { MediaUrl } from './MediaUrl';
|
||||
import {
|
||||
MediaUrlFromJSON,
|
||||
MediaUrlFromJSONTyped,
|
||||
MediaUrlToJSON,
|
||||
} from './MediaUrl';
|
||||
|
||||
/**
|
||||
* Class BaseItem.
|
||||
* @export
|
||||
* @interface BaseItem
|
||||
*/
|
||||
export interface BaseItem {
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
size?: number | null;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
container?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
readonly isHD?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
isShortcut?: boolean;
|
||||
/**
|
||||
*
|
||||
* @type {string}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
shortcutPath?: string | null;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
width?: number;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
height?: number;
|
||||
/**
|
||||
*
|
||||
* @type {Array<string>}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
extraIds?: Array<string> | null;
|
||||
/**
|
||||
*
|
||||
* @type {Date}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
dateLastSaved?: Date;
|
||||
/**
|
||||
* Gets or sets the remote trailers.
|
||||
* @type {Array<MediaUrl>}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
remoteTrailers?: Array<MediaUrl> | null;
|
||||
/**
|
||||
*
|
||||
* @type {boolean}
|
||||
* @memberof BaseItem
|
||||
*/
|
||||
readonly supportsExternalTransfer?: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the BaseItem interface.
|
||||
*/
|
||||
export function instanceOfBaseItem(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function BaseItemFromJSON(json: any): BaseItem {
|
||||
return BaseItemFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function BaseItemFromJSONTyped(json: any, ignoreDiscriminator: boolean): BaseItem {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'size': !exists(json, 'Size') ? undefined : json['Size'],
|
||||
'container': !exists(json, 'Container') ? undefined : json['Container'],
|
||||
'isHD': !exists(json, 'IsHD') ? undefined : json['IsHD'],
|
||||
'isShortcut': !exists(json, 'IsShortcut') ? undefined : json['IsShortcut'],
|
||||
'shortcutPath': !exists(json, 'ShortcutPath') ? undefined : json['ShortcutPath'],
|
||||
'width': !exists(json, 'Width') ? undefined : json['Width'],
|
||||
'height': !exists(json, 'Height') ? undefined : json['Height'],
|
||||
'extraIds': !exists(json, 'ExtraIds') ? undefined : json['ExtraIds'],
|
||||
'dateLastSaved': !exists(json, 'DateLastSaved') ? undefined : (new Date(json['DateLastSaved'])),
|
||||
'remoteTrailers': !exists(json, 'RemoteTrailers') ? undefined : (json['RemoteTrailers'] === null ? null : (json['RemoteTrailers'] as Array<any>).map(MediaUrlFromJSON)),
|
||||
'supportsExternalTransfer': !exists(json, 'SupportsExternalTransfer') ? undefined : json['SupportsExternalTransfer'],
|
||||
};
|
||||
}
|
||||
|
||||
export function BaseItemToJSON(value?: BaseItem | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Size': value.size,
|
||||
'Container': value.container,
|
||||
'IsShortcut': value.isShortcut,
|
||||
'ShortcutPath': value.shortcutPath,
|
||||
'Width': value.width,
|
||||
'Height': value.height,
|
||||
'ExtraIds': value.extraIds,
|
||||
'DateLastSaved': value.dateLastSaved === undefined ? undefined : (value.dateLastSaved.toISOString()),
|
||||
'RemoteTrailers': value.remoteTrailers === undefined ? undefined : (value.remoteTrailers === null ? null : (value.remoteTrailers as Array<any>).map(MediaUrlToJSON)),
|
||||
};
|
||||
}
|
||||
|
||||
1393
server/jellyfin/models/BaseItemDto.ts
Normal file
1393
server/jellyfin/models/BaseItemDto.ts
Normal file
File diff suppressed because it is too large
Load Diff
1386
server/jellyfin/models/BaseItemDtoCurrentProgram.ts
Normal file
1386
server/jellyfin/models/BaseItemDtoCurrentProgram.ts
Normal file
File diff suppressed because it is too large
Load Diff
162
server/jellyfin/models/BaseItemDtoImageBlurHashes.ts
Normal file
162
server/jellyfin/models/BaseItemDtoImageBlurHashes.ts
Normal file
@ -0,0 +1,162 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
/**
|
||||
* Gets or sets the blurhashes for the image tags.
|
||||
* Maps image type to dictionary mapping image tag to blurhash value.
|
||||
* @export
|
||||
* @interface BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
export interface BaseItemDtoImageBlurHashes {
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
primary?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
art?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
backdrop?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
banner?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
logo?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
thumb?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
disc?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
box?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
screenshot?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
menu?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
chapter?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
boxRear?: { [key: string]: string; };
|
||||
/**
|
||||
*
|
||||
* @type {{ [key: string]: string; }}
|
||||
* @memberof BaseItemDtoImageBlurHashes
|
||||
*/
|
||||
profile?: { [key: string]: string; };
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the BaseItemDtoImageBlurHashes interface.
|
||||
*/
|
||||
export function instanceOfBaseItemDtoImageBlurHashes(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function BaseItemDtoImageBlurHashesFromJSON(json: any): BaseItemDtoImageBlurHashes {
|
||||
return BaseItemDtoImageBlurHashesFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function BaseItemDtoImageBlurHashesFromJSONTyped(json: any, ignoreDiscriminator: boolean): BaseItemDtoImageBlurHashes {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'primary': !exists(json, 'Primary') ? undefined : json['Primary'],
|
||||
'art': !exists(json, 'Art') ? undefined : json['Art'],
|
||||
'backdrop': !exists(json, 'Backdrop') ? undefined : json['Backdrop'],
|
||||
'banner': !exists(json, 'Banner') ? undefined : json['Banner'],
|
||||
'logo': !exists(json, 'Logo') ? undefined : json['Logo'],
|
||||
'thumb': !exists(json, 'Thumb') ? undefined : json['Thumb'],
|
||||
'disc': !exists(json, 'Disc') ? undefined : json['Disc'],
|
||||
'box': !exists(json, 'Box') ? undefined : json['Box'],
|
||||
'screenshot': !exists(json, 'Screenshot') ? undefined : json['Screenshot'],
|
||||
'menu': !exists(json, 'Menu') ? undefined : json['Menu'],
|
||||
'chapter': !exists(json, 'Chapter') ? undefined : json['Chapter'],
|
||||
'boxRear': !exists(json, 'BoxRear') ? undefined : json['BoxRear'],
|
||||
'profile': !exists(json, 'Profile') ? undefined : json['Profile'],
|
||||
};
|
||||
}
|
||||
|
||||
export function BaseItemDtoImageBlurHashesToJSON(value?: BaseItemDtoImageBlurHashes | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Primary': value.primary,
|
||||
'Art': value.art,
|
||||
'Backdrop': value.backdrop,
|
||||
'Banner': value.banner,
|
||||
'Logo': value.logo,
|
||||
'Thumb': value.thumb,
|
||||
'Disc': value.disc,
|
||||
'Box': value.box,
|
||||
'Screenshot': value.screenshot,
|
||||
'Menu': value.menu,
|
||||
'Chapter': value.chapter,
|
||||
'BoxRear': value.boxRear,
|
||||
'Profile': value.profile,
|
||||
};
|
||||
}
|
||||
|
||||
88
server/jellyfin/models/BaseItemDtoQueryResult.ts
Normal file
88
server/jellyfin/models/BaseItemDtoQueryResult.ts
Normal file
@ -0,0 +1,88 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
import type { BaseItemDto } from './BaseItemDto';
|
||||
import {
|
||||
BaseItemDtoFromJSON,
|
||||
BaseItemDtoFromJSONTyped,
|
||||
BaseItemDtoToJSON,
|
||||
} from './BaseItemDto';
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @interface BaseItemDtoQueryResult
|
||||
*/
|
||||
export interface BaseItemDtoQueryResult {
|
||||
/**
|
||||
* Gets or sets the items.
|
||||
* @type {Array<BaseItemDto>}
|
||||
* @memberof BaseItemDtoQueryResult
|
||||
*/
|
||||
items?: Array<BaseItemDto> | null;
|
||||
/**
|
||||
* Gets or sets the total number of records available.
|
||||
* @type {number}
|
||||
* @memberof BaseItemDtoQueryResult
|
||||
*/
|
||||
totalRecordCount?: number;
|
||||
/**
|
||||
* Gets or sets the index of the first record in Items.
|
||||
* @type {number}
|
||||
* @memberof BaseItemDtoQueryResult
|
||||
*/
|
||||
startIndex?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the BaseItemDtoQueryResult interface.
|
||||
*/
|
||||
export function instanceOfBaseItemDtoQueryResult(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function BaseItemDtoQueryResultFromJSON(json: any): BaseItemDtoQueryResult {
|
||||
return BaseItemDtoQueryResultFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function BaseItemDtoQueryResultFromJSONTyped(json: any, ignoreDiscriminator: boolean): BaseItemDtoQueryResult {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'items': !exists(json, 'Items') ? undefined : (json['Items'] === null ? null : (json['Items'] as Array<any>).map(BaseItemDtoFromJSON)),
|
||||
'totalRecordCount': !exists(json, 'TotalRecordCount') ? undefined : json['TotalRecordCount'],
|
||||
'startIndex': !exists(json, 'StartIndex') ? undefined : json['StartIndex'],
|
||||
};
|
||||
}
|
||||
|
||||
export function BaseItemDtoQueryResultToJSON(value?: BaseItemDtoQueryResult | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Items': value.items === undefined ? undefined : (value.items === null ? null : (value.items as Array<any>).map(BaseItemDtoToJSON)),
|
||||
'TotalRecordCount': value.totalRecordCount,
|
||||
'StartIndex': value.startIndex,
|
||||
};
|
||||
}
|
||||
|
||||
145
server/jellyfin/models/BaseItemDtoUserData.ts
Normal file
145
server/jellyfin/models/BaseItemDtoUserData.ts
Normal file
@ -0,0 +1,145 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
import { exists, mapValues } from '../runtime';
|
||||
/**
|
||||
* Gets or sets the user data for this item based on the user it's being requested for.
|
||||
* @export
|
||||
* @interface BaseItemDtoUserData
|
||||
*/
|
||||
export interface BaseItemDtoUserData {
|
||||
/**
|
||||
* Gets or sets the rating.
|
||||
* @type {number}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
rating?: number | null;
|
||||
/**
|
||||
* Gets or sets the played percentage.
|
||||
* @type {number}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
playedPercentage?: number | null;
|
||||
/**
|
||||
* Gets or sets the unplayed item count.
|
||||
* @type {number}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
unplayedItemCount?: number | null;
|
||||
/**
|
||||
* Gets or sets the playback position ticks.
|
||||
* @type {number}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
playbackPositionTicks?: number;
|
||||
/**
|
||||
* Gets or sets the play count.
|
||||
* @type {number}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
playCount?: number;
|
||||
/**
|
||||
* Gets or sets a value indicating whether this instance is favorite.
|
||||
* @type {boolean}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
isFavorite?: boolean;
|
||||
/**
|
||||
* Gets or sets a value indicating whether this MediaBrowser.Model.Dto.UserItemDataDto is likes.
|
||||
* @type {boolean}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
likes?: boolean | null;
|
||||
/**
|
||||
* Gets or sets the last played date.
|
||||
* @type {Date}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
lastPlayedDate?: Date | null;
|
||||
/**
|
||||
* Gets or sets a value indicating whether this MediaBrowser.Model.Dto.UserItemDataDto is played.
|
||||
* @type {boolean}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
played?: boolean;
|
||||
/**
|
||||
* Gets or sets the key.
|
||||
* @type {string}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
key?: string | null;
|
||||
/**
|
||||
* Gets or sets the item identifier.
|
||||
* @type {string}
|
||||
* @memberof BaseItemDtoUserData
|
||||
*/
|
||||
itemId?: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a given object implements the BaseItemDtoUserData interface.
|
||||
*/
|
||||
export function instanceOfBaseItemDtoUserData(value: object): boolean {
|
||||
let isInstance = true;
|
||||
|
||||
return isInstance;
|
||||
}
|
||||
|
||||
export function BaseItemDtoUserDataFromJSON(json: any): BaseItemDtoUserData {
|
||||
return BaseItemDtoUserDataFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function BaseItemDtoUserDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): BaseItemDtoUserData {
|
||||
if ((json === undefined) || (json === null)) {
|
||||
return json;
|
||||
}
|
||||
return {
|
||||
|
||||
'rating': !exists(json, 'Rating') ? undefined : json['Rating'],
|
||||
'playedPercentage': !exists(json, 'PlayedPercentage') ? undefined : json['PlayedPercentage'],
|
||||
'unplayedItemCount': !exists(json, 'UnplayedItemCount') ? undefined : json['UnplayedItemCount'],
|
||||
'playbackPositionTicks': !exists(json, 'PlaybackPositionTicks') ? undefined : json['PlaybackPositionTicks'],
|
||||
'playCount': !exists(json, 'PlayCount') ? undefined : json['PlayCount'],
|
||||
'isFavorite': !exists(json, 'IsFavorite') ? undefined : json['IsFavorite'],
|
||||
'likes': !exists(json, 'Likes') ? undefined : json['Likes'],
|
||||
'lastPlayedDate': !exists(json, 'LastPlayedDate') ? undefined : (json['LastPlayedDate'] === null ? null : new Date(json['LastPlayedDate'])),
|
||||
'played': !exists(json, 'Played') ? undefined : json['Played'],
|
||||
'key': !exists(json, 'Key') ? undefined : json['Key'],
|
||||
'itemId': !exists(json, 'ItemId') ? undefined : json['ItemId'],
|
||||
};
|
||||
}
|
||||
|
||||
export function BaseItemDtoUserDataToJSON(value?: BaseItemDtoUserData | null): any {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
if (value === null) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
|
||||
'Rating': value.rating,
|
||||
'PlayedPercentage': value.playedPercentage,
|
||||
'UnplayedItemCount': value.unplayedItemCount,
|
||||
'PlaybackPositionTicks': value.playbackPositionTicks,
|
||||
'PlayCount': value.playCount,
|
||||
'IsFavorite': value.isFavorite,
|
||||
'Likes': value.likes,
|
||||
'LastPlayedDate': value.lastPlayedDate === undefined ? undefined : (value.lastPlayedDate === null ? null : value.lastPlayedDate.toISOString()),
|
||||
'Played': value.played,
|
||||
'Key': value.key,
|
||||
'ItemId': value.itemId,
|
||||
};
|
||||
}
|
||||
|
||||
73
server/jellyfin/models/BaseItemKind.ts
Normal file
73
server/jellyfin/models/BaseItemKind.ts
Normal file
@ -0,0 +1,73 @@
|
||||
/* tslint:disable */
|
||||
/* eslint-disable */
|
||||
/**
|
||||
* Jellyfin API
|
||||
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
||||
*
|
||||
* The version of the OpenAPI document: 10.8.9
|
||||
*
|
||||
*
|
||||
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
||||
* https://openapi-generator.tech
|
||||
* Do not edit the class manually.
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* The base item kind.
|
||||
* @export
|
||||
*/
|
||||
export const BaseItemKind = {
|
||||
AggregateFolder: 'AggregateFolder',
|
||||
Audio: 'Audio',
|
||||
AudioBook: 'AudioBook',
|
||||
BasePluginFolder: 'BasePluginFolder',
|
||||
Book: 'Book',
|
||||
BoxSet: 'BoxSet',
|
||||
Channel: 'Channel',
|
||||
ChannelFolderItem: 'ChannelFolderItem',
|
||||
CollectionFolder: 'CollectionFolder',
|
||||
Episode: 'Episode',
|
||||
Folder: 'Folder',
|
||||
Genre: 'Genre',
|
||||
ManualPlaylistsFolder: 'ManualPlaylistsFolder',
|
||||
Movie: 'Movie',
|
||||
LiveTvChannel: 'LiveTvChannel',
|
||||
LiveTvProgram: 'LiveTvProgram',
|
||||
MusicAlbum: 'MusicAlbum',
|
||||
MusicArtist: 'MusicArtist',
|
||||
MusicGenre: 'MusicGenre',
|
||||
MusicVideo: 'MusicVideo',
|
||||
Person: 'Person',
|
||||
Photo: 'Photo',
|
||||
PhotoAlbum: 'PhotoAlbum',
|
||||
Playlist: 'Playlist',
|
||||
PlaylistsFolder: 'PlaylistsFolder',
|
||||
Program: 'Program',
|
||||
Recording: 'Recording',
|
||||
Season: 'Season',
|
||||
Series: 'Series',
|
||||
Studio: 'Studio',
|
||||
Trailer: 'Trailer',
|
||||
TvChannel: 'TvChannel',
|
||||
TvProgram: 'TvProgram',
|
||||
UserRootFolder: 'UserRootFolder',
|
||||
UserView: 'UserView',
|
||||
Video: 'Video',
|
||||
Year: 'Year'
|
||||
} as const;
|
||||
export type BaseItemKind = typeof BaseItemKind[keyof typeof BaseItemKind];
|
||||
|
||||
|
||||
export function BaseItemKindFromJSON(json: any): BaseItemKind {
|
||||
return BaseItemKindFromJSONTyped(json, false);
|
||||
}
|
||||
|
||||
export function BaseItemKindFromJSONTyped(json: any, ignoreDiscriminator: boolean): BaseItemKind {
|
||||
return json as BaseItemKind;
|
||||
}
|
||||
|
||||
export function BaseItemKindToJSON(value?: BaseItemKind | null): any {
|
||||
return value as any;
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user