yggdrasil/api/assets/
mod.rs1#![allow(clippy::unused_unit, deprecated, unused_imports)]
8
9#[cfg(feature = "server")]
14pub(crate) const ASSET_REF_CLAUSE: &str =
15 "(EXISTS (SELECT 1 FROM asset_refs r WHERE r.asset_id = a.id) \
16 OR EXISTS (SELECT 1 FROM note_asset_refs r WHERE r.asset_id = a.id) \
17 OR EXISTS (SELECT 1 FROM comment_asset_refs r WHERE r.asset_id = a.id) \
18 OR EXISTS (SELECT 1 FROM user_avatar_asset_refs r WHERE r.asset_id = a.id) \
19 OR EXISTS (SELECT 1 FROM friend_avatar_asset_refs r WHERE r.asset_id = a.id))";
20
21#[cfg(feature = "server")]
23pub(crate) const COMMENT_REF_CLAUSE: &str =
24 "EXISTS (SELECT 1 FROM comment_asset_refs r WHERE r.asset_id = a.id)";
25
26#[cfg(feature = "server")]
28pub(crate) const AVATAR_REF_CLAUSE: &str =
29 "(EXISTS (SELECT 1 FROM user_avatar_asset_refs r WHERE r.asset_id = a.id) \
30 OR EXISTS (SELECT 1 FROM friend_avatar_asset_refs r WHERE r.asset_id = a.id))";
31
32pub mod delete;
34pub mod list;
36pub mod rebuild;
38#[cfg(feature = "server")]
40pub(crate) mod refs;
41pub mod types;
43
44pub use delete::{batch_delete_assets, delete_asset, purge_orphan_assets, update_asset_alt};
45pub use list::list_assets;
46pub use rebuild::rebuild_assets_index;
47pub use types::{
48 AssetListResponse, AssetOpResponse, BatchDeleteAssetsResponse, PurgeOrphansResponse,
49 RebuildAssetsResponse,
50};