use crate::entities::{InsertedRowPB, RowPB}; use flowy_derive::ProtoBuf; #[derive(Debug, Default, ProtoBuf)] pub struct GroupRowsChangesetPB { #[pb(index = 1)] pub group_id: String, #[pb(index = 2)] pub inserted_rows: Vec, #[pb(index = 3)] pub deleted_rows: Vec, #[pb(index = 4)] pub updated_rows: Vec, } impl GroupRowsChangesetPB { pub fn insert(group_id: String, inserted_rows: Vec) -> Self { Self { group_id, inserted_rows, ..Default::default() } } pub fn delete(group_id: String, deleted_rows: Vec) -> Self { Self { group_id, deleted_rows, ..Default::default() } } pub fn update(group_id: String, updated_rows: Vec) -> Self { Self { group_id, updated_rows, ..Default::default() } } }