about summary refs log tree commit diff
path: root/util/src/lib.rs
diff options
context:
space:
mode:
authorVika <vika@fireburn.ru>2022-05-07 20:28:43 +0300
committerVika <vika@fireburn.ru>2022-05-07 20:28:43 +0300
commit139b7ec10bc7f08dae9bd57eef8eff73fbb22061 (patch)
tree973c4d903e731cb5e38b682f22c38c3da1dbcd92 /util/src/lib.rs
parent0679de841840c74ab49f54905783fac1faf028e1 (diff)
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.
Diffstat (limited to 'util/src/lib.rs')
-rw-r--r--util/src/lib.rs18
1 files changed, 18 insertions, 0 deletions
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<String>,
+    pub microsub: Option<String>,
+}
+
+/// 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,
+}