mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2024-08-30 18:12:39 +00:00
chore: remove grid block from dart side
This commit is contained in:
@ -30,11 +30,7 @@ impl GridBlockMetaPad {
|
||||
CollaborateError::internal().context(msg)
|
||||
})?;
|
||||
let block_id = meta_data.block_id;
|
||||
let rows = meta_data
|
||||
.row_metas
|
||||
.into_iter()
|
||||
.map(Arc::new)
|
||||
.collect::<Vec<Arc<RowMeta>>>();
|
||||
let rows = meta_data.rows.into_iter().map(Arc::new).collect::<Vec<Arc<RowMeta>>>();
|
||||
Ok(Self {
|
||||
block_id,
|
||||
row_metas: rows,
|
||||
@ -215,13 +211,13 @@ impl std::default::Default for GridBlockMetaPad {
|
||||
fn default() -> Self {
|
||||
let block_meta_data = GridBlockMetaData {
|
||||
block_id: uuid(),
|
||||
row_metas: vec![],
|
||||
rows: vec![],
|
||||
};
|
||||
|
||||
let delta = make_block_meta_delta(&block_meta_data);
|
||||
GridBlockMetaPad {
|
||||
block_id: block_meta_data.block_id,
|
||||
row_metas: block_meta_data.row_metas.into_iter().map(Arc::new).collect::<Vec<_>>(),
|
||||
row_metas: block_meta_data.rows.into_iter().map(Arc::new).collect::<Vec<_>>(),
|
||||
delta,
|
||||
}
|
||||
}
|
||||
|
@ -14,7 +14,7 @@ impl GridBuilder {
|
||||
|
||||
pub fn add_empty_row(mut self) -> Self {
|
||||
let row = RowMeta::new(&self.build_context.block_metas.block_id);
|
||||
self.build_context.block_meta_data.row_metas.push(row);
|
||||
self.build_context.block_meta_data.rows.push(row);
|
||||
self.build_context.block_metas.row_count += 1;
|
||||
self
|
||||
}
|
||||
@ -57,7 +57,7 @@ mod tests {
|
||||
let grid_meta = GridMeta {
|
||||
grid_id,
|
||||
fields: build_context.field_metas,
|
||||
block_metas: vec![build_context.block_metas],
|
||||
blocks: vec![build_context.block_metas],
|
||||
};
|
||||
|
||||
let grid_meta_delta = make_grid_delta(&grid_meta);
|
||||
|
@ -235,12 +235,12 @@ impl GridMetaPad {
|
||||
|
||||
pub fn create_block_meta(&mut self, block: GridBlockMeta) -> CollaborateResult<Option<GridChangeset>> {
|
||||
self.modify_grid(|grid_meta| {
|
||||
if grid_meta.block_metas.iter().any(|b| b.block_id == block.block_id) {
|
||||
if grid_meta.blocks.iter().any(|b| b.block_id == block.block_id) {
|
||||
tracing::warn!("Duplicate grid block");
|
||||
Ok(None)
|
||||
} else {
|
||||
match grid_meta.block_metas.last() {
|
||||
None => grid_meta.block_metas.push(block),
|
||||
match grid_meta.blocks.last() {
|
||||
None => grid_meta.blocks.push(block),
|
||||
Some(last_block) => {
|
||||
if last_block.start_row_index > block.start_row_index
|
||||
&& last_block.len() > block.start_row_index
|
||||
@ -248,7 +248,7 @@ impl GridMetaPad {
|
||||
let msg = "GridBlock's start_row_index should be greater than the last_block's start_row_index and its len".to_string();
|
||||
return Err(CollaborateError::internal().context(msg))
|
||||
}
|
||||
grid_meta.block_metas.push(block);
|
||||
grid_meta.blocks.push(block);
|
||||
}
|
||||
}
|
||||
Ok(Some(()))
|
||||
@ -257,7 +257,7 @@ impl GridMetaPad {
|
||||
}
|
||||
|
||||
pub fn get_block_metas(&self) -> Vec<GridBlockMeta> {
|
||||
self.grid_meta.block_metas.clone()
|
||||
self.grid_meta.blocks.clone()
|
||||
}
|
||||
|
||||
pub fn update_block_meta(&mut self, changeset: GridBlockMetaChangeset) -> CollaborateResult<Option<GridChangeset>> {
|
||||
@ -320,19 +320,15 @@ impl GridMetaPad {
|
||||
where
|
||||
F: FnOnce(&mut GridBlockMeta) -> CollaborateResult<Option<()>>,
|
||||
{
|
||||
self.modify_grid(|grid_meta| {
|
||||
match grid_meta
|
||||
.block_metas
|
||||
.iter()
|
||||
.position(|block| block.block_id == block_id)
|
||||
{
|
||||
self.modify_grid(
|
||||
|grid_meta| match grid_meta.blocks.iter().position(|block| block.block_id == block_id) {
|
||||
None => {
|
||||
tracing::warn!("[GridMetaPad]: Can't find any block with id: {}", block_id);
|
||||
Ok(None)
|
||||
}
|
||||
Some(index) => f(&mut grid_meta.block_metas[index]),
|
||||
}
|
||||
})
|
||||
Some(index) => f(&mut grid_meta.blocks[index]),
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
pub fn modify_field<F>(&mut self, field_id: &str, f: F) -> CollaborateResult<Option<GridChangeset>>
|
||||
@ -380,7 +376,7 @@ impl std::default::Default for GridMetaPad {
|
||||
let grid = GridMeta {
|
||||
grid_id: uuid(),
|
||||
fields: vec![],
|
||||
block_metas: vec![],
|
||||
blocks: vec![],
|
||||
};
|
||||
let delta = make_grid_delta(&grid);
|
||||
GridMetaPad {
|
||||
|
Reference in New Issue
Block a user