feat: Added stuff
This commit is contained in:
80
Cargo.lock
generated
80
Cargo.lock
generated
@@ -172,22 +172,22 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "anstyle-query"
|
name = "anstyle-query"
|
||||||
version = "1.1.4"
|
version = "1.1.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9e231f6134f61b71076a3eab506c379d4f36122f2af15a9ff04415ea4c3339e2"
|
checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"windows-sys 0.60.2",
|
"windows-sys 0.61.2",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "anstyle-wincon"
|
name = "anstyle-wincon"
|
||||||
version = "3.0.10"
|
version = "3.0.11"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "3e0633414522a32ffaac8ac6cc8f748e090c5717661fddeea04219e2344f5f2a"
|
checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anstyle",
|
"anstyle",
|
||||||
"once_cell_polyfill",
|
"once_cell_polyfill",
|
||||||
"windows-sys 0.60.2",
|
"windows-sys 0.61.2",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -200,6 +200,7 @@ checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61"
|
|||||||
name = "api"
|
name = "api"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
"bytes",
|
||||||
"iref",
|
"iref",
|
||||||
"jiff",
|
"jiff",
|
||||||
"reqwest",
|
"reqwest",
|
||||||
@@ -908,9 +909,9 @@ checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "bytes"
|
name = "bytes"
|
||||||
version = "1.10.1"
|
version = "1.11.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a"
|
checksum = "b35204fbdc0b3f4446b89fc1ac2cf84a8a68971995d0bf2e925ec7cd960f9cb3"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "calloop"
|
name = "calloop"
|
||||||
@@ -992,9 +993,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cc"
|
name = "cc"
|
||||||
version = "1.2.45"
|
version = "1.2.46"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "35900b6c8d709fb1d854671ae27aeaa9eec2f8b01b364e1619a40da3e6fe2afe"
|
checksum = "b97463e1064cb1b1c1384ad0a0b9c8abd0988e2a91f52606c80ef14aadb63e36"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"find-msvc-tools",
|
"find-msvc-tools",
|
||||||
"jobserver",
|
"jobserver",
|
||||||
@@ -1098,9 +1099,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "clap"
|
name = "clap"
|
||||||
version = "4.5.51"
|
version = "4.5.52"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "4c26d721170e0295f191a69bd9a1f93efcdb0aff38684b61ab5750468972e5f5"
|
checksum = "aa8120877db0e5c011242f96806ce3c94e0737ab8108532a76a3300a01db2ab8"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"clap_builder",
|
"clap_builder",
|
||||||
"clap_derive",
|
"clap_derive",
|
||||||
@@ -1108,9 +1109,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "clap_builder"
|
name = "clap_builder"
|
||||||
version = "4.5.51"
|
version = "4.5.52"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "75835f0c7bf681bfd05abe44e965760fea999a5286c6eb2d59883634fd02011a"
|
checksum = "02576b399397b659c26064fbc92a75fede9d18ffd5f80ca1cd74ddab167016e1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anstream",
|
"anstream",
|
||||||
"anstyle",
|
"anstyle",
|
||||||
@@ -2073,9 +2074,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "find-msvc-tools"
|
name = "find-msvc-tools"
|
||||||
version = "0.1.4"
|
version = "0.1.5"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "52051878f80a721bb68ebfbc930e07b65ba72f2da88968ea5c06fd6ca3d3a127"
|
checksum = "3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "flate2"
|
name = "flate2"
|
||||||
@@ -3007,9 +3008,9 @@ checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "hyper"
|
name = "hyper"
|
||||||
version = "1.8.0"
|
version = "1.8.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "1744436df46f0bde35af3eda22aeaba453aada65d8f1c171cd8a5f59030bd69f"
|
checksum = "2ab2d4f250c3d7b1c9fcdff1cece94ea4e2dfbec68614f7b87cb205f24ca9d11"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"atomic-waker",
|
"atomic-waker",
|
||||||
"bytes",
|
"bytes",
|
||||||
@@ -3062,9 +3063,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "hyper-util"
|
name = "hyper-util"
|
||||||
version = "0.1.17"
|
version = "0.1.18"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "3c6995591a8f1380fcb4ba966a252a4b29188d51d2b89e3a252f5305be65aea8"
|
checksum = "52e9a2a24dc5c6821e71a7030e1e14b7b632acac55c40e9d2e082c621261bb56"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"base64",
|
"base64",
|
||||||
"bytes",
|
"bytes",
|
||||||
@@ -3083,7 +3084,7 @@ dependencies = [
|
|||||||
"tokio",
|
"tokio",
|
||||||
"tower-service",
|
"tower-service",
|
||||||
"tracing",
|
"tracing",
|
||||||
"windows-registry 0.5.3",
|
"windows-registry 0.6.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -3194,6 +3195,7 @@ dependencies = [
|
|||||||
"iced_core",
|
"iced_core",
|
||||||
"iced_futures",
|
"iced_futures",
|
||||||
"raw-window-handle",
|
"raw-window-handle",
|
||||||
|
"sipper",
|
||||||
"thiserror 2.0.17",
|
"thiserror 2.0.17",
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -3908,9 +3910,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "lyon_geom"
|
name = "lyon_geom"
|
||||||
version = "1.0.17"
|
version = "1.0.18"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "4e16770d760c7848b0c1c2d209101e408207a65168109509f8483837a36cf2e7"
|
checksum = "e260b6de923e6e47adfedf6243013a7a874684165a6a277594ee3906021b2343"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"arrayvec",
|
"arrayvec",
|
||||||
"euclid",
|
"euclid",
|
||||||
@@ -4875,9 +4877,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "open"
|
name = "open"
|
||||||
version = "5.3.2"
|
version = "5.3.3"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "e2483562e62ea94312f3576a7aca397306df7990b8d89033e18766744377ef95"
|
checksum = "43bb73a7fa3799b198970490a51174027ba0d4ec504b03cd08caf513d40024bc"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"is-wsl",
|
"is-wsl",
|
||||||
"libc",
|
"libc",
|
||||||
@@ -5499,9 +5501,9 @@ checksum = "d20581732dd76fa913c7dff1a2412b714afe3573e94d41c34719de73337cc8ab"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rangemap"
|
name = "rangemap"
|
||||||
version = "1.6.0"
|
version = "1.7.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "f93e7e49bb0bf967717f7bd674458b3d6b0c5f48ec7e3038166026a69fc22223"
|
checksum = "acbbbbea733ec66275512d0b9694f34102e7d5406fdbe2ad8d21b28dce92887c"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rav1e"
|
name = "rav1e"
|
||||||
@@ -6275,6 +6277,16 @@ version = "1.0.1"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d"
|
checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "sipper"
|
||||||
|
version = "0.1.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "1bccb4192828b3d9a08e0b5a73f17795080dfb278b50190216e3ae2132cf4f95"
|
||||||
|
dependencies = [
|
||||||
|
"futures",
|
||||||
|
"pin-project-lite",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "skrifa"
|
name = "skrifa"
|
||||||
version = "0.37.0"
|
version = "0.37.0"
|
||||||
@@ -7319,8 +7331,11 @@ version = "0.1.0"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"api",
|
"api",
|
||||||
"blurhash",
|
"blurhash",
|
||||||
|
"bytes",
|
||||||
"gpui_util",
|
"gpui_util",
|
||||||
"iced",
|
"iced",
|
||||||
|
"reqwest",
|
||||||
|
"tap",
|
||||||
"tracing",
|
"tracing",
|
||||||
"uuid",
|
"uuid",
|
||||||
]
|
]
|
||||||
@@ -8301,6 +8316,17 @@ dependencies = [
|
|||||||
"windows-strings 0.4.2",
|
"windows-strings 0.4.2",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "windows-registry"
|
||||||
|
version = "0.6.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "02752bf7fbdcce7f2a27a742f798510f3e5ad88dbe84871e5168e2120c3d5720"
|
||||||
|
dependencies = [
|
||||||
|
"windows-link 0.2.1",
|
||||||
|
"windows-result 0.4.1",
|
||||||
|
"windows-strings 0.5.1",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows-result"
|
name = "windows-result"
|
||||||
version = "0.2.0"
|
version = "0.2.0"
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ version = "0.1.0"
|
|||||||
edition = "2024"
|
edition = "2024"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
bytes = "1.11.0"
|
||||||
iref = { version = "3.2.2", features = ["serde"] }
|
iref = { version = "3.2.2", features = ["serde"] }
|
||||||
jiff = { version = "0.2.16", features = ["serde"] }
|
jiff = { version = "0.2.16", features = ["serde"] }
|
||||||
reqwest = { version = "0.12.24", features = ["json"] }
|
reqwest = { version = "0.12.24", features = ["json"] }
|
||||||
|
|||||||
@@ -17,8 +17,16 @@ pub async fn main() {
|
|||||||
for item in items {
|
for item in items {
|
||||||
println!("{}: {:?}", item.id, item.name);
|
println!("{}: {:?}", item.id, item.name);
|
||||||
let items = jellyfin.items(item.id).await.expect("Items");
|
let items = jellyfin.items(item.id).await.expect("Items");
|
||||||
for item in items {
|
std::fs::write(
|
||||||
println!(" {}: {:?}", item.id, item.name);
|
format!("items_{:?}.json", item.name),
|
||||||
}
|
serde_json::to_string_pretty(&items).expect("Serialize items"),
|
||||||
|
);
|
||||||
|
// for item in items {
|
||||||
|
// println!(" {}: {:?}", item.id, item.name);
|
||||||
|
// std::fs::write(
|
||||||
|
// format!("item_{}.json", item.id),
|
||||||
|
// serde_json::to_string_pretty(&item).expect("Serialize item"),
|
||||||
|
// );
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6013,7 +6013,6 @@ pub struct XbmcMetadataOptions {
|
|||||||
pub enable_extra_thumbs_duplication: bool,
|
pub enable_extra_thumbs_duplication: bool,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ApiName {
|
pub enum ApiName {
|
||||||
#[serde(rename = "Mal")]
|
#[serde(rename = "Mal")]
|
||||||
Mal,
|
Mal,
|
||||||
@@ -6030,7 +6029,6 @@ pub enum ApiName {
|
|||||||
}
|
}
|
||||||
/// An enum representing formats of spatial audio.
|
/// An enum representing formats of spatial audio.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum AudioSpatialFormat {
|
pub enum AudioSpatialFormat {
|
||||||
#[serde(rename = "None")]
|
#[serde(rename = "None")]
|
||||||
None,
|
None,
|
||||||
@@ -6041,7 +6039,6 @@ pub enum AudioSpatialFormat {
|
|||||||
}
|
}
|
||||||
/// The base item kind.
|
/// The base item kind.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum BaseItemKind {
|
pub enum BaseItemKind {
|
||||||
#[serde(rename = "AggregateFolder")]
|
#[serde(rename = "AggregateFolder")]
|
||||||
AggregateFolder,
|
AggregateFolder,
|
||||||
@@ -6119,7 +6116,6 @@ pub enum BaseItemKind {
|
|||||||
Year,
|
Year,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ChannelItemSortField {
|
pub enum ChannelItemSortField {
|
||||||
#[serde(rename = "Name")]
|
#[serde(rename = "Name")]
|
||||||
Name,
|
Name,
|
||||||
@@ -6137,7 +6133,6 @@ pub enum ChannelItemSortField {
|
|||||||
CommunityPlayCount,
|
CommunityPlayCount,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ChannelMediaContentType {
|
pub enum ChannelMediaContentType {
|
||||||
#[serde(rename = "Clip")]
|
#[serde(rename = "Clip")]
|
||||||
Clip,
|
Clip,
|
||||||
@@ -6157,7 +6152,6 @@ pub enum ChannelMediaContentType {
|
|||||||
TvExtra,
|
TvExtra,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ChannelMediaType {
|
pub enum ChannelMediaType {
|
||||||
#[serde(rename = "Audio")]
|
#[serde(rename = "Audio")]
|
||||||
Audio,
|
Audio,
|
||||||
@@ -6168,7 +6162,6 @@ pub enum ChannelMediaType {
|
|||||||
}
|
}
|
||||||
/// Enum ChannelType.
|
/// Enum ChannelType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ChannelType {
|
pub enum ChannelType {
|
||||||
#[serde(rename = "TV")]
|
#[serde(rename = "TV")]
|
||||||
Tv,
|
Tv,
|
||||||
@@ -6176,7 +6169,6 @@ pub enum ChannelType {
|
|||||||
Radio,
|
Radio,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum CodecType {
|
pub enum CodecType {
|
||||||
#[serde(rename = "Video")]
|
#[serde(rename = "Video")]
|
||||||
Video,
|
Video,
|
||||||
@@ -6187,7 +6179,6 @@ pub enum CodecType {
|
|||||||
}
|
}
|
||||||
/// Collection type.
|
/// Collection type.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum CollectionType {
|
pub enum CollectionType {
|
||||||
#[serde(rename = "unknown")]
|
#[serde(rename = "unknown")]
|
||||||
Unknown,
|
Unknown,
|
||||||
@@ -6218,7 +6209,6 @@ pub enum CollectionType {
|
|||||||
}
|
}
|
||||||
/// The collection type options.
|
/// The collection type options.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum CollectionTypeOptions {
|
pub enum CollectionTypeOptions {
|
||||||
#[serde(rename = "movies")]
|
#[serde(rename = "movies")]
|
||||||
Movies,
|
Movies,
|
||||||
@@ -6238,7 +6228,6 @@ pub enum CollectionTypeOptions {
|
|||||||
Mixed,
|
Mixed,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum DayOfWeek {
|
pub enum DayOfWeek {
|
||||||
#[serde(rename = "Sunday")]
|
#[serde(rename = "Sunday")]
|
||||||
Sunday,
|
Sunday,
|
||||||
@@ -6256,7 +6245,6 @@ pub enum DayOfWeek {
|
|||||||
Saturday,
|
Saturday,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum DayPattern {
|
pub enum DayPattern {
|
||||||
#[serde(rename = "Daily")]
|
#[serde(rename = "Daily")]
|
||||||
Daily,
|
Daily,
|
||||||
@@ -6267,7 +6255,6 @@ pub enum DayPattern {
|
|||||||
}
|
}
|
||||||
/// Enum containing deinterlace methods.
|
/// Enum containing deinterlace methods.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum DeinterlaceMethod {
|
pub enum DeinterlaceMethod {
|
||||||
#[serde(rename = "yadif")]
|
#[serde(rename = "yadif")]
|
||||||
Yadif,
|
Yadif,
|
||||||
@@ -6275,7 +6262,6 @@ pub enum DeinterlaceMethod {
|
|||||||
Bwdif,
|
Bwdif,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum DlnaProfileType {
|
pub enum DlnaProfileType {
|
||||||
#[serde(rename = "Audio")]
|
#[serde(rename = "Audio")]
|
||||||
Audio,
|
Audio,
|
||||||
@@ -6290,7 +6276,6 @@ pub enum DlnaProfileType {
|
|||||||
}
|
}
|
||||||
/// An enum representing an algorithm to downmix surround sound to stereo.
|
/// An enum representing an algorithm to downmix surround sound to stereo.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum DownMixStereoAlgorithms {
|
pub enum DownMixStereoAlgorithms {
|
||||||
#[serde(rename = "None")]
|
#[serde(rename = "None")]
|
||||||
None,
|
None,
|
||||||
@@ -6305,7 +6290,6 @@ pub enum DownMixStereoAlgorithms {
|
|||||||
}
|
}
|
||||||
/// An enum that represents a day of the week, weekdays, weekends, or all days.
|
/// An enum that represents a day of the week, weekdays, weekends, or all days.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum DynamicDayOfWeek {
|
pub enum DynamicDayOfWeek {
|
||||||
#[serde(rename = "Sunday")]
|
#[serde(rename = "Sunday")]
|
||||||
Sunday,
|
Sunday,
|
||||||
@@ -6330,7 +6314,6 @@ pub enum DynamicDayOfWeek {
|
|||||||
}
|
}
|
||||||
/// An enum representing the options to disable embedded subs.
|
/// An enum representing the options to disable embedded subs.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum EmbeddedSubtitleOptions {
|
pub enum EmbeddedSubtitleOptions {
|
||||||
#[serde(rename = "AllowAll")]
|
#[serde(rename = "AllowAll")]
|
||||||
AllowAll,
|
AllowAll,
|
||||||
@@ -6343,7 +6326,6 @@ pub enum EmbeddedSubtitleOptions {
|
|||||||
}
|
}
|
||||||
/// Enum containing encoder presets.
|
/// Enum containing encoder presets.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum EncoderPreset {
|
pub enum EncoderPreset {
|
||||||
#[serde(rename = "auto")]
|
#[serde(rename = "auto")]
|
||||||
Auto,
|
Auto,
|
||||||
@@ -6369,7 +6351,6 @@ pub enum EncoderPreset {
|
|||||||
Ultrafast,
|
Ultrafast,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum EncodingContext {
|
pub enum EncodingContext {
|
||||||
#[serde(rename = "Streaming")]
|
#[serde(rename = "Streaming")]
|
||||||
Streaming,
|
Streaming,
|
||||||
@@ -6378,7 +6359,6 @@ pub enum EncodingContext {
|
|||||||
}
|
}
|
||||||
/// The specific media type of an MediaBrowser.Model.Providers.ExternalIdInfo.
|
/// The specific media type of an MediaBrowser.Model.Providers.ExternalIdInfo.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ExternalIdMediaType {
|
pub enum ExternalIdMediaType {
|
||||||
#[serde(rename = "Album")]
|
#[serde(rename = "Album")]
|
||||||
Album,
|
Album,
|
||||||
@@ -6408,7 +6388,6 @@ pub enum ExternalIdMediaType {
|
|||||||
Book,
|
Book,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ExtraType {
|
pub enum ExtraType {
|
||||||
#[serde(rename = "Unknown")]
|
#[serde(rename = "Unknown")]
|
||||||
Unknown,
|
Unknown,
|
||||||
@@ -6437,7 +6416,6 @@ pub enum ExtraType {
|
|||||||
}
|
}
|
||||||
/// Enum FileSystemEntryType.
|
/// Enum FileSystemEntryType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum FileSystemEntryType {
|
pub enum FileSystemEntryType {
|
||||||
#[serde(rename = "File")]
|
#[serde(rename = "File")]
|
||||||
File,
|
File,
|
||||||
@@ -6449,7 +6427,6 @@ pub enum FileSystemEntryType {
|
|||||||
NetworkShare,
|
NetworkShare,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ForgotPasswordAction {
|
pub enum ForgotPasswordAction {
|
||||||
#[serde(rename = "ContactAdmin")]
|
#[serde(rename = "ContactAdmin")]
|
||||||
ContactAdmin,
|
ContactAdmin,
|
||||||
@@ -6460,7 +6437,6 @@ pub enum ForgotPasswordAction {
|
|||||||
}
|
}
|
||||||
/// This exists simply to identify a set of known commands.
|
/// This exists simply to identify a set of known commands.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum GeneralCommandType {
|
pub enum GeneralCommandType {
|
||||||
#[serde(rename = "MoveUp")]
|
#[serde(rename = "MoveUp")]
|
||||||
MoveUp,
|
MoveUp,
|
||||||
@@ -6551,7 +6527,6 @@ pub enum GeneralCommandType {
|
|||||||
}
|
}
|
||||||
/// Enum GroupQueueMode.
|
/// Enum GroupQueueMode.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum GroupQueueMode {
|
pub enum GroupQueueMode {
|
||||||
#[serde(rename = "Queue")]
|
#[serde(rename = "Queue")]
|
||||||
Queue,
|
Queue,
|
||||||
@@ -6560,7 +6535,6 @@ pub enum GroupQueueMode {
|
|||||||
}
|
}
|
||||||
/// Enum GroupRepeatMode.
|
/// Enum GroupRepeatMode.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum GroupRepeatMode {
|
pub enum GroupRepeatMode {
|
||||||
#[serde(rename = "RepeatOne")]
|
#[serde(rename = "RepeatOne")]
|
||||||
RepeatOne,
|
RepeatOne,
|
||||||
@@ -6571,7 +6545,6 @@ pub enum GroupRepeatMode {
|
|||||||
}
|
}
|
||||||
/// Enum GroupShuffleMode.
|
/// Enum GroupShuffleMode.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum GroupShuffleMode {
|
pub enum GroupShuffleMode {
|
||||||
#[serde(rename = "Sorted")]
|
#[serde(rename = "Sorted")]
|
||||||
Sorted,
|
Sorted,
|
||||||
@@ -6580,7 +6553,6 @@ pub enum GroupShuffleMode {
|
|||||||
}
|
}
|
||||||
/// Enum GroupState.
|
/// Enum GroupState.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum GroupStateType {
|
pub enum GroupStateType {
|
||||||
#[serde(rename = "Idle")]
|
#[serde(rename = "Idle")]
|
||||||
Idle,
|
Idle,
|
||||||
@@ -6593,7 +6565,6 @@ pub enum GroupStateType {
|
|||||||
}
|
}
|
||||||
/// Enum GroupUpdateType.
|
/// Enum GroupUpdateType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum GroupUpdateType {
|
pub enum GroupUpdateType {
|
||||||
#[serde(rename = "UserJoined")]
|
#[serde(rename = "UserJoined")]
|
||||||
UserJoined,
|
UserJoined,
|
||||||
@@ -6620,7 +6591,6 @@ pub enum GroupUpdateType {
|
|||||||
}
|
}
|
||||||
/// Enum containing hardware acceleration types.
|
/// Enum containing hardware acceleration types.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum HardwareAccelerationType {
|
pub enum HardwareAccelerationType {
|
||||||
#[serde(rename = "none")]
|
#[serde(rename = "none")]
|
||||||
None,
|
None,
|
||||||
@@ -6641,7 +6611,6 @@ pub enum HardwareAccelerationType {
|
|||||||
}
|
}
|
||||||
/// Enum ImageOutputFormat.
|
/// Enum ImageOutputFormat.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ImageFormat {
|
pub enum ImageFormat {
|
||||||
#[serde(rename = "Bmp")]
|
#[serde(rename = "Bmp")]
|
||||||
Bmp,
|
Bmp,
|
||||||
@@ -6657,7 +6626,6 @@ pub enum ImageFormat {
|
|||||||
Svg,
|
Svg,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ImageOrientation {
|
pub enum ImageOrientation {
|
||||||
#[serde(rename = "TopLeft")]
|
#[serde(rename = "TopLeft")]
|
||||||
TopLeft,
|
TopLeft,
|
||||||
@@ -6678,7 +6646,6 @@ pub enum ImageOrientation {
|
|||||||
}
|
}
|
||||||
/// Enum ImageResolution.
|
/// Enum ImageResolution.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ImageResolution {
|
pub enum ImageResolution {
|
||||||
#[serde(rename = "MatchSource")]
|
#[serde(rename = "MatchSource")]
|
||||||
MatchSource,
|
MatchSource,
|
||||||
@@ -6700,7 +6667,6 @@ pub enum ImageResolution {
|
|||||||
P2160,
|
P2160,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ImageSavingConvention {
|
pub enum ImageSavingConvention {
|
||||||
#[serde(rename = "Legacy")]
|
#[serde(rename = "Legacy")]
|
||||||
Legacy,
|
Legacy,
|
||||||
@@ -6709,7 +6675,6 @@ pub enum ImageSavingConvention {
|
|||||||
}
|
}
|
||||||
/// Enum ImageType.
|
/// Enum ImageType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ImageType {
|
pub enum ImageType {
|
||||||
#[serde(rename = "Primary")]
|
#[serde(rename = "Primary")]
|
||||||
Primary,
|
Primary,
|
||||||
@@ -6740,7 +6705,6 @@ pub enum ImageType {
|
|||||||
}
|
}
|
||||||
/// Enum IsoType.
|
/// Enum IsoType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum IsoType {
|
pub enum IsoType {
|
||||||
#[serde(rename = "Dvd")]
|
#[serde(rename = "Dvd")]
|
||||||
Dvd,
|
Dvd,
|
||||||
@@ -6749,7 +6713,6 @@ pub enum IsoType {
|
|||||||
}
|
}
|
||||||
/// Used to control the data that gets attached to DtoBaseItems.
|
/// Used to control the data that gets attached to DtoBaseItems.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ItemFields {
|
pub enum ItemFields {
|
||||||
#[serde(rename = "AirTime")]
|
#[serde(rename = "AirTime")]
|
||||||
AirTime,
|
AirTime,
|
||||||
@@ -6874,7 +6837,6 @@ pub enum ItemFields {
|
|||||||
}
|
}
|
||||||
/// Enum ItemFilter.
|
/// Enum ItemFilter.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ItemFilter {
|
pub enum ItemFilter {
|
||||||
#[serde(rename = "IsFolder")]
|
#[serde(rename = "IsFolder")]
|
||||||
IsFolder,
|
IsFolder,
|
||||||
@@ -6897,7 +6859,6 @@ pub enum ItemFilter {
|
|||||||
}
|
}
|
||||||
/// These represent sort orders.
|
/// These represent sort orders.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ItemSortBy {
|
pub enum ItemSortBy {
|
||||||
#[serde(rename = "Default")]
|
#[serde(rename = "Default")]
|
||||||
Default,
|
Default,
|
||||||
@@ -6965,7 +6926,6 @@ pub enum ItemSortBy {
|
|||||||
SearchScore,
|
SearchScore,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum KeepUntil {
|
pub enum KeepUntil {
|
||||||
#[serde(rename = "UntilDeleted")]
|
#[serde(rename = "UntilDeleted")]
|
||||||
UntilDeleted,
|
UntilDeleted,
|
||||||
@@ -6977,7 +6937,6 @@ pub enum KeepUntil {
|
|||||||
UntilDate,
|
UntilDate,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum LiveTvServiceStatus {
|
pub enum LiveTvServiceStatus {
|
||||||
#[serde(rename = "Ok")]
|
#[serde(rename = "Ok")]
|
||||||
Ok,
|
Ok,
|
||||||
@@ -6986,7 +6945,6 @@ pub enum LiveTvServiceStatus {
|
|||||||
}
|
}
|
||||||
/// Enum LocationType.
|
/// Enum LocationType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum LocationType {
|
pub enum LocationType {
|
||||||
#[serde(rename = "FileSystem")]
|
#[serde(rename = "FileSystem")]
|
||||||
FileSystem,
|
FileSystem,
|
||||||
@@ -6998,7 +6956,6 @@ pub enum LocationType {
|
|||||||
Offline,
|
Offline,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum LogLevel {
|
pub enum LogLevel {
|
||||||
#[serde(rename = "Trace")]
|
#[serde(rename = "Trace")]
|
||||||
Trace,
|
Trace,
|
||||||
@@ -7016,7 +6973,6 @@ pub enum LogLevel {
|
|||||||
None,
|
None,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum MediaProtocol {
|
pub enum MediaProtocol {
|
||||||
#[serde(rename = "File")]
|
#[serde(rename = "File")]
|
||||||
File,
|
File,
|
||||||
@@ -7035,7 +6991,6 @@ pub enum MediaProtocol {
|
|||||||
}
|
}
|
||||||
/// Defines the types of content an individual Jellyfin.Data.Entities.MediaSegment represents.
|
/// Defines the types of content an individual Jellyfin.Data.Entities.MediaSegment represents.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum MediaSegmentType {
|
pub enum MediaSegmentType {
|
||||||
#[serde(rename = "Unknown")]
|
#[serde(rename = "Unknown")]
|
||||||
Unknown,
|
Unknown,
|
||||||
@@ -7051,7 +7006,6 @@ pub enum MediaSegmentType {
|
|||||||
Intro,
|
Intro,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum MediaSourceType {
|
pub enum MediaSourceType {
|
||||||
#[serde(rename = "Default")]
|
#[serde(rename = "Default")]
|
||||||
Default,
|
Default,
|
||||||
@@ -7063,7 +7017,6 @@ pub enum MediaSourceType {
|
|||||||
/** Media streaming protocol.
|
/** Media streaming protocol.
|
||||||
Lowercase for backwards compatibility.*/
|
Lowercase for backwards compatibility.*/
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum MediaStreamProtocol {
|
pub enum MediaStreamProtocol {
|
||||||
#[serde(rename = "http")]
|
#[serde(rename = "http")]
|
||||||
Http,
|
Http,
|
||||||
@@ -7072,7 +7025,6 @@ pub enum MediaStreamProtocol {
|
|||||||
}
|
}
|
||||||
/// Enum MediaStreamType.
|
/// Enum MediaStreamType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum MediaStreamType {
|
pub enum MediaStreamType {
|
||||||
#[serde(rename = "Audio")]
|
#[serde(rename = "Audio")]
|
||||||
Audio,
|
Audio,
|
||||||
@@ -7089,7 +7041,6 @@ pub enum MediaStreamType {
|
|||||||
}
|
}
|
||||||
/// Media types.
|
/// Media types.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum MediaType {
|
pub enum MediaType {
|
||||||
#[serde(rename = "Unknown")]
|
#[serde(rename = "Unknown")]
|
||||||
Unknown,
|
Unknown,
|
||||||
@@ -7104,7 +7055,6 @@ pub enum MediaType {
|
|||||||
}
|
}
|
||||||
/// Enum MetadataFields.
|
/// Enum MetadataFields.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum MetadataField {
|
pub enum MetadataField {
|
||||||
#[serde(rename = "Cast")]
|
#[serde(rename = "Cast")]
|
||||||
Cast,
|
Cast,
|
||||||
@@ -7126,7 +7076,6 @@ pub enum MetadataField {
|
|||||||
OfficialRating,
|
OfficialRating,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum MetadataRefreshMode {
|
pub enum MetadataRefreshMode {
|
||||||
#[serde(rename = "None")]
|
#[serde(rename = "None")]
|
||||||
None,
|
None,
|
||||||
@@ -7138,7 +7087,6 @@ pub enum MetadataRefreshMode {
|
|||||||
FullRefresh,
|
FullRefresh,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ParameterInclude {
|
pub enum ParameterInclude {
|
||||||
#[serde(rename = "ProviderList")]
|
#[serde(rename = "ProviderList")]
|
||||||
ProviderList,
|
ProviderList,
|
||||||
@@ -7151,7 +7099,6 @@ pub enum ParameterInclude {
|
|||||||
}
|
}
|
||||||
/// The person kind.
|
/// The person kind.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum PersonKind {
|
pub enum PersonKind {
|
||||||
#[serde(rename = "Unknown")]
|
#[serde(rename = "Unknown")]
|
||||||
Unknown,
|
Unknown,
|
||||||
@@ -7205,7 +7152,6 @@ pub enum PersonKind {
|
|||||||
Translator,
|
Translator,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum PlayAccess {
|
pub enum PlayAccess {
|
||||||
#[serde(rename = "Full")]
|
#[serde(rename = "Full")]
|
||||||
Full,
|
Full,
|
||||||
@@ -7213,7 +7159,6 @@ pub enum PlayAccess {
|
|||||||
None,
|
None,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum PlaybackErrorCode {
|
pub enum PlaybackErrorCode {
|
||||||
#[serde(rename = "NotAllowed")]
|
#[serde(rename = "NotAllowed")]
|
||||||
NotAllowed,
|
NotAllowed,
|
||||||
@@ -7224,7 +7169,6 @@ pub enum PlaybackErrorCode {
|
|||||||
}
|
}
|
||||||
/// Enum PlaybackOrder.
|
/// Enum PlaybackOrder.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum PlaybackOrder {
|
pub enum PlaybackOrder {
|
||||||
#[serde(rename = "Default")]
|
#[serde(rename = "Default")]
|
||||||
Default,
|
Default,
|
||||||
@@ -7233,7 +7177,6 @@ pub enum PlaybackOrder {
|
|||||||
}
|
}
|
||||||
/// Enum PlaybackRequestType.
|
/// Enum PlaybackRequestType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum PlaybackRequestType {
|
pub enum PlaybackRequestType {
|
||||||
#[serde(rename = "Play")]
|
#[serde(rename = "Play")]
|
||||||
Play,
|
Play,
|
||||||
@@ -7272,7 +7215,6 @@ pub enum PlaybackRequestType {
|
|||||||
}
|
}
|
||||||
/// Enum PlayCommand.
|
/// Enum PlayCommand.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum PlayCommand {
|
pub enum PlayCommand {
|
||||||
#[serde(rename = "PlayNow")]
|
#[serde(rename = "PlayNow")]
|
||||||
PlayNow,
|
PlayNow,
|
||||||
@@ -7286,7 +7228,6 @@ pub enum PlayCommand {
|
|||||||
PlayShuffle,
|
PlayShuffle,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum PlayMethod {
|
pub enum PlayMethod {
|
||||||
#[serde(rename = "Transcode")]
|
#[serde(rename = "Transcode")]
|
||||||
Transcode,
|
Transcode,
|
||||||
@@ -7297,7 +7238,6 @@ pub enum PlayMethod {
|
|||||||
}
|
}
|
||||||
/// Enum PlayQueueUpdateReason.
|
/// Enum PlayQueueUpdateReason.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum PlayQueueUpdateReason {
|
pub enum PlayQueueUpdateReason {
|
||||||
#[serde(rename = "NewPlaylist")]
|
#[serde(rename = "NewPlaylist")]
|
||||||
NewPlaylist,
|
NewPlaylist,
|
||||||
@@ -7322,7 +7262,6 @@ pub enum PlayQueueUpdateReason {
|
|||||||
}
|
}
|
||||||
/// Enum PlaystateCommand.
|
/// Enum PlaystateCommand.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum PlaystateCommand {
|
pub enum PlaystateCommand {
|
||||||
#[serde(rename = "Stop")]
|
#[serde(rename = "Stop")]
|
||||||
Stop,
|
Stop,
|
||||||
@@ -7345,7 +7284,6 @@ pub enum PlaystateCommand {
|
|||||||
}
|
}
|
||||||
/// Plugin load status.
|
/// Plugin load status.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum PluginStatus {
|
pub enum PluginStatus {
|
||||||
#[serde(rename = "Active")]
|
#[serde(rename = "Active")]
|
||||||
Active,
|
Active,
|
||||||
@@ -7363,7 +7301,6 @@ pub enum PluginStatus {
|
|||||||
Disabled,
|
Disabled,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ProcessPriorityClass {
|
pub enum ProcessPriorityClass {
|
||||||
#[serde(rename = "Normal")]
|
#[serde(rename = "Normal")]
|
||||||
Normal,
|
Normal,
|
||||||
@@ -7379,7 +7316,6 @@ pub enum ProcessPriorityClass {
|
|||||||
AboveNormal,
|
AboveNormal,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ProfileConditionType {
|
pub enum ProfileConditionType {
|
||||||
#[serde(rename = "Equals")]
|
#[serde(rename = "Equals")]
|
||||||
Equals,
|
Equals,
|
||||||
@@ -7393,7 +7329,6 @@ pub enum ProfileConditionType {
|
|||||||
EqualsAny,
|
EqualsAny,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ProfileConditionValue {
|
pub enum ProfileConditionValue {
|
||||||
#[serde(rename = "AudioChannels")]
|
#[serde(rename = "AudioChannels")]
|
||||||
AudioChannels,
|
AudioChannels,
|
||||||
@@ -7445,7 +7380,6 @@ pub enum ProfileConditionValue {
|
|||||||
VideoRangeType,
|
VideoRangeType,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ProgramAudio {
|
pub enum ProgramAudio {
|
||||||
#[serde(rename = "Mono")]
|
#[serde(rename = "Mono")]
|
||||||
Mono,
|
Mono,
|
||||||
@@ -7461,7 +7395,6 @@ pub enum ProgramAudio {
|
|||||||
Atmos,
|
Atmos,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum RatingType {
|
pub enum RatingType {
|
||||||
#[serde(rename = "Score")]
|
#[serde(rename = "Score")]
|
||||||
Score,
|
Score,
|
||||||
@@ -7469,7 +7402,6 @@ pub enum RatingType {
|
|||||||
Likes,
|
Likes,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum RecommendationType {
|
pub enum RecommendationType {
|
||||||
#[serde(rename = "SimilarToRecentlyPlayed")]
|
#[serde(rename = "SimilarToRecentlyPlayed")]
|
||||||
SimilarToRecentlyPlayed,
|
SimilarToRecentlyPlayed,
|
||||||
@@ -7485,7 +7417,6 @@ pub enum RecommendationType {
|
|||||||
HasLikedActor,
|
HasLikedActor,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum RecordingStatus {
|
pub enum RecordingStatus {
|
||||||
#[serde(rename = "New")]
|
#[serde(rename = "New")]
|
||||||
New,
|
New,
|
||||||
@@ -7503,7 +7434,6 @@ pub enum RecordingStatus {
|
|||||||
Error,
|
Error,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum RepeatMode {
|
pub enum RepeatMode {
|
||||||
#[serde(rename = "RepeatNone")]
|
#[serde(rename = "RepeatNone")]
|
||||||
RepeatNone,
|
RepeatNone,
|
||||||
@@ -7514,7 +7444,6 @@ pub enum RepeatMode {
|
|||||||
}
|
}
|
||||||
/// An enum representing the axis that should be scrolled.
|
/// An enum representing the axis that should be scrolled.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum ScrollDirection {
|
pub enum ScrollDirection {
|
||||||
#[serde(rename = "Horizontal")]
|
#[serde(rename = "Horizontal")]
|
||||||
Horizontal,
|
Horizontal,
|
||||||
@@ -7523,7 +7452,6 @@ pub enum ScrollDirection {
|
|||||||
}
|
}
|
||||||
/// Enum SendCommandType.
|
/// Enum SendCommandType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum SendCommandType {
|
pub enum SendCommandType {
|
||||||
#[serde(rename = "Unpause")]
|
#[serde(rename = "Unpause")]
|
||||||
Unpause,
|
Unpause,
|
||||||
@@ -7536,7 +7464,6 @@ pub enum SendCommandType {
|
|||||||
}
|
}
|
||||||
/// The status of a series.
|
/// The status of a series.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum SeriesStatus {
|
pub enum SeriesStatus {
|
||||||
#[serde(rename = "Continuing")]
|
#[serde(rename = "Continuing")]
|
||||||
Continuing,
|
Continuing,
|
||||||
@@ -7547,7 +7474,6 @@ pub enum SeriesStatus {
|
|||||||
}
|
}
|
||||||
/// The different kinds of messages that are used in the WebSocket api.
|
/// The different kinds of messages that are used in the WebSocket api.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum SessionMessageType {
|
pub enum SessionMessageType {
|
||||||
#[serde(rename = "ForceKeepAlive")]
|
#[serde(rename = "ForceKeepAlive")]
|
||||||
ForceKeepAlive,
|
ForceKeepAlive,
|
||||||
@@ -7620,7 +7546,6 @@ pub enum SessionMessageType {
|
|||||||
}
|
}
|
||||||
/// An enum representing the sorting order.
|
/// An enum representing the sorting order.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum SortOrder {
|
pub enum SortOrder {
|
||||||
#[serde(rename = "Ascending")]
|
#[serde(rename = "Ascending")]
|
||||||
Ascending,
|
Ascending,
|
||||||
@@ -7628,7 +7553,6 @@ pub enum SortOrder {
|
|||||||
Descending,
|
Descending,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum Status {
|
pub enum Status {
|
||||||
#[serde(rename = "Completed")]
|
#[serde(rename = "Completed")]
|
||||||
Completed,
|
Completed,
|
||||||
@@ -7639,7 +7563,6 @@ pub enum Status {
|
|||||||
}
|
}
|
||||||
/// Delivery method to use during playback of a specific subtitle format.
|
/// Delivery method to use during playback of a specific subtitle format.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum SubtitleDeliveryMethod {
|
pub enum SubtitleDeliveryMethod {
|
||||||
#[serde(rename = "Encode")]
|
#[serde(rename = "Encode")]
|
||||||
Encode,
|
Encode,
|
||||||
@@ -7654,7 +7577,6 @@ pub enum SubtitleDeliveryMethod {
|
|||||||
}
|
}
|
||||||
/// An enum representing a subtitle playback mode.
|
/// An enum representing a subtitle playback mode.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum SubtitlePlaybackMode {
|
pub enum SubtitlePlaybackMode {
|
||||||
#[serde(rename = "Default")]
|
#[serde(rename = "Default")]
|
||||||
Default,
|
Default,
|
||||||
@@ -7668,7 +7590,6 @@ pub enum SubtitlePlaybackMode {
|
|||||||
Smart,
|
Smart,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum SyncAction {
|
pub enum SyncAction {
|
||||||
#[serde(rename = "UpdateProvider")]
|
#[serde(rename = "UpdateProvider")]
|
||||||
UpdateProvider,
|
UpdateProvider,
|
||||||
@@ -7677,7 +7598,6 @@ pub enum SyncAction {
|
|||||||
}
|
}
|
||||||
/// Enum SyncPlayUserAccessType.
|
/// Enum SyncPlayUserAccessType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum SyncPlayUserAccessType {
|
pub enum SyncPlayUserAccessType {
|
||||||
#[serde(rename = "CreateAndJoinGroups")]
|
#[serde(rename = "CreateAndJoinGroups")]
|
||||||
CreateAndJoinGroups,
|
CreateAndJoinGroups,
|
||||||
@@ -7688,7 +7608,6 @@ pub enum SyncPlayUserAccessType {
|
|||||||
}
|
}
|
||||||
/// Enum TaskCompletionStatus.
|
/// Enum TaskCompletionStatus.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum TaskCompletionStatus {
|
pub enum TaskCompletionStatus {
|
||||||
#[serde(rename = "Completed")]
|
#[serde(rename = "Completed")]
|
||||||
Completed,
|
Completed,
|
||||||
@@ -7701,7 +7620,6 @@ pub enum TaskCompletionStatus {
|
|||||||
}
|
}
|
||||||
/// Enum TaskState.
|
/// Enum TaskState.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum TaskState {
|
pub enum TaskState {
|
||||||
#[serde(rename = "Idle")]
|
#[serde(rename = "Idle")]
|
||||||
Idle,
|
Idle,
|
||||||
@@ -7712,7 +7630,6 @@ pub enum TaskState {
|
|||||||
}
|
}
|
||||||
/// Enum containing tonemapping algorithms.
|
/// Enum containing tonemapping algorithms.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum TonemappingAlgorithm {
|
pub enum TonemappingAlgorithm {
|
||||||
#[serde(rename = "none")]
|
#[serde(rename = "none")]
|
||||||
None,
|
None,
|
||||||
@@ -7733,7 +7650,6 @@ pub enum TonemappingAlgorithm {
|
|||||||
}
|
}
|
||||||
/// Enum containing tonemapping modes.
|
/// Enum containing tonemapping modes.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum TonemappingMode {
|
pub enum TonemappingMode {
|
||||||
#[serde(rename = "auto")]
|
#[serde(rename = "auto")]
|
||||||
Auto,
|
Auto,
|
||||||
@@ -7748,7 +7664,6 @@ pub enum TonemappingMode {
|
|||||||
}
|
}
|
||||||
/// Enum containing tonemapping ranges.
|
/// Enum containing tonemapping ranges.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum TonemappingRange {
|
pub enum TonemappingRange {
|
||||||
#[serde(rename = "auto")]
|
#[serde(rename = "auto")]
|
||||||
Auto,
|
Auto,
|
||||||
@@ -7758,7 +7673,6 @@ pub enum TonemappingRange {
|
|||||||
Pc,
|
Pc,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum TranscodeReason {
|
pub enum TranscodeReason {
|
||||||
#[serde(rename = "ContainerNotSupported")]
|
#[serde(rename = "ContainerNotSupported")]
|
||||||
ContainerNotSupported,
|
ContainerNotSupported,
|
||||||
@@ -7814,7 +7728,6 @@ pub enum TranscodeReason {
|
|||||||
VideoCodecTagNotSupported,
|
VideoCodecTagNotSupported,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum TranscodeSeekInfo {
|
pub enum TranscodeSeekInfo {
|
||||||
#[serde(rename = "Auto")]
|
#[serde(rename = "Auto")]
|
||||||
Auto,
|
Auto,
|
||||||
@@ -7822,7 +7735,6 @@ pub enum TranscodeSeekInfo {
|
|||||||
Bytes,
|
Bytes,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum TransportStreamTimestamp {
|
pub enum TransportStreamTimestamp {
|
||||||
#[serde(rename = "None")]
|
#[serde(rename = "None")]
|
||||||
None,
|
None,
|
||||||
@@ -7833,7 +7745,6 @@ pub enum TransportStreamTimestamp {
|
|||||||
}
|
}
|
||||||
/// Enum TrickplayScanBehavior.
|
/// Enum TrickplayScanBehavior.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum TrickplayScanBehavior {
|
pub enum TrickplayScanBehavior {
|
||||||
#[serde(rename = "Blocking")]
|
#[serde(rename = "Blocking")]
|
||||||
Blocking,
|
Blocking,
|
||||||
@@ -7842,7 +7753,6 @@ pub enum TrickplayScanBehavior {
|
|||||||
}
|
}
|
||||||
/// An enum representing an unrated item.
|
/// An enum representing an unrated item.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum UnratedItem {
|
pub enum UnratedItem {
|
||||||
#[serde(rename = "Movie")]
|
#[serde(rename = "Movie")]
|
||||||
Movie,
|
Movie,
|
||||||
@@ -7864,7 +7774,6 @@ pub enum UnratedItem {
|
|||||||
Other,
|
Other,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum Video3DFormat {
|
pub enum Video3DFormat {
|
||||||
#[serde(rename = "HalfSideBySide")]
|
#[serde(rename = "HalfSideBySide")]
|
||||||
HalfSideBySide,
|
HalfSideBySide,
|
||||||
@@ -7879,7 +7788,6 @@ pub enum Video3DFormat {
|
|||||||
}
|
}
|
||||||
/// An enum representing video ranges.
|
/// An enum representing video ranges.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum VideoRange {
|
pub enum VideoRange {
|
||||||
#[serde(rename = "Unknown")]
|
#[serde(rename = "Unknown")]
|
||||||
Unknown,
|
Unknown,
|
||||||
@@ -7890,7 +7798,6 @@ pub enum VideoRange {
|
|||||||
}
|
}
|
||||||
/// An enum representing types of video ranges.
|
/// An enum representing types of video ranges.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum VideoRangeType {
|
pub enum VideoRangeType {
|
||||||
#[serde(rename = "Unknown")]
|
#[serde(rename = "Unknown")]
|
||||||
Unknown,
|
Unknown,
|
||||||
@@ -7913,7 +7820,6 @@ pub enum VideoRangeType {
|
|||||||
}
|
}
|
||||||
/// Enum VideoType.
|
/// Enum VideoType.
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum VideoType {
|
pub enum VideoType {
|
||||||
#[serde(rename = "VideoFile")]
|
#[serde(rename = "VideoFile")]
|
||||||
VideoFile,
|
VideoFile,
|
||||||
|
|||||||
@@ -185,6 +185,39 @@ impl JellyfinClient {
|
|||||||
let out: jellyfin::BaseItemDtoQueryResult = serde_json::from_str(&text)?;
|
let out: jellyfin::BaseItemDtoQueryResult = serde_json::from_str(&text)?;
|
||||||
Ok(out.items)
|
Ok(out.items)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub async fn search(&self, query: impl AsRef<str>) -> Result<Vec<jellyfin::BaseItemDto>> {
|
||||||
|
let text = &self
|
||||||
|
.request_builder(Method::GET, "Items/Search")
|
||||||
|
.query(&[("searchTerm", query.as_ref()), ("recursive", "true")])
|
||||||
|
.send()
|
||||||
|
.await?
|
||||||
|
.error_for_status()?
|
||||||
|
.text()
|
||||||
|
.await?;
|
||||||
|
let out: jellyfin::BaseItemDtoQueryResult = serde_json::from_str(&text)?;
|
||||||
|
Ok(out.items)
|
||||||
|
}
|
||||||
|
|
||||||
|
pub async fn thumbnail(
|
||||||
|
&self,
|
||||||
|
item: uuid::Uuid,
|
||||||
|
image_type: jellyfin::ImageType,
|
||||||
|
) -> Result<bytes::Bytes> {
|
||||||
|
let uri = format!(
|
||||||
|
"Items/{}/Images/{}",
|
||||||
|
item,
|
||||||
|
serde_json::to_string(&image_type).expect("Failed to serialize image type")
|
||||||
|
);
|
||||||
|
let bytes = self
|
||||||
|
.request_builder(Method::GET, uri)
|
||||||
|
.send()
|
||||||
|
.await?
|
||||||
|
.error_for_status()?
|
||||||
|
.bytes()
|
||||||
|
.await?;
|
||||||
|
Ok(bytes)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// pub trait Item {
|
// pub trait Item {
|
||||||
|
|||||||
@@ -184,7 +184,6 @@ fn main() {
|
|||||||
quote::quote! {
|
quote::quote! {
|
||||||
#[doc = #desc]
|
#[doc = #desc]
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum #key {
|
pub enum #key {
|
||||||
#(#variants),*
|
#(#variants),*
|
||||||
}
|
}
|
||||||
@@ -192,7 +191,6 @@ fn main() {
|
|||||||
} else {
|
} else {
|
||||||
quote::quote! {
|
quote::quote! {
|
||||||
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
#[serde(rename_all = "PascalCase")]
|
|
||||||
pub enum #key {
|
pub enum #key {
|
||||||
#(#variants),*
|
#(#variants),*
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,12 +6,10 @@ edition = "2024"
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
api = { version = "0.1.0", path = "../api" }
|
api = { version = "0.1.0", path = "../api" }
|
||||||
blurhash = "0.2.3"
|
blurhash = "0.2.3"
|
||||||
|
bytes = "1.11.0"
|
||||||
gpui_util = "0.2.2"
|
gpui_util = "0.2.2"
|
||||||
iced = { git = "https://github.com/iced-rs/iced", features = [
|
iced = { git = "https://github.com/iced-rs/iced", features = ["advanced", "canvas", "image", "sipper", "tokio"] }
|
||||||
"advanced",
|
reqwest = "0.12.24"
|
||||||
"canvas",
|
tap = "1.0.1"
|
||||||
"image",
|
|
||||||
"tokio",
|
|
||||||
] }
|
|
||||||
tracing = "0.1.41"
|
tracing = "0.1.41"
|
||||||
uuid = "1.18.1"
|
uuid = "1.18.1"
|
||||||
|
|||||||
@@ -13,6 +13,17 @@ pub struct BlurHash {
|
|||||||
punch: f32,
|
punch: f32,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl core::fmt::Debug for BlurHash {
|
||||||
|
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
|
||||||
|
f.debug_struct("BlurHash")
|
||||||
|
.field("hash", &self.hash)
|
||||||
|
.field("width", &self.width)
|
||||||
|
.field("height", &self.height)
|
||||||
|
.field("punch", &self.punch)
|
||||||
|
.finish()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl BlurHash {
|
impl BlurHash {
|
||||||
pub fn recompute(&mut self, width: u32, height: u32, punch: f32) {
|
pub fn recompute(&mut self, width: u32, height: u32, punch: f32) {
|
||||||
let pixels = blurhash::decode(&self.hash, width, height, punch)
|
let pixels = blurhash::decode(&self.hash, width, height, punch)
|
||||||
|
|||||||
@@ -4,14 +4,14 @@ use shared_string::SharedString;
|
|||||||
mod blur_hash;
|
mod blur_hash;
|
||||||
use blur_hash::BlurHash;
|
use blur_hash::BlurHash;
|
||||||
|
|
||||||
|
// mod preview;
|
||||||
|
// use preview::Preview;
|
||||||
|
|
||||||
use iced::{Alignment, Element, Length, Task, widget::*};
|
use iced::{Alignment, Element, Length, Task, widget::*};
|
||||||
use std::collections::{BTreeMap, BTreeSet};
|
use std::collections::{BTreeMap, BTreeSet};
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone)]
|
||||||
pub struct Loading {
|
pub struct Loading {}
|
||||||
to: Screen,
|
|
||||||
from: Screen,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Default, Debug, Clone)]
|
#[derive(Default, Debug, Clone)]
|
||||||
pub struct ItemCache {
|
pub struct ItemCache {
|
||||||
@@ -89,8 +89,10 @@ pub struct Item {
|
|||||||
pub enum Screen {
|
pub enum Screen {
|
||||||
#[default]
|
#[default]
|
||||||
Home,
|
Home,
|
||||||
|
Item(Option<uuid::Uuid>),
|
||||||
|
Search(String),
|
||||||
Settings,
|
Settings,
|
||||||
Profile,
|
User,
|
||||||
}
|
}
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone)]
|
||||||
struct State {
|
struct State {
|
||||||
@@ -100,6 +102,7 @@ struct State {
|
|||||||
jellyfin_client: api::JellyfinClient,
|
jellyfin_client: api::JellyfinClient,
|
||||||
messages: Vec<String>,
|
messages: Vec<String>,
|
||||||
history: Vec<Option<uuid::Uuid>>,
|
history: Vec<Option<uuid::Uuid>>,
|
||||||
|
query: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl State {
|
impl State {
|
||||||
@@ -111,6 +114,7 @@ impl State {
|
|||||||
jellyfin_client,
|
jellyfin_client,
|
||||||
messages: Vec::new(),
|
messages: Vec::new(),
|
||||||
history: Vec::new(),
|
history: Vec::new(),
|
||||||
|
query: None,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -119,6 +123,8 @@ impl State {
|
|||||||
pub enum Message {
|
pub enum Message {
|
||||||
OpenSettings,
|
OpenSettings,
|
||||||
Refresh,
|
Refresh,
|
||||||
|
Search,
|
||||||
|
SearchQueryChanged(String),
|
||||||
OpenItem(Option<uuid::Uuid>),
|
OpenItem(Option<uuid::Uuid>),
|
||||||
LoadedItem(Option<uuid::Uuid>, Vec<Item>),
|
LoadedItem(Option<uuid::Uuid>, Vec<Item>),
|
||||||
Error(String),
|
Error(String),
|
||||||
@@ -191,6 +197,23 @@ fn update(state: &mut State, message: Message) -> Task<Message> {
|
|||||||
state.current = None;
|
state.current = None;
|
||||||
Task::done(Message::Refresh)
|
Task::done(Message::Refresh)
|
||||||
}
|
}
|
||||||
|
Message::SearchQueryChanged(query) => {
|
||||||
|
state.query = Some(query);
|
||||||
|
// Handle search query change
|
||||||
|
Task::none()
|
||||||
|
}
|
||||||
|
Message::Search => {
|
||||||
|
// Handle search action
|
||||||
|
let client = state.jellyfin_client.clone();
|
||||||
|
let query = state.query.clone().unwrap_or_default();
|
||||||
|
Task::perform(async move { client.search(query).await }, |r| match r {
|
||||||
|
Err(e) => Message::Error(format!("Search failed: {}", e)),
|
||||||
|
Ok(items) => {
|
||||||
|
let items = items.into_iter().map(Item::from).collect();
|
||||||
|
Message::LoadedItem(None, items)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -231,20 +254,15 @@ fn header(state: &State) -> Element<'_, Message> {
|
|||||||
.align_y(Alignment::Center)
|
.align_y(Alignment::Center)
|
||||||
.style(container::rounded_box)
|
.style(container::rounded_box)
|
||||||
.into(),
|
.into(),
|
||||||
container(
|
search(state),
|
||||||
row([
|
container(row([button("Refresh").on_press(Message::Refresh).into()]).spacing(10))
|
||||||
button("Settings").on_press(Message::OpenSettings).into(),
|
.padding(10)
|
||||||
button("Refresh").on_press(Message::Refresh).into(),
|
.width(Length::Fill)
|
||||||
])
|
.height(Length::Fill)
|
||||||
.spacing(10),
|
.align_x(Alignment::End)
|
||||||
)
|
.align_y(Alignment::Center)
|
||||||
.padding(10)
|
.style(container::rounded_box)
|
||||||
.width(Length::Fill)
|
.into(),
|
||||||
.height(Length::Fill)
|
|
||||||
.align_x(Alignment::End)
|
|
||||||
.align_y(Alignment::Center)
|
|
||||||
.style(container::rounded_box)
|
|
||||||
.into(),
|
|
||||||
])
|
])
|
||||||
.align_y(Alignment::Center)
|
.align_y(Alignment::Center)
|
||||||
.width(Length::Fill)
|
.width(Length::Fill)
|
||||||
@@ -252,6 +270,22 @@ fn header(state: &State) -> Element<'_, Message> {
|
|||||||
.into()
|
.into()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn search(state: &State) -> Element<'_, Message> {
|
||||||
|
container(
|
||||||
|
TextInput::new("Search...", state.query.as_deref().unwrap_or_default())
|
||||||
|
.padding(10)
|
||||||
|
.size(16)
|
||||||
|
.width(Length::Fill)
|
||||||
|
.on_input(Message::SearchQueryChanged)
|
||||||
|
.on_submit(Message::Search),
|
||||||
|
)
|
||||||
|
.padding(10)
|
||||||
|
.width(Length::Fill)
|
||||||
|
.height(Length::Shrink)
|
||||||
|
.style(container::rounded_box)
|
||||||
|
.into()
|
||||||
|
}
|
||||||
|
|
||||||
fn footer(state: &State) -> Element<'_, Message> {
|
fn footer(state: &State) -> Element<'_, Message> {
|
||||||
container(
|
container(
|
||||||
column(
|
column(
|
||||||
|
|||||||
105
ui-iced/src/preview.rs
Normal file
105
ui-iced/src/preview.rs
Normal file
@@ -0,0 +1,105 @@
|
|||||||
|
use iced::{Animation, advanced::image::Handle, widget::image};
|
||||||
|
use reqwest::Method;
|
||||||
|
use std::sync::Arc;
|
||||||
|
|
||||||
|
use crate::blur_hash::BlurHash;
|
||||||
|
|
||||||
|
#[derive(Clone)]
|
||||||
|
pub struct ImageDownloader {
|
||||||
|
client: reqwest::Client,
|
||||||
|
request_modifier:
|
||||||
|
Option<Arc<dyn Fn(reqwest::RequestBuilder) -> reqwest::RequestBuilder + Send + Sync>>,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl ImageDownloader {
|
||||||
|
pub fn new() -> Self {
|
||||||
|
Self {
|
||||||
|
client: reqwest::Client::new(),
|
||||||
|
request_modifier: None,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn with_modifier<F>(mut self, f: F) -> Self
|
||||||
|
where
|
||||||
|
F: Fn(reqwest::RequestBuilder) -> reqwest::RequestBuilder + Send + Sync + 'static,
|
||||||
|
{
|
||||||
|
self.request_modifier = Some(Arc::new(f));
|
||||||
|
self
|
||||||
|
}
|
||||||
|
|
||||||
|
pub async fn download(&self, url: &str) -> reqwest::Result<bytes::Bytes> {
|
||||||
|
use ::tap::*;
|
||||||
|
let response = self
|
||||||
|
.client
|
||||||
|
.request(Method::GET, url)
|
||||||
|
.pipe(|builder| {
|
||||||
|
if let Some(ref modifier) = self.request_modifier {
|
||||||
|
modifier(builder)
|
||||||
|
} else {
|
||||||
|
builder
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.send()
|
||||||
|
.await?;
|
||||||
|
let bytes = response.bytes().await?;
|
||||||
|
Ok(bytes)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Clone, Debug)]
|
||||||
|
pub enum Preview {
|
||||||
|
Thumbnail {
|
||||||
|
thumbnail: Image,
|
||||||
|
blur_hash: BlurHash,
|
||||||
|
},
|
||||||
|
BlurHash {
|
||||||
|
blur_hash: BlurHash,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
// impl Preview {
|
||||||
|
// pub fn thumbnail(image: Image, blur_hash: BlurHash) -> Self {
|
||||||
|
// Preview::Thumbnail {
|
||||||
|
// thumbnail: image,
|
||||||
|
// blur_hash,
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// pub fn blur_hash(blur_hash: BlurHash) -> Self {
|
||||||
|
// Preview::BlurHash { blur_hash }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// pub fn upgrade(
|
||||||
|
// self,
|
||||||
|
// fut: impl core::future::Future<Output = bytes::Bytes> + 'static + Send,
|
||||||
|
// ) -> iced::Task<PreviewMessage> {
|
||||||
|
// // let sip = iced::task::sipper(async move |mut sender| {
|
||||||
|
// // let bytes = fut.await;
|
||||||
|
// // let handle = Handle::from_bytes(bytes.clone());
|
||||||
|
// // let allocation = image::allocate(handle);
|
||||||
|
// // let image = Image {
|
||||||
|
// // bytes,
|
||||||
|
// // handle,
|
||||||
|
// // allocation,
|
||||||
|
// // fade_in: Animation::new(false),
|
||||||
|
// // };
|
||||||
|
// // let _ = sender.send(image).await;
|
||||||
|
// // });
|
||||||
|
// // iced::Task::sip(sip, ||)
|
||||||
|
// Task::
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// enum PreviewMessage {
|
||||||
|
// BlurHashLoaded(BlurHash),
|
||||||
|
// ThumbnailLoaded(Image),
|
||||||
|
// ThumbnailAllocated(image::Allocation),
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
#[derive(Clone, Debug)]
|
||||||
|
pub struct Image {
|
||||||
|
bytes: bytes::Bytes,
|
||||||
|
handle: Handle,
|
||||||
|
allocation: image::Allocation,
|
||||||
|
fade_in: Animation<bool>,
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user