2022-03-02 21:12:21 +08:00
|
|
|
syntax = "proto3";
|
2022-06-15 15:13:50 +08:00
|
|
|
import "field.proto";
|
2022-03-02 21:12:21 +08:00
|
|
|
message Grid {
|
2022-03-04 08:22:49 +08:00
|
|
|
string id = 1;
|
2022-03-10 12:01:31 +08:00
|
|
|
repeated FieldOrder field_orders = 2;
|
2022-03-18 17:14:46 +08:00
|
|
|
repeated GridBlockOrder block_orders = 3;
|
2022-03-02 21:12:21 +08:00
|
|
|
}
|
|
|
|
message RowOrder {
|
2022-03-10 12:01:31 +08:00
|
|
|
string row_id = 1;
|
2022-03-13 11:06:28 +08:00
|
|
|
string block_id = 2;
|
2022-03-18 21:04:01 +08:00
|
|
|
int32 height = 3;
|
2022-03-02 21:12:21 +08:00
|
|
|
}
|
2022-03-04 08:22:49 +08:00
|
|
|
message Row {
|
|
|
|
string id = 1;
|
|
|
|
map<string, Cell> cell_by_field_id = 2;
|
2022-03-08 15:25:56 +08:00
|
|
|
int32 height = 3;
|
2022-03-04 08:22:49 +08:00
|
|
|
}
|
2022-03-18 17:14:46 +08:00
|
|
|
message RepeatedRow {
|
|
|
|
repeated Row items = 1;
|
|
|
|
}
|
2022-03-17 17:25:43 +08:00
|
|
|
message RepeatedGridBlock {
|
|
|
|
repeated GridBlock items = 1;
|
|
|
|
}
|
2022-03-18 17:14:46 +08:00
|
|
|
message GridBlockOrder {
|
|
|
|
string block_id = 1;
|
2022-04-10 08:25:01 +08:00
|
|
|
repeated RowOrder row_orders = 2;
|
2022-03-18 17:14:46 +08:00
|
|
|
}
|
2022-04-13 21:26:27 +08:00
|
|
|
message IndexRowOrder {
|
|
|
|
RowOrder row_order = 1;
|
|
|
|
oneof one_of_index { int32 index = 2; };
|
|
|
|
}
|
2022-04-25 08:13:09 +08:00
|
|
|
message UpdatedRowOrder {
|
|
|
|
RowOrder row_order = 1;
|
|
|
|
Row row = 2;
|
|
|
|
}
|
2022-04-13 14:24:54 +08:00
|
|
|
message GridRowsChangeset {
|
2022-04-10 10:31:55 +08:00
|
|
|
string block_id = 1;
|
2022-04-10 14:24:12 +08:00
|
|
|
repeated IndexRowOrder inserted_rows = 2;
|
2022-04-10 10:31:55 +08:00
|
|
|
repeated RowOrder deleted_rows = 3;
|
2022-04-25 08:13:09 +08:00
|
|
|
repeated UpdatedRowOrder updated_rows = 4;
|
2022-04-10 10:31:55 +08:00
|
|
|
}
|
2022-03-17 17:25:43 +08:00
|
|
|
message GridBlock {
|
2022-03-20 17:17:06 +08:00
|
|
|
string id = 1;
|
2022-03-18 21:04:01 +08:00
|
|
|
repeated RowOrder row_orders = 2;
|
2022-03-10 12:01:31 +08:00
|
|
|
}
|
2022-03-04 08:22:49 +08:00
|
|
|
message Cell {
|
2022-03-13 11:06:28 +08:00
|
|
|
string field_id = 1;
|
2022-05-28 15:30:15 +08:00
|
|
|
bytes data = 2;
|
2022-03-02 21:12:21 +08:00
|
|
|
}
|
2022-03-16 21:19:51 +08:00
|
|
|
message RepeatedCell {
|
|
|
|
repeated Cell items = 1;
|
|
|
|
}
|
2022-03-02 22:43:04 +08:00
|
|
|
message CreateGridPayload {
|
|
|
|
string name = 1;
|
|
|
|
}
|
|
|
|
message GridId {
|
|
|
|
string value = 1;
|
|
|
|
}
|
2022-03-17 17:25:43 +08:00
|
|
|
message GridBlockId {
|
|
|
|
string value = 1;
|
|
|
|
}
|
2022-03-16 16:10:35 +08:00
|
|
|
message CreateRowPayload {
|
|
|
|
string grid_id = 1;
|
2022-03-18 17:14:46 +08:00
|
|
|
oneof one_of_start_row_id { string start_row_id = 2; };
|
2022-03-16 16:10:35 +08:00
|
|
|
}
|
2022-03-17 17:25:43 +08:00
|
|
|
message QueryGridBlocksPayload {
|
2022-03-05 17:52:25 +08:00
|
|
|
string grid_id = 1;
|
2022-03-18 17:14:46 +08:00
|
|
|
repeated GridBlockOrder block_orders = 2;
|
|
|
|
}
|
2022-04-13 14:24:54 +08:00
|
|
|
message MoveItemPayload {
|
|
|
|
string grid_id = 1;
|
|
|
|
string item_id = 2;
|
|
|
|
int32 from_index = 3;
|
|
|
|
int32 to_index = 4;
|
|
|
|
MoveItemType ty = 5;
|
|
|
|
}
|
2022-04-11 14:09:50 +08:00
|
|
|
message CellChangeset {
|
|
|
|
string grid_id = 1;
|
|
|
|
string row_id = 2;
|
|
|
|
string field_id = 3;
|
2022-05-11 11:34:13 +08:00
|
|
|
oneof one_of_cell_content_changeset { string cell_content_changeset = 4; };
|
2022-04-11 14:09:50 +08:00
|
|
|
}
|
2022-04-13 14:24:54 +08:00
|
|
|
enum MoveItemType {
|
|
|
|
MoveField = 0;
|
|
|
|
MoveRow = 1;
|
|
|
|
}
|