use std::{ops::{Deref, DerefMut}, sync::Arc}; use jid::BareJID; use leptos::prelude::*; use crate::files::Files; #[derive(Clone)] pub struct Client { // TODO: not pub pub client: filamento::Client, pub resource: ArcRwSignal>, pub jid: Arc, pub file_store: Files, } impl Deref for Client { type Target = filamento::Client; fn deref(&self) -> &Self::Target { &self.client } } impl DerefMut for Client { fn deref_mut(&mut self) -> &mut Self::Target { &mut self.client } }