77 lines
1.4 KiB
Protocol Buffer
Raw Normal View History

2022-03-02 21:12:21 +08:00
syntax = "proto3";
message Grid {
string grid_id = 1;
RepeatedGridFilter filters = 2;
RepeatedFieldOrder field_orders = 3;
RepeatedRowOrder row_orders = 4;
}
message GridFilter {
string id = 1;
string name = 2;
string desc = 3;
}
message RepeatedGridFilter {
repeated GridFilter items = 1;
}
message FieldOrder {
string field_id = 1;
bool visibility = 2;
}
message RepeatedFieldOrder {
repeated FieldOrder items = 1;
}
message Field {
string id = 1;
string name = 2;
string desc = 3;
FieldType field_type = 4;
bool frozen = 5;
2022-03-03 22:17:07 +08:00
int32 width = 6;
AnyData type_options = 7;
}
message RepeatedField {
repeated Field items = 1;
2022-03-02 21:12:21 +08:00
}
message AnyData {
2022-03-03 22:17:07 +08:00
string type_id = 1;
2022-03-02 21:12:21 +08:00
bytes value = 2;
}
message RowOrder {
string grid_id = 1;
string row_id = 2;
bool visibility = 3;
}
message RepeatedRowOrder {
repeated RowOrder items = 1;
}
2022-03-03 22:17:07 +08:00
message GridRow {
2022-03-02 21:12:21 +08:00
string id = 1;
string grid_id = 2;
int64 modified_time = 3;
2022-03-03 22:17:07 +08:00
map<string, GridCell> cell_by_field_id = 4;
}
message RepeatedRow {
repeated GridRow items = 1;
2022-03-02 21:12:21 +08:00
}
2022-03-03 22:17:07 +08:00
message GridCell {
2022-03-02 21:12:21 +08:00
string id = 1;
string row_id = 2;
string field_id = 3;
2022-03-03 22:17:07 +08:00
string content = 4;
2022-03-02 21:12:21 +08:00
}
2022-03-02 22:43:04 +08:00
message CreateGridPayload {
string name = 1;
}
message GridId {
string value = 1;
}
2022-03-02 21:12:21 +08:00
enum FieldType {
RichText = 0;
Number = 1;
DateTime = 2;
SingleSelect = 3;
MultiSelect = 4;
Checkbox = 5;
}