1pub mod book;
9pub mod buzz;
10pub mod get_book;
11pub mod get_profile;
12pub mod hive_book;
13pub mod search_books;
14
15#[derive(
17 serde::Serialize,
18 serde::Deserialize,
19 Debug,
20 Clone,
21 PartialEq,
22 Eq,
23 Hash,
24 jacquard_derive::IntoStatic
25)]
26pub struct Abandoned;
27impl std::fmt::Display for Abandoned {
28 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
29 write!(f, "abandoned")
30 }
31}
32
33#[jacquard_derive::lexicon]
34#[derive(
35 serde::Serialize,
36 serde::Deserialize,
37 Debug,
38 Clone,
39 PartialEq,
40 Eq,
41 jacquard_derive::IntoStatic
42)]
43#[serde(rename_all = "camelCase")]
44pub struct Activity<'a> {
45 pub created_at: jacquard_common::types::string::Datetime,
46 #[serde(borrow)]
48 pub hive_id: jacquard_common::CowStr<'a>,
49 #[serde(borrow)]
51 pub title: jacquard_common::CowStr<'a>,
52 #[serde(borrow)]
53 pub r#type: jacquard_common::CowStr<'a>,
54}
55
56#[jacquard_derive::lexicon]
57#[derive(
58 serde::Serialize,
59 serde::Deserialize,
60 Debug,
61 Clone,
62 PartialEq,
63 Eq,
64 jacquard_derive::IntoStatic
65)]
66#[serde(rename_all = "camelCase")]
67pub struct Comment<'a> {
68 #[serde(borrow)]
69 pub book: crate::com_atproto::repo::strong_ref::StrongRef<'a>,
70 #[serde(borrow)]
72 pub comment: jacquard_common::CowStr<'a>,
73 pub created_at: jacquard_common::types::string::Datetime,
75 #[serde(borrow)]
77 pub did: jacquard_common::CowStr<'a>,
78 #[serde(borrow)]
80 pub handle: jacquard_common::CowStr<'a>,
81 #[serde(borrow)]
82 pub parent: crate::com_atproto::repo::strong_ref::StrongRef<'a>,
83}
84
85#[derive(
87 serde::Serialize,
88 serde::Deserialize,
89 Debug,
90 Clone,
91 PartialEq,
92 Eq,
93 Hash,
94 jacquard_derive::IntoStatic
95)]
96pub struct Finished;
97impl std::fmt::Display for Finished {
98 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
99 write!(f, "finished")
100 }
101}
102
103#[derive(
105 serde::Serialize,
106 serde::Deserialize,
107 Debug,
108 Clone,
109 PartialEq,
110 Eq,
111 Hash,
112 jacquard_derive::IntoStatic
113)]
114pub struct Owned;
115impl std::fmt::Display for Owned {
116 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
117 write!(f, "owned")
118 }
119}
120
121#[jacquard_derive::lexicon]
122#[derive(
123 serde::Serialize,
124 serde::Deserialize,
125 Debug,
126 Clone,
127 PartialEq,
128 Eq,
129 jacquard_derive::IntoStatic
130)]
131#[serde(rename_all = "camelCase")]
132pub struct Profile<'a> {
133 #[serde(skip_serializing_if = "std::option::Option::is_none")]
134 #[serde(borrow)]
135 pub avatar: std::option::Option<jacquard_common::CowStr<'a>>,
136 pub books_read: i64,
137 #[serde(skip_serializing_if = "std::option::Option::is_none")]
138 #[serde(borrow)]
139 pub description: std::option::Option<jacquard_common::CowStr<'a>>,
140 #[serde(borrow)]
141 pub display_name: jacquard_common::CowStr<'a>,
142 #[serde(borrow)]
143 pub handle: jacquard_common::CowStr<'a>,
144 pub reviews: i64,
145}
146
147#[derive(
149 serde::Serialize,
150 serde::Deserialize,
151 Debug,
152 Clone,
153 PartialEq,
154 Eq,
155 Hash,
156 jacquard_derive::IntoStatic
157)]
158pub struct Reading;
159impl std::fmt::Display for Reading {
160 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
161 write!(f, "reading")
162 }
163}
164
165#[jacquard_derive::lexicon]
166#[derive(
167 serde::Serialize,
168 serde::Deserialize,
169 Debug,
170 Clone,
171 PartialEq,
172 Eq,
173 jacquard_derive::IntoStatic
174)]
175#[serde(rename_all = "camelCase")]
176pub struct Review<'a> {
177 pub created_at: jacquard_common::types::string::Datetime,
179 #[serde(borrow)]
181 pub did: jacquard_common::CowStr<'a>,
182 #[serde(borrow)]
184 pub handle: jacquard_common::CowStr<'a>,
185 #[serde(borrow)]
187 pub review: jacquard_common::CowStr<'a>,
188 #[serde(skip_serializing_if = "std::option::Option::is_none")]
190 pub stars: std::option::Option<i64>,
191}
192
193#[jacquard_derive::lexicon]
194#[derive(
195 serde::Serialize,
196 serde::Deserialize,
197 Debug,
198 Clone,
199 PartialEq,
200 Eq,
201 jacquard_derive::IntoStatic
202)]
203#[serde(rename_all = "camelCase")]
204pub struct UserBook<'a> {
205 #[serde(borrow)]
207 pub authors: jacquard_common::CowStr<'a>,
208 #[serde(skip_serializing_if = "std::option::Option::is_none")]
210 #[serde(borrow)]
211 pub cover: std::option::Option<jacquard_common::CowStr<'a>>,
212 pub created_at: jacquard_common::types::string::Datetime,
213 #[serde(skip_serializing_if = "std::option::Option::is_none")]
215 #[serde(borrow)]
216 pub description: std::option::Option<jacquard_common::CowStr<'a>>,
217 #[serde(skip_serializing_if = "std::option::Option::is_none")]
219 pub finished_at: std::option::Option<jacquard_common::types::string::Datetime>,
220 #[serde(borrow)]
222 pub hive_id: jacquard_common::CowStr<'a>,
223 #[serde(skip_serializing_if = "std::option::Option::is_none")]
225 pub rating: std::option::Option<i64>,
226 #[serde(skip_serializing_if = "std::option::Option::is_none")]
228 #[serde(borrow)]
229 pub review: std::option::Option<jacquard_common::CowStr<'a>>,
230 #[serde(skip_serializing_if = "std::option::Option::is_none")]
232 pub stars: std::option::Option<i64>,
233 #[serde(skip_serializing_if = "std::option::Option::is_none")]
235 pub started_at: std::option::Option<jacquard_common::types::string::Datetime>,
236 #[serde(skip_serializing_if = "std::option::Option::is_none")]
237 #[serde(borrow)]
238 pub status: std::option::Option<jacquard_common::CowStr<'a>>,
239 #[serde(borrow)]
241 pub thumbnail: jacquard_common::CowStr<'a>,
242 #[serde(borrow)]
244 pub title: jacquard_common::CowStr<'a>,
245}
246
247#[derive(
249 serde::Serialize,
250 serde::Deserialize,
251 Debug,
252 Clone,
253 PartialEq,
254 Eq,
255 Hash,
256 jacquard_derive::IntoStatic
257)]
258pub struct WantToRead;
259impl std::fmt::Display for WantToRead {
260 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
261 write!(f, "wantToRead")
262 }
263}