mirror of
https://github.com/LukeHagar/plexswift.git
synced 2025-12-06 12:47:44 +00:00
ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.402.14
This commit is contained in:
1148
.speakeasy/gen.lock
1148
.speakeasy/gen.lock
File diff suppressed because it is too large
Load Diff
@@ -12,7 +12,7 @@ generation:
|
||||
auth:
|
||||
oAuth2ClientCredentialsEnabled: true
|
||||
swift:
|
||||
version: 0.7.4
|
||||
version: 0.8.0
|
||||
author: LukeHagar
|
||||
description: Swift Client SDK Generated by Speakeasy
|
||||
imports:
|
||||
|
||||
@@ -11,7 +11,7 @@ targets:
|
||||
plexswift:
|
||||
source: plexapi
|
||||
codeSamplesNamespace: code-samples-swift-plexswift
|
||||
codeSamplesRevisionDigest: sha256:4794efee0a2f342bc47f1a2d5b2351d447da8c13c2699adb1675221e03ea027c
|
||||
codeSamplesRevisionDigest: sha256:6b78631ea49c5a9446f4bb8887c3ce13d9eb09fb3f1b74288c82f3ceafea483f
|
||||
outLocation: /github/workspace/repo
|
||||
workflow:
|
||||
workflowVersion: 1.0.0
|
||||
|
||||
@@ -38,7 +38,7 @@ You can add `plexswift` to your project directly in Xcode `(File > Add Packages.
|
||||
|
||||
```bash
|
||||
dependencies: [
|
||||
.package(url: "https://github.com/LukeHagar/plexswift.git", .upToNextMajor(from: "0.7.4"))
|
||||
.package(url: "https://github.com/LukeHagar/plexswift.git", .upToNextMajor(from: "0.8.0"))
|
||||
]
|
||||
```
|
||||
<!-- End SDK Installation [installation] -->
|
||||
@@ -103,12 +103,13 @@ case .empty:
|
||||
### [Hubs](docs/sdks/hubs/README.md)
|
||||
|
||||
* [getGlobalHubs](docs/sdks/hubs/README.md#getglobalhubs) - Get Global Hubs
|
||||
* [getRecentlyAdded](docs/sdks/hubs/README.md#getrecentlyadded) - Get Recently Added
|
||||
* [getLibraryHubs](docs/sdks/hubs/README.md#getlibraryhubs) - Get library specific hubs
|
||||
|
||||
### [Library](docs/sdks/library/README.md)
|
||||
|
||||
* [getFileHash](docs/sdks/library/README.md#getfilehash) - Get Hash Value
|
||||
* [getRecentlyAdded](docs/sdks/library/README.md#getrecentlyadded) - Get Recently Added
|
||||
* [getRecentlyAddedLibrary](docs/sdks/library/README.md#getrecentlyaddedlibrary) - Get Recently Added
|
||||
* [getAllLibraries](docs/sdks/library/README.md#getalllibraries) - Get All Libraries
|
||||
* [getLibraryDetails](docs/sdks/library/README.md#getlibrarydetails) - Get Library Details
|
||||
* [deleteLibrary](docs/sdks/library/README.md#deletelibrary) - Delete Library Section
|
||||
|
||||
10
RELEASES.md
10
RELEASES.md
@@ -673,3 +673,13 @@ Based on:
|
||||
- [swift v0.7.4] .
|
||||
### Releases
|
||||
- [Swift Package Manager v0.7.4] https://github.com/LukeHagar/plexswift/releases/tag/v0.7.4 - .
|
||||
|
||||
## 2024-09-26 00:07:40
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.402.14 (2.422.22) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [swift v0.8.0] .
|
||||
### Releases
|
||||
- [Swift Package Manager v0.8.0] https://github.com/LukeHagar/plexswift/releases/tag/v0.8.0 - .
|
||||
@@ -100,6 +100,7 @@ case .empty:
|
||||
- ``Operations/GetLibraryItemsBadRequest``
|
||||
- ``Operations/GetMediaProvidersBadRequest``
|
||||
- ``Operations/GetMetaDataByRatingKeyBadRequest``
|
||||
- ``Operations/GetRecentlyAddedLibraryBadRequest``
|
||||
- ``Operations/GetRefreshLibraryMetadataBadRequest``
|
||||
- ``Operations/GetSearchLibraryBadRequest``
|
||||
- ``Operations/GetServerResourcesBadRequest``
|
||||
@@ -122,7 +123,6 @@ case .empty:
|
||||
- ``Operations/GetPlaylistBadRequest``
|
||||
- ``Operations/GetPlaylistContentsBadRequest``
|
||||
- ``Operations/GetPlaylistsBadRequest``
|
||||
- ``Operations/GetRecentlyAddedBadRequest``
|
||||
- ``Operations/GetResizedPhotoBadRequest``
|
||||
- ``Operations/GetResourcesStatisticsBadRequest``
|
||||
- ``Operations/GetSearchResultsBadRequest``
|
||||
@@ -175,6 +175,8 @@ case .empty:
|
||||
- ``Operations/GetLibraryItemsResponse``
|
||||
- ``Operations/GetMediaProvidersResponse``
|
||||
- ``Operations/GetMetaDataByRatingKeyResponse``
|
||||
- ``Operations/GetRecentlyAddedResponse``
|
||||
- ``Operations/GetRecentlyAddedLibraryResponse``
|
||||
- ``Operations/GetRefreshLibraryMetadataResponse``
|
||||
- ``Operations/GetSearchLibraryResponse``
|
||||
- ``Operations/GetServerIdentityResponse``
|
||||
@@ -198,7 +200,6 @@ case .empty:
|
||||
- ``Operations/GetPlaylistResponse``
|
||||
- ``Operations/GetPlaylistContentsResponse``
|
||||
- ``Operations/GetPlaylistsResponse``
|
||||
- ``Operations/GetRecentlyAddedResponse``
|
||||
- ``Operations/GetResizedPhotoResponse``
|
||||
- ``Operations/GetResourcesStatisticsResponse``
|
||||
- ``Operations/GetSearchResultsResponse``
|
||||
@@ -320,34 +321,60 @@ case .empty:
|
||||
- ``Operations/GetBannerImageUnauthorized``
|
||||
- ``Operations/GetLibraryDetailsDirectory``
|
||||
- ``Operations/GetLibraryDetailsErrors``
|
||||
- ``Operations/GetLibraryDetailsField``
|
||||
- ``Operations/GetLibraryDetailsFieldType``
|
||||
- ``Operations/GetLibraryDetailsFilter``
|
||||
- ``Operations/GetLibraryDetailsLibraryErrors``
|
||||
- ``Operations/GetLibraryDetailsMediaContainer``
|
||||
- ``Operations/GetLibraryDetailsOperator``
|
||||
- ``Operations/GetLibraryDetailsRequest``
|
||||
- ``Operations/GetLibraryDetailsResponseBody``
|
||||
- ``Operations/GetLibraryDetailsSort``
|
||||
- ``Operations/GetLibraryDetailsType``
|
||||
- ``Operations/GetLibraryDetailsUnauthorized``
|
||||
- ``Operations/GetLibraryItemsActiveDirection``
|
||||
- ``Operations/GetLibraryItemsCollection``
|
||||
- ``Operations/GetLibraryItemsCountry``
|
||||
- ``Operations/GetLibraryItemsDefaultDirection``
|
||||
- ``Operations/GetLibraryItemsDirector``
|
||||
- ``Operations/GetLibraryItemsErrors``
|
||||
- ``Operations/GetLibraryItemsField``
|
||||
- ``Operations/GetLibraryItemsFieldType``
|
||||
- ``Operations/GetLibraryItemsFilter``
|
||||
- ``Operations/GetLibraryItemsFlattenSeasons``
|
||||
- ``Operations/GetLibraryItemsGenre``
|
||||
- ``Operations/GetLibraryItemsHasThumbnail``
|
||||
- ``Operations/GetLibraryItemsImage``
|
||||
- ``Operations/GetLibraryItemsLibraryActiveDirection``
|
||||
- ``Operations/GetLibraryItemsLibraryDefaultDirection``
|
||||
- ``Operations/GetLibraryItemsLibraryErrors``
|
||||
- ``Operations/GetLibraryItemsLibraryField``
|
||||
- ``Operations/GetLibraryItemsLibraryFieldType``
|
||||
- ``Operations/GetLibraryItemsLibraryFilter``
|
||||
- ``Operations/GetLibraryItemsLibraryOperator``
|
||||
- ``Operations/GetLibraryItemsLibraryResponse200Type``
|
||||
- ``Operations/GetLibraryItemsLibraryResponseType``
|
||||
- ``Operations/GetLibraryItemsLibrarySort``
|
||||
- ``Operations/GetLibraryItemsLibraryType``
|
||||
- ``Operations/GetLibraryItemsMedia``
|
||||
- ``Operations/GetLibraryItemsMediaContainer``
|
||||
- ``Operations/GetLibraryItemsMediaGuid``
|
||||
- ``Operations/GetLibraryItemsMeta``
|
||||
- ``Operations/GetLibraryItemsMetadata``
|
||||
- ``Operations/GetLibraryItemsMetaDataRating``
|
||||
- ``Operations/GetLibraryItemsOperator``
|
||||
- ``Operations/GetLibraryItemsOptimizedForStreaming``
|
||||
- ``Operations/GetLibraryItemsPart``
|
||||
- ``Operations/GetLibraryItemsQueryParamIncludeMeta``
|
||||
- ``Operations/GetLibraryItemsQueryParamType``
|
||||
- ``Operations/GetLibraryItemsRequest``
|
||||
- ``Operations/GetLibraryItemsResponseBody``
|
||||
- ``Operations/GetLibraryItemsRole``
|
||||
- ``Operations/GetLibraryItemsShowOrdering``
|
||||
- ``Operations/GetLibraryItemsSort``
|
||||
- ``Operations/GetLibraryItemsStream``
|
||||
- ``Operations/GetLibraryItemsType``
|
||||
- ``Operations/GetLibraryItemsUltraBlurColors``
|
||||
- ``Operations/GetLibraryItemsUnauthorized``
|
||||
- ``Operations/GetLibraryItemsWriter``
|
||||
- ``Operations/GetMediaProvidersDirectory``
|
||||
@@ -369,8 +396,40 @@ case .empty:
|
||||
- ``Operations/GetMetaDataByRatingKeyRequest``
|
||||
- ``Operations/GetMetaDataByRatingKeyResponseBody``
|
||||
- ``Operations/GetMetaDataByRatingKeyRole``
|
||||
- ``Operations/GetMetaDataByRatingKeyStream``
|
||||
- ``Operations/GetMetaDataByRatingKeyUnauthorized``
|
||||
- ``Operations/GetMetaDataByRatingKeyWriter``
|
||||
- ``Operations/GetRecentlyAddedActiveDirection``
|
||||
- ``Operations/GetRecentlyAddedDefaultDirection``
|
||||
- ``Operations/GetRecentlyAddedField``
|
||||
- ``Operations/GetRecentlyAddedFieldType``
|
||||
- ``Operations/GetRecentlyAddedFilter``
|
||||
- ``Operations/GetRecentlyAddedHubsResponseType``
|
||||
- ``Operations/GetRecentlyAddedHubsType``
|
||||
- ``Operations/GetRecentlyAddedImage``
|
||||
- ``Operations/GetRecentlyAddedMediaContainer``
|
||||
- ``Operations/GetRecentlyAddedMetadata``
|
||||
- ``Operations/GetRecentlyAddedOperator``
|
||||
- ``Operations/GetRecentlyAddedRequest``
|
||||
- ``Operations/GetRecentlyAddedResponseBody``
|
||||
- ``Operations/GetRecentlyAddedSort``
|
||||
- ``Operations/GetRecentlyAddedType``
|
||||
- ``Operations/GetRecentlyAddedLibraryCountry``
|
||||
- ``Operations/GetRecentlyAddedLibraryDirector``
|
||||
- ``Operations/GetRecentlyAddedLibraryErrors``
|
||||
- ``Operations/GetRecentlyAddedLibraryFilter``
|
||||
- ``Operations/GetRecentlyAddedLibraryGenre``
|
||||
- ``Operations/GetRecentlyAddedLibraryLibraryErrors``
|
||||
- ``Operations/GetRecentlyAddedLibraryMedia``
|
||||
- ``Operations/GetRecentlyAddedLibraryMediaContainer``
|
||||
- ``Operations/GetRecentlyAddedLibraryMetadata``
|
||||
- ``Operations/GetRecentlyAddedLibraryPart``
|
||||
- ``Operations/GetRecentlyAddedLibraryRequest``
|
||||
- ``Operations/GetRecentlyAddedLibraryResponseBody``
|
||||
- ``Operations/GetRecentlyAddedLibraryRole``
|
||||
- ``Operations/GetRecentlyAddedLibraryType``
|
||||
- ``Operations/GetRecentlyAddedLibraryUnauthorized``
|
||||
- ``Operations/GetRecentlyAddedLibraryWriter``
|
||||
- ``Operations/GetRefreshLibraryMetadataErrors``
|
||||
- ``Operations/GetRefreshLibraryMetadataLibraryErrors``
|
||||
- ``Operations/GetRefreshLibraryMetadataRequest``
|
||||
@@ -379,6 +438,7 @@ case .empty:
|
||||
- ``Operations/GetSearchLibraryLibraryErrors``
|
||||
- ``Operations/GetSearchLibraryMediaContainer``
|
||||
- ``Operations/GetSearchLibraryMetadata``
|
||||
- ``Operations/GetSearchLibraryQueryParamType``
|
||||
- ``Operations/GetSearchLibraryRequest``
|
||||
- ``Operations/GetSearchLibraryResponseBody``
|
||||
- ``Operations/GetSearchLibraryUnauthorized``
|
||||
@@ -511,13 +571,6 @@ case .empty:
|
||||
- ``Operations/GetPlaylistsRequest``
|
||||
- ``Operations/GetPlaylistsResponseBody``
|
||||
- ``Operations/GetPlaylistsUnauthorized``
|
||||
- ``Operations/GetRecentlyAddedErrors``
|
||||
- ``Operations/GetRecentlyAddedLibraryErrors``
|
||||
- ``Operations/GetRecentlyAddedMediaContainer``
|
||||
- ``Operations/GetRecentlyAddedMetadata``
|
||||
- ``Operations/GetRecentlyAddedRequest``
|
||||
- ``Operations/GetRecentlyAddedResponseBody``
|
||||
- ``Operations/GetRecentlyAddedUnauthorized``
|
||||
- ``Operations/GetResizedPhotoErrors``
|
||||
- ``Operations/GetResizedPhotoRequest``
|
||||
- ``Operations/GetResizedPhotoServerErrors``
|
||||
@@ -652,7 +705,6 @@ case .empty:
|
||||
- ``Operations/IncludeRelay``
|
||||
- ``Operations/InternalPaymentMethod``
|
||||
- ``Operations/Level``
|
||||
- ``Operations/LibrarySectionID``
|
||||
- ``Operations/Libtype``
|
||||
- ``Operations/Location``
|
||||
- ``Operations/LogLineErrors``
|
||||
@@ -678,10 +730,12 @@ case .empty:
|
||||
- ``Operations/MediaReviewsVisibility``
|
||||
- ``Operations/Meta``
|
||||
- ``Operations/Metadata``
|
||||
- ``Operations/MetaDataRating``
|
||||
- ``Operations/MinSize``
|
||||
- ``Operations/MyPlex``
|
||||
- ``Operations/OnlyTransient``
|
||||
- ``Operations/Operator``
|
||||
- ``Operations/OptimizedForStreaming``
|
||||
- ``Operations/Part``
|
||||
- ``Operations/PastSubscription``
|
||||
- ``Operations/PathParamTaskName``
|
||||
@@ -709,6 +763,7 @@ case .empty:
|
||||
- ``Operations/PostUsersSignInDataFeatures``
|
||||
- ``Operations/PostUsersSignInDataMailingListStatus``
|
||||
- ``Operations/PostUsersSignInDataMediaReviewsVisibility``
|
||||
- ``Operations/PostUsersSignInDataRequest``
|
||||
- ``Operations/PostUsersSignInDataRequestBody``
|
||||
- ``Operations/PostUsersSignInDataServices``
|
||||
- ``Operations/PostUsersSignInDataState``
|
||||
@@ -723,6 +778,7 @@ case .empty:
|
||||
- ``Operations/Provider``
|
||||
- ``Operations/QueryParamFilter``
|
||||
- ``Operations/QueryParamForce``
|
||||
- ``Operations/QueryParamIncludeMeta``
|
||||
- ``Operations/QueryParamOnlyTransient``
|
||||
- ``Operations/QueryParamSmart``
|
||||
- ``Operations/QueryParamType``
|
||||
|
||||
@@ -38,7 +38,7 @@ class _AuthenticationAPI: AuthenticationAPI {
|
||||
)
|
||||
}
|
||||
|
||||
public func postUsersSignInData(request: Operations.PostUsersSignInDataRequestBody, server: AuthenticationServers.PostUsersSignInData?) async throws -> Response<Operations.PostUsersSignInDataResponse> {
|
||||
public func postUsersSignInData(request: Operations.PostUsersSignInDataRequest, server: AuthenticationServers.PostUsersSignInData?) async throws -> Response<Operations.PostUsersSignInDataResponse> {
|
||||
return try await client.makeRequest(
|
||||
with: try server?.server() ?? AuthenticationServers.PostUsersSignInData.default(),
|
||||
configureRequest: { configuration in
|
||||
@@ -72,11 +72,12 @@ private func configureGetTokenDetailsRequest(with configuration: URLRequestConfi
|
||||
configuration.telemetryHeader = .userAgent
|
||||
}
|
||||
|
||||
private func configurePostUsersSignInDataRequest(with configuration: URLRequestConfiguration, request: Operations.PostUsersSignInDataRequestBody) throws {
|
||||
private func configurePostUsersSignInDataRequest(with configuration: URLRequestConfiguration, request: Operations.PostUsersSignInDataRequest) throws {
|
||||
configuration.path = "/users/signin"
|
||||
configuration.method = .post
|
||||
configuration.queryParameterSerializable = request
|
||||
configuration.contentType = "application/x-www-form-urlencoded"
|
||||
configuration.body = try serializeFormData(with: request)
|
||||
configuration.body = try serializeFormData(with: request.requestBody)
|
||||
configuration.telemetryHeader = .userAgent
|
||||
}
|
||||
|
||||
|
||||
@@ -19,6 +19,15 @@ class _HubsAPI: HubsAPI {
|
||||
)
|
||||
}
|
||||
|
||||
public func getRecentlyAdded(request: Operations.GetRecentlyAddedRequest) async throws -> Response<Operations.GetRecentlyAddedResponse> {
|
||||
return try await client.makeRequest(
|
||||
configureRequest: { configuration in
|
||||
try configureGetRecentlyAddedRequest(with: configuration, request: request)
|
||||
},
|
||||
handleResponse: handleGetRecentlyAddedResponse
|
||||
)
|
||||
}
|
||||
|
||||
public func getLibraryHubs(request: Operations.GetLibraryHubsRequest) async throws -> Response<Operations.GetLibraryHubsResponse> {
|
||||
return try await client.makeRequest(
|
||||
configureRequest: { configuration in
|
||||
@@ -39,6 +48,13 @@ private func configureGetGlobalHubsRequest(with configuration: URLRequestConfigu
|
||||
configuration.telemetryHeader = .userAgent
|
||||
}
|
||||
|
||||
private func configureGetRecentlyAddedRequest(with configuration: URLRequestConfiguration, request: Operations.GetRecentlyAddedRequest) throws {
|
||||
configuration.path = "/hubs/home/recentlyAdded"
|
||||
configuration.method = .get
|
||||
configuration.queryParameterSerializable = request
|
||||
configuration.telemetryHeader = .userAgent
|
||||
}
|
||||
|
||||
private func configureGetLibraryHubsRequest(with configuration: URLRequestConfiguration, request: Operations.GetLibraryHubsRequest) throws {
|
||||
configuration.path = "/hubs/sections/{sectionId}"
|
||||
configuration.method = .get
|
||||
@@ -81,6 +97,24 @@ private func handleGetGlobalHubsResponse(response: Client.APIResponse) throws ->
|
||||
return .empty
|
||||
}
|
||||
|
||||
private func handleGetRecentlyAddedResponse(response: Client.APIResponse) throws -> Operations.GetRecentlyAddedResponse {
|
||||
let httpResponse = response.httpResponse
|
||||
|
||||
if httpResponse.statusCode == 200 {
|
||||
if httpResponse.contentType.matchContentType(pattern: "application/json"), let data = response.data {
|
||||
do {
|
||||
return .object(try JSONDecoder().decode(Operations.GetRecentlyAddedResponseBody.self, from: data))
|
||||
} catch {
|
||||
throw ResponseHandlerError.failedToDecodeJSON(error)
|
||||
}
|
||||
}
|
||||
} else if [400, 401].contains(httpResponse.statusCode) {
|
||||
return .empty
|
||||
}
|
||||
|
||||
return .empty
|
||||
}
|
||||
|
||||
private func handleGetLibraryHubsResponse(response: Client.APIResponse) throws -> Operations.GetLibraryHubsResponse {
|
||||
let httpResponse = response.httpResponse
|
||||
|
||||
|
||||
@@ -19,12 +19,12 @@ class _LibraryAPI: LibraryAPI {
|
||||
)
|
||||
}
|
||||
|
||||
public func getRecentlyAdded(request: Operations.GetRecentlyAddedRequest) async throws -> Response<Operations.GetRecentlyAddedResponse> {
|
||||
public func getRecentlyAddedLibrary(request: Operations.GetRecentlyAddedLibraryRequest) async throws -> Response<Operations.GetRecentlyAddedLibraryResponse> {
|
||||
return try await client.makeRequest(
|
||||
configureRequest: { configuration in
|
||||
try configureGetRecentlyAddedRequest(with: configuration, request: request)
|
||||
try configureGetRecentlyAddedLibraryRequest(with: configuration, request: request)
|
||||
},
|
||||
handleResponse: handleGetRecentlyAddedResponse
|
||||
handleResponse: handleGetRecentlyAddedLibraryResponse
|
||||
)
|
||||
}
|
||||
|
||||
@@ -129,7 +129,7 @@ private func configureGetFileHashRequest(with configuration: URLRequestConfigura
|
||||
configuration.telemetryHeader = .userAgent
|
||||
}
|
||||
|
||||
private func configureGetRecentlyAddedRequest(with configuration: URLRequestConfiguration, request: Operations.GetRecentlyAddedRequest) throws {
|
||||
private func configureGetRecentlyAddedLibraryRequest(with configuration: URLRequestConfiguration, request: Operations.GetRecentlyAddedLibraryRequest) throws {
|
||||
configuration.path = "/library/recentlyAdded"
|
||||
configuration.method = .get
|
||||
configuration.queryParameterSerializable = request
|
||||
@@ -237,13 +237,13 @@ private func handleGetFileHashResponse(response: Client.APIResponse) throws -> O
|
||||
return .empty
|
||||
}
|
||||
|
||||
private func handleGetRecentlyAddedResponse(response: Client.APIResponse) throws -> Operations.GetRecentlyAddedResponse {
|
||||
private func handleGetRecentlyAddedLibraryResponse(response: Client.APIResponse) throws -> Operations.GetRecentlyAddedLibraryResponse {
|
||||
let httpResponse = response.httpResponse
|
||||
|
||||
if httpResponse.statusCode == 200 {
|
||||
if httpResponse.contentType.matchContentType(pattern: "application/json"), let data = response.data {
|
||||
do {
|
||||
return .object(try JSONDecoder().decode(Operations.GetRecentlyAddedResponseBody.self, from: data))
|
||||
return .object(try JSONDecoder().decode(Operations.GetRecentlyAddedLibraryResponseBody.self, from: data))
|
||||
} catch {
|
||||
throw ResponseHandlerError.failedToDecodeJSON(error)
|
||||
}
|
||||
@@ -251,7 +251,7 @@ private func handleGetRecentlyAddedResponse(response: Client.APIResponse) throws
|
||||
} else if httpResponse.statusCode == 400 {
|
||||
if httpResponse.contentType.matchContentType(pattern: "application/json"), let data = response.data {
|
||||
do {
|
||||
return .badRequest(try JSONDecoder().decode(Operations.GetRecentlyAddedBadRequest.self, from: data))
|
||||
return .badRequest(try JSONDecoder().decode(Operations.GetRecentlyAddedLibraryBadRequest.self, from: data))
|
||||
} catch {
|
||||
throw ResponseHandlerError.failedToDecodeJSON(error)
|
||||
}
|
||||
@@ -259,7 +259,7 @@ private func handleGetRecentlyAddedResponse(response: Client.APIResponse) throws
|
||||
} else if httpResponse.statusCode == 401 {
|
||||
if httpResponse.contentType.matchContentType(pattern: "application/json"), let data = response.data {
|
||||
do {
|
||||
return .unauthorized(try JSONDecoder().decode(Operations.GetRecentlyAddedUnauthorized.self, from: data))
|
||||
return .unauthorized(try JSONDecoder().decode(Operations.GetRecentlyAddedLibraryUnauthorized.self, from: data))
|
||||
} catch {
|
||||
throw ResponseHandlerError.failedToDecodeJSON(error)
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryResponseType: Serializable {
|
||||
extension Operations.GetLibraryItemsActiveDirection: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsDefaultDirection: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsFlattenSeasons: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsHasThumbnail: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryActiveDirection: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryDefaultDirection: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryResponse200Type: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryType: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsOptimizedForStreaming: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsQueryParamIncludeMeta: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsQueryParamType: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsShowOrdering: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -21,6 +21,7 @@ extension Operations.GetPinRequest: Serializable {
|
||||
extension Operations.GetPinRequest: QueryParameterSerializable {
|
||||
func serializedQueryParameters(with parameterDefaults: ParameterDefaults?, formatOverride: SerializableFormat?) throws -> [QueryParameter] {
|
||||
let builder = QueryParameterBuilder()
|
||||
try builder.addQueryParameters(from: clientID, named: "X-Plex-Client-Identifier", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: clientName, named: "X-Plex-Product", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: clientPlatform, named: "X-Plex-Platform", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: clientVersion, named: "X-Plex-Version", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetRecentlyAddedActiveDirection: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetRecentlyAddedDefaultDirection: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetRecentlyAddedHubsResponseType: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetRecentlyAddedHubsType: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryRequest: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
switch format {
|
||||
case .query:
|
||||
return try serializeQueryParameterSerializable(self, with: format)
|
||||
case .path, .header, .multipart, .form:
|
||||
throw SerializationError.invalidSerializationParameter(type: "Operations.GetRecentlyAddedLibraryRequest", format: format.formatDescription)
|
||||
}
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return try serializedQueryParameters(with: nil, formatOverride: format)
|
||||
}
|
||||
}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryRequest: QueryParameterSerializable {
|
||||
func serializedQueryParameters(with parameterDefaults: ParameterDefaults?, formatOverride: SerializableFormat?) throws -> [QueryParameter] {
|
||||
let builder = QueryParameterBuilder()
|
||||
try builder.addQueryParameters(from: type, named: "type", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: contentDirectoryID, named: "contentDirectoryID", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: includeMeta, named: "includeMeta", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: pinnedContentDirectoryID, named: "pinnedContentDirectoryID", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: sectionID, named: "sectionID", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: xPlexContainerSize, named: "X-Plex-Container-Size", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: xPlexContainerStart, named: "X-Plex-Container-Start", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
return builder.build()
|
||||
}
|
||||
}
|
||||
@@ -21,6 +21,11 @@ extension Operations.GetRecentlyAddedRequest: Serializable {
|
||||
extension Operations.GetRecentlyAddedRequest: QueryParameterSerializable {
|
||||
func serializedQueryParameters(with parameterDefaults: ParameterDefaults?, formatOverride: SerializableFormat?) throws -> [QueryParameter] {
|
||||
let builder = QueryParameterBuilder()
|
||||
try builder.addQueryParameters(from: contentDirectoryID, named: "contentDirectoryID", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: type, named: "type", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: includeMeta, named: "includeMeta", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: pinnedContentDirectoryID, named: "pinnedContentDirectoryID", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: sectionID, named: "sectionID", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: xPlexContainerSize, named: "X-Plex-Container-Size", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: xPlexContainerStart, named: "X-Plex-Container-Start", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
return builder.build()
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetSearchLibraryQueryParamType: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.LibrarySectionID: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return ""
|
||||
}
|
||||
}
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.GetLibraryItemsType: Serializable {
|
||||
extension Operations.OptimizedForStreaming: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.PostUsersSignInDataRequest: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
switch format {
|
||||
case .query:
|
||||
return try serializeQueryParameterSerializable(self, with: format)
|
||||
case .path, .header, .multipart, .form:
|
||||
throw SerializationError.invalidSerializationParameter(type: "Operations.PostUsersSignInDataRequest", format: format.formatDescription)
|
||||
}
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return try serializedQueryParameters(with: nil, formatOverride: format)
|
||||
}
|
||||
}
|
||||
|
||||
extension Operations.PostUsersSignInDataRequest: QueryParameterSerializable {
|
||||
func serializedQueryParameters(with parameterDefaults: ParameterDefaults?, formatOverride: SerializableFormat?) throws -> [QueryParameter] {
|
||||
let builder = QueryParameterBuilder()
|
||||
try builder.addQueryParameters(from: clientID, named: "X-Plex-Client-Identifier", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: clientName, named: "X-Plex-Product", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: clientPlatform, named: "X-Plex-Platform", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: clientVersion, named: "X-Plex-Version", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
try builder.addQueryParameters(from: deviceName, named: "X-Plex-Device", format: formatOverride ?? .query(style: .form, explode: true), parameterDefaults: parameterDefaults)
|
||||
return builder.build()
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations.QueryParamIncludeMeta: Serializable {
|
||||
func serialize(with format: SerializableFormat) throws -> String {
|
||||
return try rawValue.serialize(with: format)
|
||||
}
|
||||
|
||||
func serializeQueryParameters(with format: SerializableFormat) throws -> [QueryParameter] {
|
||||
return [QueryParameter(key: [], serialized: try serialize(with: format))]
|
||||
}
|
||||
}
|
||||
@@ -5,28 +5,28 @@ import Foundation
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct Field {
|
||||
public let key: String?
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let type: String
|
||||
public let subType: String?
|
||||
public let title: String?
|
||||
public let type: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(key: String? = nil, subType: String? = nil, title: String? = nil, type: String? = nil) {
|
||||
public init(key: String, title: String, type: String, subType: String? = nil) {
|
||||
self.key = key
|
||||
self.subType = subType
|
||||
self.title = title
|
||||
self.type = type
|
||||
self.subType = subType
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.Field: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case key
|
||||
case subType
|
||||
case title
|
||||
case type
|
||||
case subType
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -5,13 +5,13 @@ import Foundation
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct FieldType {
|
||||
public let `operator`: [Operations.Operator]?
|
||||
public let type: String?
|
||||
public let `operator`: [Operations.Operator]
|
||||
public let type: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(`operator`: [Operations.Operator]? = nil, type: String? = nil) {
|
||||
public init(`operator`: [Operations.Operator], type: String) {
|
||||
self.`operator` = `operator`
|
||||
self.type = type
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ extension Operations {
|
||||
public let art: String
|
||||
public let composite: String
|
||||
public let content: Bool
|
||||
/// Unix epoch datetime in seconds
|
||||
public let contentChangedAt: Int
|
||||
/// Unix epoch datetime in seconds
|
||||
public let createdAt: Int
|
||||
@@ -32,6 +33,7 @@ extension Operations {
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
/// - Parameter contentChangedAt: Unix epoch datetime in seconds
|
||||
/// - Parameter createdAt: Unix epoch datetime in seconds
|
||||
/// - Parameter scannedAt: Unix epoch datetime in seconds
|
||||
/// - Parameter updatedAt: Unix epoch datetime in seconds
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryDetailsField {
|
||||
public let key: String?
|
||||
public let subType: String?
|
||||
public let title: String?
|
||||
public let type: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(key: String? = nil, subType: String? = nil, title: String? = nil, type: String? = nil) {
|
||||
self.key = key
|
||||
self.subType = subType
|
||||
self.title = title
|
||||
self.type = type
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryDetailsField: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case key
|
||||
case subType
|
||||
case title
|
||||
case type
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryDetailsFieldType {
|
||||
public let `operator`: [Operations.GetLibraryDetailsOperator]?
|
||||
public let type: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(`operator`: [Operations.GetLibraryDetailsOperator]? = nil, type: String? = nil) {
|
||||
self.`operator` = `operator`
|
||||
self.type = type
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryDetailsFieldType: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case `operator` = "Operator"
|
||||
case type
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@ extension Operations {
|
||||
public let art: String?
|
||||
public let content: String?
|
||||
public let directory: [Operations.GetLibraryDetailsDirectory]?
|
||||
public let fieldType: [Operations.FieldType]?
|
||||
public let fieldType: [Operations.GetLibraryDetailsFieldType]?
|
||||
public let identifier: String?
|
||||
public let librarySectionID: Int?
|
||||
public let mediaTagPrefix: String?
|
||||
@@ -24,7 +24,7 @@ extension Operations {
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(allowSync: Bool? = nil, art: String? = nil, content: String? = nil, directory: [Operations.GetLibraryDetailsDirectory]? = nil, fieldType: [Operations.FieldType]? = nil, identifier: String? = nil, librarySectionID: Int? = nil, mediaTagPrefix: String? = nil, mediaTagVersion: Int? = nil, size: Int? = nil, thumb: String? = nil, title1: String? = nil, type: [Operations.GetLibraryDetailsType]? = nil, viewGroup: String? = nil, viewMode: Int? = nil) {
|
||||
public init(allowSync: Bool? = nil, art: String? = nil, content: String? = nil, directory: [Operations.GetLibraryDetailsDirectory]? = nil, fieldType: [Operations.GetLibraryDetailsFieldType]? = nil, identifier: String? = nil, librarySectionID: Int? = nil, mediaTagPrefix: String? = nil, mediaTagVersion: Int? = nil, size: Int? = nil, thumb: String? = nil, title1: String? = nil, type: [Operations.GetLibraryDetailsType]? = nil, viewGroup: String? = nil, viewMode: Int? = nil) {
|
||||
self.allowSync = allowSync
|
||||
self.art = art
|
||||
self.content = content
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryDetailsOperator {
|
||||
public let key: String?
|
||||
public let title: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(key: String? = nil, title: String? = nil) {
|
||||
self.key = key
|
||||
self.title = title
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryDetailsOperator: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case key
|
||||
case title
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryDetailsSort {
|
||||
public let `default`: String?
|
||||
public let defaultDirection: String?
|
||||
public let descKey: String?
|
||||
public let firstCharacterKey: String?
|
||||
public let key: String?
|
||||
public let title: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(`default`: String? = nil, defaultDirection: String? = nil, descKey: String? = nil, firstCharacterKey: String? = nil, key: String? = nil, title: String? = nil) {
|
||||
self.`default` = `default`
|
||||
self.defaultDirection = defaultDirection
|
||||
self.descKey = descKey
|
||||
self.firstCharacterKey = firstCharacterKey
|
||||
self.key = key
|
||||
self.title = title
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryDetailsSort: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case `default` = "default"
|
||||
case defaultDirection
|
||||
case descKey
|
||||
case firstCharacterKey
|
||||
case key
|
||||
case title
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,17 +6,17 @@ extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryDetailsType {
|
||||
public let active: Bool?
|
||||
public let field: [Operations.Field]?
|
||||
public let field: [Operations.GetLibraryDetailsField]?
|
||||
public let filter: [Operations.GetLibraryDetailsFilter]?
|
||||
public let key: String?
|
||||
public let sort: [Operations.Sort]?
|
||||
public let sort: [Operations.GetLibraryDetailsSort]?
|
||||
public let title: String?
|
||||
public let type: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(active: Bool? = nil, field: [Operations.Field]? = nil, filter: [Operations.GetLibraryDetailsFilter]? = nil, key: String? = nil, sort: [Operations.Sort]? = nil, title: String? = nil, type: String? = nil) {
|
||||
public init(active: Bool? = nil, field: [Operations.GetLibraryDetailsField]? = nil, filter: [Operations.GetLibraryDetailsFilter]? = nil, key: String? = nil, sort: [Operations.GetLibraryDetailsSort]? = nil, title: String? = nil, type: String? = nil) {
|
||||
self.active = active
|
||||
self.field = field
|
||||
self.filter = filter
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
public enum GetLibraryItemsActiveDirection: String, Codable, APIValue {
|
||||
case ascending = "asc"
|
||||
case descending = "desc"
|
||||
}}
|
||||
@@ -0,0 +1,23 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsCollection {
|
||||
public let tag: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(tag: String? = nil) {
|
||||
self.tag = tag
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsCollection: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case tag
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
public enum GetLibraryItemsDefaultDirection: String, Codable, APIValue {
|
||||
case ascending = "asc"
|
||||
case descending = "desc"
|
||||
}}
|
||||
@@ -0,0 +1,9 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
public enum GetLibraryItemsFlattenSeasons: String, Codable, APIValue {
|
||||
case `false` = "0"
|
||||
case `true` = "1"
|
||||
}}
|
||||
@@ -0,0 +1,9 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
public enum GetLibraryItemsHasThumbnail: String, Codable, APIValue {
|
||||
case `false` = "0"
|
||||
case `true` = "1"
|
||||
}}
|
||||
@@ -6,13 +6,13 @@ extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsImage {
|
||||
public let alt: String
|
||||
public let type: Operations.GetLibraryItemsLibraryResponseType
|
||||
public let type: Operations.GetLibraryItemsLibraryResponse200Type
|
||||
public let url: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(alt: String, type: Operations.GetLibraryItemsLibraryResponseType, url: String) {
|
||||
public init(alt: String, type: Operations.GetLibraryItemsLibraryResponse200Type, url: String) {
|
||||
self.alt = alt
|
||||
self.type = type
|
||||
self.url = url
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
public enum GetLibraryItemsLibraryActiveDirection: String, Codable, APIValue {
|
||||
case ascending = "asc"
|
||||
case descending = "desc"
|
||||
}}
|
||||
@@ -0,0 +1,11 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
public enum GetLibraryItemsLibraryDefaultDirection: String, Codable, APIValue {
|
||||
case ascending = "asc"
|
||||
case descending = "desc"
|
||||
}}
|
||||
@@ -0,0 +1,32 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsLibraryField {
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let type: String
|
||||
public let subType: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(key: String, title: String, type: String, subType: String? = nil) {
|
||||
self.key = key
|
||||
self.title = title
|
||||
self.type = type
|
||||
self.subType = subType
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryField: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case key
|
||||
case title
|
||||
case type
|
||||
case subType
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsLibraryFieldType {
|
||||
public let `operator`: [Operations.GetLibraryItemsLibraryOperator]
|
||||
public let type: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(`operator`: [Operations.GetLibraryItemsLibraryOperator], type: String) {
|
||||
self.`operator` = `operator`
|
||||
self.type = type
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryFieldType: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case `operator` = "Operator"
|
||||
case type
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsLibraryFilter {
|
||||
public let filter: String
|
||||
public let filterType: String
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let type: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(filter: String, filterType: String, key: String, title: String, type: String) {
|
||||
self.filter = filter
|
||||
self.filterType = filterType
|
||||
self.key = key
|
||||
self.title = title
|
||||
self.type = type
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryFilter: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case filter
|
||||
case filterType
|
||||
case key
|
||||
case title
|
||||
case type
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsLibraryOperator {
|
||||
public let key: String
|
||||
public let title: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(key: String, title: String) {
|
||||
self.key = key
|
||||
self.title = title
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryOperator: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case key
|
||||
case title
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
public enum GetLibraryItemsLibraryResponse200Type: String, Codable, APIValue {
|
||||
case coverPoster = "coverPoster"
|
||||
case background = "background"
|
||||
case snapshot = "snapshot"
|
||||
case clearLogo = "clearLogo"
|
||||
}}
|
||||
@@ -3,9 +3,39 @@
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
public enum GetLibraryItemsLibraryResponseType: String, Codable, APIValue {
|
||||
case coverPoster = "coverPoster"
|
||||
case background = "background"
|
||||
case snapshot = "snapshot"
|
||||
case clearLogo = "clearLogo"
|
||||
/// A model object
|
||||
public struct GetLibraryItemsLibraryResponseType {
|
||||
public let active: Bool
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let type: String
|
||||
public let field: [Operations.GetLibraryItemsLibraryField]?
|
||||
public let filter: [Operations.GetLibraryItemsLibraryFilter]?
|
||||
public let sort: [Operations.GetLibraryItemsLibrarySort]?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(active: Bool, key: String, title: String, type: String, field: [Operations.GetLibraryItemsLibraryField]? = nil, filter: [Operations.GetLibraryItemsLibraryFilter]? = nil, sort: [Operations.GetLibraryItemsLibrarySort]? = nil) {
|
||||
self.active = active
|
||||
self.key = key
|
||||
self.title = title
|
||||
self.type = type
|
||||
self.field = field
|
||||
self.filter = filter
|
||||
self.sort = sort
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryResponseType: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case active
|
||||
case key
|
||||
case title
|
||||
case type
|
||||
case field = "Field"
|
||||
case filter = "Filter"
|
||||
case sort = "Sort"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsLibrarySort {
|
||||
/// The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
public let defaultDirection: Operations.GetLibraryItemsLibraryDefaultDirection
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let active: Bool?
|
||||
/// The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
public let activeDirection: Operations.GetLibraryItemsLibraryActiveDirection?
|
||||
public let `default`: String?
|
||||
public let descKey: String?
|
||||
public let firstCharacterKey: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
/// - Parameter defaultDirection: The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
/// - Parameter activeDirection: The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
///
|
||||
public init(defaultDirection: Operations.GetLibraryItemsLibraryDefaultDirection, key: String, title: String, active: Bool? = nil, activeDirection: Operations.GetLibraryItemsLibraryActiveDirection? = nil, `default`: String? = nil, descKey: String? = nil, firstCharacterKey: String? = nil) {
|
||||
self.defaultDirection = defaultDirection
|
||||
self.key = key
|
||||
self.title = title
|
||||
self.active = active
|
||||
self.activeDirection = activeDirection
|
||||
self.`default` = `default`
|
||||
self.descKey = descKey
|
||||
self.firstCharacterKey = firstCharacterKey
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsLibrarySort: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case defaultDirection
|
||||
case key
|
||||
case title
|
||||
case active
|
||||
case activeDirection
|
||||
case `default` = "default"
|
||||
case descKey
|
||||
case firstCharacterKey
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,39 +3,11 @@
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsLibraryType {
|
||||
public let active: Bool
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let type: String
|
||||
public let field: [Operations.GetLibraryItemsField]?
|
||||
public let filter: [Operations.GetLibraryItemsFilter]?
|
||||
public let sort: [Operations.GetLibraryItemsSort]?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
/// The type of media content
|
||||
///
|
||||
///
|
||||
public init(active: Bool, key: String, title: String, type: String, field: [Operations.GetLibraryItemsField]? = nil, filter: [Operations.GetLibraryItemsFilter]? = nil, sort: [Operations.GetLibraryItemsSort]? = nil) {
|
||||
self.active = active
|
||||
self.key = key
|
||||
self.title = title
|
||||
self.type = type
|
||||
self.field = field
|
||||
self.filter = filter
|
||||
self.sort = sort
|
||||
}
|
||||
public enum GetLibraryItemsLibraryType: String, Codable, APIValue {
|
||||
case movie = "movie"
|
||||
case tvShow = "show"
|
||||
case season = "season"
|
||||
case episode = "episode"
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsLibraryType: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case active
|
||||
case key
|
||||
case title
|
||||
case type
|
||||
case field = "Field"
|
||||
case filter = "Filter"
|
||||
case sort = "Sort"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -21,12 +21,14 @@ extension Operations {
|
||||
public let videoResolution: String
|
||||
public let width: Int
|
||||
public let audioProfile: String?
|
||||
public let has64bitOffsets: Bool?
|
||||
public let hasVoiceActivity: Bool?
|
||||
public let optimizedForStreaming: Operations.GetLibraryItemsOptimizedForStreaming?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(aspectRatio: Double, audioChannels: Int, audioCodec: String, bitrate: Int, container: String, duration: Int, height: Int, id: Int, part: [Operations.GetLibraryItemsPart], videoCodec: String, videoFrameRate: String, videoProfile: String, videoResolution: String, width: Int, audioProfile: String? = nil, hasVoiceActivity: Bool? = nil) {
|
||||
public init(aspectRatio: Double, audioChannels: Int, audioCodec: String, bitrate: Int, container: String, duration: Int, height: Int, id: Int, part: [Operations.GetLibraryItemsPart], videoCodec: String, videoFrameRate: String, videoProfile: String, videoResolution: String, width: Int, audioProfile: String? = nil, has64bitOffsets: Bool? = nil, hasVoiceActivity: Bool? = nil, optimizedForStreaming: Operations.GetLibraryItemsOptimizedForStreaming? = nil) {
|
||||
self._aspectRatio = DecimalSerialized<Double>(wrappedValue: aspectRatio)
|
||||
self.audioChannels = audioChannels
|
||||
self.audioCodec = audioCodec
|
||||
@@ -42,7 +44,9 @@ extension Operations {
|
||||
self.videoResolution = videoResolution
|
||||
self.width = width
|
||||
self.audioProfile = audioProfile
|
||||
self.has64bitOffsets = has64bitOffsets
|
||||
self.hasVoiceActivity = hasVoiceActivity
|
||||
self.optimizedForStreaming = optimizedForStreaming
|
||||
}
|
||||
}}
|
||||
|
||||
@@ -63,7 +67,9 @@ extension Operations.GetLibraryItemsMedia: Codable {
|
||||
case videoResolution
|
||||
case width
|
||||
case audioProfile
|
||||
case has64bitOffsets
|
||||
case hasVoiceActivity
|
||||
case optimizedForStreaming
|
||||
}
|
||||
|
||||
public init(from decoder: Decoder) throws {
|
||||
@@ -83,7 +89,9 @@ extension Operations.GetLibraryItemsMedia: Codable {
|
||||
self.videoResolution = try container.decode(String.self, forKey: .videoResolution)
|
||||
self.width = try container.decode(Int.self, forKey: .width)
|
||||
self.audioProfile = try container.decodeIfPresent(String.self, forKey: .audioProfile)
|
||||
self.has64bitOffsets = try container.decodeIfPresent(Bool.self, forKey: .has64bitOffsets)
|
||||
self.hasVoiceActivity = try container.decodeIfPresent(Bool.self, forKey: .hasVoiceActivity)
|
||||
self.optimizedForStreaming = try container.decodeIfPresent(Operations.GetLibraryItemsOptimizedForStreaming.self, forKey: .optimizedForStreaming)
|
||||
}
|
||||
|
||||
public func encode(to encoder: Encoder) throws {
|
||||
@@ -103,7 +111,9 @@ extension Operations.GetLibraryItemsMedia: Codable {
|
||||
try container.encode(self.videoResolution, forKey: .videoResolution)
|
||||
try container.encode(self.width, forKey: .width)
|
||||
try container.encodeIfPresent(self.audioProfile, forKey: .audioProfile)
|
||||
try container.encodeIfPresent(self.has64bitOffsets, forKey: .has64bitOffsets)
|
||||
try container.encodeIfPresent(self.hasVoiceActivity, forKey: .hasVoiceActivity)
|
||||
try container.encodeIfPresent(self.optimizedForStreaming, forKey: .optimizedForStreaming)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,13 +3,14 @@
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
/// The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
|
||||
///
|
||||
public struct GetLibraryItemsMediaContainer {
|
||||
public let allowSync: Bool
|
||||
public let art: String
|
||||
public let content: String
|
||||
public let identifier: String
|
||||
public let librarySectionID: Operations.LibrarySectionID
|
||||
public let librarySectionID: Int
|
||||
public let librarySectionTitle: String
|
||||
public let librarySectionUUID: String
|
||||
public let mediaTagPrefix: String
|
||||
@@ -22,11 +23,13 @@ extension Operations {
|
||||
public let title2: String
|
||||
public let totalSize: Int
|
||||
public let viewGroup: String
|
||||
public let fieldType: [Operations.GetLibraryItemsFieldType]?
|
||||
/// The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
|
||||
///
|
||||
public let meta: Operations.Meta?
|
||||
public let meta: Operations.GetLibraryItemsMeta?
|
||||
public let mixedParents: Bool?
|
||||
public let nocache: Bool?
|
||||
public let type: [Operations.GetLibraryItemsType]?
|
||||
public let viewMode: Int?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
@@ -34,7 +37,7 @@ extension Operations {
|
||||
/// - Parameter meta: The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
|
||||
///
|
||||
///
|
||||
public init(allowSync: Bool, art: String, content: String, identifier: String, librarySectionID: Operations.LibrarySectionID, librarySectionTitle: String, librarySectionUUID: String, mediaTagPrefix: String, mediaTagVersion: Int, metadata: [Operations.GetLibraryItemsMetadata], offset: Int, size: Int, thumb: String, title1: String, title2: String, totalSize: Int, viewGroup: String, meta: Operations.Meta? = nil, mixedParents: Bool? = nil, nocache: Bool? = nil, viewMode: Int? = nil) {
|
||||
public init(allowSync: Bool, art: String, content: String, identifier: String, librarySectionID: Int, librarySectionTitle: String, librarySectionUUID: String, mediaTagPrefix: String, mediaTagVersion: Int, metadata: [Operations.GetLibraryItemsMetadata], offset: Int, size: Int, thumb: String, title1: String, title2: String, totalSize: Int, viewGroup: String, fieldType: [Operations.GetLibraryItemsFieldType]? = nil, meta: Operations.GetLibraryItemsMeta? = nil, mixedParents: Bool? = nil, nocache: Bool? = nil, type: [Operations.GetLibraryItemsType]? = nil, viewMode: Int? = nil) {
|
||||
self.allowSync = allowSync
|
||||
self.art = art
|
||||
self.content = content
|
||||
@@ -52,9 +55,11 @@ extension Operations {
|
||||
self.title2 = title2
|
||||
self.totalSize = totalSize
|
||||
self.viewGroup = viewGroup
|
||||
self.fieldType = fieldType
|
||||
self.meta = meta
|
||||
self.mixedParents = mixedParents
|
||||
self.nocache = nocache
|
||||
self.type = type
|
||||
self.viewMode = viewMode
|
||||
}
|
||||
}}
|
||||
@@ -78,9 +83,11 @@ extension Operations.GetLibraryItemsMediaContainer: Codable {
|
||||
case title2
|
||||
case totalSize
|
||||
case viewGroup
|
||||
case fieldType = "FieldType"
|
||||
case meta = "Meta"
|
||||
case mixedParents
|
||||
case nocache
|
||||
case type = "Type"
|
||||
case viewMode
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsMediaGuid {
|
||||
/// Can be one of the following formats:
|
||||
/// imdb://tt13015952, tmdb://2434012, tvdb://7945991
|
||||
///
|
||||
public let id: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
/// - Parameter id: Can be one of the following formats:
|
||||
/// imdb://tt13015952, tmdb://2434012, tvdb://7945991
|
||||
///
|
||||
///
|
||||
public init(id: String) {
|
||||
self.id = id
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsMediaGuid: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case id
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
|
||||
///
|
||||
public struct GetLibraryItemsMeta {
|
||||
public let fieldType: [Operations.GetLibraryItemsLibraryFieldType]?
|
||||
public let type: [Operations.GetLibraryItemsLibraryResponseType]?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(fieldType: [Operations.GetLibraryItemsLibraryFieldType]? = nil, type: [Operations.GetLibraryItemsLibraryResponseType]? = nil) {
|
||||
self.fieldType = fieldType
|
||||
self.type = type
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsMeta: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case fieldType = "FieldType"
|
||||
case type = "Type"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsMetaDataRating {
|
||||
/// A URI or path to the rating image.
|
||||
public let image: String
|
||||
/// The type of rating (e.g., audience, critic).
|
||||
public let type: String
|
||||
/// The value of the rating.
|
||||
@DecimalSerialized
|
||||
public private(set) var value: Double
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
/// - Parameter image: A URI or path to the rating image.
|
||||
/// - Parameter type: The type of rating (e.g., audience, critic).
|
||||
/// - Parameter value: The value of the rating.
|
||||
///
|
||||
public init(image: String, type: String, value: Double) {
|
||||
self.image = image
|
||||
self.type = type
|
||||
self._value = DecimalSerialized<Double>(wrappedValue: value)
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsMetaDataRating: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case image
|
||||
case type
|
||||
case value
|
||||
}
|
||||
|
||||
public init(from decoder: Decoder) throws {
|
||||
let container = try decoder.container(keyedBy: CodingKeys.self)
|
||||
self.image = try container.decode(String.self, forKey: .image)
|
||||
self.type = try container.decode(String.self, forKey: .type)
|
||||
self._value = try container.decode(DecimalSerialized<Double>.self, forKey: .value)
|
||||
}
|
||||
|
||||
public func encode(to encoder: Encoder) throws {
|
||||
var container = encoder.container(keyedBy: CodingKeys.self)
|
||||
try container.encode(self.image, forKey: .image)
|
||||
try container.encode(self.type, forKey: .type)
|
||||
try container.encode(self._value, forKey: .value)
|
||||
}
|
||||
}
|
||||
|
||||
extension Operations.GetLibraryItemsMetaDataRating {
|
||||
var valueWrapper: DecimalSerialized<Double> {
|
||||
return _value
|
||||
}
|
||||
}
|
||||
@@ -17,7 +17,7 @@ extension Operations {
|
||||
public let title: String
|
||||
/// The type of media content
|
||||
///
|
||||
public let type: Operations.GetLibraryItemsType
|
||||
public let type: Operations.GetLibraryItemsLibraryType
|
||||
public let art: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var audienceRating: Double?
|
||||
@@ -25,12 +25,12 @@ extension Operations {
|
||||
public let banner: String?
|
||||
public let chapterSource: String?
|
||||
public let childCount: Int?
|
||||
public let collection: [Operations.Collection]?
|
||||
public let collection: [Operations.GetLibraryItemsCollection]?
|
||||
public let contentRating: String?
|
||||
public let country: [Operations.GetLibraryItemsCountry]?
|
||||
public let director: [Operations.GetLibraryItemsDirector]?
|
||||
public let duration: Int?
|
||||
public let flattenSeasons: Operations.FlattenSeasons?
|
||||
public let flattenSeasons: Operations.GetLibraryItemsFlattenSeasons?
|
||||
public let genre: [Operations.GetLibraryItemsGenre]?
|
||||
public let grandparentArt: String?
|
||||
public let grandparentGuid: String?
|
||||
@@ -46,12 +46,16 @@ extension Operations {
|
||||
public let index: Int?
|
||||
public let lastViewedAt: Int?
|
||||
public let leafCount: Int?
|
||||
public let librarySectionID: Int?
|
||||
public let librarySectionKey: String?
|
||||
public let librarySectionTitle: String?
|
||||
/// The Media object is only included when type query is `4` or higher.
|
||||
///
|
||||
public let media: [Operations.GetLibraryItemsMedia]?
|
||||
/// The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.
|
||||
///
|
||||
public let mediaGuid: [Operations.MediaGuid]?
|
||||
public let mediaGuid: [Operations.GetLibraryItemsMediaGuid]?
|
||||
public let metaDataRating: [Operations.GetLibraryItemsMetaDataRating]?
|
||||
@DateOnly
|
||||
public private(set) var originallyAvailableAt: Date?
|
||||
public let originalTitle: String?
|
||||
@@ -61,6 +65,7 @@ extension Operations {
|
||||
/// The rating key of the parent item.
|
||||
///
|
||||
public let parentRatingKey: String?
|
||||
public let parentSlug: String?
|
||||
public let parentStudio: String?
|
||||
public let parentTheme: String?
|
||||
public let parentThumb: String?
|
||||
@@ -79,7 +84,7 @@ extension Operations {
|
||||
/// dvd = TheTVDB (DVD),
|
||||
/// absolute = TheTVDB (Absolute)).
|
||||
///
|
||||
public let showOrdering: Operations.ShowOrdering?
|
||||
public let showOrdering: Operations.GetLibraryItemsShowOrdering?
|
||||
public let skipChildren: Bool?
|
||||
public let skipCount: Int?
|
||||
public let slug: String?
|
||||
@@ -88,7 +93,7 @@ extension Operations {
|
||||
public let theme: String?
|
||||
public let thumb: String?
|
||||
public let titleSort: String?
|
||||
public let ultraBlurColors: Operations.UltraBlurColors?
|
||||
public let ultraBlurColors: Operations.GetLibraryItemsUltraBlurColors?
|
||||
/// Unix epoch datetime in seconds
|
||||
public let updatedAt: Int?
|
||||
public let viewCount: Int?
|
||||
@@ -120,7 +125,7 @@ extension Operations {
|
||||
///
|
||||
/// - Parameter updatedAt: Unix epoch datetime in seconds
|
||||
///
|
||||
public init(addedAt: Int, guid: String, key: String, ratingKey: String, summary: String, title: String, type: Operations.GetLibraryItemsType, art: String? = nil, audienceRating: Double? = nil, audienceRatingImage: String? = nil, banner: String? = nil, chapterSource: String? = nil, childCount: Int? = nil, collection: [Operations.Collection]? = nil, contentRating: String? = nil, country: [Operations.GetLibraryItemsCountry]? = nil, director: [Operations.GetLibraryItemsDirector]? = nil, duration: Int? = nil, flattenSeasons: Operations.FlattenSeasons? = nil, genre: [Operations.GetLibraryItemsGenre]? = nil, grandparentArt: String? = nil, grandparentGuid: String? = nil, grandparentKey: String? = nil, grandparentRatingKey: String? = nil, grandparentSlug: String? = nil, grandparentTheme: String? = nil, grandparentThumb: String? = nil, grandparentTitle: String? = nil, hasPremiumExtras: String? = nil, hasPremiumPrimaryExtra: String? = nil, image: [Operations.GetLibraryItemsImage]? = nil, index: Int? = nil, lastViewedAt: Int? = nil, leafCount: Int? = nil, media: [Operations.GetLibraryItemsMedia]? = nil, mediaGuid: [Operations.MediaGuid]? = nil, originallyAvailableAt: Date? = nil, originalTitle: String? = nil, parentGuid: String? = nil, parentIndex: Int? = nil, parentKey: String? = nil, parentRatingKey: String? = nil, parentStudio: String? = nil, parentTheme: String? = nil, parentThumb: String? = nil, parentTitle: String? = nil, parentYear: Int? = nil, primaryExtraKey: String? = nil, rating: Double? = nil, ratingImage: String? = nil, role: [Operations.GetLibraryItemsRole]? = nil, seasonCount: Int? = nil, showOrdering: Operations.ShowOrdering? = nil, skipChildren: Bool? = nil, skipCount: Int? = nil, slug: String? = nil, studio: String? = nil, tagline: String? = nil, theme: String? = nil, thumb: String? = nil, titleSort: String? = nil, ultraBlurColors: Operations.UltraBlurColors? = nil, updatedAt: Int? = nil, viewCount: Int? = nil, viewedLeafCount: Int? = nil, viewOffset: Int? = nil, writer: [Operations.GetLibraryItemsWriter]? = nil, year: Int? = nil) {
|
||||
public init(addedAt: Int, guid: String, key: String, ratingKey: String, summary: String, title: String, type: Operations.GetLibraryItemsLibraryType, art: String? = nil, audienceRating: Double? = nil, audienceRatingImage: String? = nil, banner: String? = nil, chapterSource: String? = nil, childCount: Int? = nil, collection: [Operations.GetLibraryItemsCollection]? = nil, contentRating: String? = nil, country: [Operations.GetLibraryItemsCountry]? = nil, director: [Operations.GetLibraryItemsDirector]? = nil, duration: Int? = nil, flattenSeasons: Operations.GetLibraryItemsFlattenSeasons? = nil, genre: [Operations.GetLibraryItemsGenre]? = nil, grandparentArt: String? = nil, grandparentGuid: String? = nil, grandparentKey: String? = nil, grandparentRatingKey: String? = nil, grandparentSlug: String? = nil, grandparentTheme: String? = nil, grandparentThumb: String? = nil, grandparentTitle: String? = nil, hasPremiumExtras: String? = nil, hasPremiumPrimaryExtra: String? = nil, image: [Operations.GetLibraryItemsImage]? = nil, index: Int? = nil, lastViewedAt: Int? = nil, leafCount: Int? = nil, librarySectionID: Int? = nil, librarySectionKey: String? = nil, librarySectionTitle: String? = nil, media: [Operations.GetLibraryItemsMedia]? = nil, mediaGuid: [Operations.GetLibraryItemsMediaGuid]? = nil, metaDataRating: [Operations.GetLibraryItemsMetaDataRating]? = nil, originallyAvailableAt: Date? = nil, originalTitle: String? = nil, parentGuid: String? = nil, parentIndex: Int? = nil, parentKey: String? = nil, parentRatingKey: String? = nil, parentSlug: String? = nil, parentStudio: String? = nil, parentTheme: String? = nil, parentThumb: String? = nil, parentTitle: String? = nil, parentYear: Int? = nil, primaryExtraKey: String? = nil, rating: Double? = nil, ratingImage: String? = nil, role: [Operations.GetLibraryItemsRole]? = nil, seasonCount: Int? = nil, showOrdering: Operations.GetLibraryItemsShowOrdering? = nil, skipChildren: Bool? = nil, skipCount: Int? = nil, slug: String? = nil, studio: String? = nil, tagline: String? = nil, theme: String? = nil, thumb: String? = nil, titleSort: String? = nil, ultraBlurColors: Operations.GetLibraryItemsUltraBlurColors? = nil, updatedAt: Int? = nil, viewCount: Int? = nil, viewedLeafCount: Int? = nil, viewOffset: Int? = nil, writer: [Operations.GetLibraryItemsWriter]? = nil, year: Int? = nil) {
|
||||
self.addedAt = addedAt
|
||||
self.guid = guid
|
||||
self.key = key
|
||||
@@ -155,14 +160,19 @@ extension Operations {
|
||||
self.index = index
|
||||
self.lastViewedAt = lastViewedAt
|
||||
self.leafCount = leafCount
|
||||
self.librarySectionID = librarySectionID
|
||||
self.librarySectionKey = librarySectionKey
|
||||
self.librarySectionTitle = librarySectionTitle
|
||||
self.media = media
|
||||
self.mediaGuid = mediaGuid
|
||||
self.metaDataRating = metaDataRating
|
||||
self._originallyAvailableAt = DateOnly<Date?>(wrappedValue: originallyAvailableAt)
|
||||
self.originalTitle = originalTitle
|
||||
self.parentGuid = parentGuid
|
||||
self.parentIndex = parentIndex
|
||||
self.parentKey = parentKey
|
||||
self.parentRatingKey = parentRatingKey
|
||||
self.parentSlug = parentSlug
|
||||
self.parentStudio = parentStudio
|
||||
self.parentTheme = parentTheme
|
||||
self.parentThumb = parentThumb
|
||||
@@ -228,14 +238,19 @@ extension Operations.GetLibraryItemsMetadata: Codable {
|
||||
case index
|
||||
case lastViewedAt
|
||||
case leafCount
|
||||
case librarySectionID
|
||||
case librarySectionKey
|
||||
case librarySectionTitle
|
||||
case media = "Media"
|
||||
case mediaGuid = "Guid"
|
||||
case metaDataRating = "Rating"
|
||||
case originallyAvailableAt
|
||||
case originalTitle
|
||||
case parentGuid
|
||||
case parentIndex
|
||||
case parentKey
|
||||
case parentRatingKey
|
||||
case parentSlug
|
||||
case parentStudio
|
||||
case parentTheme
|
||||
case parentThumb
|
||||
@@ -272,19 +287,19 @@ extension Operations.GetLibraryItemsMetadata: Codable {
|
||||
self.ratingKey = try container.decode(String.self, forKey: .ratingKey)
|
||||
self.summary = try container.decode(String.self, forKey: .summary)
|
||||
self.title = try container.decode(String.self, forKey: .title)
|
||||
self.type = try container.decode(Operations.GetLibraryItemsType.self, forKey: .type)
|
||||
self.type = try container.decode(Operations.GetLibraryItemsLibraryType.self, forKey: .type)
|
||||
self.art = try container.decodeIfPresent(String.self, forKey: .art)
|
||||
self._audienceRating = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .audienceRating) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.audienceRatingImage = try container.decodeIfPresent(String.self, forKey: .audienceRatingImage)
|
||||
self.banner = try container.decodeIfPresent(String.self, forKey: .banner)
|
||||
self.chapterSource = try container.decodeIfPresent(String.self, forKey: .chapterSource)
|
||||
self.childCount = try container.decodeIfPresent(Int.self, forKey: .childCount)
|
||||
self.collection = try container.decodeIfPresent([Operations.Collection].self, forKey: .collection)
|
||||
self.collection = try container.decodeIfPresent([Operations.GetLibraryItemsCollection].self, forKey: .collection)
|
||||
self.contentRating = try container.decodeIfPresent(String.self, forKey: .contentRating)
|
||||
self.country = try container.decodeIfPresent([Operations.GetLibraryItemsCountry].self, forKey: .country)
|
||||
self.director = try container.decodeIfPresent([Operations.GetLibraryItemsDirector].self, forKey: .director)
|
||||
self.duration = try container.decodeIfPresent(Int.self, forKey: .duration)
|
||||
self.flattenSeasons = try container.decodeIfPresent(Operations.FlattenSeasons.self, forKey: .flattenSeasons)
|
||||
self.flattenSeasons = try container.decodeIfPresent(Operations.GetLibraryItemsFlattenSeasons.self, forKey: .flattenSeasons)
|
||||
self.genre = try container.decodeIfPresent([Operations.GetLibraryItemsGenre].self, forKey: .genre)
|
||||
self.grandparentArt = try container.decodeIfPresent(String.self, forKey: .grandparentArt)
|
||||
self.grandparentGuid = try container.decodeIfPresent(String.self, forKey: .grandparentGuid)
|
||||
@@ -300,14 +315,19 @@ extension Operations.GetLibraryItemsMetadata: Codable {
|
||||
self.index = try container.decodeIfPresent(Int.self, forKey: .index)
|
||||
self.lastViewedAt = try container.decodeIfPresent(Int.self, forKey: .lastViewedAt)
|
||||
self.leafCount = try container.decodeIfPresent(Int.self, forKey: .leafCount)
|
||||
self.librarySectionID = try container.decodeIfPresent(Int.self, forKey: .librarySectionID)
|
||||
self.librarySectionKey = try container.decodeIfPresent(String.self, forKey: .librarySectionKey)
|
||||
self.librarySectionTitle = try container.decodeIfPresent(String.self, forKey: .librarySectionTitle)
|
||||
self.media = try container.decodeIfPresent([Operations.GetLibraryItemsMedia].self, forKey: .media)
|
||||
self.mediaGuid = try container.decodeIfPresent([Operations.MediaGuid].self, forKey: .mediaGuid)
|
||||
self.mediaGuid = try container.decodeIfPresent([Operations.GetLibraryItemsMediaGuid].self, forKey: .mediaGuid)
|
||||
self.metaDataRating = try container.decodeIfPresent([Operations.GetLibraryItemsMetaDataRating].self, forKey: .metaDataRating)
|
||||
self._originallyAvailableAt = try container.decodeIfPresent(DateOnly<Date?>.self, forKey: .originallyAvailableAt) ?? DateOnly<Date?>(wrappedValue: nil)
|
||||
self.originalTitle = try container.decodeIfPresent(String.self, forKey: .originalTitle)
|
||||
self.parentGuid = try container.decodeIfPresent(String.self, forKey: .parentGuid)
|
||||
self.parentIndex = try container.decodeIfPresent(Int.self, forKey: .parentIndex)
|
||||
self.parentKey = try container.decodeIfPresent(String.self, forKey: .parentKey)
|
||||
self.parentRatingKey = try container.decodeIfPresent(String.self, forKey: .parentRatingKey)
|
||||
self.parentSlug = try container.decodeIfPresent(String.self, forKey: .parentSlug)
|
||||
self.parentStudio = try container.decodeIfPresent(String.self, forKey: .parentStudio)
|
||||
self.parentTheme = try container.decodeIfPresent(String.self, forKey: .parentTheme)
|
||||
self.parentThumb = try container.decodeIfPresent(String.self, forKey: .parentThumb)
|
||||
@@ -318,7 +338,7 @@ extension Operations.GetLibraryItemsMetadata: Codable {
|
||||
self.ratingImage = try container.decodeIfPresent(String.self, forKey: .ratingImage)
|
||||
self.role = try container.decodeIfPresent([Operations.GetLibraryItemsRole].self, forKey: .role)
|
||||
self.seasonCount = try container.decodeIfPresent(Int.self, forKey: .seasonCount)
|
||||
self.showOrdering = try container.decodeIfPresent(Operations.ShowOrdering.self, forKey: .showOrdering)
|
||||
self.showOrdering = try container.decodeIfPresent(Operations.GetLibraryItemsShowOrdering.self, forKey: .showOrdering)
|
||||
self.skipChildren = try container.decodeIfPresent(Bool.self, forKey: .skipChildren)
|
||||
self.skipCount = try container.decodeIfPresent(Int.self, forKey: .skipCount)
|
||||
self.slug = try container.decodeIfPresent(String.self, forKey: .slug)
|
||||
@@ -327,7 +347,7 @@ extension Operations.GetLibraryItemsMetadata: Codable {
|
||||
self.theme = try container.decodeIfPresent(String.self, forKey: .theme)
|
||||
self.thumb = try container.decodeIfPresent(String.self, forKey: .thumb)
|
||||
self.titleSort = try container.decodeIfPresent(String.self, forKey: .titleSort)
|
||||
self.ultraBlurColors = try container.decodeIfPresent(Operations.UltraBlurColors.self, forKey: .ultraBlurColors)
|
||||
self.ultraBlurColors = try container.decodeIfPresent(Operations.GetLibraryItemsUltraBlurColors.self, forKey: .ultraBlurColors)
|
||||
self.updatedAt = try container.decodeIfPresent(Int.self, forKey: .updatedAt)
|
||||
self.viewCount = try container.decodeIfPresent(Int.self, forKey: .viewCount)
|
||||
self.viewedLeafCount = try container.decodeIfPresent(Int.self, forKey: .viewedLeafCount)
|
||||
@@ -374,8 +394,12 @@ extension Operations.GetLibraryItemsMetadata: Codable {
|
||||
try container.encodeIfPresent(self.index, forKey: .index)
|
||||
try container.encodeIfPresent(self.lastViewedAt, forKey: .lastViewedAt)
|
||||
try container.encodeIfPresent(self.leafCount, forKey: .leafCount)
|
||||
try container.encodeIfPresent(self.librarySectionID, forKey: .librarySectionID)
|
||||
try container.encodeIfPresent(self.librarySectionKey, forKey: .librarySectionKey)
|
||||
try container.encodeIfPresent(self.librarySectionTitle, forKey: .librarySectionTitle)
|
||||
try container.encodeIfPresent(self.media, forKey: .media)
|
||||
try container.encodeIfPresent(self.mediaGuid, forKey: .mediaGuid)
|
||||
try container.encodeIfPresent(self.metaDataRating, forKey: .metaDataRating)
|
||||
if self.originallyAvailableAt != nil {
|
||||
try container.encode(self._originallyAvailableAt, forKey: .originallyAvailableAt)
|
||||
}
|
||||
@@ -384,6 +408,7 @@ extension Operations.GetLibraryItemsMetadata: Codable {
|
||||
try container.encodeIfPresent(self.parentIndex, forKey: .parentIndex)
|
||||
try container.encodeIfPresent(self.parentKey, forKey: .parentKey)
|
||||
try container.encodeIfPresent(self.parentRatingKey, forKey: .parentRatingKey)
|
||||
try container.encodeIfPresent(self.parentSlug, forKey: .parentSlug)
|
||||
try container.encodeIfPresent(self.parentStudio, forKey: .parentStudio)
|
||||
try container.encodeIfPresent(self.parentTheme, forKey: .parentTheme)
|
||||
try container.encodeIfPresent(self.parentThumb, forKey: .parentThumb)
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
public enum GetLibraryItemsOptimizedForStreaming: Int, Codable, APIValue {
|
||||
case disable = 0
|
||||
case enable = 1
|
||||
}}
|
||||
@@ -15,15 +15,18 @@ extension Operations {
|
||||
public let size: Int
|
||||
public let videoProfile: String
|
||||
public let audioProfile: String?
|
||||
public let hasThumbnail: Operations.HasThumbnail?
|
||||
public let has64bitOffsets: Bool?
|
||||
public let hasThumbnail: Operations.GetLibraryItemsHasThumbnail?
|
||||
public let indexes: String?
|
||||
public let optimizedForStreaming: Bool?
|
||||
public let stream: [Operations.GetLibraryItemsStream]?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
/// - Parameter container: The container format of the media file.
|
||||
///
|
||||
///
|
||||
public init(container: String, duration: Int, file: String, id: Int, key: String, size: Int, videoProfile: String, audioProfile: String? = nil, hasThumbnail: Operations.HasThumbnail? = nil, indexes: String? = nil) {
|
||||
public init(container: String, duration: Int, file: String, id: Int, key: String, size: Int, videoProfile: String, audioProfile: String? = nil, has64bitOffsets: Bool? = nil, hasThumbnail: Operations.GetLibraryItemsHasThumbnail? = nil, indexes: String? = nil, optimizedForStreaming: Bool? = nil, stream: [Operations.GetLibraryItemsStream]? = nil) {
|
||||
self.container = container
|
||||
self.duration = duration
|
||||
self.file = file
|
||||
@@ -32,8 +35,11 @@ extension Operations {
|
||||
self.size = size
|
||||
self.videoProfile = videoProfile
|
||||
self.audioProfile = audioProfile
|
||||
self.has64bitOffsets = has64bitOffsets
|
||||
self.hasThumbnail = hasThumbnail
|
||||
self.indexes = indexes
|
||||
self.optimizedForStreaming = optimizedForStreaming
|
||||
self.stream = stream
|
||||
}
|
||||
}}
|
||||
|
||||
@@ -47,8 +53,11 @@ extension Operations.GetLibraryItemsPart: Codable {
|
||||
case size
|
||||
case videoProfile
|
||||
case audioProfile
|
||||
case has64bitOffsets
|
||||
case hasThumbnail
|
||||
case indexes
|
||||
case optimizedForStreaming
|
||||
case stream = "Stream"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// Adds the Meta object to the response
|
||||
///
|
||||
public enum GetLibraryItemsQueryParamIncludeMeta: Int, Codable, APIValue {
|
||||
case disable = 0
|
||||
case enable = 1
|
||||
}}
|
||||
@@ -0,0 +1,18 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The type of media to retrieve.
|
||||
/// 1 = movie
|
||||
/// 2 = show
|
||||
/// 3 = season
|
||||
/// 4 = episode
|
||||
/// E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
|
||||
///
|
||||
public enum GetLibraryItemsQueryParamType: Int, Codable, APIValue {
|
||||
case movie = 1
|
||||
case tvShow = 2
|
||||
case season = 3
|
||||
case episode = 4
|
||||
}}
|
||||
@@ -16,7 +16,7 @@ extension Operations {
|
||||
public let includeGuids: Operations.IncludeGuids?
|
||||
/// Adds the Meta object to the response
|
||||
///
|
||||
public let includeMeta: Operations.IncludeMeta?
|
||||
public let includeMeta: Operations.GetLibraryItemsQueryParamIncludeMeta?
|
||||
/// The type of media to retrieve.
|
||||
/// 1 = movie
|
||||
/// 2 = show
|
||||
@@ -24,7 +24,7 @@ extension Operations {
|
||||
/// 4 = episode
|
||||
/// E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
|
||||
///
|
||||
public let type: Operations.TypeModel?
|
||||
public let type: Operations.GetLibraryItemsQueryParamType?
|
||||
/// The number of items to return. If not specified, all items will be returned.
|
||||
/// If the number of items exceeds the limit, the response will be paginated.
|
||||
/// By default this is 50
|
||||
@@ -62,7 +62,7 @@ extension Operations {
|
||||
/// By default this is 0
|
||||
///
|
||||
///
|
||||
public init(sectionKey: Int, tag: Operations.Tag, includeGuids: Operations.IncludeGuids? = nil, includeMeta: Operations.IncludeMeta? = nil, type: Operations.TypeModel? = nil, xPlexContainerSize: Int? = nil, xPlexContainerStart: Int? = nil) {
|
||||
public init(sectionKey: Int, tag: Operations.Tag, includeGuids: Operations.IncludeGuids? = nil, includeMeta: Operations.GetLibraryItemsQueryParamIncludeMeta? = nil, type: Operations.GetLibraryItemsQueryParamType? = nil, xPlexContainerSize: Int? = nil, xPlexContainerStart: Int? = nil) {
|
||||
self.sectionKey = sectionKey
|
||||
self.tag = tag
|
||||
self.includeGuids = includeGuids
|
||||
|
||||
@@ -5,19 +5,46 @@ import Foundation
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsRole {
|
||||
/// The filter used to find the actor or tag.
|
||||
public let filter: String?
|
||||
/// The ID of the tag or actor.
|
||||
public let id: Int?
|
||||
/// The role of the actor or tag in the media.
|
||||
public let role: String?
|
||||
/// The name of the tag or actor.
|
||||
public let tag: String?
|
||||
/// Unique identifier for the tag.
|
||||
public let tagKey: String?
|
||||
/// The thumbnail of the actor
|
||||
public let thumb: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
/// - Parameter filter: The filter used to find the actor or tag.
|
||||
/// - Parameter id: The ID of the tag or actor.
|
||||
/// - Parameter role: The role of the actor or tag in the media.
|
||||
/// - Parameter tag: The name of the tag or actor.
|
||||
/// - Parameter tagKey: Unique identifier for the tag.
|
||||
/// - Parameter thumb: The thumbnail of the actor
|
||||
///
|
||||
public init(tag: String? = nil) {
|
||||
public init(filter: String? = nil, id: Int? = nil, role: String? = nil, tag: String? = nil, tagKey: String? = nil, thumb: String? = nil) {
|
||||
self.filter = filter
|
||||
self.id = id
|
||||
self.role = role
|
||||
self.tag = tag
|
||||
self.tagKey = tagKey
|
||||
self.thumb = thumb
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsRole: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case filter
|
||||
case id
|
||||
case role
|
||||
case tag
|
||||
case tagKey
|
||||
case thumb
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// Setting that indicates the episode ordering for the show
|
||||
/// None = Library default,
|
||||
/// tmdbAiring = The Movie Database (Aired),
|
||||
/// aired = TheTVDB (Aired),
|
||||
/// dvd = TheTVDB (DVD),
|
||||
/// absolute = TheTVDB (Absolute)).
|
||||
///
|
||||
public enum GetLibraryItemsShowOrdering: String, Codable, APIValue {
|
||||
case `none` = "None"
|
||||
case tmdbAiring = "tmdbAiring"
|
||||
case aired = "aired"
|
||||
case dvd = "dvd"
|
||||
case absolute = "absolute"
|
||||
}}
|
||||
@@ -7,13 +7,13 @@ extension Operations {
|
||||
public struct GetLibraryItemsSort {
|
||||
/// The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
public let defaultDirection: Operations.DefaultDirection
|
||||
public let defaultDirection: Operations.GetLibraryItemsDefaultDirection
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let active: Bool?
|
||||
/// The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
public let activeDirection: Operations.ActiveDirection?
|
||||
public let activeDirection: Operations.GetLibraryItemsActiveDirection?
|
||||
public let `default`: String?
|
||||
public let descKey: String?
|
||||
public let firstCharacterKey: String?
|
||||
@@ -25,7 +25,7 @@ extension Operations {
|
||||
/// - Parameter activeDirection: The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
///
|
||||
public init(defaultDirection: Operations.DefaultDirection, key: String, title: String, active: Bool? = nil, activeDirection: Operations.ActiveDirection? = nil, `default`: String? = nil, descKey: String? = nil, firstCharacterKey: String? = nil) {
|
||||
public init(defaultDirection: Operations.GetLibraryItemsDefaultDirection, key: String, title: String, active: Bool? = nil, activeDirection: Operations.GetLibraryItemsActiveDirection? = nil, `default`: String? = nil, descKey: String? = nil, firstCharacterKey: String? = nil) {
|
||||
self.defaultDirection = defaultDirection
|
||||
self.key = key
|
||||
self.title = title
|
||||
|
||||
294
Sources/Plexswift/models/operations/GetLibraryItemsStream.swift
Normal file
294
Sources/Plexswift/models/operations/GetLibraryItemsStream.swift
Normal file
@@ -0,0 +1,294 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsStream {
|
||||
/// Codec used by the stream
|
||||
public let codec: String
|
||||
public let id: Int
|
||||
/// The index of the stream
|
||||
public let index: Int
|
||||
/// Type of stream (1 = video, 2 = audio, 3 = subtitle)
|
||||
public let streamType: Int
|
||||
/// The audio channel layout
|
||||
public let audioChannelLayout: String?
|
||||
/// The bit depth of the video stream
|
||||
public let bitDepth: Int?
|
||||
/// The bitrate of the stream in kbps
|
||||
public let bitrate: Int?
|
||||
/// Indicates if the subtitle stream can auto-sync
|
||||
public let canAutoSync: Bool?
|
||||
/// Number of audio channels (for audio streams)
|
||||
public let channels: Int?
|
||||
/// The chroma location of the video stream
|
||||
public let chromaLocation: String?
|
||||
/// The chroma subsampling format
|
||||
public let chromaSubsampling: String?
|
||||
public let closedCaptions: Bool?
|
||||
/// The coded height of the video stream
|
||||
public let codedHeight: Int?
|
||||
/// The coded width of the video stream
|
||||
public let codedWidth: Int?
|
||||
/// The color primaries of the video stream
|
||||
public let colorPrimaries: String?
|
||||
/// The color range of the video stream
|
||||
public let colorRange: String?
|
||||
/// The color space of the video stream
|
||||
public let colorSpace: String?
|
||||
/// The transfer characteristics (TRC) of the video stream
|
||||
public let colorTrc: String?
|
||||
/// Indicates if this is the default stream
|
||||
public let `default`: Bool?
|
||||
/// Display title of the stream
|
||||
public let displayTitle: String?
|
||||
public let embeddedInVideo: String?
|
||||
/// Extended display title of the stream
|
||||
public let extendedDisplayTitle: String?
|
||||
/// The frame rate of the video stream
|
||||
@DecimalSerialized
|
||||
public private(set) var frameRate: Double?
|
||||
/// Indicates if the stream has a scaling matrix
|
||||
public let hasScalingMatrix: Bool?
|
||||
public let hearingImpaired: Bool?
|
||||
/// The height of the video stream
|
||||
public let height: Int?
|
||||
/// The language of the stream (for audio/subtitle streams)
|
||||
public let language: String?
|
||||
/// Language code of the stream
|
||||
public let languageCode: String?
|
||||
/// Language tag of the stream
|
||||
public let languageTag: String?
|
||||
/// The level of the video codec
|
||||
public let level: Int?
|
||||
/// The profile of the video codec
|
||||
public let profile: String?
|
||||
/// Number of reference frames
|
||||
public let refFrames: Int?
|
||||
/// Sampling rate of the audio stream in Hz
|
||||
public let samplingRate: Int?
|
||||
/// The scan type (progressive or interlaced)
|
||||
public let scanType: String?
|
||||
/// Indicates if the stream is selected
|
||||
public let selected: Bool?
|
||||
/// The identifier of the video stream
|
||||
public let streamIdentifier: String?
|
||||
/// Title of the subtitle track (for subtitle streams)
|
||||
public let title: String?
|
||||
/// The width of the video stream
|
||||
public let width: Int?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
/// - Parameter codec: Codec used by the stream
|
||||
/// - Parameter index: The index of the stream
|
||||
/// - Parameter streamType: Type of stream (1 = video, 2 = audio, 3 = subtitle)
|
||||
/// - Parameter audioChannelLayout: The audio channel layout
|
||||
/// - Parameter bitDepth: The bit depth of the video stream
|
||||
/// - Parameter bitrate: The bitrate of the stream in kbps
|
||||
/// - Parameter canAutoSync: Indicates if the subtitle stream can auto-sync
|
||||
/// - Parameter channels: Number of audio channels (for audio streams)
|
||||
/// - Parameter chromaLocation: The chroma location of the video stream
|
||||
/// - Parameter chromaSubsampling: The chroma subsampling format
|
||||
/// - Parameter codedHeight: The coded height of the video stream
|
||||
/// - Parameter codedWidth: The coded width of the video stream
|
||||
/// - Parameter colorPrimaries: The color primaries of the video stream
|
||||
/// - Parameter colorRange: The color range of the video stream
|
||||
/// - Parameter colorSpace: The color space of the video stream
|
||||
/// - Parameter colorTrc: The transfer characteristics (TRC) of the video stream
|
||||
/// - Parameter `default`: Indicates if this is the default stream
|
||||
/// - Parameter displayTitle: Display title of the stream
|
||||
/// - Parameter extendedDisplayTitle: Extended display title of the stream
|
||||
/// - Parameter frameRate: The frame rate of the video stream
|
||||
/// - Parameter hasScalingMatrix: Indicates if the stream has a scaling matrix
|
||||
/// - Parameter height: The height of the video stream
|
||||
/// - Parameter language: The language of the stream (for audio/subtitle streams)
|
||||
/// - Parameter languageCode: Language code of the stream
|
||||
/// - Parameter languageTag: Language tag of the stream
|
||||
/// - Parameter level: The level of the video codec
|
||||
/// - Parameter profile: The profile of the video codec
|
||||
/// - Parameter refFrames: Number of reference frames
|
||||
/// - Parameter samplingRate: Sampling rate of the audio stream in Hz
|
||||
/// - Parameter scanType: The scan type (progressive or interlaced)
|
||||
/// - Parameter selected: Indicates if the stream is selected
|
||||
/// - Parameter streamIdentifier: The identifier of the video stream
|
||||
/// - Parameter title: Title of the subtitle track (for subtitle streams)
|
||||
/// - Parameter width: The width of the video stream
|
||||
///
|
||||
public init(codec: String, id: Int, index: Int, streamType: Int, audioChannelLayout: String? = nil, bitDepth: Int? = nil, bitrate: Int? = nil, canAutoSync: Bool? = nil, channels: Int? = nil, chromaLocation: String? = nil, chromaSubsampling: String? = nil, closedCaptions: Bool? = nil, codedHeight: Int? = nil, codedWidth: Int? = nil, colorPrimaries: String? = nil, colorRange: String? = nil, colorSpace: String? = nil, colorTrc: String? = nil, `default`: Bool? = nil, displayTitle: String? = nil, embeddedInVideo: String? = nil, extendedDisplayTitle: String? = nil, frameRate: Double? = nil, hasScalingMatrix: Bool? = nil, hearingImpaired: Bool? = nil, height: Int? = nil, language: String? = nil, languageCode: String? = nil, languageTag: String? = nil, level: Int? = nil, profile: String? = nil, refFrames: Int? = nil, samplingRate: Int? = nil, scanType: String? = nil, selected: Bool? = nil, streamIdentifier: String? = nil, title: String? = nil, width: Int? = nil) {
|
||||
self.codec = codec
|
||||
self.id = id
|
||||
self.index = index
|
||||
self.streamType = streamType
|
||||
self.audioChannelLayout = audioChannelLayout
|
||||
self.bitDepth = bitDepth
|
||||
self.bitrate = bitrate
|
||||
self.canAutoSync = canAutoSync
|
||||
self.channels = channels
|
||||
self.chromaLocation = chromaLocation
|
||||
self.chromaSubsampling = chromaSubsampling
|
||||
self.closedCaptions = closedCaptions
|
||||
self.codedHeight = codedHeight
|
||||
self.codedWidth = codedWidth
|
||||
self.colorPrimaries = colorPrimaries
|
||||
self.colorRange = colorRange
|
||||
self.colorSpace = colorSpace
|
||||
self.colorTrc = colorTrc
|
||||
self.`default` = `default`
|
||||
self.displayTitle = displayTitle
|
||||
self.embeddedInVideo = embeddedInVideo
|
||||
self.extendedDisplayTitle = extendedDisplayTitle
|
||||
self._frameRate = DecimalSerialized<Double?>(wrappedValue: frameRate)
|
||||
self.hasScalingMatrix = hasScalingMatrix
|
||||
self.hearingImpaired = hearingImpaired
|
||||
self.height = height
|
||||
self.language = language
|
||||
self.languageCode = languageCode
|
||||
self.languageTag = languageTag
|
||||
self.level = level
|
||||
self.profile = profile
|
||||
self.refFrames = refFrames
|
||||
self.samplingRate = samplingRate
|
||||
self.scanType = scanType
|
||||
self.selected = selected
|
||||
self.streamIdentifier = streamIdentifier
|
||||
self.title = title
|
||||
self.width = width
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsStream: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case codec
|
||||
case id
|
||||
case index
|
||||
case streamType
|
||||
case audioChannelLayout
|
||||
case bitDepth
|
||||
case bitrate
|
||||
case canAutoSync
|
||||
case channels
|
||||
case chromaLocation
|
||||
case chromaSubsampling
|
||||
case closedCaptions
|
||||
case codedHeight
|
||||
case codedWidth
|
||||
case colorPrimaries
|
||||
case colorRange
|
||||
case colorSpace
|
||||
case colorTrc
|
||||
case `default` = "default"
|
||||
case displayTitle
|
||||
case embeddedInVideo
|
||||
case extendedDisplayTitle
|
||||
case frameRate
|
||||
case hasScalingMatrix
|
||||
case hearingImpaired
|
||||
case height
|
||||
case language
|
||||
case languageCode
|
||||
case languageTag
|
||||
case level
|
||||
case profile
|
||||
case refFrames
|
||||
case samplingRate
|
||||
case scanType
|
||||
case selected
|
||||
case streamIdentifier
|
||||
case title
|
||||
case width
|
||||
}
|
||||
|
||||
public init(from decoder: Decoder) throws {
|
||||
let container = try decoder.container(keyedBy: CodingKeys.self)
|
||||
self.codec = try container.decode(String.self, forKey: .codec)
|
||||
self.id = try container.decode(Int.self, forKey: .id)
|
||||
self.index = try container.decode(Int.self, forKey: .index)
|
||||
self.streamType = try container.decode(Int.self, forKey: .streamType)
|
||||
self.audioChannelLayout = try container.decodeIfPresent(String.self, forKey: .audioChannelLayout)
|
||||
self.bitDepth = try container.decodeIfPresent(Int.self, forKey: .bitDepth)
|
||||
self.bitrate = try container.decodeIfPresent(Int.self, forKey: .bitrate)
|
||||
self.canAutoSync = try container.decodeIfPresent(Bool.self, forKey: .canAutoSync)
|
||||
self.channels = try container.decodeIfPresent(Int.self, forKey: .channels)
|
||||
self.chromaLocation = try container.decodeIfPresent(String.self, forKey: .chromaLocation)
|
||||
self.chromaSubsampling = try container.decodeIfPresent(String.self, forKey: .chromaSubsampling)
|
||||
self.closedCaptions = try container.decodeIfPresent(Bool.self, forKey: .closedCaptions)
|
||||
self.codedHeight = try container.decodeIfPresent(Int.self, forKey: .codedHeight)
|
||||
self.codedWidth = try container.decodeIfPresent(Int.self, forKey: .codedWidth)
|
||||
self.colorPrimaries = try container.decodeIfPresent(String.self, forKey: .colorPrimaries)
|
||||
self.colorRange = try container.decodeIfPresent(String.self, forKey: .colorRange)
|
||||
self.colorSpace = try container.decodeIfPresent(String.self, forKey: .colorSpace)
|
||||
self.colorTrc = try container.decodeIfPresent(String.self, forKey: .colorTrc)
|
||||
self.`default` = try container.decodeIfPresent(Bool.self, forKey: .`default`)
|
||||
self.displayTitle = try container.decodeIfPresent(String.self, forKey: .displayTitle)
|
||||
self.embeddedInVideo = try container.decodeIfPresent(String.self, forKey: .embeddedInVideo)
|
||||
self.extendedDisplayTitle = try container.decodeIfPresent(String.self, forKey: .extendedDisplayTitle)
|
||||
self._frameRate = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .frameRate) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.hasScalingMatrix = try container.decodeIfPresent(Bool.self, forKey: .hasScalingMatrix)
|
||||
self.hearingImpaired = try container.decodeIfPresent(Bool.self, forKey: .hearingImpaired)
|
||||
self.height = try container.decodeIfPresent(Int.self, forKey: .height)
|
||||
self.language = try container.decodeIfPresent(String.self, forKey: .language)
|
||||
self.languageCode = try container.decodeIfPresent(String.self, forKey: .languageCode)
|
||||
self.languageTag = try container.decodeIfPresent(String.self, forKey: .languageTag)
|
||||
self.level = try container.decodeIfPresent(Int.self, forKey: .level)
|
||||
self.profile = try container.decodeIfPresent(String.self, forKey: .profile)
|
||||
self.refFrames = try container.decodeIfPresent(Int.self, forKey: .refFrames)
|
||||
self.samplingRate = try container.decodeIfPresent(Int.self, forKey: .samplingRate)
|
||||
self.scanType = try container.decodeIfPresent(String.self, forKey: .scanType)
|
||||
self.selected = try container.decodeIfPresent(Bool.self, forKey: .selected)
|
||||
self.streamIdentifier = try container.decodeIfPresent(String.self, forKey: .streamIdentifier)
|
||||
self.title = try container.decodeIfPresent(String.self, forKey: .title)
|
||||
self.width = try container.decodeIfPresent(Int.self, forKey: .width)
|
||||
}
|
||||
|
||||
public func encode(to encoder: Encoder) throws {
|
||||
var container = encoder.container(keyedBy: CodingKeys.self)
|
||||
try container.encode(self.codec, forKey: .codec)
|
||||
try container.encode(self.id, forKey: .id)
|
||||
try container.encode(self.index, forKey: .index)
|
||||
try container.encode(self.streamType, forKey: .streamType)
|
||||
try container.encodeIfPresent(self.audioChannelLayout, forKey: .audioChannelLayout)
|
||||
try container.encodeIfPresent(self.bitDepth, forKey: .bitDepth)
|
||||
try container.encodeIfPresent(self.bitrate, forKey: .bitrate)
|
||||
try container.encodeIfPresent(self.canAutoSync, forKey: .canAutoSync)
|
||||
try container.encodeIfPresent(self.channels, forKey: .channels)
|
||||
try container.encodeIfPresent(self.chromaLocation, forKey: .chromaLocation)
|
||||
try container.encodeIfPresent(self.chromaSubsampling, forKey: .chromaSubsampling)
|
||||
try container.encodeIfPresent(self.closedCaptions, forKey: .closedCaptions)
|
||||
try container.encodeIfPresent(self.codedHeight, forKey: .codedHeight)
|
||||
try container.encodeIfPresent(self.codedWidth, forKey: .codedWidth)
|
||||
try container.encodeIfPresent(self.colorPrimaries, forKey: .colorPrimaries)
|
||||
try container.encodeIfPresent(self.colorRange, forKey: .colorRange)
|
||||
try container.encodeIfPresent(self.colorSpace, forKey: .colorSpace)
|
||||
try container.encodeIfPresent(self.colorTrc, forKey: .colorTrc)
|
||||
try container.encodeIfPresent(self.`default`, forKey: .`default`)
|
||||
try container.encodeIfPresent(self.displayTitle, forKey: .displayTitle)
|
||||
try container.encodeIfPresent(self.embeddedInVideo, forKey: .embeddedInVideo)
|
||||
try container.encodeIfPresent(self.extendedDisplayTitle, forKey: .extendedDisplayTitle)
|
||||
if self.frameRate != nil {
|
||||
try container.encode(self._frameRate, forKey: .frameRate)
|
||||
}
|
||||
try container.encodeIfPresent(self.hasScalingMatrix, forKey: .hasScalingMatrix)
|
||||
try container.encodeIfPresent(self.hearingImpaired, forKey: .hearingImpaired)
|
||||
try container.encodeIfPresent(self.height, forKey: .height)
|
||||
try container.encodeIfPresent(self.language, forKey: .language)
|
||||
try container.encodeIfPresent(self.languageCode, forKey: .languageCode)
|
||||
try container.encodeIfPresent(self.languageTag, forKey: .languageTag)
|
||||
try container.encodeIfPresent(self.level, forKey: .level)
|
||||
try container.encodeIfPresent(self.profile, forKey: .profile)
|
||||
try container.encodeIfPresent(self.refFrames, forKey: .refFrames)
|
||||
try container.encodeIfPresent(self.samplingRate, forKey: .samplingRate)
|
||||
try container.encodeIfPresent(self.scanType, forKey: .scanType)
|
||||
try container.encodeIfPresent(self.selected, forKey: .selected)
|
||||
try container.encodeIfPresent(self.streamIdentifier, forKey: .streamIdentifier)
|
||||
try container.encodeIfPresent(self.title, forKey: .title)
|
||||
try container.encodeIfPresent(self.width, forKey: .width)
|
||||
}
|
||||
}
|
||||
|
||||
extension Operations.GetLibraryItemsStream {
|
||||
var frameRateWrapper: DecimalSerialized<Double?> {
|
||||
return _frameRate
|
||||
}
|
||||
}
|
||||
@@ -3,11 +3,39 @@
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The type of media content
|
||||
/// A model object
|
||||
public struct GetLibraryItemsType {
|
||||
public let active: Bool
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let type: String
|
||||
public let field: [Operations.GetLibraryItemsField]?
|
||||
public let filter: [Operations.GetLibraryItemsFilter]?
|
||||
public let sort: [Operations.GetLibraryItemsSort]?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
public enum GetLibraryItemsType: String, Codable, APIValue {
|
||||
case movie = "movie"
|
||||
case tvShow = "show"
|
||||
case season = "season"
|
||||
case episode = "episode"
|
||||
///
|
||||
public init(active: Bool, key: String, title: String, type: String, field: [Operations.GetLibraryItemsField]? = nil, filter: [Operations.GetLibraryItemsFilter]? = nil, sort: [Operations.GetLibraryItemsSort]? = nil) {
|
||||
self.active = active
|
||||
self.key = key
|
||||
self.title = title
|
||||
self.type = type
|
||||
self.field = field
|
||||
self.filter = filter
|
||||
self.sort = sort
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsType: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case active
|
||||
case key
|
||||
case title
|
||||
case type
|
||||
case field = "Field"
|
||||
case filter = "Filter"
|
||||
case sort = "Sort"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetLibraryItemsUltraBlurColors {
|
||||
public let bottomLeft: String
|
||||
public let bottomRight: String
|
||||
public let topLeft: String
|
||||
public let topRight: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(bottomLeft: String, bottomRight: String, topLeft: String, topRight: String) {
|
||||
self.bottomLeft = bottomLeft
|
||||
self.bottomRight = bottomRight
|
||||
self.topLeft = topLeft
|
||||
self.topRight = topRight
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetLibraryItemsUltraBlurColors: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case bottomLeft
|
||||
case bottomRight
|
||||
case topLeft
|
||||
case topRight
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,13 +14,13 @@ extension Operations {
|
||||
public let key: String?
|
||||
public let optimizedForStreaming: Bool?
|
||||
public let size: Int?
|
||||
public let stream: [Operations.Stream]?
|
||||
public let stream: [Operations.GetMetaDataByRatingKeyStream]?
|
||||
public let videoProfile: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(audioProfile: String? = nil, container: String? = nil, duration: Int? = nil, file: String? = nil, has64bitOffsets: Bool? = nil, id: Int? = nil, key: String? = nil, optimizedForStreaming: Bool? = nil, size: Int? = nil, stream: [Operations.Stream]? = nil, videoProfile: String? = nil) {
|
||||
public init(audioProfile: String? = nil, container: String? = nil, duration: Int? = nil, file: String? = nil, has64bitOffsets: Bool? = nil, id: Int? = nil, key: String? = nil, optimizedForStreaming: Bool? = nil, size: Int? = nil, stream: [Operations.GetMetaDataByRatingKeyStream]? = nil, videoProfile: String? = nil) {
|
||||
self.audioProfile = audioProfile
|
||||
self.container = container
|
||||
self.duration = duration
|
||||
|
||||
@@ -0,0 +1,116 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetMetaDataByRatingKeyStream {
|
||||
public let bitDepth: Int?
|
||||
public let bitrate: Int?
|
||||
public let channels: Int?
|
||||
public let chromaLocation: String?
|
||||
public let chromaSubsampling: String?
|
||||
public let codec: String?
|
||||
public let codedHeight: Int?
|
||||
public let codedWidth: Int?
|
||||
public let colorPrimaries: String?
|
||||
public let colorRange: String?
|
||||
public let colorSpace: String?
|
||||
public let colorTrc: String?
|
||||
public let `default`: Bool?
|
||||
public let displayTitle: String?
|
||||
public let extendedDisplayTitle: String?
|
||||
public let frameRate: Int?
|
||||
public let hasScalingMatrix: Bool?
|
||||
public let height: Int?
|
||||
public let id: Int?
|
||||
public let index: Int?
|
||||
public let language: String?
|
||||
public let languageCode: String?
|
||||
public let languageTag: String?
|
||||
public let level: Int?
|
||||
public let profile: String?
|
||||
public let refFrames: Int?
|
||||
public let samplingRate: Int?
|
||||
public let scanType: String?
|
||||
public let selected: Bool?
|
||||
public let streamIdentifier: String?
|
||||
public let streamType: Int?
|
||||
public let width: Int?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(bitDepth: Int? = nil, bitrate: Int? = nil, channels: Int? = nil, chromaLocation: String? = nil, chromaSubsampling: String? = nil, codec: String? = nil, codedHeight: Int? = nil, codedWidth: Int? = nil, colorPrimaries: String? = nil, colorRange: String? = nil, colorSpace: String? = nil, colorTrc: String? = nil, `default`: Bool? = nil, displayTitle: String? = nil, extendedDisplayTitle: String? = nil, frameRate: Int? = nil, hasScalingMatrix: Bool? = nil, height: Int? = nil, id: Int? = nil, index: Int? = nil, language: String? = nil, languageCode: String? = nil, languageTag: String? = nil, level: Int? = nil, profile: String? = nil, refFrames: Int? = nil, samplingRate: Int? = nil, scanType: String? = nil, selected: Bool? = nil, streamIdentifier: String? = nil, streamType: Int? = nil, width: Int? = nil) {
|
||||
self.bitDepth = bitDepth
|
||||
self.bitrate = bitrate
|
||||
self.channels = channels
|
||||
self.chromaLocation = chromaLocation
|
||||
self.chromaSubsampling = chromaSubsampling
|
||||
self.codec = codec
|
||||
self.codedHeight = codedHeight
|
||||
self.codedWidth = codedWidth
|
||||
self.colorPrimaries = colorPrimaries
|
||||
self.colorRange = colorRange
|
||||
self.colorSpace = colorSpace
|
||||
self.colorTrc = colorTrc
|
||||
self.`default` = `default`
|
||||
self.displayTitle = displayTitle
|
||||
self.extendedDisplayTitle = extendedDisplayTitle
|
||||
self.frameRate = frameRate
|
||||
self.hasScalingMatrix = hasScalingMatrix
|
||||
self.height = height
|
||||
self.id = id
|
||||
self.index = index
|
||||
self.language = language
|
||||
self.languageCode = languageCode
|
||||
self.languageTag = languageTag
|
||||
self.level = level
|
||||
self.profile = profile
|
||||
self.refFrames = refFrames
|
||||
self.samplingRate = samplingRate
|
||||
self.scanType = scanType
|
||||
self.selected = selected
|
||||
self.streamIdentifier = streamIdentifier
|
||||
self.streamType = streamType
|
||||
self.width = width
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetMetaDataByRatingKeyStream: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case bitDepth
|
||||
case bitrate
|
||||
case channels
|
||||
case chromaLocation
|
||||
case chromaSubsampling
|
||||
case codec
|
||||
case codedHeight
|
||||
case codedWidth
|
||||
case colorPrimaries
|
||||
case colorRange
|
||||
case colorSpace
|
||||
case colorTrc
|
||||
case `default` = "default"
|
||||
case displayTitle
|
||||
case extendedDisplayTitle
|
||||
case frameRate
|
||||
case hasScalingMatrix
|
||||
case height
|
||||
case id
|
||||
case index
|
||||
case language
|
||||
case languageCode
|
||||
case languageTag
|
||||
case level
|
||||
case profile
|
||||
case refFrames
|
||||
case samplingRate
|
||||
case scanType
|
||||
case selected
|
||||
case streamIdentifier
|
||||
case streamType
|
||||
case width
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,11 @@ import Foundation
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetPinRequest: APIValue {
|
||||
/// The unique identifier for the client application
|
||||
/// This is used to track the client application and its usage
|
||||
/// (UUID, serial number, or other number unique per device)
|
||||
///
|
||||
public let clientID: String?
|
||||
public let clientName: String?
|
||||
public let clientPlatform: String?
|
||||
public let clientVersion: String?
|
||||
@@ -17,12 +22,17 @@ extension Operations {
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
/// - Parameter clientID: The unique identifier for the client application
|
||||
/// This is used to track the client application and its usage
|
||||
/// (UUID, serial number, or other number unique per device)
|
||||
///
|
||||
/// - Parameter strong: Determines the kind of code returned by the API call
|
||||
/// Strong codes are used for Pin authentication flows
|
||||
/// Non-Strong codes are used for `Plex.tv/link`
|
||||
///
|
||||
///
|
||||
public init(clientName: String? = nil, clientPlatform: String? = nil, clientVersion: String? = nil, deviceName: String? = nil, strong: Bool? = nil) {
|
||||
public init(clientID: String? = nil, clientName: String? = nil, clientPlatform: String? = nil, clientVersion: String? = nil, deviceName: String? = nil, strong: Bool? = nil) {
|
||||
self.clientID = clientID
|
||||
self.clientName = clientName
|
||||
self.clientPlatform = clientPlatform
|
||||
self.clientVersion = clientVersion
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
public enum GetRecentlyAddedActiveDirection: String, Codable, APIValue {
|
||||
case ascending = "asc"
|
||||
case descending = "desc"
|
||||
}}
|
||||
@@ -1,23 +0,0 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// Bad Request - A parameter was not specified, or was specified incorrectly.
|
||||
public struct GetRecentlyAddedBadRequest {
|
||||
public let errors: [Operations.GetRecentlyAddedErrors]?
|
||||
|
||||
/// Creates a request model with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(errors: [Operations.GetRecentlyAddedErrors]? = nil) {
|
||||
self.errors = errors
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedBadRequest: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case errors
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The direction of the sort. Can be either `asc` or `desc`.
|
||||
///
|
||||
public enum GetRecentlyAddedDefaultDirection: String, Codable, APIValue {
|
||||
case ascending = "asc"
|
||||
case descending = "desc"
|
||||
}}
|
||||
@@ -0,0 +1,32 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedField {
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let type: String
|
||||
public let subType: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(key: String, title: String, type: String, subType: String? = nil) {
|
||||
self.key = key
|
||||
self.title = title
|
||||
self.type = type
|
||||
self.subType = subType
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedField: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case key
|
||||
case title
|
||||
case type
|
||||
case subType
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedFieldType {
|
||||
public let `operator`: [Operations.GetRecentlyAddedOperator]
|
||||
public let type: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(`operator`: [Operations.GetRecentlyAddedOperator], type: String) {
|
||||
self.`operator` = `operator`
|
||||
self.type = type
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedFieldType: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case `operator` = "Operator"
|
||||
case type
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedFilter {
|
||||
public let filter: String
|
||||
public let filterType: String
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let type: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(filter: String, filterType: String, key: String, title: String, type: String) {
|
||||
self.filter = filter
|
||||
self.filterType = filterType
|
||||
self.key = key
|
||||
self.title = title
|
||||
self.type = type
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedFilter: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case filter
|
||||
case filterType
|
||||
case key
|
||||
case title
|
||||
case type
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
public enum GetRecentlyAddedHubsResponseType: String, Codable, APIValue {
|
||||
case coverPoster = "coverPoster"
|
||||
case background = "background"
|
||||
case snapshot = "snapshot"
|
||||
case clearLogo = "clearLogo"
|
||||
}}
|
||||
@@ -0,0 +1,13 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The type of media content
|
||||
///
|
||||
public enum GetRecentlyAddedHubsType: String, Codable, APIValue {
|
||||
case movie = "movie"
|
||||
case tvShow = "show"
|
||||
case season = "season"
|
||||
case episode = "episode"
|
||||
}}
|
||||
@@ -0,0 +1,29 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedImage {
|
||||
public let alt: String
|
||||
public let type: Operations.GetRecentlyAddedHubsResponseType
|
||||
public let url: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(alt: String, type: Operations.GetRecentlyAddedHubsResponseType, url: String) {
|
||||
self.alt = alt
|
||||
self.type = type
|
||||
self.url = url
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedImage: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case alt
|
||||
case type
|
||||
case url
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
|
||||
public struct GetRecentlyAddedUnauthorized {
|
||||
/// Bad Request - A parameter was not specified, or was specified incorrectly.
|
||||
public struct GetRecentlyAddedLibraryBadRequest {
|
||||
public let errors: [Operations.GetRecentlyAddedLibraryErrors]?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
/// Creates a request model with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(errors: [Operations.GetRecentlyAddedLibraryErrors]? = nil) {
|
||||
@@ -15,7 +15,7 @@ extension Operations {
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedUnauthorized: Codable {
|
||||
extension Operations.GetRecentlyAddedLibraryBadRequest: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case errors
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedLibraryCountry {
|
||||
public let tag: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(tag: String? = nil) {
|
||||
self.tag = tag
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryCountry: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case tag
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedLibraryDirector {
|
||||
public let tag: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(tag: String? = nil) {
|
||||
self.tag = tag
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryDirector: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case tag
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedLibraryFilter {
|
||||
public let filter: String
|
||||
public let filterType: String
|
||||
public let key: String
|
||||
public let title: String
|
||||
public let type: String
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(filter: String, filterType: String, key: String, title: String, type: String) {
|
||||
self.filter = filter
|
||||
self.filterType = filterType
|
||||
self.key = key
|
||||
self.title = title
|
||||
self.type = type
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryFilter: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case filter
|
||||
case filterType
|
||||
case key
|
||||
case title
|
||||
case type
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedLibraryGenre {
|
||||
public let tag: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(tag: String? = nil) {
|
||||
self.tag = tag
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryGenre: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case tag
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedErrors {
|
||||
public struct GetRecentlyAddedLibraryLibraryErrors {
|
||||
public let code: Int?
|
||||
public let message: String?
|
||||
public let status: Int?
|
||||
@@ -19,7 +19,7 @@ extension Operations {
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedErrors: Codable {
|
||||
extension Operations.GetRecentlyAddedLibraryLibraryErrors: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case code
|
||||
case message
|
||||
@@ -0,0 +1,164 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedLibraryMedia {
|
||||
@DecimalSerialized
|
||||
public private(set) var aspectRatio: Double?
|
||||
@DecimalSerialized
|
||||
public private(set) var audioChannels: Double?
|
||||
public let audioCodec: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var bitrate: Double?
|
||||
public let container: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var duration: Double?
|
||||
public let has64bitOffsets: Bool?
|
||||
@DecimalSerialized
|
||||
public private(set) var height: Double?
|
||||
@DecimalSerialized
|
||||
public private(set) var id: Double?
|
||||
@DecimalSerialized
|
||||
public private(set) var optimizedForStreaming: Double?
|
||||
public let part: [Operations.GetRecentlyAddedLibraryPart]?
|
||||
public let videoCodec: String?
|
||||
public let videoFrameRate: String?
|
||||
public let videoProfile: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var videoResolution: Double?
|
||||
@DecimalSerialized
|
||||
public private(set) var width: Double?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(aspectRatio: Double? = nil, audioChannels: Double? = nil, audioCodec: String? = nil, bitrate: Double? = nil, container: String? = nil, duration: Double? = nil, has64bitOffsets: Bool? = nil, height: Double? = nil, id: Double? = nil, optimizedForStreaming: Double? = nil, part: [Operations.GetRecentlyAddedLibraryPart]? = nil, videoCodec: String? = nil, videoFrameRate: String? = nil, videoProfile: String? = nil, videoResolution: Double? = nil, width: Double? = nil) {
|
||||
self._aspectRatio = DecimalSerialized<Double?>(wrappedValue: aspectRatio)
|
||||
self._audioChannels = DecimalSerialized<Double?>(wrappedValue: audioChannels)
|
||||
self.audioCodec = audioCodec
|
||||
self._bitrate = DecimalSerialized<Double?>(wrappedValue: bitrate)
|
||||
self.container = container
|
||||
self._duration = DecimalSerialized<Double?>(wrappedValue: duration)
|
||||
self.has64bitOffsets = has64bitOffsets
|
||||
self._height = DecimalSerialized<Double?>(wrappedValue: height)
|
||||
self._id = DecimalSerialized<Double?>(wrappedValue: id)
|
||||
self._optimizedForStreaming = DecimalSerialized<Double?>(wrappedValue: optimizedForStreaming)
|
||||
self.part = part
|
||||
self.videoCodec = videoCodec
|
||||
self.videoFrameRate = videoFrameRate
|
||||
self.videoProfile = videoProfile
|
||||
self._videoResolution = DecimalSerialized<Double?>(wrappedValue: videoResolution)
|
||||
self._width = DecimalSerialized<Double?>(wrappedValue: width)
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryMedia: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case aspectRatio
|
||||
case audioChannels
|
||||
case audioCodec
|
||||
case bitrate
|
||||
case container
|
||||
case duration
|
||||
case has64bitOffsets
|
||||
case height
|
||||
case id
|
||||
case optimizedForStreaming
|
||||
case part = "Part"
|
||||
case videoCodec
|
||||
case videoFrameRate
|
||||
case videoProfile
|
||||
case videoResolution
|
||||
case width
|
||||
}
|
||||
|
||||
public init(from decoder: Decoder) throws {
|
||||
let container = try decoder.container(keyedBy: CodingKeys.self)
|
||||
self._aspectRatio = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .aspectRatio) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self._audioChannels = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .audioChannels) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.audioCodec = try container.decodeIfPresent(String.self, forKey: .audioCodec)
|
||||
self._bitrate = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .bitrate) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.container = try container.decodeIfPresent(String.self, forKey: .container)
|
||||
self._duration = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .duration) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.has64bitOffsets = try container.decodeIfPresent(Bool.self, forKey: .has64bitOffsets)
|
||||
self._height = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .height) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self._id = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .id) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self._optimizedForStreaming = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .optimizedForStreaming) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.part = try container.decodeIfPresent([Operations.GetRecentlyAddedLibraryPart].self, forKey: .part)
|
||||
self.videoCodec = try container.decodeIfPresent(String.self, forKey: .videoCodec)
|
||||
self.videoFrameRate = try container.decodeIfPresent(String.self, forKey: .videoFrameRate)
|
||||
self.videoProfile = try container.decodeIfPresent(String.self, forKey: .videoProfile)
|
||||
self._videoResolution = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .videoResolution) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self._width = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .width) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
}
|
||||
|
||||
public func encode(to encoder: Encoder) throws {
|
||||
var container = encoder.container(keyedBy: CodingKeys.self)
|
||||
if self.aspectRatio != nil {
|
||||
try container.encode(self._aspectRatio, forKey: .aspectRatio)
|
||||
}
|
||||
if self.audioChannels != nil {
|
||||
try container.encode(self._audioChannels, forKey: .audioChannels)
|
||||
}
|
||||
try container.encodeIfPresent(self.audioCodec, forKey: .audioCodec)
|
||||
if self.bitrate != nil {
|
||||
try container.encode(self._bitrate, forKey: .bitrate)
|
||||
}
|
||||
try container.encodeIfPresent(self.container, forKey: .container)
|
||||
if self.duration != nil {
|
||||
try container.encode(self._duration, forKey: .duration)
|
||||
}
|
||||
try container.encodeIfPresent(self.has64bitOffsets, forKey: .has64bitOffsets)
|
||||
if self.height != nil {
|
||||
try container.encode(self._height, forKey: .height)
|
||||
}
|
||||
if self.id != nil {
|
||||
try container.encode(self._id, forKey: .id)
|
||||
}
|
||||
if self.optimizedForStreaming != nil {
|
||||
try container.encode(self._optimizedForStreaming, forKey: .optimizedForStreaming)
|
||||
}
|
||||
try container.encodeIfPresent(self.part, forKey: .part)
|
||||
try container.encodeIfPresent(self.videoCodec, forKey: .videoCodec)
|
||||
try container.encodeIfPresent(self.videoFrameRate, forKey: .videoFrameRate)
|
||||
try container.encodeIfPresent(self.videoProfile, forKey: .videoProfile)
|
||||
if self.videoResolution != nil {
|
||||
try container.encode(self._videoResolution, forKey: .videoResolution)
|
||||
}
|
||||
if self.width != nil {
|
||||
try container.encode(self._width, forKey: .width)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryMedia {
|
||||
var idWrapper: DecimalSerialized<Double?> {
|
||||
return _id
|
||||
}
|
||||
var durationWrapper: DecimalSerialized<Double?> {
|
||||
return _duration
|
||||
}
|
||||
var bitrateWrapper: DecimalSerialized<Double?> {
|
||||
return _bitrate
|
||||
}
|
||||
var widthWrapper: DecimalSerialized<Double?> {
|
||||
return _width
|
||||
}
|
||||
var heightWrapper: DecimalSerialized<Double?> {
|
||||
return _height
|
||||
}
|
||||
var aspectRatioWrapper: DecimalSerialized<Double?> {
|
||||
return _aspectRatio
|
||||
}
|
||||
var audioChannelsWrapper: DecimalSerialized<Double?> {
|
||||
return _audioChannels
|
||||
}
|
||||
var videoResolutionWrapper: DecimalSerialized<Double?> {
|
||||
return _videoResolution
|
||||
}
|
||||
var optimizedForStreamingWrapper: DecimalSerialized<Double?> {
|
||||
return _optimizedForStreaming
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
|
||||
///
|
||||
public struct GetRecentlyAddedLibraryMediaContainer {
|
||||
public let allowSync: Bool?
|
||||
public let fieldType: [Operations.FieldType]?
|
||||
public let identifier: String?
|
||||
public let mediaTagPrefix: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var mediaTagVersion: Double?
|
||||
public let metadata: [Operations.GetRecentlyAddedLibraryMetadata]?
|
||||
public let mixedParents: Bool?
|
||||
@DecimalSerialized
|
||||
public private(set) var size: Double?
|
||||
public let type: [Operations.GetRecentlyAddedLibraryType]?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(allowSync: Bool? = nil, fieldType: [Operations.FieldType]? = nil, identifier: String? = nil, mediaTagPrefix: String? = nil, mediaTagVersion: Double? = nil, metadata: [Operations.GetRecentlyAddedLibraryMetadata]? = nil, mixedParents: Bool? = nil, size: Double? = nil, type: [Operations.GetRecentlyAddedLibraryType]? = nil) {
|
||||
self.allowSync = allowSync
|
||||
self.fieldType = fieldType
|
||||
self.identifier = identifier
|
||||
self.mediaTagPrefix = mediaTagPrefix
|
||||
self._mediaTagVersion = DecimalSerialized<Double?>(wrappedValue: mediaTagVersion)
|
||||
self.metadata = metadata
|
||||
self.mixedParents = mixedParents
|
||||
self._size = DecimalSerialized<Double?>(wrappedValue: size)
|
||||
self.type = type
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryMediaContainer: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case allowSync
|
||||
case fieldType = "FieldType"
|
||||
case identifier
|
||||
case mediaTagPrefix
|
||||
case mediaTagVersion
|
||||
case metadata = "Metadata"
|
||||
case mixedParents
|
||||
case size
|
||||
case type = "Type"
|
||||
}
|
||||
|
||||
public init(from decoder: Decoder) throws {
|
||||
let container = try decoder.container(keyedBy: CodingKeys.self)
|
||||
self.allowSync = try container.decodeIfPresent(Bool.self, forKey: .allowSync)
|
||||
self.fieldType = try container.decodeIfPresent([Operations.FieldType].self, forKey: .fieldType)
|
||||
self.identifier = try container.decodeIfPresent(String.self, forKey: .identifier)
|
||||
self.mediaTagPrefix = try container.decodeIfPresent(String.self, forKey: .mediaTagPrefix)
|
||||
self._mediaTagVersion = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .mediaTagVersion) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.metadata = try container.decodeIfPresent([Operations.GetRecentlyAddedLibraryMetadata].self, forKey: .metadata)
|
||||
self.mixedParents = try container.decodeIfPresent(Bool.self, forKey: .mixedParents)
|
||||
self._size = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .size) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.type = try container.decodeIfPresent([Operations.GetRecentlyAddedLibraryType].self, forKey: .type)
|
||||
}
|
||||
|
||||
public func encode(to encoder: Encoder) throws {
|
||||
var container = encoder.container(keyedBy: CodingKeys.self)
|
||||
try container.encodeIfPresent(self.allowSync, forKey: .allowSync)
|
||||
try container.encodeIfPresent(self.fieldType, forKey: .fieldType)
|
||||
try container.encodeIfPresent(self.identifier, forKey: .identifier)
|
||||
try container.encodeIfPresent(self.mediaTagPrefix, forKey: .mediaTagPrefix)
|
||||
if self.mediaTagVersion != nil {
|
||||
try container.encode(self._mediaTagVersion, forKey: .mediaTagVersion)
|
||||
}
|
||||
try container.encodeIfPresent(self.metadata, forKey: .metadata)
|
||||
try container.encodeIfPresent(self.mixedParents, forKey: .mixedParents)
|
||||
if self.size != nil {
|
||||
try container.encode(self._size, forKey: .size)
|
||||
}
|
||||
try container.encodeIfPresent(self.type, forKey: .type)
|
||||
}
|
||||
}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryMediaContainer {
|
||||
var sizeWrapper: DecimalSerialized<Double?> {
|
||||
return _size
|
||||
}
|
||||
var mediaTagVersionWrapper: DecimalSerialized<Double?> {
|
||||
return _mediaTagVersion
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,244 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedLibraryMetadata {
|
||||
@DecimalSerialized
|
||||
public private(set) var addedAt: Double?
|
||||
public let allowSync: Bool?
|
||||
public let art: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var audienceRating: Double?
|
||||
public let audienceRatingImage: String?
|
||||
public let chapterSource: String?
|
||||
public let contentRating: String?
|
||||
public let country: [Operations.GetRecentlyAddedLibraryCountry]?
|
||||
public let director: [Operations.GetRecentlyAddedLibraryDirector]?
|
||||
@DecimalSerialized
|
||||
public private(set) var duration: Double?
|
||||
public let genre: [Operations.GetRecentlyAddedLibraryGenre]?
|
||||
public let guid: String?
|
||||
public let key: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var librarySectionID: Double?
|
||||
public let librarySectionTitle: String?
|
||||
public let librarySectionUUID: String?
|
||||
public let media: [Operations.GetRecentlyAddedLibraryMedia]?
|
||||
@DateTime
|
||||
public private(set) var originallyAvailableAt: Date?
|
||||
public let primaryExtraKey: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var rating: Double?
|
||||
public let ratingImage: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var ratingKey: Double?
|
||||
public let role: [Operations.GetRecentlyAddedLibraryRole]?
|
||||
public let studio: String?
|
||||
public let summary: String?
|
||||
public let tagline: String?
|
||||
public let thumb: String?
|
||||
public let title: String?
|
||||
public let type: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var updatedAt: Double?
|
||||
public let writer: [Operations.GetRecentlyAddedLibraryWriter]?
|
||||
@DecimalSerialized
|
||||
public private(set) var year: Double?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(addedAt: Double? = nil, allowSync: Bool? = nil, art: String? = nil, audienceRating: Double? = nil, audienceRatingImage: String? = nil, chapterSource: String? = nil, contentRating: String? = nil, country: [Operations.GetRecentlyAddedLibraryCountry]? = nil, director: [Operations.GetRecentlyAddedLibraryDirector]? = nil, duration: Double? = nil, genre: [Operations.GetRecentlyAddedLibraryGenre]? = nil, guid: String? = nil, key: String? = nil, librarySectionID: Double? = nil, librarySectionTitle: String? = nil, librarySectionUUID: String? = nil, media: [Operations.GetRecentlyAddedLibraryMedia]? = nil, originallyAvailableAt: Date? = nil, primaryExtraKey: String? = nil, rating: Double? = nil, ratingImage: String? = nil, ratingKey: Double? = nil, role: [Operations.GetRecentlyAddedLibraryRole]? = nil, studio: String? = nil, summary: String? = nil, tagline: String? = nil, thumb: String? = nil, title: String? = nil, type: String? = nil, updatedAt: Double? = nil, writer: [Operations.GetRecentlyAddedLibraryWriter]? = nil, year: Double? = nil) {
|
||||
self._addedAt = DecimalSerialized<Double?>(wrappedValue: addedAt)
|
||||
self.allowSync = allowSync
|
||||
self.art = art
|
||||
self._audienceRating = DecimalSerialized<Double?>(wrappedValue: audienceRating)
|
||||
self.audienceRatingImage = audienceRatingImage
|
||||
self.chapterSource = chapterSource
|
||||
self.contentRating = contentRating
|
||||
self.country = country
|
||||
self.director = director
|
||||
self._duration = DecimalSerialized<Double?>(wrappedValue: duration)
|
||||
self.genre = genre
|
||||
self.guid = guid
|
||||
self.key = key
|
||||
self._librarySectionID = DecimalSerialized<Double?>(wrappedValue: librarySectionID)
|
||||
self.librarySectionTitle = librarySectionTitle
|
||||
self.librarySectionUUID = librarySectionUUID
|
||||
self.media = media
|
||||
self._originallyAvailableAt = DateTime<Date?>(wrappedValue: originallyAvailableAt)
|
||||
self.primaryExtraKey = primaryExtraKey
|
||||
self._rating = DecimalSerialized<Double?>(wrappedValue: rating)
|
||||
self.ratingImage = ratingImage
|
||||
self._ratingKey = DecimalSerialized<Double?>(wrappedValue: ratingKey)
|
||||
self.role = role
|
||||
self.studio = studio
|
||||
self.summary = summary
|
||||
self.tagline = tagline
|
||||
self.thumb = thumb
|
||||
self.title = title
|
||||
self.type = type
|
||||
self._updatedAt = DecimalSerialized<Double?>(wrappedValue: updatedAt)
|
||||
self.writer = writer
|
||||
self._year = DecimalSerialized<Double?>(wrappedValue: year)
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryMetadata: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case addedAt
|
||||
case allowSync
|
||||
case art
|
||||
case audienceRating
|
||||
case audienceRatingImage
|
||||
case chapterSource
|
||||
case contentRating
|
||||
case country = "Country"
|
||||
case director = "Director"
|
||||
case duration
|
||||
case genre = "Genre"
|
||||
case guid
|
||||
case key
|
||||
case librarySectionID
|
||||
case librarySectionTitle
|
||||
case librarySectionUUID
|
||||
case media = "Media"
|
||||
case originallyAvailableAt
|
||||
case primaryExtraKey
|
||||
case rating
|
||||
case ratingImage
|
||||
case ratingKey
|
||||
case role = "Role"
|
||||
case studio
|
||||
case summary
|
||||
case tagline
|
||||
case thumb
|
||||
case title
|
||||
case type
|
||||
case updatedAt
|
||||
case writer = "Writer"
|
||||
case year
|
||||
}
|
||||
|
||||
public init(from decoder: Decoder) throws {
|
||||
let container = try decoder.container(keyedBy: CodingKeys.self)
|
||||
self._addedAt = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .addedAt) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.allowSync = try container.decodeIfPresent(Bool.self, forKey: .allowSync)
|
||||
self.art = try container.decodeIfPresent(String.self, forKey: .art)
|
||||
self._audienceRating = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .audienceRating) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.audienceRatingImage = try container.decodeIfPresent(String.self, forKey: .audienceRatingImage)
|
||||
self.chapterSource = try container.decodeIfPresent(String.self, forKey: .chapterSource)
|
||||
self.contentRating = try container.decodeIfPresent(String.self, forKey: .contentRating)
|
||||
self.country = try container.decodeIfPresent([Operations.GetRecentlyAddedLibraryCountry].self, forKey: .country)
|
||||
self.director = try container.decodeIfPresent([Operations.GetRecentlyAddedLibraryDirector].self, forKey: .director)
|
||||
self._duration = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .duration) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.genre = try container.decodeIfPresent([Operations.GetRecentlyAddedLibraryGenre].self, forKey: .genre)
|
||||
self.guid = try container.decodeIfPresent(String.self, forKey: .guid)
|
||||
self.key = try container.decodeIfPresent(String.self, forKey: .key)
|
||||
self._librarySectionID = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .librarySectionID) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.librarySectionTitle = try container.decodeIfPresent(String.self, forKey: .librarySectionTitle)
|
||||
self.librarySectionUUID = try container.decodeIfPresent(String.self, forKey: .librarySectionUUID)
|
||||
self.media = try container.decodeIfPresent([Operations.GetRecentlyAddedLibraryMedia].self, forKey: .media)
|
||||
self._originallyAvailableAt = try container.decodeIfPresent(DateTime<Date?>.self, forKey: .originallyAvailableAt) ?? DateTime<Date?>(wrappedValue: nil)
|
||||
self.primaryExtraKey = try container.decodeIfPresent(String.self, forKey: .primaryExtraKey)
|
||||
self._rating = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .rating) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.ratingImage = try container.decodeIfPresent(String.self, forKey: .ratingImage)
|
||||
self._ratingKey = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .ratingKey) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.role = try container.decodeIfPresent([Operations.GetRecentlyAddedLibraryRole].self, forKey: .role)
|
||||
self.studio = try container.decodeIfPresent(String.self, forKey: .studio)
|
||||
self.summary = try container.decodeIfPresent(String.self, forKey: .summary)
|
||||
self.tagline = try container.decodeIfPresent(String.self, forKey: .tagline)
|
||||
self.thumb = try container.decodeIfPresent(String.self, forKey: .thumb)
|
||||
self.title = try container.decodeIfPresent(String.self, forKey: .title)
|
||||
self.type = try container.decodeIfPresent(String.self, forKey: .type)
|
||||
self._updatedAt = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .updatedAt) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.writer = try container.decodeIfPresent([Operations.GetRecentlyAddedLibraryWriter].self, forKey: .writer)
|
||||
self._year = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .year) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
}
|
||||
|
||||
public func encode(to encoder: Encoder) throws {
|
||||
var container = encoder.container(keyedBy: CodingKeys.self)
|
||||
if self.addedAt != nil {
|
||||
try container.encode(self._addedAt, forKey: .addedAt)
|
||||
}
|
||||
try container.encodeIfPresent(self.allowSync, forKey: .allowSync)
|
||||
try container.encodeIfPresent(self.art, forKey: .art)
|
||||
if self.audienceRating != nil {
|
||||
try container.encode(self._audienceRating, forKey: .audienceRating)
|
||||
}
|
||||
try container.encodeIfPresent(self.audienceRatingImage, forKey: .audienceRatingImage)
|
||||
try container.encodeIfPresent(self.chapterSource, forKey: .chapterSource)
|
||||
try container.encodeIfPresent(self.contentRating, forKey: .contentRating)
|
||||
try container.encodeIfPresent(self.country, forKey: .country)
|
||||
try container.encodeIfPresent(self.director, forKey: .director)
|
||||
if self.duration != nil {
|
||||
try container.encode(self._duration, forKey: .duration)
|
||||
}
|
||||
try container.encodeIfPresent(self.genre, forKey: .genre)
|
||||
try container.encodeIfPresent(self.guid, forKey: .guid)
|
||||
try container.encodeIfPresent(self.key, forKey: .key)
|
||||
if self.librarySectionID != nil {
|
||||
try container.encode(self._librarySectionID, forKey: .librarySectionID)
|
||||
}
|
||||
try container.encodeIfPresent(self.librarySectionTitle, forKey: .librarySectionTitle)
|
||||
try container.encodeIfPresent(self.librarySectionUUID, forKey: .librarySectionUUID)
|
||||
try container.encodeIfPresent(self.media, forKey: .media)
|
||||
if self.originallyAvailableAt != nil {
|
||||
try container.encode(self._originallyAvailableAt, forKey: .originallyAvailableAt)
|
||||
}
|
||||
try container.encodeIfPresent(self.primaryExtraKey, forKey: .primaryExtraKey)
|
||||
if self.rating != nil {
|
||||
try container.encode(self._rating, forKey: .rating)
|
||||
}
|
||||
try container.encodeIfPresent(self.ratingImage, forKey: .ratingImage)
|
||||
if self.ratingKey != nil {
|
||||
try container.encode(self._ratingKey, forKey: .ratingKey)
|
||||
}
|
||||
try container.encodeIfPresent(self.role, forKey: .role)
|
||||
try container.encodeIfPresent(self.studio, forKey: .studio)
|
||||
try container.encodeIfPresent(self.summary, forKey: .summary)
|
||||
try container.encodeIfPresent(self.tagline, forKey: .tagline)
|
||||
try container.encodeIfPresent(self.thumb, forKey: .thumb)
|
||||
try container.encodeIfPresent(self.title, forKey: .title)
|
||||
try container.encodeIfPresent(self.type, forKey: .type)
|
||||
if self.updatedAt != nil {
|
||||
try container.encode(self._updatedAt, forKey: .updatedAt)
|
||||
}
|
||||
try container.encodeIfPresent(self.writer, forKey: .writer)
|
||||
if self.year != nil {
|
||||
try container.encode(self._year, forKey: .year)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryMetadata {
|
||||
var librarySectionIDWrapper: DecimalSerialized<Double?> {
|
||||
return _librarySectionID
|
||||
}
|
||||
var ratingKeyWrapper: DecimalSerialized<Double?> {
|
||||
return _ratingKey
|
||||
}
|
||||
var ratingWrapper: DecimalSerialized<Double?> {
|
||||
return _rating
|
||||
}
|
||||
var audienceRatingWrapper: DecimalSerialized<Double?> {
|
||||
return _audienceRating
|
||||
}
|
||||
var yearWrapper: DecimalSerialized<Double?> {
|
||||
return _year
|
||||
}
|
||||
var durationWrapper: DecimalSerialized<Double?> {
|
||||
return _duration
|
||||
}
|
||||
var originallyAvailableAtWrapper: DateTime<Date?> {
|
||||
return _originallyAvailableAt
|
||||
}
|
||||
var addedAtWrapper: DecimalSerialized<Double?> {
|
||||
return _addedAt
|
||||
}
|
||||
var updatedAtWrapper: DecimalSerialized<Double?> {
|
||||
return _updatedAt
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedLibraryPart {
|
||||
public let container: String?
|
||||
@DecimalSerialized
|
||||
public private(set) var duration: Double?
|
||||
public let file: String?
|
||||
public let has64bitOffsets: Bool?
|
||||
@DecimalSerialized
|
||||
public private(set) var hasThumbnail: Double?
|
||||
@DecimalSerialized
|
||||
public private(set) var id: Double?
|
||||
public let key: String?
|
||||
public let optimizedForStreaming: Bool?
|
||||
@DecimalSerialized
|
||||
public private(set) var size: Double?
|
||||
public let videoProfile: String?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(container: String? = nil, duration: Double? = nil, file: String? = nil, has64bitOffsets: Bool? = nil, hasThumbnail: Double? = nil, id: Double? = nil, key: String? = nil, optimizedForStreaming: Bool? = nil, size: Double? = nil, videoProfile: String? = nil) {
|
||||
self.container = container
|
||||
self._duration = DecimalSerialized<Double?>(wrappedValue: duration)
|
||||
self.file = file
|
||||
self.has64bitOffsets = has64bitOffsets
|
||||
self._hasThumbnail = DecimalSerialized<Double?>(wrappedValue: hasThumbnail)
|
||||
self._id = DecimalSerialized<Double?>(wrappedValue: id)
|
||||
self.key = key
|
||||
self.optimizedForStreaming = optimizedForStreaming
|
||||
self._size = DecimalSerialized<Double?>(wrappedValue: size)
|
||||
self.videoProfile = videoProfile
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryPart: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case container
|
||||
case duration
|
||||
case file
|
||||
case has64bitOffsets
|
||||
case hasThumbnail
|
||||
case id
|
||||
case key
|
||||
case optimizedForStreaming
|
||||
case size
|
||||
case videoProfile
|
||||
}
|
||||
|
||||
public init(from decoder: Decoder) throws {
|
||||
let container = try decoder.container(keyedBy: CodingKeys.self)
|
||||
self.container = try container.decodeIfPresent(String.self, forKey: .container)
|
||||
self._duration = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .duration) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.file = try container.decodeIfPresent(String.self, forKey: .file)
|
||||
self.has64bitOffsets = try container.decodeIfPresent(Bool.self, forKey: .has64bitOffsets)
|
||||
self._hasThumbnail = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .hasThumbnail) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self._id = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .id) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.key = try container.decodeIfPresent(String.self, forKey: .key)
|
||||
self.optimizedForStreaming = try container.decodeIfPresent(Bool.self, forKey: .optimizedForStreaming)
|
||||
self._size = try container.decodeIfPresent(DecimalSerialized<Double?>.self, forKey: .size) ?? DecimalSerialized<Double?>(wrappedValue: nil)
|
||||
self.videoProfile = try container.decodeIfPresent(String.self, forKey: .videoProfile)
|
||||
}
|
||||
|
||||
public func encode(to encoder: Encoder) throws {
|
||||
var container = encoder.container(keyedBy: CodingKeys.self)
|
||||
try container.encodeIfPresent(self.container, forKey: .container)
|
||||
if self.duration != nil {
|
||||
try container.encode(self._duration, forKey: .duration)
|
||||
}
|
||||
try container.encodeIfPresent(self.file, forKey: .file)
|
||||
try container.encodeIfPresent(self.has64bitOffsets, forKey: .has64bitOffsets)
|
||||
if self.hasThumbnail != nil {
|
||||
try container.encode(self._hasThumbnail, forKey: .hasThumbnail)
|
||||
}
|
||||
if self.id != nil {
|
||||
try container.encode(self._id, forKey: .id)
|
||||
}
|
||||
try container.encodeIfPresent(self.key, forKey: .key)
|
||||
try container.encodeIfPresent(self.optimizedForStreaming, forKey: .optimizedForStreaming)
|
||||
if self.size != nil {
|
||||
try container.encode(self._size, forKey: .size)
|
||||
}
|
||||
try container.encodeIfPresent(self.videoProfile, forKey: .videoProfile)
|
||||
}
|
||||
}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryPart {
|
||||
var idWrapper: DecimalSerialized<Double?> {
|
||||
return _id
|
||||
}
|
||||
var durationWrapper: DecimalSerialized<Double?> {
|
||||
return _duration
|
||||
}
|
||||
var sizeWrapper: DecimalSerialized<Double?> {
|
||||
return _size
|
||||
}
|
||||
var hasThumbnailWrapper: DecimalSerialized<Double?> {
|
||||
return _hasThumbnail
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A model object
|
||||
public struct GetRecentlyAddedLibraryRequest: APIValue {
|
||||
/// The type of media to retrieve.
|
||||
/// 1 = movie
|
||||
/// 2 = show
|
||||
/// 3 = season
|
||||
/// 4 = episode
|
||||
/// E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
|
||||
///
|
||||
public let type: Operations.QueryParamType
|
||||
public let contentDirectoryID: Int?
|
||||
/// Adds the Meta object to the response
|
||||
///
|
||||
public let includeMeta: Operations.QueryParamIncludeMeta?
|
||||
public let pinnedContentDirectoryID: [Int]?
|
||||
/// The library section ID for filtering content.
|
||||
public let sectionID: Int?
|
||||
/// The number of items to return. If not specified, all items will be returned.
|
||||
/// If the number of items exceeds the limit, the response will be paginated.
|
||||
/// By default this is 50
|
||||
///
|
||||
public let xPlexContainerSize: Int?
|
||||
/// The index of the first item to return. If not specified, the first item will be returned.
|
||||
/// If the number of items exceeds the limit, the response will be paginated.
|
||||
/// By default this is 0
|
||||
///
|
||||
public let xPlexContainerStart: Int?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
/// - Parameter type: The type of media to retrieve.
|
||||
/// 1 = movie
|
||||
/// 2 = show
|
||||
/// 3 = season
|
||||
/// 4 = episode
|
||||
/// E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
|
||||
///
|
||||
/// - Parameter includeMeta: Adds the Meta object to the response
|
||||
///
|
||||
/// - Parameter sectionID: The library section ID for filtering content.
|
||||
/// - Parameter xPlexContainerSize: The number of items to return. If not specified, all items will be returned.
|
||||
/// If the number of items exceeds the limit, the response will be paginated.
|
||||
/// By default this is 50
|
||||
///
|
||||
/// - Parameter xPlexContainerStart: The index of the first item to return. If not specified, the first item will be returned.
|
||||
/// If the number of items exceeds the limit, the response will be paginated.
|
||||
/// By default this is 0
|
||||
///
|
||||
///
|
||||
public init(type: Operations.QueryParamType, contentDirectoryID: Int? = nil, includeMeta: Operations.QueryParamIncludeMeta? = nil, pinnedContentDirectoryID: [Int]? = nil, sectionID: Int? = nil, xPlexContainerSize: Int? = nil, xPlexContainerStart: Int? = nil) {
|
||||
self.type = type
|
||||
self.contentDirectoryID = contentDirectoryID
|
||||
self.includeMeta = includeMeta
|
||||
self.pinnedContentDirectoryID = pinnedContentDirectoryID
|
||||
self.sectionID = sectionID
|
||||
self.xPlexContainerSize = xPlexContainerSize
|
||||
self.xPlexContainerStart = xPlexContainerStart
|
||||
}
|
||||
}}
|
||||
@@ -0,0 +1,41 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// A response model
|
||||
public enum GetRecentlyAddedLibraryResponse {
|
||||
case empty
|
||||
case badRequest(Operations.GetRecentlyAddedLibraryBadRequest)
|
||||
case object(Operations.GetRecentlyAddedLibraryResponseBody)
|
||||
case unauthorized(Operations.GetRecentlyAddedLibraryUnauthorized)
|
||||
|
||||
var isEmpty: Bool {
|
||||
if case .empty = self {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
public func badRequest() throws -> Operations.GetRecentlyAddedLibraryBadRequest {
|
||||
guard case .badRequest(let value) = self else {
|
||||
throw PlexswiftError.missingResponseData
|
||||
}
|
||||
return value
|
||||
}
|
||||
|
||||
public func object() throws -> Operations.GetRecentlyAddedLibraryResponseBody {
|
||||
guard case .object(let value) = self else {
|
||||
throw PlexswiftError.missingResponseData
|
||||
}
|
||||
return value
|
||||
}
|
||||
|
||||
public func unauthorized() throws -> Operations.GetRecentlyAddedLibraryUnauthorized {
|
||||
guard case .unauthorized(let value) = self else {
|
||||
throw PlexswiftError.missingResponseData
|
||||
}
|
||||
return value
|
||||
}
|
||||
}}
|
||||
@@ -0,0 +1,23 @@
|
||||
// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Operations {
|
||||
/// The recently added content
|
||||
public struct GetRecentlyAddedLibraryResponseBody {
|
||||
public let mediaContainer: Operations.GetRecentlyAddedLibraryMediaContainer?
|
||||
|
||||
/// Creates an object with the specified parameters
|
||||
///
|
||||
///
|
||||
public init(mediaContainer: Operations.GetRecentlyAddedLibraryMediaContainer? = nil) {
|
||||
self.mediaContainer = mediaContainer
|
||||
}
|
||||
}}
|
||||
|
||||
extension Operations.GetRecentlyAddedLibraryResponseBody: Codable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case mediaContainer = "MediaContainer"
|
||||
}
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user