diff --git a/proto/cmp/services/transport/v1alpha1/search_result_types.proto b/proto/cmp/services/transport/v1alpha1/search_result_types.proto index aff348fd..01f3c4db 100644 --- a/proto/cmp/services/transport/v1alpha1/search_result_types.proto +++ b/proto/cmp/services/transport/v1alpha1/search_result_types.proto @@ -60,4 +60,4 @@ message TransportSearchResult { // Observations string observations = 14; -} +} \ No newline at end of file diff --git a/proto/cmp/services/transport/v1alpha1/trip_types.proto b/proto/cmp/services/transport/v1alpha1/trip_types.proto index 679fd24b..752e534f 100644 --- a/proto/cmp/services/transport/v1alpha1/trip_types.proto +++ b/proto/cmp/services/transport/v1alpha1/trip_types.proto @@ -6,6 +6,7 @@ import "cmp/types/v1alpha1/distance.proto"; import "cmp/types/v1alpha1/location.proto"; import "cmp/types/v1alpha1/price.proto"; import "cmp/types/v1alpha1/time.proto"; +import "cmp/types/v1alpha1/baggage.proto"; import "google/protobuf/timestamp.proto"; // ### Trip message type @@ -99,7 +100,7 @@ message TripSegment { // Luggage // // Ex: `3` - int32 luggage = 14; + cmp.types.v1alpha1.Baggage baggage = 14; // Price // @@ -116,4 +117,4 @@ message TransitEvent { // Event location cmp.types.v1alpha1.LocationCode location_code = 2; -} +} \ No newline at end of file diff --git a/proto/cmp/types/v1alpha1/baggage.proto b/proto/cmp/types/v1alpha1/baggage.proto new file mode 100644 index 00000000..262b8bf4 --- /dev/null +++ b/proto/cmp/types/v1alpha1/baggage.proto @@ -0,0 +1,51 @@ +syntax = "proto3"; + +package cmp.types.v1alpha1; + +// Baggage message type +// +// ![Diagram](https://storage.googleapis.com/docs-cmp-files/diagrams/proto/cmp/types/v1alpha1/baggage.proto.dot.xs.svg) +// [Open Message Diagram](https://storage.googleapis.com/docs-cmp-files/diagrams/proto/cmp/types/v1alpha1/baggage.proto.dot.svg) +message Baggage { + // Baggage type + // + // Enum of allowed baggage types. + BaggageType baggage_type = 1; + + // maximum number of the specified bagage type allowed + int32 max_baggage = 2; + + // maximum weith of each of the specified bagage type allowed + int32 max_baggage_weight = 3; + + // Dimensions + // + // Dimensions unit specification for length, width and height (cm or inches) + DimensionType dimension_type = 5; + + // maximum height of the specified bagage type allowed + // maximum length, width and height of the specified bagage type allowed + int32 max_baggage_length = 6; + int32 max_baggage_width = 7; + int32 max_baggage_height = 8; +} + +// Baggage type ENUM type +enum BaggageType { + BAGGAGE_TYPE_UNSPECIFIED = 0; // No Baggage type specified + BAGGAGE_TYPE_CARRY_ON = 1; // Carry-on + BAGGAGE_TYPE_CARRY_ON_OVERHEAD = 2; // Carry-on overhead + BAGGAGE_TYPE_CARRY_ON_PERSONAL = 3; // Carry-on personal item + BAGGAGE_TYPE_CHECKED = 4; // Checked + BAGGAGE_TYPE_ODD_SIZE = 5; // Odd size checked baggage + BAGGAGE_TYPE_SKI = 6; // Skis + BAGGAGE_TYPE_GOLF = 7; // Golf bags + BAGGAGE_TYPE_SURF = 8; // (wind)Surf or Kite boards +} + +// Baggage dimensions unit ENUM type +enum DimensionType { + DIMENSION_TYPE_UNSPECIFIED = 0; // No Baggage dimensions unit specified + DIMENSION_TYPE_CM = 1; // Centimeters + DIMENSION_TYPE_INCH = 2; // Inches +} \ No newline at end of file