mirror of https://github.com/realaravinth/gitpad
feat: implement serialization and deserialiation for Gist, GIstPrivacy and GistComments in db_core
parent
18865552e1
commit
44d920f6ea
|
@ -683,6 +683,8 @@ name = "db-core"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-trait",
|
"async-trait",
|
||||||
|
"serde 1.0.136",
|
||||||
|
"serde_json",
|
||||||
"thiserror",
|
"thiserror",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,11 @@ authors = ["realaravinth <realaravinth@batsense.net>"]
|
||||||
[dependencies]
|
[dependencies]
|
||||||
async-trait = "0.1.51"
|
async-trait = "0.1.51"
|
||||||
thiserror = "1.0.30"
|
thiserror = "1.0.30"
|
||||||
|
serde = { version = "1", features = ["derive"]}
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = []
|
default = []
|
||||||
test = []
|
test = []
|
||||||
|
|
||||||
|
[dev-dependencies]
|
||||||
|
serde_json = "1"
|
||||||
|
|
|
@ -14,6 +14,8 @@
|
||||||
//! - [errors](crate::auth): error data structures used in this crate
|
//! - [errors](crate::auth): error data structures used in this crate
|
||||||
//! - [ops](crate::ops): meta operations like connection pool creation, migrations and getting
|
//! - [ops](crate::ops): meta operations like connection pool creation, migrations and getting
|
||||||
//! connection from pool
|
//! connection from pool
|
||||||
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
pub mod errors;
|
pub mod errors;
|
||||||
pub mod ops;
|
pub mod ops;
|
||||||
#[cfg(feature = "test")]
|
#[cfg(feature = "test")]
|
||||||
|
@ -66,7 +68,8 @@ pub struct CreateGist<'a> {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Gist visibility
|
/// Gist visibility
|
||||||
#[derive(Clone, PartialEq, Debug)]
|
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
|
||||||
|
#[serde(rename_all = "lowercase")]
|
||||||
pub enum GistVisibility {
|
pub enum GistVisibility {
|
||||||
/// Everyone can see the gist, will be displayed on /explore and
|
/// Everyone can see the gist, will be displayed on /explore and
|
||||||
/// search engines might index it too
|
/// search engines might index it too
|
||||||
|
@ -109,7 +112,7 @@ impl From<GistVisibility> for String {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Debug)]
|
#[derive(Clone, Debug, Serialize, Deserialize)]
|
||||||
/// Represents a gist
|
/// Represents a gist
|
||||||
pub struct Gist {
|
pub struct Gist {
|
||||||
/// owner of the gist
|
/// owner of the gist
|
||||||
|
@ -126,7 +129,7 @@ pub struct Gist {
|
||||||
pub visibility: GistVisibility,
|
pub visibility: GistVisibility,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Debug)]
|
#[derive(Clone, Debug, Serialize, Deserialize)]
|
||||||
/// Represents a comment on a Gist
|
/// Represents a comment on a Gist
|
||||||
pub struct GistComment {
|
pub struct GistComment {
|
||||||
/// Unique identifier, possible database assigned, auto-incremented ID
|
/// Unique identifier, possible database assigned, auto-incremented ID
|
||||||
|
|
Loading…
Reference in New Issue