From 139b7ec10bc7f08dae9bd57eef8eff73fbb22061 Mon Sep 17 00:00:00 2001 From: Vika Date: Sat, 7 May 2022 20:28:43 +0300 Subject: Split into different crates Templates and utility types are now separate crates to speed up compilation, linting and potential reuse/replacement. Potentially more crates could be split out/modularized, resulting in speedups, smaller binaries (whenever features are excluded) and even more reuse capabilities. --- util/Cargo.toml | 12 ++++++++++++ util/src/lib.rs | 18 ++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 util/Cargo.toml create mode 100644 util/src/lib.rs (limited to 'util') diff --git a/util/Cargo.toml b/util/Cargo.toml new file mode 100644 index 0000000..31c6bca --- /dev/null +++ b/util/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "kittybox-util" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +[dependencies.serde] # A generic serialization/deserialization framework +version = "^1.0.125" +features = ["derive"] + diff --git a/util/src/lib.rs b/util/src/lib.rs new file mode 100644 index 0000000..bc41689 --- /dev/null +++ b/util/src/lib.rs @@ -0,0 +1,18 @@ +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Serialize, Deserialize)] +pub struct IndiewebEndpoints { + pub authorization_endpoint: String, + pub token_endpoint: String, + pub webmention: Option, + pub microsub: Option, +} + +/// Data structure representing a Micropub channel in the ?q=channels output. +#[derive(Serialize, Deserialize, PartialEq, Debug)] +pub struct MicropubChannel { + /// The channel's UID. It is usually also a publically accessible permalink URL. + pub uid: String, + /// The channel's user-friendly name used to recognize it in lists. + pub name: String, +} -- cgit 1.4.1