diff options
Diffstat (limited to 'lib/src/profile/mod.rs')
-rw-r--r-- | lib/src/profile/mod.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/src/profile/mod.rs b/lib/src/profile/mod.rs index db3c593..050d53d 100644 --- a/lib/src/profile/mod.rs +++ b/lib/src/profile/mod.rs @@ -66,6 +66,19 @@ impl Profile { self.client.connect(peer).await } + pub async fn post_text(&mut self, text: String) -> Result<cid::Cid> { + let parent = self.state + .profile_head() + .as_ref() + .map(cid::Cid::clone) + .into_iter() + .collect::<Vec<cid::Cid>>(); + + let new_cid = self.client.post_text_node(parent, text).await?; + self.state.update_head(new_cid.clone())?; + Ok(new_cid) + } + async fn ipfs_path(state_dir: &StateDir) -> Result<PathBuf> { let path = state_dir.ipfs(); tokio::fs::create_dir_all(&path).await?; |