syntax = "proto3"; package render; option go_package = "github.com/limpidchart/lc-proto/render/v0;render"; import "google/protobuf/wrappers.proto"; // ChartScale represents options to configure chart scale. message ChartScale { // ChartScaleKind contains available scale kinds. enum ChartScaleKind { UNSPECIFIED_SCALE = 0; LINEAR = 1; BAND = 2; } // One of the available scale kinds. ChartScaleKind kind = 1; // Start of the scale range. google.protobuf.Int32Value range_start = 2; // End of the scale range. google.protobuf.Int32Value range_end = 3; // Scale domain with one of available kind. oneof domain { // Numeric scale domain. DomainNumeric domain_numeric = 4; // String scale domain categories. DomainCategories domain_categories = 5; } // Does this scale needs an offset from the start and end of an axis. // This is usually need for an area or line views. bool no_boundaries_offset = 7; // Inner padding for categories. google.protobuf.FloatValue inner_padding = 8; // Outer padding for categories. google.protobuf.FloatValue outer_padding = 9; } // DomainNumeric represents numeric scale domain. message DomainNumeric { // Start of the numeric scale domain. float start = 1; // End of the numeric scale domain. float end = 2; } // DomainCategories represents string categorical scale domain. message DomainCategories { repeated string categories = 1; }