summaryrefslogtreecommitdiff
path: root/table.proto
blob: c84126247536254836975b4332c0dde47a9b6098 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
syntax = "proto3";

// playing around with ideas here

package gitpb;

import "google/protobuf/timestamp.proto"; // Import the well-known type for Timestamp
// import "google/protobuf/any.proto"; // Import 'Any'
import "widget.proto"; // Import the well-known type for Timestamp


message StringRow {
        Widget               header         = 1;  //
        repeated string      vals           = 2;  //
        repeated Widget      widgets        = 3;  //
}

message IntRow {
        Widget               header         = 1;  //
        repeated int64       vals           = 2;  //
        repeated Widget      widgets        = 3;  //
}

message TimeRow {
        Widget               header         = 1;  //
        repeated Widget      widgets        = 2;  //
}

message BoolRow {
        Widget               header         = 1;  //
        repeated Widget      widgets        = 2;  //
}

message Table {                                   // `autogenpb:marshal`
        string               title          = 1;
        Widget               window         = 2;  //
        Widget               grid           = 3;  //
        repeated string      order          = 4;
        repeated StringRow   StringRows     = 5;
        repeated IntRow      IntRows        = 6;
        repeated TimeRow     TimeRows       = 7;
        repeated BoolRow     BoolRows       = 8;
}

message Tables {                                  // `autogenpb:marshal`
        string               uuid           = 1;  // `autogenpb:uuid:c328aa62-3c4f-4d00-9244-cc44ae75ab1b`
        string               version        = 2;  // `autogenpb:version:v1`
        repeated Table       Tables         = 3;
}