jacquard_api/app_bsky/embed/
record.rs

1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: app.bsky.embed.record
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(
10    serde::Serialize,
11    serde::Deserialize,
12    Debug,
13    Clone,
14    PartialEq,
15    Eq,
16    jacquard_derive::IntoStatic,
17    bon::Builder
18)]
19#[serde(rename_all = "camelCase")]
20pub struct Record<'a> {
21    #[serde(borrow)]
22    pub record: crate::com_atproto::repo::strong_ref::StrongRef<'a>,
23}
24
25#[jacquard_derive::lexicon]
26#[derive(
27    serde::Serialize,
28    serde::Deserialize,
29    Debug,
30    Clone,
31    PartialEq,
32    Eq,
33    jacquard_derive::IntoStatic,
34    bon::Builder
35)]
36#[serde(rename_all = "camelCase")]
37pub struct View<'a> {
38    #[serde(borrow)]
39    pub record: ViewUnionRecord<'a>,
40}
41
42#[jacquard_derive::open_union]
43#[derive(
44    serde::Serialize,
45    serde::Deserialize,
46    Debug,
47    Clone,
48    PartialEq,
49    Eq,
50    jacquard_derive::IntoStatic
51)]
52#[serde(tag = "$type")]
53#[serde(bound(deserialize = "'de: 'a"))]
54pub enum ViewUnionRecord<'a> {
55    #[serde(rename = "app.bsky.embed.record#viewRecord")]
56    ViewRecord(Box<crate::app_bsky::embed::record::ViewRecord<'a>>),
57    #[serde(rename = "app.bsky.embed.record#viewNotFound")]
58    ViewNotFound(Box<crate::app_bsky::embed::record::ViewNotFound<'a>>),
59    #[serde(rename = "app.bsky.embed.record#viewBlocked")]
60    ViewBlocked(Box<crate::app_bsky::embed::record::ViewBlocked<'a>>),
61    #[serde(rename = "app.bsky.embed.record#viewDetached")]
62    ViewDetached(Box<crate::app_bsky::embed::record::ViewDetached<'a>>),
63    #[serde(rename = "app.bsky.feed.defs#generatorView")]
64    GeneratorView(Box<crate::app_bsky::feed::GeneratorView<'a>>),
65    #[serde(rename = "app.bsky.graph.defs#listView")]
66    ListView(Box<crate::app_bsky::graph::ListView<'a>>),
67    #[serde(rename = "app.bsky.labeler.defs#labelerView")]
68    LabelerView(Box<crate::app_bsky::labeler::LabelerView<'a>>),
69    #[serde(rename = "app.bsky.graph.defs#starterPackViewBasic")]
70    StarterPackViewBasic(Box<crate::app_bsky::graph::StarterPackViewBasic<'a>>),
71}
72
73#[jacquard_derive::lexicon]
74#[derive(
75    serde::Serialize,
76    serde::Deserialize,
77    Debug,
78    Clone,
79    PartialEq,
80    Eq,
81    jacquard_derive::IntoStatic,
82    bon::Builder
83)]
84#[serde(rename_all = "camelCase")]
85pub struct ViewBlocked<'a> {
86    #[serde(borrow)]
87    pub author: crate::app_bsky::feed::BlockedAuthor<'a>,
88    pub blocked: bool,
89    #[serde(borrow)]
90    pub uri: jacquard_common::types::string::AtUri<'a>,
91}
92
93#[jacquard_derive::lexicon]
94#[derive(
95    serde::Serialize,
96    serde::Deserialize,
97    Debug,
98    Clone,
99    PartialEq,
100    Eq,
101    jacquard_derive::IntoStatic,
102    bon::Builder
103)]
104#[serde(rename_all = "camelCase")]
105pub struct ViewDetached<'a> {
106    pub detached: bool,
107    #[serde(borrow)]
108    pub uri: jacquard_common::types::string::AtUri<'a>,
109}
110
111#[jacquard_derive::lexicon]
112#[derive(
113    serde::Serialize,
114    serde::Deserialize,
115    Debug,
116    Clone,
117    PartialEq,
118    Eq,
119    jacquard_derive::IntoStatic,
120    bon::Builder
121)]
122#[serde(rename_all = "camelCase")]
123pub struct ViewNotFound<'a> {
124    pub not_found: bool,
125    #[serde(borrow)]
126    pub uri: jacquard_common::types::string::AtUri<'a>,
127}
128
129#[jacquard_derive::lexicon]
130#[derive(
131    serde::Serialize,
132    serde::Deserialize,
133    Debug,
134    Clone,
135    PartialEq,
136    Eq,
137    jacquard_derive::IntoStatic,
138    bon::Builder
139)]
140#[serde(rename_all = "camelCase")]
141pub struct ViewRecord<'a> {
142    #[serde(borrow)]
143    pub author: crate::app_bsky::actor::ProfileViewBasic<'a>,
144    #[serde(borrow)]
145    pub cid: jacquard_common::types::string::Cid<'a>,
146    #[serde(skip_serializing_if = "std::option::Option::is_none")]
147    #[builder(into)]
148    #[serde(borrow)]
149    pub embeds: Option<Vec<ViewRecordEmbedsItem<'a>>>,
150    pub indexed_at: jacquard_common::types::string::Datetime,
151    #[serde(skip_serializing_if = "std::option::Option::is_none")]
152    #[builder(into)]
153    #[serde(borrow)]
154    pub labels: Option<Vec<crate::com_atproto::label::Label<'a>>>,
155    #[serde(skip_serializing_if = "std::option::Option::is_none")]
156    #[builder(into)]
157    pub like_count: Option<i64>,
158    #[serde(skip_serializing_if = "std::option::Option::is_none")]
159    #[builder(into)]
160    pub quote_count: Option<i64>,
161    #[serde(skip_serializing_if = "std::option::Option::is_none")]
162    #[builder(into)]
163    pub reply_count: Option<i64>,
164    #[serde(skip_serializing_if = "std::option::Option::is_none")]
165    #[builder(into)]
166    pub repost_count: Option<i64>,
167    #[serde(borrow)]
168    pub uri: jacquard_common::types::string::AtUri<'a>,
169    /// The record data itself.
170    #[serde(borrow)]
171    pub value: jacquard_common::types::value::Data<'a>,
172}
173
174#[jacquard_derive::open_union]
175#[derive(
176    serde::Serialize,
177    serde::Deserialize,
178    Debug,
179    Clone,
180    PartialEq,
181    Eq,
182    jacquard_derive::IntoStatic
183)]
184#[serde(tag = "$type")]
185#[serde(bound(deserialize = "'de: 'a"))]
186pub enum ViewRecordEmbedsItem<'a> {
187    #[serde(rename = "app.bsky.embed.images#view")]
188    ImagesView(Box<crate::app_bsky::embed::images::View<'a>>),
189    #[serde(rename = "app.bsky.embed.video#view")]
190    VideoView(Box<crate::app_bsky::embed::video::View<'a>>),
191    #[serde(rename = "app.bsky.embed.external#view")]
192    ExternalView(Box<crate::app_bsky::embed::external::View<'a>>),
193    #[serde(rename = "app.bsky.embed.record#view")]
194    View(Box<crate::app_bsky::embed::record::View<'a>>),
195    #[serde(rename = "app.bsky.embed.recordWithMedia#view")]
196    RecordWithMediaView(Box<crate::app_bsky::embed::record_with_media::View<'a>>),
197}