1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: sh.weaver.embed.records
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 Records<'a> {
21 #[serde(borrow)]
22 pub records: Vec<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 = "sh.weaver.embed.records#viewRecord")]
56 ViewRecord(Box<crate::sh_weaver::embed::records::ViewRecord<'a>>),
57 #[serde(rename = "sh.weaver.embed.records#viewNotFound")]
58 ViewNotFound(Box<crate::sh_weaver::embed::records::ViewNotFound<'a>>),
59 #[serde(rename = "sh.weaver.embed.records#viewBlocked")]
60 ViewBlocked(Box<crate::sh_weaver::embed::records::ViewBlocked<'a>>),
61 #[serde(rename = "sh.weaver.embed.records#viewDetached")]
62 ViewDetached(Box<crate::sh_weaver::embed::records::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 RecordView(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 #[serde(rename = "sh.weaver.embed.records#view")]
198 View(Box<crate::sh_weaver::embed::records::View<'a>>),
199}