use flowy_grid_data_model::revision::{FieldTypeRevision, LayoutRevision}; pub struct GridSettingChangesetParams { pub grid_id: String, pub layout_type: LayoutRevision, pub insert_filter: Option, pub delete_filter: Option, pub insert_group: Option, pub delete_group: Option, pub insert_sort: Option, pub delete_sort: Option, } impl GridSettingChangesetParams { pub fn is_filter_changed(&self) -> bool { self.insert_filter.is_some() || self.delete_filter.is_some() } } pub struct CreateGridFilterParams { pub field_id: String, pub field_type_rev: FieldTypeRevision, pub condition: u8, pub content: Option, } pub struct DeleteFilterParams { pub field_id: String, pub filter_id: String, pub field_type_rev: FieldTypeRevision, } pub struct CreateGridGroupParams { pub field_id: String, pub field_type_rev: FieldTypeRevision, pub content: Option>, } pub struct DeleteGroupParams { pub field_id: String, pub group_id: String, pub field_type_rev: FieldTypeRevision, } pub struct CreateGridSortParams { pub field_id: Option, } #[derive(Debug, Clone, Default)] pub struct FieldChangesetParams { pub field_id: String, pub grid_id: String, pub name: Option, pub desc: Option, pub field_type: Option, pub frozen: Option, pub visibility: Option, pub width: Option, pub type_option_data: Option>, }