linkding/
bookmark_assets.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Serialize, Deserialize, PartialEq, Default)]
4#[serde(rename_all = "snake_case")]
5#[cfg_attr(feature = "ffi", derive(uniffi::Enum))]
6pub enum BookmarkAssetType {
7 Upload,
8 #[default]
9 Snapshot,
10}
11
12#[derive(Debug, Serialize, Deserialize, PartialEq, Default)]
13#[serde(rename_all = "snake_case")]
14#[cfg_attr(feature = "ffi", derive(uniffi::Enum))]
15pub enum BookmarkAssetStatus {
16 #[default]
17 Pending,
18 Complete,
19 Failure,
20}
21
22#[derive(Debug, Serialize, Deserialize)]
23#[cfg_attr(feature = "ffi", derive(uniffi::Record))]
24pub struct BookmarkAsset {
25 pub id: i32,
26 pub bookmark: i32,
27 pub asset_type: BookmarkAssetType,
28 pub date_created: String,
29 pub content_type: String,
30 pub display_name: String,
31 pub status: BookmarkAssetStatus,
32}
33
34#[derive(Debug, Serialize, Deserialize)]
35#[cfg_attr(feature = "ffi", derive(uniffi::Record))]
36pub struct ListBookmarkAssetsResponse {
37 pub count: i32,
38 pub next: Option<String>,
39 pub previous: Option<String>,
40 pub results: Vec<BookmarkAsset>,
41}