use remote_events::events::{FromSocketMessage, ToSocketMessage}; use serde::{Deserialize, Serialize}; #[derive(Clone, Copy, Debug, Default, Serialize, Deserialize)] #[serde(tag = "type")] pub enum IncomingEvent { #[default] Void, } impl FromSocketMessage for IncomingEvent { fn from_text(value: String) -> Self { serde_json::from_str(value.as_str()).unwrap_or_default() } fn from_binary(value: Vec<u8>) -> Self { serde_json::from_slice(value.as_slice()).unwrap_or_default() } } #[derive(Clone, Copy, Debug, Default, Serialize, Deserialize)] pub enum OutgoingEvent { #[default] Void, } impl ToSocketMessage for OutgoingEvent { fn to_text(&self) -> String { serde_json::to_string(&self).unwrap_or(String::from("{}")) } }