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}