A better Rust ATProto crate
at oauth 3.4 kB view raw
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: app.bsky.embed.video 4// 5// This file was automatically generated from Lexicon schemas. 6// Any manual changes will be overwritten on the next regeneration. 7 8#[jacquard_derive::lexicon] 9#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] 10#[serde(rename_all = "camelCase")] 11pub struct Caption<'a> { 12 #[serde(borrow)] 13 pub file: jacquard_common::types::blob::Blob<'a>, 14 pub lang: jacquard_common::types::string::Language, 15} 16 17impl jacquard_common::IntoStatic for Caption<'_> { 18 type Output = Caption<'static>; 19 fn into_static(self) -> Self::Output { 20 Caption { 21 file: self.file.into_static(), 22 lang: self.lang.into_static(), 23 extra_data: self.extra_data.into_static(), 24 } 25 } 26} 27 28#[jacquard_derive::lexicon] 29#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] 30#[serde(rename_all = "camelCase")] 31pub struct Video<'a> { 32 ///Alt text description of the video, for accessibility. 33 #[serde(skip_serializing_if = "std::option::Option::is_none")] 34 #[serde(borrow)] 35 pub alt: std::option::Option<jacquard_common::CowStr<'a>>, 36 #[serde(skip_serializing_if = "std::option::Option::is_none")] 37 #[serde(borrow)] 38 pub aspect_ratio: std::option::Option<crate::app_bsky::embed::AspectRatio<'a>>, 39 #[serde(skip_serializing_if = "std::option::Option::is_none")] 40 #[serde(borrow)] 41 pub captions: std::option::Option<Vec<crate::app_bsky::embed::video::Caption<'a>>>, 42 ///The mp4 video file. May be up to 100mb, formerly limited to 50mb. 43 #[serde(borrow)] 44 pub video: jacquard_common::types::blob::Blob<'a>, 45} 46 47impl jacquard_common::IntoStatic for Video<'_> { 48 type Output = Video<'static>; 49 fn into_static(self) -> Self::Output { 50 Video { 51 alt: self.alt.into_static(), 52 aspect_ratio: self.aspect_ratio.into_static(), 53 captions: self.captions.into_static(), 54 video: self.video.into_static(), 55 extra_data: self.extra_data.into_static(), 56 } 57 } 58} 59 60#[jacquard_derive::lexicon] 61#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] 62#[serde(rename_all = "camelCase")] 63pub struct View<'a> { 64 #[serde(skip_serializing_if = "std::option::Option::is_none")] 65 #[serde(borrow)] 66 pub alt: std::option::Option<jacquard_common::CowStr<'a>>, 67 #[serde(skip_serializing_if = "std::option::Option::is_none")] 68 #[serde(borrow)] 69 pub aspect_ratio: std::option::Option<crate::app_bsky::embed::AspectRatio<'a>>, 70 #[serde(borrow)] 71 pub cid: jacquard_common::types::string::Cid<'a>, 72 #[serde(borrow)] 73 pub playlist: jacquard_common::types::string::Uri<'a>, 74 #[serde(skip_serializing_if = "std::option::Option::is_none")] 75 #[serde(borrow)] 76 pub thumbnail: std::option::Option<jacquard_common::types::string::Uri<'a>>, 77} 78 79impl jacquard_common::IntoStatic for View<'_> { 80 type Output = View<'static>; 81 fn into_static(self) -> Self::Output { 82 View { 83 alt: self.alt.into_static(), 84 aspect_ratio: self.aspect_ratio.into_static(), 85 cid: self.cid.into_static(), 86 playlist: self.playlist.into_static(), 87 thumbnail: self.thumbnail.into_static(), 88 extra_data: self.extra_data.into_static(), 89 } 90 } 91}