signer-daemon 0.2.1

Signer daemon package.
Documentation
use serde::{Deserialize, Serialize};

use crate::entity::crdt_event;

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CrdtEventVO {
  pub clock: i32,
  pub peer: String,
  pub payload: String,
  pub revert: Option<String>,
}

impl From<crdt_event::Model> for CrdtEventVO {
  fn from(value: crdt_event::Model) -> Self {
    Self {
      clock: value.clock,
      peer: value.peer,
      payload: value.payload,
      revert: value.revert,
    }
  }
}

impl Into<crdt_event::Model> for CrdtEventVO {
  fn into(self) -> crdt_event::Model {
    crdt_event::Model {
      clock: self.clock,
      peer: self.peer,
      payload: self.payload,
      revert: self.revert.map(|d| serde_json::to_string(&d).unwrap()),
    }
  }
}