MCPcopy Create free account
hub / github.com/AppFlowy-IO/AppFlowy-Collab / build

Method build

collab/src/database/template/builder.rs:82–126  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

80 }
81
82 pub fn build(self) -> DatabaseTemplate {
83 let fields = self.fields;
84
85 let num_rows = self
86 .columns
87 .iter()
88 .map(|column| column.len())
89 .max()
90 .unwrap_or(0);
91
92 let mut rows = Vec::with_capacity(num_rows);
93 for _ in 0..num_rows {
94 rows.push(RowTemplate {
95 row_id: gen_row_id().to_string(),
96 height: 60,
97 visibility: true,
98 cells: Default::default(),
99 });
100 }
101
102 for (field_index, row) in self.columns.into_iter().enumerate() {
103 for (row_index, cell) in row.into_iter().enumerate() {
104 rows[row_index]
105 .cells
106 .insert(fields[field_index].field_id.clone(), cell);
107 }
108 }
109
110 let views = vec![DatabaseViewTemplate {
111 name: "".to_string(),
112 layout: DatabaseLayout::Grid,
113 layout_settings: Default::default(),
114 filters: vec![],
115 group_settings: vec![],
116 sorts: vec![],
117 }];
118
119 DatabaseTemplate {
120 database_id: self.database_id,
121 view_id: self.view_id,
122 fields,
123 rows,
124 views,
125 }
126 }
127}
128
129pub struct FieldTemplateBuilder {

Callers 3

replace_cells_with_filesFunction · 0.45
create_fieldMethod · 0.45

Calls 10

gen_row_idFunction · 0.85
build_options_from_cellsFunction · 0.85
new_cell_builderFunction · 0.85
string_cell_templateFunction · 0.85
replace_cells_with_filesFunction · 0.85
into_iterMethod · 0.80
pushMethod · 0.45
insertMethod · 0.45

Tested by

no test coverage detected