From 3e3733ab65147c688a4945b8380a817f0f32a5f5 Mon Sep 17 00:00:00 2001 From: Paul De Audney Date: Wed, 22 Oct 2025 11:04:08 +1100 Subject: [PATCH 1/3] SRE-2902 UUIDv7 version validation rule support - WIP --- protobuf/protoc-gen-govalidator/plugin/plugin.go | 6 +++++- s12/protobuf/proto/validator_helpers.go | 6 ++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/protobuf/protoc-gen-govalidator/plugin/plugin.go b/protobuf/protoc-gen-govalidator/plugin/plugin.go index 41f803a..5861827 100644 --- a/protobuf/protoc-gen-govalidator/plugin/plugin.go +++ b/protobuf/protoc-gen-govalidator/plugin/plugin.go @@ -671,7 +671,7 @@ func genStringValidator(g *protogen.GeneratedFile, f *protogen.Field, varName st func genIdValidator(g *protogen.GeneratedFile, f *protogen.Field, varName string) { - // ID validator with support for legacy ids and UUIDv4 + // ID validator with support for legacy ids, UUIDv4 & UUIDv7 // Might want to move the shared validation logic such as optional to a separate method rules := getIdExtension(f, validator.E_Id) if rules == nil { @@ -689,6 +689,10 @@ func genIdValidator(g *protogen.GeneratedFile, f *protogen.Field, varName string // Try to validate the value for valid UUIDv4 g.P("if !", s12protoPackage.Ident("IsUUIDv4"), "(", varName, ") {") errMsg = "be parsable as UUIDv4" + case "v7": + // Try to validate the value for valid UUIDv7 + g.P("if !", s12protoPackage.Ident("IsUUIDv7"), "(", varName, ") {") + errMsg = "be parsable as UUIDv7" case "any": // Try to validate the value for valid UUID (any version) g.P("if !", s12protoPackage.Ident("IsUUID"), "(", varName, ") {") diff --git a/s12/protobuf/proto/validator_helpers.go b/s12/protobuf/proto/validator_helpers.go index a02198a..cec6e0b 100644 --- a/s12/protobuf/proto/validator_helpers.go +++ b/s12/protobuf/proto/validator_helpers.go @@ -32,6 +32,7 @@ const ( // ensure all checks are performmed in IsValidEmail so we can revert this later if we want to reEmail string = "^((((([a-zA-Z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])+(\\.([a-zA-Z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])+)*)|((\\x22)((((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(([\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f]|\\x21|[\\x23-\\x5b]|[\\x5d-\\x7e]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(\\([\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}]))))*(((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(\\x22)))){1,14}@((([a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(([a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])([a-zA-Z]|\\d|-|\\.|_|~|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])*([a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])))\\.)+(([a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(([a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])([a-zA-Z]|\\d|-|_|~|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])*([a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])))$" reUUID4 string = "^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$" + reUUID7 string = "^[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$" reURL string = `^[@\:\/\?#\.\-\_\%\;\=\~\&\+a-zA-Z0-9]+$` // Does not validate format, only characters // breakURLRegex is a pre-compiled regular expression to match a period followed by anything other than a space, // newline, or digit. @@ -54,6 +55,7 @@ var ( RegexPua = regexp.MustCompile(rePua) RegexEmail = regexp.MustCompile(reEmail) RegexUUID4 = regexp.MustCompile(reUUID4) + RegexUUID7 = regexp.MustCompile(reUUID7) rxURL = regexp.MustCompile(reURL) BreakURLMatcher = regexp.MustCompile(breakURLRegex) RejectURLMatcher = regexp.MustCompile(rejectURLRegex) @@ -67,7 +69,11 @@ func IsUUID(str string) bool { // IsUUIDv4 checks if the string is a UUIDv4 func IsUUIDv4(str string) bool { return RegexUUID4.MatchString(str) +} +// IsUUIDv7 checks if the string is a UUIDv7 +func IsUUIDv7(str string) bool { + return RegexUUID7.MatchString(str) } // IsLegacyID A legacyId does not contain the document prefix; the prefix is accounted for in the service implementation code From cebb83ff66cdbaae2a37f93141a941cae5c393b5 Mon Sep 17 00:00:00 2001 From: Paul De Audney Date: Wed, 22 Oct 2025 13:36:24 +1100 Subject: [PATCH 2/3] SRE-2902 Adding a UUIDv7 validator --- go.mod | 2 +- .../example/example.pb.go | 483 ++---- .../example/example.validator.pb.go | 4 +- .../example/example.validator_regex.pb.go | 4 +- .../protoc-gen-govalidator/valtest/geo.pb.go | 77 +- .../valtest/geo.validator.pb.go | 4 +- .../valtest/geo.validator_regex.pb.go | 4 +- .../valtest/valtest.pb.go | 1419 +++++------------ .../valtest/valtest.proto | 2 + .../valtest/valtest.validator.pb.go | 10 +- .../valtest/valtest.validator_regex.pb.go | 4 +- .../valtest/valtest_test.go | 8 + s12/flags/permissions/permissions.pb.go | 34 +- s12/protobuf/proto/validator.pb.go | 513 ++---- 14 files changed, 774 insertions(+), 1794 deletions(-) diff --git a/go.mod b/go.mod index 23949e0..411715b 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/SafetyCulture/s12-proto -go 1.18 +go 1.20 require ( github.com/gofrs/uuid v3.3.0+incompatible diff --git a/protobuf/protoc-gen-govalidator/example/example.pb.go b/protobuf/protoc-gen-govalidator/example/example.pb.go index 25e13a7..125e6a0 100644 --- a/protobuf/protoc-gen-govalidator/example/example.pb.go +++ b/protobuf/protoc-gen-govalidator/example/example.pb.go @@ -2,8 +2,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.34.2 -// protoc v5.29.3 +// protoc-gen-go v1.36.10 +// protoc v6.33.0 // source: example.proto package example @@ -15,6 +15,7 @@ import ( timestamppb "google.golang.org/protobuf/types/known/timestamppb" reflect "reflect" sync "sync" + unsafe "unsafe" ) const ( @@ -73,10 +74,7 @@ func (MyMessageWithEnum_MyEnum) EnumDescriptor() ([]byte, []int) { } type ExampleMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // returns an error if the string cannot be parsed as a UUID Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // bytes can also be parsed as UUID with support for gogo @@ -101,7 +99,7 @@ type ExampleMessage struct { Password string `protobuf:"bytes,11,opt,name=password,proto3" json:"password,omitempty"` // You don't need to validate everything NoValidation string `protobuf:"bytes,12,opt,name=no_validation,json=noValidation,proto3" json:"no_validation,omitempty"` - // Types that are assignable to ContactOneof: + // Types that are valid to be assigned to ContactOneof: // // *ExampleMessage_Fax // *ExampleMessage_Phone @@ -115,7 +113,7 @@ type ExampleMessage struct { // Trim leading and trailing whitespaces (as defined by Unicode) before doing length check Name string `protobuf:"bytes,18,opt,name=name,proto3" json:"name,omitempty"` NestedMessage *ExampleMessage_NestedMessage `protobuf:"bytes,19,opt,name=nested_message,json=nestedMessage,proto3" json:"nested_message,omitempty"` - NotSupported map[string]string `protobuf:"bytes,100,rep,name=not_supported,json=notSupported,proto3" json:"not_supported,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + NotSupported map[string]string `protobuf:"bytes,100,rep,name=not_supported,json=notSupported,proto3" json:"not_supported,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // strings can validate against a regular expression Url string `protobuf:"bytes,21,opt,name=url,proto3" json:"url,omitempty"` ContactsWithLengthConstraint []*ExampleMessage_Contact `protobuf:"bytes,22,rep,name=contacts_with_length_constraint,json=contactsWithLengthConstraint,proto3" json:"contacts_with_length_constraint,omitempty"` @@ -124,15 +122,15 @@ type ExampleMessage struct { Timezone string `protobuf:"bytes,25,opt,name=timezone,proto3" json:"timezone,omitempty"` TimezoneOptional string `protobuf:"bytes,26,opt,name=timezone_optional,json=timezoneOptional,proto3" json:"timezone_optional,omitempty"` StringOptional *string `protobuf:"bytes,27,opt,name=string_optional,json=stringOptional,proto3,oneof" json:"string_optional,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ExampleMessage) Reset() { *x = ExampleMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_example_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_example_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ExampleMessage) String() string { @@ -143,7 +141,7 @@ func (*ExampleMessage) ProtoMessage() {} func (x *ExampleMessage) ProtoReflect() protoreflect.Message { mi := &file_example_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -242,23 +240,27 @@ func (x *ExampleMessage) GetNoValidation() string { return "" } -func (m *ExampleMessage) GetContactOneof() isExampleMessage_ContactOneof { - if m != nil { - return m.ContactOneof +func (x *ExampleMessage) GetContactOneof() isExampleMessage_ContactOneof { + if x != nil { + return x.ContactOneof } return nil } func (x *ExampleMessage) GetFax() string { - if x, ok := x.GetContactOneof().(*ExampleMessage_Fax); ok { - return x.Fax + if x != nil { + if x, ok := x.ContactOneof.(*ExampleMessage_Fax); ok { + return x.Fax + } } return "" } func (x *ExampleMessage) GetPhone() string { - if x, ok := x.GetContactOneof().(*ExampleMessage_Phone); ok { - return x.Phone + if x != nil { + if x, ok := x.ContactOneof.(*ExampleMessage_Phone); ok { + return x.Phone + } } return "" } @@ -371,20 +373,17 @@ func (*ExampleMessage_Fax) isExampleMessage_ContactOneof() {} func (*ExampleMessage_Phone) isExampleMessage_ContactOneof() {} type OuterMessageUsingNestedMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + SomeMessage *ExampleMessage_NestedMessage `protobuf:"bytes,1,opt,name=some_message,json=someMessage,proto3" json:"some_message,omitempty"` unknownFields protoimpl.UnknownFields - - SomeMessage *ExampleMessage_NestedMessage `protobuf:"bytes,1,opt,name=some_message,json=someMessage,proto3" json:"some_message,omitempty"` + sizeCache protoimpl.SizeCache } func (x *OuterMessageUsingNestedMessage) Reset() { *x = OuterMessageUsingNestedMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_example_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_example_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *OuterMessageUsingNestedMessage) String() string { @@ -395,7 +394,7 @@ func (*OuterMessageUsingNestedMessage) ProtoMessage() {} func (x *OuterMessageUsingNestedMessage) ProtoReflect() protoreflect.Message { mi := &file_example_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -418,20 +417,17 @@ func (x *OuterMessageUsingNestedMessage) GetSomeMessage() *ExampleMessage_Nested } type InnerMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *InnerMessage) Reset() { *x = InnerMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_example_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_example_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *InnerMessage) String() string { @@ -442,7 +438,7 @@ func (*InnerMessage) ProtoMessage() {} func (x *InnerMessage) ProtoReflect() protoreflect.Message { mi := &file_example_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -465,20 +461,17 @@ func (x *InnerMessage) GetId() string { } type InnerMessageWithLegacyId struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *InnerMessageWithLegacyId) Reset() { *x = InnerMessageWithLegacyId{} - if protoimpl.UnsafeEnabled { - mi := &file_example_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_example_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *InnerMessageWithLegacyId) String() string { @@ -489,7 +482,7 @@ func (*InnerMessageWithLegacyId) ProtoMessage() {} func (x *InnerMessageWithLegacyId) ProtoReflect() protoreflect.Message { mi := &file_example_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -512,20 +505,17 @@ func (x *InnerMessageWithLegacyId) GetId() string { } type MyMessageWithEnum struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Enum MyMessageWithEnum_MyEnum `protobuf:"varint,1,opt,name=enum,proto3,enum=example.MyMessageWithEnum_MyEnum" json:"enum,omitempty"` unknownFields protoimpl.UnknownFields - - Enum MyMessageWithEnum_MyEnum `protobuf:"varint,1,opt,name=enum,proto3,enum=example.MyMessageWithEnum_MyEnum" json:"enum,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MyMessageWithEnum) Reset() { *x = MyMessageWithEnum{} - if protoimpl.UnsafeEnabled { - mi := &file_example_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_example_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *MyMessageWithEnum) String() string { @@ -536,7 +526,7 @@ func (*MyMessageWithEnum) ProtoMessage() {} func (x *MyMessageWithEnum) ProtoReflect() protoreflect.Message { mi := &file_example_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -559,22 +549,19 @@ func (x *MyMessageWithEnum) GetEnum() MyMessageWithEnum_MyEnum { } type ExampleMessage_NestedMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Val string `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` + NestedEmail string `protobuf:"bytes,2,opt,name=nested_email,json=nestedEmail,proto3" json:"nested_email,omitempty"` + MemberEmails []string `protobuf:"bytes,3,rep,name=member_emails,json=memberEmails,proto3" json:"member_emails,omitempty"` unknownFields protoimpl.UnknownFields - - Val string `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` - NestedEmail string `protobuf:"bytes,2,opt,name=nested_email,json=nestedEmail,proto3" json:"nested_email,omitempty"` - MemberEmails []string `protobuf:"bytes,3,rep,name=member_emails,json=memberEmails,proto3" json:"member_emails,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ExampleMessage_NestedMessage) Reset() { *x = ExampleMessage_NestedMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_example_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_example_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ExampleMessage_NestedMessage) String() string { @@ -585,7 +572,7 @@ func (*ExampleMessage_NestedMessage) ProtoMessage() {} func (x *ExampleMessage_NestedMessage) ProtoReflect() protoreflect.Message { mi := &file_example_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -622,21 +609,18 @@ func (x *ExampleMessage_NestedMessage) GetMemberEmails() []string { } type ExampleMessage_Contact struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Phone string `protobuf:"bytes,1,opt,name=phone,proto3" json:"phone,omitempty"` + Email string `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"` unknownFields protoimpl.UnknownFields - - Phone string `protobuf:"bytes,1,opt,name=phone,proto3" json:"phone,omitempty"` - Email string `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ExampleMessage_Contact) Reset() { *x = ExampleMessage_Contact{} - if protoimpl.UnsafeEnabled { - mi := &file_example_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_example_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ExampleMessage_Contact) String() string { @@ -647,7 +631,7 @@ func (*ExampleMessage_Contact) ProtoMessage() {} func (x *ExampleMessage_Contact) ProtoReflect() protoreflect.Message { mi := &file_example_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -677,20 +661,17 @@ func (x *ExampleMessage_Contact) GetEmail() string { } type ExampleMessage_NestedMessage_InnerNestedMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + InnerVal string `protobuf:"bytes,1,opt,name=inner_val,json=innerVal,proto3" json:"inner_val,omitempty"` unknownFields protoimpl.UnknownFields - - InnerVal string `protobuf:"bytes,1,opt,name=inner_val,json=innerVal,proto3" json:"inner_val,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ExampleMessage_NestedMessage_InnerNestedMessage) Reset() { *x = ExampleMessage_NestedMessage_InnerNestedMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_example_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_example_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ExampleMessage_NestedMessage_InnerNestedMessage) String() string { @@ -701,7 +682,7 @@ func (*ExampleMessage_NestedMessage_InnerNestedMessage) ProtoMessage() {} func (x *ExampleMessage_NestedMessage_InnerNestedMessage) ProtoReflect() protoreflect.Message { mi := &file_example_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -725,164 +706,75 @@ func (x *ExampleMessage_NestedMessage_InnerNestedMessage) GetInnerVal() string { var File_example_proto protoreflect.FileDescriptor -var file_example_proto_rawDesc = []byte{ - 0x0a, 0x0d, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, - 0x07, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x22, 0x73, 0x31, 0x32, 0x2f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa8, 0x0e, - 0x0a, 0x0e, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x12, 0x14, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0x80, 0xeb, - 0x1f, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x04, 0x80, 0xeb, 0x1f, 0x01, 0x52, 0x06, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xf2, 0xeb, 0x1f, 0x02, 0x08, 0x01, 0x52, 0x05, 0x65, 0x6d, - 0x61, 0x69, 0x6c, 0x12, 0x16, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x42, 0x04, 0x90, 0xeb, 0x1f, 0x00, 0x52, 0x03, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x05, 0x73, - 0x70, 0x65, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x42, 0x04, 0x98, 0xeb, 0x1f, 0x6e, - 0x52, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x42, 0x08, 0xa0, 0xeb, 0x1f, 0x00, 0xa8, 0xeb, 0x1f, 0x64, - 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x2b, 0x0a, 0x05, 0x69, 0x6e, 0x6e, 0x65, 0x72, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, - 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x05, 0x69, - 0x6e, 0x6e, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, - 0x0c, 0x42, 0x04, 0x80, 0xeb, 0x1f, 0x01, 0x52, 0x03, 0x69, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x08, - 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, - 0x80, 0xeb, 0x1f, 0x01, 0xc0, 0xeb, 0x1f, 0x01, 0x52, 0x07, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x49, - 0x64, 0x12, 0x27, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0xb8, 0xeb, 0x1f, 0xd0, 0x0f, 0x52, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x08, 0x70, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xb0, 0xeb, - 0x1f, 0x08, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x23, 0x0a, 0x0d, - 0x6e, 0x6f, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x6f, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x12, 0x0a, 0x03, 0x66, 0x61, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, - 0x52, 0x03, 0x66, 0x61, 0x78, 0x12, 0x1c, 0x0a, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0e, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xb0, 0xeb, 0x1f, 0x0b, 0x48, 0x00, 0x52, 0x05, 0x70, 0x68, - 0x6f, 0x6e, 0x65, 0x12, 0x3e, 0x0a, 0x0c, 0x6d, 0x73, 0x67, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, - 0x72, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x65, 0x78, 0x61, 0x6d, - 0x70, 0x6c, 0x65, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x42, 0x04, 0xc8, 0xeb, 0x1f, 0x01, 0x52, 0x0b, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x75, 0x69, - 0x72, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x09, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x69, 0x64, - 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xd0, 0xeb, 0x1f, 0x01, 0x52, 0x08, 0x6c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x0f, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x5f, - 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x21, 0x2e, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, - 0x49, 0x64, 0x52, 0x0d, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x49, - 0x64, 0x12, 0x20, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x0c, 0xb0, 0xeb, 0x1f, 0x06, 0xb8, 0xeb, 0x1f, 0x0a, 0xd8, 0xeb, 0x1f, 0x01, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x4c, 0x0a, 0x0e, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x65, 0x78, - 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x52, 0x0d, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x12, 0x4e, 0x0a, 0x0d, 0x6e, 0x6f, 0x74, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x64, 0x18, 0x64, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x65, 0x78, 0x61, 0x6d, 0x70, - 0x6c, 0x65, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x2e, 0x4e, 0x6f, 0x74, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x0c, 0x6e, 0x6f, 0x74, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x64, 0x12, 0x3c, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, - 0x8a, 0xeb, 0x1f, 0x26, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x5c, 0x2f, 0x5c, 0x2f, 0x77, 0x77, - 0x77, 0x5c, 0x2e, 0x73, 0x61, 0x66, 0x65, 0x74, 0x79, 0x63, 0x75, 0x6c, 0x74, 0x75, 0x72, 0x65, - 0x5c, 0x2e, 0x28, 0x69, 0x6f, 0x7c, 0x63, 0x6f, 0x6d, 0x29, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, - 0x70, 0x0a, 0x1f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68, - 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, - 0x6e, 0x74, 0x18, 0x16, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x78, 0x61, 0x6d, 0x70, - 0x6c, 0x65, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x42, 0x08, 0xe0, 0xeb, 0x1f, 0x00, 0xe8, - 0xeb, 0x1f, 0x0a, 0x52, 0x1c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, 0x57, 0x69, 0x74, - 0x68, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, - 0x74, 0x12, 0x6b, 0x0a, 0x22, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, 0x5f, 0x77, 0x69, - 0x74, 0x68, 0x5f, 0x6e, 0x6f, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x6e, - 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x18, 0x17, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, - 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x52, 0x1e, - 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x6f, 0x4c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x45, - 0x0a, 0x0d, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x18, - 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x42, 0x04, 0xc0, 0xeb, 0x1f, 0x01, 0x52, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, - 0x65, 0x64, 0x46, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x7a, 0x6f, 0x6e, - 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xa2, 0xec, 0x1f, 0x00, 0x52, 0x08, 0x74, - 0x69, 0x6d, 0x65, 0x7a, 0x6f, 0x6e, 0x65, 0x12, 0x33, 0x0a, 0x11, 0x74, 0x69, 0x6d, 0x65, 0x7a, - 0x6f, 0x6e, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x1a, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x06, 0xa2, 0xec, 0x1f, 0x02, 0x08, 0x01, 0x52, 0x10, 0x74, 0x69, 0x6d, 0x65, - 0x7a, 0x6f, 0x6e, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x32, 0x0a, 0x0f, - 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, - 0x1b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xfa, 0xeb, 0x1f, 0x00, 0x48, 0x01, 0x52, 0x0e, 0x73, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x88, 0x01, 0x01, - 0x1a, 0xda, 0x02, 0x0a, 0x0d, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x12, 0x1e, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x0c, 0xb0, 0xeb, 0x1f, 0x01, 0xb8, 0xeb, 0x1f, 0x28, 0xd8, 0xeb, 0x1f, 0x01, 0x52, 0x03, 0x76, - 0x61, 0x6c, 0x12, 0x31, 0x0a, 0x0c, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x6d, 0x61, - 0x69, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0x8a, 0xeb, 0x1f, 0x0a, 0x2e, 0x2b, - 0x5c, 0x40, 0x2e, 0x2b, 0x5c, 0x2e, 0x2e, 0x2b, 0x52, 0x0b, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, - 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0xb4, 0x01, 0x0a, 0x0d, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x8e, 0x01, - 0x8a, 0xeb, 0x1f, 0x81, 0x01, 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x21, 0x23, 0x24, 0x26, - 0x27, 0x2a, 0x2b, 0x2f, 0x3d, 0x3f, 0x5e, 0x5f, 0x7b, 0x7c, 0x7d, 0x7e, 0x2d, 0x5d, 0x2b, 0x28, - 0x3f, 0x3a, 0x5c, 0x2e, 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x21, 0x23, 0x24, 0x26, 0x27, - 0x2a, 0x2b, 0x2f, 0x3d, 0x3f, 0x5e, 0x5f, 0x7b, 0x7c, 0x7d, 0x7e, 0x2d, 0x5d, 0x2b, 0x29, 0x2a, - 0x40, 0x28, 0x3f, 0x3a, 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x28, 0x3f, 0x3a, 0x5b, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5d, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x5d, 0x29, 0x3f, 0x5c, 0x2e, 0x29, 0x2b, 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x28, - 0x3f, 0x3a, 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5d, 0x2a, 0x5b, 0x61, 0x2d, 0x7a, - 0x30, 0x2d, 0x39, 0x5d, 0x29, 0x3f, 0xe0, 0xeb, 0x1f, 0x02, 0xe8, 0xeb, 0x1f, 0x05, 0x52, 0x0c, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0x3f, 0x0a, 0x12, - 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x12, 0x29, 0x0a, 0x09, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0c, 0xb0, 0xeb, 0x1f, 0x01, 0xb8, 0xeb, 0x1f, 0x28, 0xd8, - 0xeb, 0x1f, 0x01, 0x52, 0x08, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x1a, 0x3f, 0x0a, - 0x11, 0x4e, 0x6f, 0x74, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x43, - 0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x12, 0x1a, 0x0a, 0x05, 0x70, 0x68, 0x6f, - 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xc0, 0xeb, 0x1f, 0x01, 0x52, 0x05, - 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xf2, 0xeb, 0x1f, 0x02, 0x08, 0x01, 0x52, 0x05, 0x65, 0x6d, - 0x61, 0x69, 0x6c, 0x42, 0x0f, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x5f, 0x6f, - 0x6e, 0x65, 0x6f, 0x66, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, 0x6a, 0x0a, 0x1e, 0x4f, 0x75, 0x74, 0x65, - 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x4e, 0x65, 0x73, - 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x48, 0x0a, 0x0c, 0x73, 0x6f, - 0x6d, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x25, 0x2e, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x45, 0x78, 0x61, 0x6d, 0x70, - 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0b, 0x73, 0x6f, 0x6d, 0x65, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x22, 0x24, 0x0a, 0x0c, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x04, 0x80, 0xeb, 0x1f, 0x01, 0x52, 0x02, 0x69, 0x64, 0x22, 0x30, 0x0a, 0x18, 0x49, 0x6e, - 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, 0x4c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x04, 0xd0, 0xeb, 0x1f, 0x01, 0x52, 0x02, 0x69, 0x64, 0x22, 0x86, 0x01, 0x0a, - 0x11, 0x4d, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, 0x45, 0x6e, - 0x75, 0x6d, 0x12, 0x3b, 0x0a, 0x04, 0x65, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x21, 0x2e, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2e, 0x4d, 0x79, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, 0x45, 0x6e, 0x75, 0x6d, 0x2e, 0x4d, 0x79, 0x45, - 0x6e, 0x75, 0x6d, 0x42, 0x04, 0x90, 0xec, 0x1f, 0x01, 0x52, 0x04, 0x65, 0x6e, 0x75, 0x6d, 0x22, - 0x34, 0x0a, 0x06, 0x4d, 0x79, 0x45, 0x6e, 0x75, 0x6d, 0x12, 0x17, 0x0a, 0x13, 0x4d, 0x59, 0x5f, - 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4d, 0x59, 0x5f, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x46, 0x49, - 0x52, 0x53, 0x54, 0x10, 0x01, 0x42, 0x4c, 0x5a, 0x4a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x61, 0x66, 0x65, 0x74, 0x79, 0x43, 0x75, 0x6c, 0x74, 0x75, 0x72, - 0x65, 0x2f, 0x73, 0x31, 0x32, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x2d, 0x67, 0x65, 0x6e, 0x2d, - 0x67, 0x6f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x65, 0x78, 0x61, 0x6d, - 0x70, 0x6c, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} +const file_example_proto_rawDesc = "" + + "\n" + + "\rexample.proto\x12\aexample\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\"s12/protobuf/proto/validator.proto\"\xa8\x0e\n" + + "\x0eExampleMessage\x12\x14\n" + + "\x02id\x18\x01 \x01(\tB\x04\x80\xeb\x1f\x01R\x02id\x12\x1d\n" + + "\auser_id\x18\x02 \x01(\fB\x04\x80\xeb\x1f\x01R\x06userId\x12\x1c\n" + + "\x05email\x18\x03 \x01(\tB\x06\xf2\xeb\x1f\x02\b\x01R\x05email\x12\x16\n" + + "\x03age\x18\x04 \x01(\x05B\x04\x90\xeb\x1f\x00R\x03age\x12\x1a\n" + + "\x05speed\x18\x05 \x01(\x03B\x04\x98\xeb\x1fnR\x05speed\x12\x1e\n" + + "\x05score\x18\x06 \x01(\x05B\b\xa0\xeb\x1f\x00\xa8\xeb\x1fdR\x05score\x12+\n" + + "\x05inner\x18\a \x01(\v2\x15.example.InnerMessageR\x05inner\x12\x16\n" + + "\x03ids\x18\b \x03(\fB\x04\x80\xeb\x1f\x01R\x03ids\x12#\n" + + "\bmedia_id\x18\t \x01(\tB\b\x80\xeb\x1f\x01\xc0\xeb\x1f\x01R\amediaId\x12'\n" + + "\vdescription\x18\n" + + " \x01(\tB\x05\xb8\xeb\x1f\xd0\x0fR\vdescription\x12 \n" + + "\bpassword\x18\v \x01(\tB\x04\xb0\xeb\x1f\bR\bpassword\x12#\n" + + "\rno_validation\x18\f \x01(\tR\fnoValidation\x12\x12\n" + + "\x03fax\x18\r \x01(\tH\x00R\x03fax\x12\x1c\n" + + "\x05phone\x18\x0e \x01(\tB\x04\xb0\xeb\x1f\vH\x00R\x05phone\x12>\n" + + "\fmsg_required\x18\x0f \x01(\v2\x15.example.InnerMessageB\x04\xc8\xeb\x1f\x01R\vmsgRequired\x12!\n" + + "\tlegacy_id\x18\x10 \x01(\tB\x04\xd0\xeb\x1f\x01R\blegacyId\x12I\n" + + "\x0finner_legacy_id\x18\x11 \x01(\v2!.example.InnerMessageWithLegacyIdR\rinnerLegacyId\x12 \n" + + "\x04name\x18\x12 \x01(\tB\f\xb0\xeb\x1f\x06\xb8\xeb\x1f\n" + + "\xd8\xeb\x1f\x01R\x04name\x12L\n" + + "\x0enested_message\x18\x13 \x01(\v2%.example.ExampleMessage.NestedMessageR\rnestedMessage\x12N\n" + + "\rnot_supported\x18d \x03(\v2).example.ExampleMessage.NotSupportedEntryR\fnotSupported\x12<\n" + + "\x03url\x18\x15 \x01(\tB*\x8a\xeb\x1f&https:\\/\\/www\\.safetyculture\\.(io|com)R\x03url\x12p\n" + + "\x1fcontacts_with_length_constraint\x18\x16 \x03(\v2\x1f.example.ExampleMessage.ContactB\b\xe0\xeb\x1f\x00\xe8\xeb\x1f\n" + + "R\x1ccontactsWithLengthConstraint\x12k\n" + + "\"contacts_with_no_length_constraint\x18\x17 \x03(\v2\x1f.example.ExampleMessage.ContactR\x1econtactsWithNoLengthConstraint\x12E\n" + + "\rscheduled_for\x18\x18 \x01(\v2\x1a.google.protobuf.TimestampB\x04\xc0\xeb\x1f\x01R\fscheduledFor\x12 \n" + + "\btimezone\x18\x19 \x01(\tB\x04\xa2\xec\x1f\x00R\btimezone\x123\n" + + "\x11timezone_optional\x18\x1a \x01(\tB\x06\xa2\xec\x1f\x02\b\x01R\x10timezoneOptional\x122\n" + + "\x0fstring_optional\x18\x1b \x01(\tB\x04\xfa\xeb\x1f\x00H\x01R\x0estringOptional\x88\x01\x01\x1a\xda\x02\n" + + "\rNestedMessage\x12\x1e\n" + + "\x03val\x18\x01 \x01(\tB\f\xb0\xeb\x1f\x01\xb8\xeb\x1f(\xd8\xeb\x1f\x01R\x03val\x121\n" + + "\fnested_email\x18\x02 \x01(\tB\x0e\x8a\xeb\x1f\n" + + ".+\\@.+\\..+R\vnestedEmail\x12\xb4\x01\n" + + "\rmember_emails\x18\x03 \x03(\tB\x8e\x01\x8a\xeb\x1f\x81\x01[a-z0-9!#$&'*+/=?^_{|}~-]+(?:\\.[a-z0-9!#$&'*+/=?^_{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\xe0\xeb\x1f\x02\xe8\xeb\x1f\x05R\fmemberEmails\x1a?\n" + + "\x12InnerNestedMessage\x12)\n" + + "\tinner_val\x18\x01 \x01(\tB\f\xb0\xeb\x1f\x01\xb8\xeb\x1f(\xd8\xeb\x1f\x01R\binnerVal\x1a?\n" + + "\x11NotSupportedEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1aC\n" + + "\aContact\x12\x1a\n" + + "\x05phone\x18\x01 \x01(\tB\x04\xc0\xeb\x1f\x01R\x05phone\x12\x1c\n" + + "\x05email\x18\x02 \x01(\tB\x06\xf2\xeb\x1f\x02\b\x01R\x05emailB\x0f\n" + + "\rcontact_oneofB\x12\n" + + "\x10_string_optional\"j\n" + + "\x1eOuterMessageUsingNestedMessage\x12H\n" + + "\fsome_message\x18\x01 \x01(\v2%.example.ExampleMessage.NestedMessageR\vsomeMessage\"$\n" + + "\fInnerMessage\x12\x14\n" + + "\x02id\x18\x01 \x01(\tB\x04\x80\xeb\x1f\x01R\x02id\"0\n" + + "\x18InnerMessageWithLegacyId\x12\x14\n" + + "\x02id\x18\x01 \x01(\tB\x04\xd0\xeb\x1f\x01R\x02id\"\x86\x01\n" + + "\x11MyMessageWithEnum\x12;\n" + + "\x04enum\x18\x01 \x01(\x0e2!.example.MyMessageWithEnum.MyEnumB\x04\x90\xec\x1f\x01R\x04enum\"4\n" + + "\x06MyEnum\x12\x17\n" + + "\x13MY_ENUM_UNSPECIFIED\x10\x00\x12\x11\n" + + "\rMY_ENUM_FIRST\x10\x01BLZJgithub.com/SafetyCulture/s12-proto/protobuf/protoc-gen-govalidator/exampleb\x06proto3" var ( file_example_proto_rawDescOnce sync.Once - file_example_proto_rawDescData = file_example_proto_rawDesc + file_example_proto_rawDescData []byte ) func file_example_proto_rawDescGZIP() []byte { file_example_proto_rawDescOnce.Do(func() { - file_example_proto_rawDescData = protoimpl.X.CompressGZIP(file_example_proto_rawDescData) + file_example_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_example_proto_rawDesc), len(file_example_proto_rawDesc))) }) return file_example_proto_rawDescData } @@ -925,104 +817,6 @@ func file_example_proto_init() { if File_example_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_example_proto_msgTypes[0].Exporter = func(v any, i int) any { - switch v := v.(*ExampleMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_example_proto_msgTypes[1].Exporter = func(v any, i int) any { - switch v := v.(*OuterMessageUsingNestedMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_example_proto_msgTypes[2].Exporter = func(v any, i int) any { - switch v := v.(*InnerMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_example_proto_msgTypes[3].Exporter = func(v any, i int) any { - switch v := v.(*InnerMessageWithLegacyId); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_example_proto_msgTypes[4].Exporter = func(v any, i int) any { - switch v := v.(*MyMessageWithEnum); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_example_proto_msgTypes[5].Exporter = func(v any, i int) any { - switch v := v.(*ExampleMessage_NestedMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_example_proto_msgTypes[7].Exporter = func(v any, i int) any { - switch v := v.(*ExampleMessage_Contact); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_example_proto_msgTypes[8].Exporter = func(v any, i int) any { - switch v := v.(*ExampleMessage_NestedMessage_InnerNestedMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } file_example_proto_msgTypes[0].OneofWrappers = []any{ (*ExampleMessage_Fax)(nil), (*ExampleMessage_Phone)(nil), @@ -1031,7 +825,7 @@ func file_example_proto_init() { out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_example_proto_rawDesc, + RawDescriptor: unsafe.Slice(unsafe.StringData(file_example_proto_rawDesc), len(file_example_proto_rawDesc)), NumEnums: 1, NumMessages: 9, NumExtensions: 0, @@ -1043,7 +837,6 @@ func file_example_proto_init() { MessageInfos: file_example_proto_msgTypes, }.Build() File_example_proto = out.File - file_example_proto_rawDesc = nil file_example_proto_goTypes = nil file_example_proto_depIdxs = nil } diff --git a/protobuf/protoc-gen-govalidator/example/example.validator.pb.go b/protobuf/protoc-gen-govalidator/example/example.validator.pb.go index 0a575b8..06157d7 100644 --- a/protobuf/protoc-gen-govalidator/example/example.validator.pb.go +++ b/protobuf/protoc-gen-govalidator/example/example.validator.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-govalidator. DO NOT EDIT. // versions: -// protoc-gen-govalidator v2.7.1 -// protoc v5.29.3 +// protoc-gen-govalidator v2.7.2 +// protoc v6.33.0 // source: example.proto package example diff --git a/protobuf/protoc-gen-govalidator/example/example.validator_regex.pb.go b/protobuf/protoc-gen-govalidator/example/example.validator_regex.pb.go index 111c927..3eece79 100644 --- a/protobuf/protoc-gen-govalidator/example/example.validator_regex.pb.go +++ b/protobuf/protoc-gen-govalidator/example/example.validator_regex.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-govalidator. DO NOT EDIT. // versions: -// protoc-gen-govalidator v2.7.1 -// protoc v5.29.3 +// protoc-gen-govalidator v2.7.2 +// protoc v6.33.0 // source: example.proto package example diff --git a/protobuf/protoc-gen-govalidator/valtest/geo.pb.go b/protobuf/protoc-gen-govalidator/valtest/geo.pb.go index 889f48a..5cb9499 100644 --- a/protobuf/protoc-gen-govalidator/valtest/geo.pb.go +++ b/protobuf/protoc-gen-govalidator/valtest/geo.pb.go @@ -2,8 +2,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.34.2 -// protoc v5.29.3 +// protoc-gen-go v1.36.10 +// protoc v6.33.0 // source: geo.proto package valtest @@ -14,6 +14,7 @@ import ( protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" + unsafe "unsafe" ) const ( @@ -24,22 +25,19 @@ const ( ) type GeoValidationMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Latitude float64 `protobuf:"fixed64,6,opt,name=latitude,proto3" json:"latitude,omitempty"` + Longitude float64 `protobuf:"fixed64,7,opt,name=longitude,proto3" json:"longitude,omitempty"` + Accuracy int32 `protobuf:"varint,9,opt,name=accuracy,proto3" json:"accuracy,omitempty"` unknownFields protoimpl.UnknownFields - - Latitude float64 `protobuf:"fixed64,6,opt,name=latitude,proto3" json:"latitude,omitempty"` - Longitude float64 `protobuf:"fixed64,7,opt,name=longitude,proto3" json:"longitude,omitempty"` - Accuracy int32 `protobuf:"varint,9,opt,name=accuracy,proto3" json:"accuracy,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GeoValidationMessage) Reset() { *x = GeoValidationMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_geo_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_geo_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GeoValidationMessage) String() string { @@ -50,7 +48,7 @@ func (*GeoValidationMessage) ProtoMessage() {} func (x *GeoValidationMessage) ProtoReflect() protoreflect.Message { mi := &file_geo_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -88,37 +86,23 @@ func (x *GeoValidationMessage) GetAccuracy() int32 { var File_geo_proto protoreflect.FileDescriptor -var file_geo_proto_rawDesc = []byte{ - 0x0a, 0x09, 0x67, 0x65, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x76, 0x61, 0x6c, - 0x74, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x73, 0x31, 0x32, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa3, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x6f, - 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x12, 0x2a, 0x0a, 0x08, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x01, 0x42, 0x0e, 0xaa, 0xec, 0x1f, 0x0a, 0x08, 0x01, 0x1a, 0x06, 0x2d, 0x39, 0x30, - 0x3a, 0x39, 0x30, 0x52, 0x08, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x30, 0x0a, - 0x09, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, - 0x42, 0x12, 0xaa, 0xec, 0x1f, 0x0e, 0x08, 0x01, 0x1a, 0x08, 0x2d, 0x31, 0x38, 0x30, 0x3a, 0x31, - 0x38, 0x30, 0x28, 0x01, 0x52, 0x09, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, - 0x2d, 0x0a, 0x08, 0x61, 0x63, 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x05, 0x42, 0x11, 0xaa, 0xec, 0x1f, 0x0d, 0x08, 0x01, 0x1a, 0x07, 0x30, 0x3a, 0x31, 0x30, 0x30, - 0x30, 0x30, 0x28, 0x01, 0x52, 0x08, 0x61, 0x63, 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x42, 0x4c, - 0x5a, 0x4a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x61, 0x66, - 0x65, 0x74, 0x79, 0x43, 0x75, 0x6c, 0x74, 0x75, 0x72, 0x65, 0x2f, 0x73, 0x31, 0x32, 0x2d, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x63, 0x2d, 0x67, 0x65, 0x6e, 0x2d, 0x67, 0x6f, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, -} +const file_geo_proto_rawDesc = "" + + "\n" + + "\tgeo.proto\x12\avaltest\x1a\"s12/protobuf/proto/validator.proto\"\xa3\x01\n" + + "\x14GeoValidationMessage\x12*\n" + + "\blatitude\x18\x06 \x01(\x01B\x0e\xaa\xec\x1f\n" + + "\b\x01\x1a\x06-90:90R\blatitude\x120\n" + + "\tlongitude\x18\a \x01(\x01B\x12\xaa\xec\x1f\x0e\b\x01\x1a\b-180:180(\x01R\tlongitude\x12-\n" + + "\baccuracy\x18\t \x01(\x05B\x11\xaa\xec\x1f\r\b\x01\x1a\a0:10000(\x01R\baccuracyBLZJgithub.com/SafetyCulture/s12-proto/protobuf/protoc-gen-govalidator/valtestb\x06proto3" var ( file_geo_proto_rawDescOnce sync.Once - file_geo_proto_rawDescData = file_geo_proto_rawDesc + file_geo_proto_rawDescData []byte ) func file_geo_proto_rawDescGZIP() []byte { file_geo_proto_rawDescOnce.Do(func() { - file_geo_proto_rawDescData = protoimpl.X.CompressGZIP(file_geo_proto_rawDescData) + file_geo_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_geo_proto_rawDesc), len(file_geo_proto_rawDesc))) }) return file_geo_proto_rawDescData } @@ -140,25 +124,11 @@ func file_geo_proto_init() { if File_geo_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_geo_proto_msgTypes[0].Exporter = func(v any, i int) any { - switch v := v.(*GeoValidationMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_geo_proto_rawDesc, + RawDescriptor: unsafe.Slice(unsafe.StringData(file_geo_proto_rawDesc), len(file_geo_proto_rawDesc)), NumEnums: 0, NumMessages: 1, NumExtensions: 0, @@ -169,7 +139,6 @@ func file_geo_proto_init() { MessageInfos: file_geo_proto_msgTypes, }.Build() File_geo_proto = out.File - file_geo_proto_rawDesc = nil file_geo_proto_goTypes = nil file_geo_proto_depIdxs = nil } diff --git a/protobuf/protoc-gen-govalidator/valtest/geo.validator.pb.go b/protobuf/protoc-gen-govalidator/valtest/geo.validator.pb.go index 850a580..91562ef 100644 --- a/protobuf/protoc-gen-govalidator/valtest/geo.validator.pb.go +++ b/protobuf/protoc-gen-govalidator/valtest/geo.validator.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-govalidator. DO NOT EDIT. // versions: -// protoc-gen-govalidator v2.7.1 -// protoc v5.29.3 +// protoc-gen-govalidator v2.7.2 +// protoc v6.33.0 // source: geo.proto package valtest diff --git a/protobuf/protoc-gen-govalidator/valtest/geo.validator_regex.pb.go b/protobuf/protoc-gen-govalidator/valtest/geo.validator_regex.pb.go index 93a2ee1..a4c6a61 100644 --- a/protobuf/protoc-gen-govalidator/valtest/geo.validator_regex.pb.go +++ b/protobuf/protoc-gen-govalidator/valtest/geo.validator_regex.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-govalidator. DO NOT EDIT. // versions: -// protoc-gen-govalidator v2.7.1 -// protoc v5.29.3 +// protoc-gen-govalidator v2.7.2 +// protoc v6.33.0 // source: geo.proto package valtest diff --git a/protobuf/protoc-gen-govalidator/valtest/valtest.pb.go b/protobuf/protoc-gen-govalidator/valtest/valtest.pb.go index f801d76..1341be4 100644 --- a/protobuf/protoc-gen-govalidator/valtest/valtest.pb.go +++ b/protobuf/protoc-gen-govalidator/valtest/valtest.pb.go @@ -2,8 +2,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.34.2 -// protoc v5.29.3 +// protoc-gen-go v1.36.10 +// protoc v6.33.0 // source: valtest.proto package valtest @@ -14,6 +14,7 @@ import ( protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" + unsafe "unsafe" ) const ( @@ -120,10 +121,7 @@ func (MyMessageWithRepeatedEnum_MyEnum) EnumDescriptor() ([]byte, []int) { } type ValTestMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // returns an error if the string cannot be parsed as a UUIDv4 Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // we do not support bytes currently for id @@ -138,6 +136,8 @@ type ValTestMessage struct { InnerLegacyId *InnerMessageWithLegacyId `protobuf:"bytes,6,opt,name=inner_legacy_id,json=innerLegacyId,proto3" json:"inner_legacy_id,omitempty"` // returns an error if the string cannot be parsed as a UUID Uuid string `protobuf:"bytes,7,opt,name=uuid,proto3" json:"uuid,omitempty"` + // returns an error if the string cannot be parsed as a UUIDv7 + Uuidv7 string `protobuf:"bytes,8,opt,name=uuidv7,proto3" json:"uuidv7,omitempty"` // email validation Email string `protobuf:"bytes,11,opt,name=email,proto3" json:"email,omitempty"` // optional email address @@ -184,7 +184,7 @@ type ValTestMessage struct { OptionalString *string `protobuf:"bytes,42,opt,name=optional_string,json=optionalString,proto3,oneof" json:"optional_string,omitempty"` // field without any validation NoValidation string `protobuf:"bytes,50,opt,name=no_validation,json=noValidation,proto3" json:"no_validation,omitempty"` - // Types that are assignable to ContactOneof: + // Types that are valid to be assigned to ContactOneof: // // *ValTestMessage_Fax // *ValTestMessage_Phone @@ -192,7 +192,7 @@ type ValTestMessage struct { // Required inner message MsgRequired *InnerMessage `protobuf:"bytes,53,opt,name=msg_required,json=msgRequired,proto3" json:"msg_required,omitempty"` NestedMessage *ValTestMessage_NestedMessage `protobuf:"bytes,56,opt,name=nested_message,json=nestedMessage,proto3" json:"nested_message,omitempty"` - NotSupported map[string]string `protobuf:"bytes,57,rep,name=not_supported,json=notSupported,proto3" json:"not_supported,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + NotSupported map[string]string `protobuf:"bytes,57,rep,name=not_supported,json=notSupported,proto3" json:"not_supported,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` ContactsWithLengthConstraint []*ValTestMessage_Contact `protobuf:"bytes,58,rep,name=contacts_with_length_constraint,json=contactsWithLengthConstraint,proto3" json:"contacts_with_length_constraint,omitempty"` ContactsWithoutLengthConstraint []*ValTestMessage_Contact `protobuf:"bytes,59,rep,name=contacts_without_length_constraint,json=contactsWithoutLengthConstraint,proto3" json:"contacts_without_length_constraint,omitempty"` // returns an error if the string cannot be parsed as a S12 id @@ -206,15 +206,15 @@ type ValTestMessage struct { TimezoneOptional string `protobuf:"bytes,66,opt,name=timezone_optional,json=timezoneOptional,proto3" json:"timezone_optional,omitempty"` LongString string `protobuf:"bytes,67,opt,name=long_string,json=longString,proto3" json:"long_string,omitempty"` StringWithPrefix string `protobuf:"bytes,68,opt,name=string_with_prefix,json=stringWithPrefix,proto3" json:"string_with_prefix,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ValTestMessage) Reset() { *x = ValTestMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ValTestMessage) String() string { @@ -225,7 +225,7 @@ func (*ValTestMessage) ProtoMessage() {} func (x *ValTestMessage) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -282,6 +282,13 @@ func (x *ValTestMessage) GetUuid() string { return "" } +func (x *ValTestMessage) GetUuidv7() string { + if x != nil { + return x.Uuidv7 + } + return "" +} + func (x *ValTestMessage) GetEmail() string { if x != nil { return x.Email @@ -457,23 +464,27 @@ func (x *ValTestMessage) GetNoValidation() string { return "" } -func (m *ValTestMessage) GetContactOneof() isValTestMessage_ContactOneof { - if m != nil { - return m.ContactOneof +func (x *ValTestMessage) GetContactOneof() isValTestMessage_ContactOneof { + if x != nil { + return x.ContactOneof } return nil } func (x *ValTestMessage) GetFax() string { - if x, ok := x.GetContactOneof().(*ValTestMessage_Fax); ok { - return x.Fax + if x != nil { + if x, ok := x.ContactOneof.(*ValTestMessage_Fax); ok { + return x.Fax + } } return "" } func (x *ValTestMessage) GetPhone() string { - if x, ok := x.GetContactOneof().(*ValTestMessage_Phone); ok { - return x.Phone + if x != nil { + if x, ok := x.ContactOneof.(*ValTestMessage_Phone); ok { + return x.Phone + } } return "" } @@ -593,29 +604,26 @@ func (*ValTestMessage_Fax) isValTestMessage_ContactOneof() {} func (*ValTestMessage_Phone) isValTestMessage_ContactOneof() {} type LogOnlyValidationMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + ImageId string `protobuf:"bytes,1,opt,name=image_id,json=imageId,proto3" json:"image_id,omitempty"` + InspectionId string `protobuf:"bytes,2,opt,name=inspection_id,json=inspectionId,proto3" json:"inspection_id,omitempty"` + OwnerId string `protobuf:"bytes,3,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` + Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title,omitempty"` + Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"` + Latitude float64 `protobuf:"fixed64,6,opt,name=latitude,proto3" json:"latitude,omitempty"` + Longitude float64 `protobuf:"fixed64,7,opt,name=longitude,proto3" json:"longitude,omitempty"` + Accuracy int32 `protobuf:"varint,9,opt,name=accuracy,proto3" json:"accuracy,omitempty"` + Answer string `protobuf:"bytes,10,opt,name=answer,proto3" json:"answer,omitempty"` + Note string `protobuf:"bytes,11,opt,name=note,proto3" json:"note,omitempty"` unknownFields protoimpl.UnknownFields - - ImageId string `protobuf:"bytes,1,opt,name=image_id,json=imageId,proto3" json:"image_id,omitempty"` - InspectionId string `protobuf:"bytes,2,opt,name=inspection_id,json=inspectionId,proto3" json:"inspection_id,omitempty"` - OwnerId string `protobuf:"bytes,3,opt,name=owner_id,json=ownerId,proto3" json:"owner_id,omitempty"` - Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title,omitempty"` - Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"` - Latitude float64 `protobuf:"fixed64,6,opt,name=latitude,proto3" json:"latitude,omitempty"` - Longitude float64 `protobuf:"fixed64,7,opt,name=longitude,proto3" json:"longitude,omitempty"` - Accuracy int32 `protobuf:"varint,9,opt,name=accuracy,proto3" json:"accuracy,omitempty"` - Answer string `protobuf:"bytes,10,opt,name=answer,proto3" json:"answer,omitempty"` - Note string `protobuf:"bytes,11,opt,name=note,proto3" json:"note,omitempty"` + sizeCache protoimpl.SizeCache } func (x *LogOnlyValidationMessage) Reset() { *x = LogOnlyValidationMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *LogOnlyValidationMessage) String() string { @@ -626,7 +634,7 @@ func (*LogOnlyValidationMessage) ProtoMessage() {} func (x *LogOnlyValidationMessage) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -712,28 +720,25 @@ func (x *LogOnlyValidationMessage) GetNote() string { } type LowercaseValidationMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Uuidv4 string `protobuf:"bytes,1,opt,name=uuidv4,proto3" json:"uuidv4,omitempty"` + Uuidv4LogOnly string `protobuf:"bytes,2,opt,name=uuidv4_log_only,json=uuidv4LogOnly,proto3" json:"uuidv4_log_only,omitempty"` + S12Id string `protobuf:"bytes,3,opt,name=s12id,proto3" json:"s12id,omitempty"` + S12IdLogOnly string `protobuf:"bytes,4,opt,name=s12id_log_only,json=s12idLogOnly,proto3" json:"s12id_log_only,omitempty"` + Legacy string `protobuf:"bytes,5,opt,name=legacy,proto3" json:"legacy,omitempty"` + LegacyLogOnly string `protobuf:"bytes,6,opt,name=legacy_log_only,json=legacyLogOnly,proto3" json:"legacy_log_only,omitempty"` + RevId string `protobuf:"bytes,7,opt,name=rev_id,json=revId,proto3" json:"rev_id,omitempty"` + QuestionId string `protobuf:"bytes,8,opt,name=question_id,json=questionId,proto3" json:"question_id,omitempty"` + ItemId string `protobuf:"bytes,9,opt,name=item_id,json=itemId,proto3" json:"item_id,omitempty"` unknownFields protoimpl.UnknownFields - - Uuidv4 string `protobuf:"bytes,1,opt,name=uuidv4,proto3" json:"uuidv4,omitempty"` - Uuidv4LogOnly string `protobuf:"bytes,2,opt,name=uuidv4_log_only,json=uuidv4LogOnly,proto3" json:"uuidv4_log_only,omitempty"` - S12Id string `protobuf:"bytes,3,opt,name=s12id,proto3" json:"s12id,omitempty"` - S12IdLogOnly string `protobuf:"bytes,4,opt,name=s12id_log_only,json=s12idLogOnly,proto3" json:"s12id_log_only,omitempty"` - Legacy string `protobuf:"bytes,5,opt,name=legacy,proto3" json:"legacy,omitempty"` - LegacyLogOnly string `protobuf:"bytes,6,opt,name=legacy_log_only,json=legacyLogOnly,proto3" json:"legacy_log_only,omitempty"` - RevId string `protobuf:"bytes,7,opt,name=rev_id,json=revId,proto3" json:"rev_id,omitempty"` - QuestionId string `protobuf:"bytes,8,opt,name=question_id,json=questionId,proto3" json:"question_id,omitempty"` - ItemId string `protobuf:"bytes,9,opt,name=item_id,json=itemId,proto3" json:"item_id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *LowercaseValidationMessage) Reset() { *x = LowercaseValidationMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *LowercaseValidationMessage) String() string { @@ -744,7 +749,7 @@ func (*LowercaseValidationMessage) ProtoMessage() {} func (x *LowercaseValidationMessage) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -823,20 +828,17 @@ func (x *LowercaseValidationMessage) GetItemId() string { } type OuterMessageUsingNestedMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + SomeMessage *ValTestMessage_NestedMessage `protobuf:"bytes,1,opt,name=some_message,json=someMessage,proto3" json:"some_message,omitempty"` unknownFields protoimpl.UnknownFields - - SomeMessage *ValTestMessage_NestedMessage `protobuf:"bytes,1,opt,name=some_message,json=someMessage,proto3" json:"some_message,omitempty"` + sizeCache protoimpl.SizeCache } func (x *OuterMessageUsingNestedMessage) Reset() { *x = OuterMessageUsingNestedMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *OuterMessageUsingNestedMessage) String() string { @@ -847,7 +849,7 @@ func (*OuterMessageUsingNestedMessage) ProtoMessage() {} func (x *OuterMessageUsingNestedMessage) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -870,20 +872,17 @@ func (x *OuterMessageUsingNestedMessage) GetSomeMessage() *ValTestMessage_Nested } type InnerMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *InnerMessage) Reset() { *x = InnerMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *InnerMessage) String() string { @@ -894,7 +893,7 @@ func (*InnerMessage) ProtoMessage() {} func (x *InnerMessage) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -917,20 +916,17 @@ func (x *InnerMessage) GetId() string { } type InnerMessageWithLegacyId struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *InnerMessageWithLegacyId) Reset() { *x = InnerMessageWithLegacyId{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *InnerMessageWithLegacyId) String() string { @@ -941,7 +937,7 @@ func (*InnerMessageWithLegacyId) ProtoMessage() {} func (x *InnerMessageWithLegacyId) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -964,20 +960,17 @@ func (x *InnerMessageWithLegacyId) GetId() string { } type InnerMessageWithS12Id struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *InnerMessageWithS12Id) Reset() { *x = InnerMessageWithS12Id{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *InnerMessageWithS12Id) String() string { @@ -988,7 +981,7 @@ func (*InnerMessageWithS12Id) ProtoMessage() {} func (x *InnerMessageWithS12Id) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1011,20 +1004,17 @@ func (x *InnerMessageWithS12Id) GetId() string { } type NestedLevel3Message struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + OrgId5 string `protobuf:"bytes,1,opt,name=org_id5,json=orgId5,proto3" json:"org_id5,omitempty"` unknownFields protoimpl.UnknownFields - - OrgId5 string `protobuf:"bytes,1,opt,name=org_id5,json=orgId5,proto3" json:"org_id5,omitempty"` + sizeCache protoimpl.SizeCache } func (x *NestedLevel3Message) Reset() { *x = NestedLevel3Message{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *NestedLevel3Message) String() string { @@ -1035,7 +1025,7 @@ func (*NestedLevel3Message) ProtoMessage() {} func (x *NestedLevel3Message) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1058,21 +1048,18 @@ func (x *NestedLevel3Message) GetOrgId5() string { } type NestedLevel2Message struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + OrgId4 string `protobuf:"bytes,1,opt,name=org_id4,json=orgId4,proto3" json:"org_id4,omitempty"` + OrgNested *NestedLevel3Message `protobuf:"bytes,2,opt,name=org_nested,json=orgNested,proto3" json:"org_nested,omitempty"` unknownFields protoimpl.UnknownFields - - OrgId4 string `protobuf:"bytes,1,opt,name=org_id4,json=orgId4,proto3" json:"org_id4,omitempty"` - OrgNested *NestedLevel3Message `protobuf:"bytes,2,opt,name=org_nested,json=orgNested,proto3" json:"org_nested,omitempty"` + sizeCache protoimpl.SizeCache } func (x *NestedLevel2Message) Reset() { *x = NestedLevel2Message{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *NestedLevel2Message) String() string { @@ -1083,7 +1070,7 @@ func (*NestedLevel2Message) ProtoMessage() {} func (x *NestedLevel2Message) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1113,21 +1100,18 @@ func (x *NestedLevel2Message) GetOrgNested() *NestedLevel3Message { } type NestedLevel1Message struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + OrgId3 string `protobuf:"bytes,1,opt,name=org_id3,json=orgId3,proto3" json:"org_id3,omitempty"` + OrgNested *NestedLevel2Message `protobuf:"bytes,2,opt,name=org_nested,json=orgNested,proto3" json:"org_nested,omitempty"` unknownFields protoimpl.UnknownFields - - OrgId3 string `protobuf:"bytes,1,opt,name=org_id3,json=orgId3,proto3" json:"org_id3,omitempty"` - OrgNested *NestedLevel2Message `protobuf:"bytes,2,opt,name=org_nested,json=orgNested,proto3" json:"org_nested,omitempty"` + sizeCache protoimpl.SizeCache } func (x *NestedLevel1Message) Reset() { *x = NestedLevel1Message{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *NestedLevel1Message) String() string { @@ -1138,7 +1122,7 @@ func (*NestedLevel1Message) ProtoMessage() {} func (x *NestedLevel1Message) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1168,21 +1152,18 @@ func (x *NestedLevel1Message) GetOrgNested() *NestedLevel2Message { } type MyReqMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` + OrgNested *NestedLevel1Message `protobuf:"bytes,2,opt,name=org_nested,json=orgNested,proto3" json:"org_nested,omitempty"` unknownFields protoimpl.UnknownFields - - UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` - OrgNested *NestedLevel1Message `protobuf:"bytes,2,opt,name=org_nested,json=orgNested,proto3" json:"org_nested,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MyReqMessage) Reset() { *x = MyReqMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *MyReqMessage) String() string { @@ -1193,7 +1174,7 @@ func (*MyReqMessage) ProtoMessage() {} func (x *MyReqMessage) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1223,20 +1204,17 @@ func (x *MyReqMessage) GetOrgNested() *NestedLevel1Message { } type ScimEmail struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"` unknownFields protoimpl.UnknownFields - - Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ScimEmail) Reset() { *x = ScimEmail{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ScimEmail) String() string { @@ -1247,7 +1225,7 @@ func (*ScimEmail) ProtoMessage() {} func (x *ScimEmail) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1270,20 +1248,17 @@ func (x *ScimEmail) GetValue() string { } type ScimUser struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Emails []*ScimEmail `protobuf:"bytes,5,rep,name=emails,proto3" json:"emails,omitempty"` unknownFields protoimpl.UnknownFields - - Emails []*ScimEmail `protobuf:"bytes,5,rep,name=emails,proto3" json:"emails,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ScimUser) Reset() { *x = ScimUser{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ScimUser) String() string { @@ -1294,7 +1269,7 @@ func (*ScimUser) ProtoMessage() {} func (x *ScimUser) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1317,21 +1292,18 @@ func (x *ScimUser) GetEmails() []*ScimEmail { } type MyMessageWithEnum struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Enum MyMessageWithEnum_MyEnum `protobuf:"varint,1,opt,name=enum,proto3,enum=valtest.MyMessageWithEnum_MyEnum" json:"enum,omitempty"` + Enums []MyMessageWithEnum_MyEnum `protobuf:"varint,2,rep,packed,name=enums,proto3,enum=valtest.MyMessageWithEnum_MyEnum" json:"enums,omitempty"` unknownFields protoimpl.UnknownFields - - Enum MyMessageWithEnum_MyEnum `protobuf:"varint,1,opt,name=enum,proto3,enum=valtest.MyMessageWithEnum_MyEnum" json:"enum,omitempty"` - Enums []MyMessageWithEnum_MyEnum `protobuf:"varint,2,rep,packed,name=enums,proto3,enum=valtest.MyMessageWithEnum_MyEnum" json:"enums,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MyMessageWithEnum) Reset() { *x = MyMessageWithEnum{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *MyMessageWithEnum) String() string { @@ -1342,7 +1314,7 @@ func (*MyMessageWithEnum) ProtoMessage() {} func (x *MyMessageWithEnum) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1372,20 +1344,17 @@ func (x *MyMessageWithEnum) GetEnums() []MyMessageWithEnum_MyEnum { } type MyMessageWithRepeatedEnum struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Enums []MyMessageWithRepeatedEnum_MyEnum `protobuf:"varint,1,rep,packed,name=enums,proto3,enum=valtest.MyMessageWithRepeatedEnum_MyEnum" json:"enums,omitempty"` unknownFields protoimpl.UnknownFields - - Enums []MyMessageWithRepeatedEnum_MyEnum `protobuf:"varint,1,rep,packed,name=enums,proto3,enum=valtest.MyMessageWithRepeatedEnum_MyEnum" json:"enums,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MyMessageWithRepeatedEnum) Reset() { *x = MyMessageWithRepeatedEnum{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *MyMessageWithRepeatedEnum) String() string { @@ -1396,7 +1365,7 @@ func (*MyMessageWithRepeatedEnum) ProtoMessage() {} func (x *MyMessageWithRepeatedEnum) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1421,20 +1390,17 @@ func (x *MyMessageWithRepeatedEnum) GetEnums() []MyMessageWithRepeatedEnum_MyEnu // MyMessageWithRepeatedField ... // gvalidator shouldn't generate empty for loop. type MyMessageWithRepeatedField struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + MyInt []int32 `protobuf:"varint,1,rep,packed,name=my_int,json=myInt,proto3" json:"my_int,omitempty"` unknownFields protoimpl.UnknownFields - - MyInt []int32 `protobuf:"varint,1,rep,packed,name=my_int,json=myInt,proto3" json:"my_int,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MyMessageWithRepeatedField) Reset() { *x = MyMessageWithRepeatedField{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *MyMessageWithRepeatedField) String() string { @@ -1445,7 +1411,7 @@ func (*MyMessageWithRepeatedField) ProtoMessage() {} func (x *MyMessageWithRepeatedField) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1468,25 +1434,22 @@ func (x *MyMessageWithRepeatedField) GetMyInt() []int32 { } type MyOneOfMsg struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to MyField: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to MyField: // // *MyOneOfMsg_MyFirstField // *MyOneOfMsg_MySecondField // *MyOneOfMsg_MyThirdField - MyField isMyOneOfMsg_MyField `protobuf_oneof:"my_field"` + MyField isMyOneOfMsg_MyField `protobuf_oneof:"my_field"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *MyOneOfMsg) Reset() { *x = MyOneOfMsg{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *MyOneOfMsg) String() string { @@ -1497,7 +1460,7 @@ func (*MyOneOfMsg) ProtoMessage() {} func (x *MyOneOfMsg) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1512,30 +1475,36 @@ func (*MyOneOfMsg) Descriptor() ([]byte, []int) { return file_valtest_proto_rawDescGZIP(), []int{16} } -func (m *MyOneOfMsg) GetMyField() isMyOneOfMsg_MyField { - if m != nil { - return m.MyField +func (x *MyOneOfMsg) GetMyField() isMyOneOfMsg_MyField { + if x != nil { + return x.MyField } return nil } func (x *MyOneOfMsg) GetMyFirstField() *MyOneOfMsg_FirstType { - if x, ok := x.GetMyField().(*MyOneOfMsg_MyFirstField); ok { - return x.MyFirstField + if x != nil { + if x, ok := x.MyField.(*MyOneOfMsg_MyFirstField); ok { + return x.MyFirstField + } } return nil } func (x *MyOneOfMsg) GetMySecondField() *MyOneOfMsg_SecondType { - if x, ok := x.GetMyField().(*MyOneOfMsg_MySecondField); ok { - return x.MySecondField + if x != nil { + if x, ok := x.MyField.(*MyOneOfMsg_MySecondField); ok { + return x.MySecondField + } } return nil } func (x *MyOneOfMsg) GetMyThirdField() string { - if x, ok := x.GetMyField().(*MyOneOfMsg_MyThirdField); ok { - return x.MyThirdField + if x != nil { + if x, ok := x.MyField.(*MyOneOfMsg_MyThirdField); ok { + return x.MyThirdField + } } return "" } @@ -1563,10 +1532,7 @@ func (*MyOneOfMsg_MySecondField) isMyOneOfMsg_MyField() {} func (*MyOneOfMsg_MyThirdField) isMyOneOfMsg_MyField() {} type NumberMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` NanAllowed float64 `protobuf:"fixed64,1,opt,name=nan_allowed,json=nanAllowed,proto3" json:"nan_allowed,omitempty"` NanDisallowed float64 `protobuf:"fixed64,2,opt,name=nan_disallowed,json=nanDisallowed,proto3" json:"nan_disallowed,omitempty"` DefaultNan float64 `protobuf:"fixed64,3,opt,name=default_nan,json=defaultNan,proto3" json:"default_nan,omitempty"` // no validator @@ -1582,15 +1548,15 @@ type NumberMessage struct { UintTest uint32 `protobuf:"varint,13,opt,name=uint_test,json=uintTest,proto3" json:"uint_test,omitempty"` RepeatedInt []int32 `protobuf:"varint,14,rep,packed,name=repeated_int,json=repeatedInt,proto3" json:"repeated_int,omitempty"` NestedNumber *NumberMessage_NestedNumber `protobuf:"bytes,15,opt,name=nested_number,json=nestedNumber,proto3" json:"nested_number,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *NumberMessage) Reset() { *x = NumberMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *NumberMessage) String() string { @@ -1601,7 +1567,7 @@ func (*NumberMessage) ProtoMessage() {} func (x *NumberMessage) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1722,23 +1688,20 @@ func (x *NumberMessage) GetNestedNumber() *NumberMessage_NestedNumber { } type NonUrlMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Returns an error if the string contains a full URL RejectUrlTest string `protobuf:"bytes,1,opt,name=reject_url_test,json=rejectUrlTest,proto3" json:"reject_url_test,omitempty"` // Replaces partial URLs with a "safer" version BreakPartialUrlTest string `protobuf:"bytes,2,opt,name=break_partial_url_test,json=breakPartialUrlTest,proto3" json:"break_partial_url_test,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *NonUrlMessage) Reset() { *x = NonUrlMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *NonUrlMessage) String() string { @@ -1749,7 +1712,7 @@ func (*NonUrlMessage) ProtoMessage() {} func (x *NonUrlMessage) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1779,22 +1742,19 @@ func (x *NonUrlMessage) GetBreakPartialUrlTest() string { } type ValTestMessage_NestedMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Val string `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` + NestedEmail string `protobuf:"bytes,54,opt,name=nested_email,json=nestedEmail,proto3" json:"nested_email,omitempty"` + MemberEmails []string `protobuf:"bytes,55,rep,name=member_emails,json=memberEmails,proto3" json:"member_emails,omitempty"` unknownFields protoimpl.UnknownFields - - Val string `protobuf:"bytes,1,opt,name=val,proto3" json:"val,omitempty"` - NestedEmail string `protobuf:"bytes,54,opt,name=nested_email,json=nestedEmail,proto3" json:"nested_email,omitempty"` - MemberEmails []string `protobuf:"bytes,55,rep,name=member_emails,json=memberEmails,proto3" json:"member_emails,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ValTestMessage_NestedMessage) Reset() { *x = ValTestMessage_NestedMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ValTestMessage_NestedMessage) String() string { @@ -1805,7 +1765,7 @@ func (*ValTestMessage_NestedMessage) ProtoMessage() {} func (x *ValTestMessage_NestedMessage) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1842,21 +1802,18 @@ func (x *ValTestMessage_NestedMessage) GetMemberEmails() []string { } type ValTestMessage_Contact struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Phone string `protobuf:"bytes,1,opt,name=phone,proto3" json:"phone,omitempty"` + Email string `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"` unknownFields protoimpl.UnknownFields - - Phone string `protobuf:"bytes,1,opt,name=phone,proto3" json:"phone,omitempty"` - Email string `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ValTestMessage_Contact) Reset() { *x = ValTestMessage_Contact{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ValTestMessage_Contact) String() string { @@ -1867,7 +1824,7 @@ func (*ValTestMessage_Contact) ProtoMessage() {} func (x *ValTestMessage_Contact) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[21] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1897,20 +1854,17 @@ func (x *ValTestMessage_Contact) GetEmail() string { } type ValTestMessage_NestedMessage_InnerNestedMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + InnerVal string `protobuf:"bytes,1,opt,name=inner_val,json=innerVal,proto3" json:"inner_val,omitempty"` unknownFields protoimpl.UnknownFields - - InnerVal string `protobuf:"bytes,1,opt,name=inner_val,json=innerVal,proto3" json:"inner_val,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ValTestMessage_NestedMessage_InnerNestedMessage) Reset() { *x = ValTestMessage_NestedMessage_InnerNestedMessage{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ValTestMessage_NestedMessage_InnerNestedMessage) String() string { @@ -1921,7 +1875,7 @@ func (*ValTestMessage_NestedMessage_InnerNestedMessage) ProtoMessage() {} func (x *ValTestMessage_NestedMessage_InnerNestedMessage) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1944,20 +1898,17 @@ func (x *ValTestMessage_NestedMessage_InnerNestedMessage) GetInnerVal() string { } type MyOneOfMsg_FirstType struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` unknownFields protoimpl.UnknownFields - - Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MyOneOfMsg_FirstType) Reset() { *x = MyOneOfMsg_FirstType{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *MyOneOfMsg_FirstType) String() string { @@ -1968,7 +1919,7 @@ func (*MyOneOfMsg_FirstType) ProtoMessage() {} func (x *MyOneOfMsg_FirstType) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1991,20 +1942,17 @@ func (x *MyOneOfMsg_FirstType) GetValue() int64 { } type MyOneOfMsg_SecondType struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` unknownFields protoimpl.UnknownFields - - Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MyOneOfMsg_SecondType) Reset() { *x = MyOneOfMsg_SecondType{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *MyOneOfMsg_SecondType) String() string { @@ -2015,7 +1963,7 @@ func (*MyOneOfMsg_SecondType) ProtoMessage() {} func (x *MyOneOfMsg_SecondType) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2038,20 +1986,17 @@ func (x *MyOneOfMsg_SecondType) GetValue() int64 { } type NumberMessage_NestedNumber struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` unknownFields protoimpl.UnknownFields - - Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + sizeCache protoimpl.SizeCache } func (x *NumberMessage_NestedNumber) Reset() { *x = NumberMessage_NestedNumber{} - if protoimpl.UnsafeEnabled { - mi := &file_valtest_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_valtest_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *NumberMessage_NestedNumber) String() string { @@ -2062,7 +2007,7 @@ func (*NumberMessage_NestedNumber) ProtoMessage() {} func (x *NumberMessage_NestedNumber) ProtoReflect() protoreflect.Message { mi := &file_valtest_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2086,400 +2031,203 @@ func (x *NumberMessage_NestedNumber) GetValue() int64 { var File_valtest_proto protoreflect.FileDescriptor -var file_valtest_proto_rawDesc = []byte{ - 0x0a, 0x0d, 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, - 0x07, 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x73, 0x31, 0x32, 0x2f, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x96, 0x15, 0x0a, - 0x0e, 0x56, 0x61, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, - 0x14, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0x8a, 0xec, 0x1f, - 0x00, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x09, 0x42, 0x04, 0x8a, 0xec, 0x1f, 0x00, 0x52, 0x03, 0x69, 0x64, 0x73, 0x12, 0x21, 0x0a, - 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x06, 0x8a, 0xec, 0x1f, 0x02, 0x08, 0x01, 0x52, 0x07, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, - 0x12, 0x23, 0x0a, 0x09, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x06, 0x8a, 0xec, 0x1f, 0x02, 0x18, 0x01, 0x52, 0x08, 0x6c, 0x65, 0x67, - 0x61, 0x63, 0x79, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x0f, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6c, - 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, - 0x2e, 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x49, - 0x64, 0x52, 0x0d, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x49, 0x64, - 0x12, 0x1d, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, - 0x8a, 0xec, 0x1f, 0x05, 0x12, 0x03, 0x61, 0x6e, 0x79, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, - 0x1a, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, - 0xf2, 0xeb, 0x1f, 0x00, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x23, 0x0a, 0x09, 0x6f, - 0x70, 0x74, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, - 0xf2, 0xeb, 0x1f, 0x02, 0x08, 0x01, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, - 0x12, 0x2c, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x15, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0xeb, 0x1f, 0x06, 0x1a, 0x04, 0x3a, 0x37, 0x35, - 0x30, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, - 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x16, 0x82, 0xec, 0x1f, 0x12, 0x1a, 0x02, 0x38, 0x3a, 0x3a, 0x0c, 0x7e, 0x24, 0x5e, 0x2b, - 0x60, 0x7b, 0x7d, 0x3d, 0x7c, 0x3b, 0x3c, 0x3e, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x12, 0x20, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x0a, 0xfa, 0xeb, 0x1f, 0x06, 0x1a, 0x04, 0x33, 0x3a, 0x35, 0x30, 0x52, 0x05, 0x74, - 0x69, 0x74, 0x6c, 0x65, 0x12, 0x2a, 0x0a, 0x0c, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x73, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0xeb, 0x1f, 0x03, - 0x1a, 0x01, 0x34, 0x52, 0x0b, 0x66, 0x69, 0x78, 0x65, 0x64, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x12, 0x2c, 0x0a, 0x0b, 0x72, 0x75, 0x6e, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, - 0x19, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xfa, 0xeb, 0x1f, 0x07, 0x1a, 0x01, 0x34, 0x20, 0x01, - 0x40, 0x04, 0x52, 0x0a, 0x72, 0x75, 0x6e, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2d, - 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xfa, 0xeb, 0x1f, 0x02, 0x28, 0x01, 0x52, 0x0d, - 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x32, 0x0a, - 0x12, 0x6e, 0x6f, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xfa, 0xeb, 0x1f, 0x00, 0x52, - 0x10, 0x6e, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x12, 0x2d, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0xeb, 0x1f, 0x06, 0x28, 0x01, 0x3a, - 0x02, 0x7e, 0x23, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x12, 0x2b, 0x0a, 0x0d, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xfa, 0xeb, 0x1f, 0x02, 0x40, 0x02, 0x52, - 0x0c, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2f, 0x0a, - 0x0e, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, - 0x1e, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xfa, 0xeb, 0x1f, 0x04, 0x40, 0x04, 0x40, 0x05, 0x52, - 0x0d, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2d, - 0x0a, 0x0e, 0x6e, 0x65, 0x77, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xfa, 0xeb, 0x1f, 0x02, 0x48, 0x01, 0x52, 0x0d, - 0x6e, 0x65, 0x77, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x3e, 0x0a, - 0x17, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, - 0x67, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x20, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, - 0xfa, 0xeb, 0x1f, 0x02, 0x50, 0x00, 0x52, 0x15, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x45, - 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x25, 0x0a, - 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x21, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x06, 0xfa, 0xeb, 0x1f, 0x02, 0x08, 0x01, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x53, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x12, 0x27, 0x0a, 0x0b, 0x74, 0x72, 0x69, 0x6d, 0x5f, 0x73, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x18, 0x22, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xfa, 0xeb, 0x1f, 0x02, 0x10, - 0x01, 0x52, 0x0a, 0x74, 0x72, 0x69, 0x6d, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x48, 0x0a, - 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x23, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x29, 0xfa, 0xeb, 0x1f, 0x25, 0x08, 0x00, 0x10, 0x00, 0x1a, 0x04, 0x36, 0x2d, 0x32, - 0x30, 0x20, 0x00, 0x28, 0x01, 0x30, 0x01, 0x3a, 0x01, 0x3e, 0x40, 0x06, 0x40, 0x02, 0x40, 0x05, - 0x40, 0x01, 0x40, 0x03, 0x40, 0x04, 0x48, 0x00, 0x50, 0x00, 0x58, 0x00, 0x52, 0x09, 0x61, 0x6c, - 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x25, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x24, 0x20, 0x01, 0x28, 0x09, 0x42, 0x11, 0xfa, 0xeb, 0x1f, 0x0d, 0x08, 0x01, 0x1a, 0x03, 0x3a, - 0x35, 0x30, 0x28, 0x01, 0x3a, 0x02, 0x27, 0x2d, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x29, - 0x0a, 0x08, 0x73, 0x63, 0x5f, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x25, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x0e, 0xfa, 0xeb, 0x1f, 0x0a, 0x08, 0x01, 0x1a, 0x04, 0x3a, 0x35, 0x30, 0x30, 0x28, 0x01, - 0x52, 0x07, 0x73, 0x63, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x44, 0x0a, 0x0d, 0x73, 0x63, 0x5f, - 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x76, 0x65, 0x18, 0x26, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x1f, 0xfa, 0xeb, 0x1f, 0x1b, 0x08, 0x01, 0x1a, 0x05, 0x3a, 0x31, 0x30, 0x30, 0x30, 0x28, - 0x01, 0x30, 0x01, 0x40, 0x06, 0x40, 0x02, 0x40, 0x05, 0x40, 0x01, 0x40, 0x03, 0x40, 0x04, 0x58, - 0x01, 0x52, 0x0c, 0x73, 0x63, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x76, 0x65, 0x12, - 0x32, 0x0a, 0x10, 0x6e, 0x6f, 0x74, 0x5f, 0x73, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x73, 0x65, 0x5f, - 0x70, 0x75, 0x61, 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xfa, 0xeb, 0x1f, 0x04, 0x08, - 0x01, 0x58, 0x00, 0x52, 0x0e, 0x6e, 0x6f, 0x74, 0x53, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x73, 0x65, - 0x50, 0x75, 0x61, 0x12, 0x2b, 0x0a, 0x0c, 0x73, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x73, 0x65, 0x5f, - 0x70, 0x75, 0x61, 0x18, 0x28, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xfa, 0xeb, 0x1f, 0x04, 0x08, - 0x01, 0x58, 0x01, 0x52, 0x0b, 0x73, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x73, 0x65, 0x50, 0x75, 0x61, - 0x12, 0x34, 0x0a, 0x0f, 0x73, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x73, 0x65, 0x5f, 0x6c, 0x65, 0x6e, - 0x67, 0x74, 0x68, 0x18, 0x29, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xfa, 0xeb, 0x1f, 0x07, 0x08, - 0x01, 0x1a, 0x01, 0x32, 0x58, 0x01, 0x52, 0x0e, 0x73, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x73, 0x65, - 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x32, 0x0a, 0x0f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x2a, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x04, 0xfa, 0xeb, 0x1f, 0x00, 0x48, 0x01, 0x52, 0x0e, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0d, 0x6e, 0x6f, - 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x32, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x6e, 0x6f, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x12, 0x0a, 0x03, 0x66, 0x61, 0x78, 0x18, 0x33, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, - 0x66, 0x61, 0x78, 0x12, 0x20, 0x0a, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x34, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x08, 0xfa, 0xeb, 0x1f, 0x04, 0x1a, 0x02, 0x31, 0x31, 0x48, 0x00, 0x52, 0x05, - 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x3e, 0x0a, 0x0c, 0x6d, 0x73, 0x67, 0x5f, 0x72, 0x65, 0x71, - 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x61, - 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x42, 0x04, 0xc8, 0xeb, 0x1f, 0x01, 0x52, 0x0b, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x4c, 0x0a, 0x0e, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x38, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, - 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x52, 0x0d, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x12, 0x4e, 0x0a, 0x0d, 0x6e, 0x6f, 0x74, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x64, 0x18, 0x39, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x76, 0x61, 0x6c, - 0x74, 0x65, 0x73, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x2e, 0x4e, 0x6f, 0x74, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x6e, 0x6f, 0x74, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x64, 0x12, 0x70, 0x0a, 0x1f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, 0x5f, - 0x77, 0x69, 0x74, 0x68, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x73, - 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x18, 0x3a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x76, - 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x42, 0x08, 0xe0, - 0xeb, 0x1f, 0x01, 0xe8, 0xeb, 0x1f, 0x0a, 0x52, 0x1c, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, - 0x73, 0x57, 0x69, 0x74, 0x68, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x73, 0x74, - 0x72, 0x61, 0x69, 0x6e, 0x74, 0x12, 0x6c, 0x0a, 0x22, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, - 0x73, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, - 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x18, 0x3b, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1f, 0x2e, 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x54, - 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, - 0x63, 0x74, 0x52, 0x1f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, - 0x6f, 0x75, 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, - 0x69, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x06, 0x73, 0x31, 0x32, 0x5f, 0x69, 0x64, 0x18, 0x3c, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x06, 0x8a, 0xec, 0x1f, 0x02, 0x20, 0x01, 0x52, 0x05, 0x73, 0x31, 0x32, - 0x49, 0x64, 0x12, 0x40, 0x0a, 0x0c, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x31, 0x32, 0x5f, - 0x69, 0x64, 0x18, 0x3d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x76, 0x61, 0x6c, 0x74, 0x65, - 0x73, 0x74, 0x2e, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, - 0x69, 0x74, 0x68, 0x53, 0x31, 0x32, 0x49, 0x64, 0x52, 0x0a, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x53, - 0x31, 0x32, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x06, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x3e, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0x8a, 0xec, 0x1f, 0x06, 0x08, 0x01, 0x18, 0x01, 0x20, 0x01, - 0x52, 0x05, 0x61, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x3f, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0x9a, 0xec, 0x1f, 0x00, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, - 0x37, 0x0a, 0x0c, 0x75, 0x72, 0x6c, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x6f, 0x70, 0x74, 0x73, 0x18, - 0x40, 0x20, 0x01, 0x28, 0x09, 0x42, 0x15, 0x9a, 0xec, 0x1f, 0x11, 0x08, 0x01, 0x12, 0x03, 0x66, - 0x74, 0x70, 0x12, 0x04, 0x66, 0x74, 0x70, 0x73, 0x18, 0x01, 0x20, 0x01, 0x52, 0x0a, 0x75, 0x72, - 0x6c, 0x41, 0x6c, 0x6c, 0x4f, 0x70, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x08, 0x74, 0x69, 0x6d, 0x65, - 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x41, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xa2, 0xec, 0x1f, 0x00, - 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x7a, 0x6f, 0x6e, 0x65, 0x12, 0x33, 0x0a, 0x11, 0x74, 0x69, - 0x6d, 0x65, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, - 0x42, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xa2, 0xec, 0x1f, 0x02, 0x08, 0x01, 0x52, 0x10, 0x74, - 0x69, 0x6d, 0x65, 0x7a, 0x6f, 0x6e, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, - 0x2f, 0x0a, 0x0b, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x43, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0x82, 0xec, 0x1f, 0x0a, 0x08, 0x01, 0x1a, 0x06, 0x3a, 0x33, - 0x30, 0x30, 0x30, 0x30, 0x52, 0x0a, 0x6c, 0x6f, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x12, 0x3d, 0x0a, 0x12, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, - 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x44, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0f, 0xfa, 0xeb, - 0x1f, 0x0b, 0x08, 0x01, 0x7a, 0x07, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x52, 0x10, 0x73, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x57, 0x69, 0x74, 0x68, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x1a, - 0xca, 0x01, 0x0a, 0x0d, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x12, 0x1d, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, - 0xfa, 0xeb, 0x1f, 0x07, 0x1a, 0x05, 0x31, 0x3a, 0x31, 0x30, 0x30, 0x52, 0x03, 0x76, 0x61, 0x6c, - 0x12, 0x27, 0x0a, 0x0c, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, - 0x18, 0x36, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xf2, 0xeb, 0x1f, 0x00, 0x52, 0x0b, 0x6e, 0x65, - 0x73, 0x74, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x31, 0x0a, 0x0d, 0x6d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x37, 0x20, 0x03, 0x28, 0x09, - 0x42, 0x0c, 0xe0, 0xeb, 0x1f, 0x02, 0xe8, 0xeb, 0x1f, 0x05, 0xf2, 0xeb, 0x1f, 0x00, 0x52, 0x0c, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0x3e, 0x0a, 0x12, - 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x12, 0x28, 0x0a, 0x09, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xfa, 0xeb, 0x1f, 0x07, 0x1a, 0x05, 0x31, 0x3a, 0x31, - 0x30, 0x30, 0x52, 0x08, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, - 0x4e, 0x6f, 0x74, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x41, 0x0a, - 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x12, 0x1a, 0x0a, 0x05, 0x70, 0x68, 0x6f, 0x6e, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xc0, 0xeb, 0x1f, 0x01, 0x52, 0x05, 0x70, - 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x04, 0xf2, 0xeb, 0x1f, 0x00, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, - 0x42, 0x0f, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x5f, 0x6f, 0x6e, 0x65, 0x6f, - 0x66, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x22, 0xc7, 0x03, 0x0a, 0x18, 0x4c, 0x6f, 0x67, 0x4f, 0x6e, 0x6c, - 0x79, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x12, 0x29, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0x80, 0xeb, 0x1f, 0x01, 0x8a, 0xec, 0x1f, 0x06, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2d, 0x0a, - 0x0d, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0x8a, 0xec, 0x1f, 0x04, 0x18, 0x01, 0x20, 0x01, 0x52, 0x0c, - 0x69, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x08, - 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, - 0x8a, 0xec, 0x1f, 0x06, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x14, 0x82, 0xec, 0x1f, 0x10, 0x08, 0x01, 0x1a, 0x04, 0x31, 0x3a, 0x31, 0x30, - 0x28, 0x00, 0x48, 0x01, 0x58, 0x01, 0x60, 0x01, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, - 0x2b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x17, 0x82, - 0xec, 0x1f, 0x13, 0x1a, 0x03, 0x31, 0x3a, 0x35, 0x40, 0x06, 0x40, 0x02, 0x40, 0x05, 0x40, 0x01, - 0x40, 0x03, 0x40, 0x04, 0x58, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x08, - 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x42, 0x0e, - 0xaa, 0xec, 0x1f, 0x0a, 0x08, 0x01, 0x1a, 0x06, 0x2d, 0x39, 0x30, 0x3a, 0x39, 0x30, 0x52, 0x08, - 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x30, 0x0a, 0x09, 0x6c, 0x6f, 0x6e, 0x67, - 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x42, 0x12, 0xaa, 0xec, 0x1f, - 0x0e, 0x08, 0x01, 0x1a, 0x08, 0x2d, 0x31, 0x38, 0x30, 0x3a, 0x31, 0x38, 0x30, 0x28, 0x01, 0x52, - 0x09, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x2d, 0x0a, 0x08, 0x61, 0x63, - 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x42, 0x11, 0xaa, 0xec, - 0x1f, 0x0d, 0x08, 0x01, 0x1a, 0x07, 0x30, 0x3a, 0x31, 0x30, 0x30, 0x30, 0x30, 0x28, 0x01, 0x52, - 0x08, 0x61, 0x63, 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x12, 0x24, 0x0a, 0x06, 0x61, 0x6e, 0x73, - 0x77, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0c, 0xb2, 0xec, 0x1f, 0x08, 0x08, - 0x01, 0x10, 0x01, 0x18, 0x00, 0x20, 0x28, 0x52, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x12, - 0x1e, 0x0a, 0x04, 0x6e, 0x6f, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xb2, - 0xec, 0x1f, 0x06, 0x08, 0x01, 0x18, 0x05, 0x20, 0x28, 0x52, 0x04, 0x6e, 0x6f, 0x74, 0x65, 0x22, - 0x98, 0x03, 0x0a, 0x1a, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x63, 0x61, 0x73, 0x65, 0x56, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1e, - 0x0a, 0x06, 0x75, 0x75, 0x69, 0x64, 0x76, 0x34, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, - 0x8a, 0xec, 0x1f, 0x02, 0x30, 0x01, 0x52, 0x06, 0x75, 0x75, 0x69, 0x64, 0x76, 0x34, 0x12, 0x30, - 0x0a, 0x0f, 0x75, 0x75, 0x69, 0x64, 0x76, 0x34, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x6e, 0x6c, - 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0x8a, 0xec, 0x1f, 0x04, 0x28, 0x01, 0x30, - 0x01, 0x52, 0x0d, 0x75, 0x75, 0x69, 0x64, 0x76, 0x34, 0x4c, 0x6f, 0x67, 0x4f, 0x6e, 0x6c, 0x79, - 0x12, 0x1e, 0x0a, 0x05, 0x73, 0x31, 0x32, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x08, 0x8a, 0xec, 0x1f, 0x04, 0x20, 0x01, 0x30, 0x01, 0x52, 0x05, 0x73, 0x31, 0x32, 0x69, 0x64, - 0x12, 0x30, 0x0a, 0x0e, 0x73, 0x31, 0x32, 0x69, 0x64, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x6e, - 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0x8a, 0xec, 0x1f, 0x06, 0x20, 0x01, - 0x28, 0x01, 0x30, 0x01, 0x52, 0x0c, 0x73, 0x31, 0x32, 0x69, 0x64, 0x4c, 0x6f, 0x67, 0x4f, 0x6e, - 0x6c, 0x79, 0x12, 0x20, 0x0a, 0x06, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x08, 0x8a, 0xec, 0x1f, 0x04, 0x18, 0x01, 0x30, 0x01, 0x52, 0x06, 0x6c, 0x65, - 0x67, 0x61, 0x63, 0x79, 0x12, 0x32, 0x0a, 0x0f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, 0x6c, - 0x6f, 0x67, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0x8a, - 0xec, 0x1f, 0x06, 0x18, 0x01, 0x28, 0x01, 0x30, 0x01, 0x52, 0x0d, 0x6c, 0x65, 0x67, 0x61, 0x63, - 0x79, 0x4c, 0x6f, 0x67, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x34, 0x0a, 0x06, 0x72, 0x65, 0x76, 0x5f, - 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0x8a, 0xeb, 0x1f, 0x19, 0x5e, 0x28, - 0x28, 0x5c, 0x64, 0x29, 0x2b, 0x2d, 0x28, 0x5b, 0x30, 0x2d, 0x39, 0x61, 0x2d, 0x66, 0x5d, 0x29, - 0x7b, 0x33, 0x32, 0x7d, 0x29, 0x3f, 0x24, 0x52, 0x05, 0x72, 0x65, 0x76, 0x49, 0x64, 0x12, 0x27, - 0x0a, 0x0b, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x06, 0x8a, 0xec, 0x1f, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, - 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0x8a, 0xec, 0x1f, 0x04, 0x08, 0x01, - 0x20, 0x01, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x22, 0x6a, 0x0a, 0x1e, 0x4f, 0x75, - 0x74, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x4e, - 0x65, 0x73, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x48, 0x0a, 0x0c, - 0x73, 0x6f, 0x6d, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x56, 0x61, 0x6c, - 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4e, 0x65, 0x73, 0x74, - 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0b, 0x73, 0x6f, 0x6d, 0x65, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x24, 0x0a, 0x0c, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x04, 0x80, 0xeb, 0x1f, 0x01, 0x52, 0x02, 0x69, 0x64, 0x22, 0x32, 0x0a, 0x18, - 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, - 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0x8a, 0xec, 0x1f, 0x02, 0x18, 0x01, 0x52, 0x02, 0x69, 0x64, - 0x22, 0x2f, 0x0a, 0x15, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x57, 0x69, 0x74, 0x68, 0x53, 0x31, 0x32, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0x8a, 0xec, 0x1f, 0x02, 0x20, 0x01, 0x52, 0x02, 0x69, - 0x64, 0x22, 0x37, 0x0a, 0x13, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, - 0x33, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x20, 0x0a, 0x07, 0x6f, 0x72, 0x67, 0x5f, - 0x69, 0x64, 0x35, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0xeb, 0x1f, 0x03, 0x1a, - 0x01, 0x35, 0x52, 0x06, 0x6f, 0x72, 0x67, 0x49, 0x64, 0x35, 0x22, 0x74, 0x0a, 0x13, 0x4e, 0x65, - 0x73, 0x74, 0x65, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x32, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x12, 0x20, 0x0a, 0x07, 0x6f, 0x72, 0x67, 0x5f, 0x69, 0x64, 0x34, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x07, 0xfa, 0xeb, 0x1f, 0x03, 0x1a, 0x01, 0x34, 0x52, 0x06, 0x6f, 0x72, 0x67, - 0x49, 0x64, 0x34, 0x12, 0x3b, 0x0a, 0x0a, 0x6f, 0x72, 0x67, 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x65, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, - 0x74, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x33, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x09, 0x6f, 0x72, 0x67, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, - 0x22, 0x74, 0x0a, 0x13, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x31, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x20, 0x0a, 0x07, 0x6f, 0x72, 0x67, 0x5f, 0x69, - 0x64, 0x33, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0xeb, 0x1f, 0x03, 0x1a, 0x01, - 0x33, 0x52, 0x06, 0x6f, 0x72, 0x67, 0x49, 0x64, 0x33, 0x12, 0x3b, 0x0a, 0x0a, 0x6f, 0x72, 0x67, - 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x32, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x09, 0x6f, 0x72, 0x67, - 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x22, 0x6d, 0x0a, 0x0c, 0x4d, 0x79, 0x52, 0x65, 0x71, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x20, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0xeb, 0x1f, 0x03, 0x1a, 0x01, 0x32, - 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x0a, 0x6f, 0x72, 0x67, 0x5f, - 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, - 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4c, 0x65, 0x76, - 0x65, 0x6c, 0x31, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x09, 0x6f, 0x72, 0x67, 0x4e, - 0x65, 0x73, 0x74, 0x65, 0x64, 0x22, 0x27, 0x0a, 0x09, 0x53, 0x63, 0x69, 0x6d, 0x45, 0x6d, 0x61, - 0x69, 0x6c, 0x12, 0x1a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x04, 0xf2, 0xeb, 0x1f, 0x00, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x36, - 0x0a, 0x08, 0x53, 0x63, 0x69, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x06, 0x65, 0x6d, - 0x61, 0x69, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x76, 0x61, 0x6c, - 0x74, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x63, 0x69, 0x6d, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x06, - 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x22, 0xc5, 0x01, 0x0a, 0x11, 0x4d, 0x79, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, 0x45, 0x6e, 0x75, 0x6d, 0x12, 0x3b, 0x0a, 0x04, - 0x65, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x76, 0x61, 0x6c, - 0x74, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, - 0x74, 0x68, 0x45, 0x6e, 0x75, 0x6d, 0x2e, 0x4d, 0x79, 0x45, 0x6e, 0x75, 0x6d, 0x42, 0x04, 0x90, - 0xec, 0x1f, 0x01, 0x52, 0x04, 0x65, 0x6e, 0x75, 0x6d, 0x12, 0x3d, 0x0a, 0x05, 0x65, 0x6e, 0x75, - 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x76, 0x61, 0x6c, 0x74, 0x65, - 0x73, 0x74, 0x2e, 0x4d, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, - 0x45, 0x6e, 0x75, 0x6d, 0x2e, 0x4d, 0x79, 0x45, 0x6e, 0x75, 0x6d, 0x42, 0x04, 0x90, 0xec, 0x1f, - 0x01, 0x52, 0x05, 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x22, 0x34, 0x0a, 0x06, 0x4d, 0x79, 0x45, 0x6e, - 0x75, 0x6d, 0x12, 0x17, 0x0a, 0x13, 0x4d, 0x59, 0x5f, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x55, 0x4e, - 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4d, - 0x59, 0x5f, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x10, 0x01, 0x22, 0x98, - 0x01, 0x0a, 0x19, 0x4d, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, - 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x45, 0x6e, 0x75, 0x6d, 0x12, 0x45, 0x0a, 0x05, - 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x76, 0x61, - 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, - 0x69, 0x74, 0x68, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x45, 0x6e, 0x75, 0x6d, 0x2e, - 0x4d, 0x79, 0x45, 0x6e, 0x75, 0x6d, 0x42, 0x04, 0x90, 0xec, 0x1f, 0x01, 0x52, 0x05, 0x65, 0x6e, - 0x75, 0x6d, 0x73, 0x22, 0x34, 0x0a, 0x06, 0x4d, 0x79, 0x45, 0x6e, 0x75, 0x6d, 0x12, 0x17, 0x0a, - 0x13, 0x4d, 0x59, 0x5f, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, - 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4d, 0x59, 0x5f, 0x45, 0x4e, 0x55, - 0x4d, 0x5f, 0x46, 0x49, 0x52, 0x53, 0x54, 0x10, 0x01, 0x22, 0x39, 0x0a, 0x1a, 0x4d, 0x79, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x1b, 0x0a, 0x06, 0x6d, 0x79, 0x5f, 0x69, 0x6e, - 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x42, 0x04, 0xe8, 0xeb, 0x1f, 0x05, 0x52, 0x05, 0x6d, - 0x79, 0x49, 0x6e, 0x74, 0x22, 0xaa, 0x02, 0x0a, 0x0a, 0x4d, 0x79, 0x4f, 0x6e, 0x65, 0x4f, 0x66, - 0x4d, 0x73, 0x67, 0x12, 0x45, 0x0a, 0x0e, 0x6d, 0x79, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, - 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x76, 0x61, - 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x79, 0x4f, 0x6e, 0x65, 0x4f, 0x66, 0x4d, 0x73, 0x67, - 0x2e, 0x46, 0x69, 0x72, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0c, 0x6d, 0x79, - 0x46, 0x69, 0x72, 0x73, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x48, 0x0a, 0x0f, 0x6d, 0x79, - 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x79, - 0x4f, 0x6e, 0x65, 0x4f, 0x66, 0x4d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x54, - 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x0d, 0x6d, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x46, - 0x69, 0x65, 0x6c, 0x64, 0x12, 0x2c, 0x0a, 0x0e, 0x6d, 0x79, 0x5f, 0x74, 0x68, 0x69, 0x72, 0x64, - 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xb0, 0xeb, - 0x1f, 0x01, 0x48, 0x00, 0x52, 0x0c, 0x6d, 0x79, 0x54, 0x68, 0x69, 0x72, 0x64, 0x46, 0x69, 0x65, - 0x6c, 0x64, 0x1a, 0x27, 0x0a, 0x09, 0x46, 0x69, 0x72, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x1a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x04, - 0x90, 0xeb, 0x1f, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x28, 0x0a, 0x0a, 0x53, - 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x04, 0x90, 0xeb, 0x1f, 0x02, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x6d, 0x79, 0x5f, 0x66, 0x69, 0x65, 0x6c, - 0x64, 0x22, 0x97, 0x06, 0x0a, 0x0d, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x0b, 0x6e, 0x61, 0x6e, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, - 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x42, 0x06, 0xaa, 0xec, 0x1f, 0x02, 0x10, 0x01, - 0x52, 0x0a, 0x6e, 0x61, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x12, 0x2d, 0x0a, 0x0e, - 0x6e, 0x61, 0x6e, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x01, 0x42, 0x06, 0xaa, 0xec, 0x1f, 0x02, 0x10, 0x00, 0x52, 0x0d, 0x6e, 0x61, - 0x6e, 0x44, 0x69, 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x64, - 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x6e, 0x61, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, - 0x52, 0x0a, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4e, 0x61, 0x6e, 0x12, 0x3b, 0x0a, 0x15, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6e, 0x6f, 0x5f, 0x6e, 0x61, 0x6e, 0x5f, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x42, 0x08, 0xaa, 0xec, 0x1f, - 0x04, 0x08, 0x01, 0x10, 0x00, 0x52, 0x12, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x4e, - 0x6f, 0x4e, 0x61, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x2b, 0x0a, 0x0d, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, - 0x42, 0x06, 0xaa, 0xec, 0x1f, 0x02, 0x08, 0x01, 0x52, 0x0c, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x61, 0x6c, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x2d, 0x0a, 0x0b, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x62, 0x61, 0x73, 0x69, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x42, 0x0c, 0xaa, 0xec, 0x1f, - 0x08, 0x08, 0x01, 0x1a, 0x04, 0x31, 0x3a, 0x31, 0x30, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x67, 0x65, - 0x42, 0x61, 0x73, 0x69, 0x63, 0x12, 0x27, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6c, - 0x6f, 0x77, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x42, 0x0a, 0xaa, 0xec, 0x1f, 0x06, 0x08, 0x01, - 0x1a, 0x02, 0x31, 0x3a, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x4c, 0x6f, 0x77, 0x12, 0x2a, - 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x68, 0x69, 0x67, 0x68, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x01, 0x42, 0x0b, 0xaa, 0xec, 0x1f, 0x07, 0x08, 0x01, 0x1a, 0x03, 0x3a, 0x31, 0x30, 0x52, - 0x09, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x48, 0x69, 0x67, 0x68, 0x12, 0x30, 0x0a, 0x0e, 0x72, 0x61, - 0x6e, 0x67, 0x65, 0x5f, 0x6e, 0x6f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x01, 0x42, 0x09, 0xaa, 0xec, 0x1f, 0x05, 0x08, 0x01, 0x1a, 0x01, 0x3a, 0x52, 0x0d, 0x72, - 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x3a, 0x0a, 0x12, - 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x61, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x01, 0x42, 0x0c, 0xaa, 0xec, 0x1f, 0x08, 0x08, 0x00, - 0x1a, 0x04, 0x31, 0x3a, 0x31, 0x30, 0x52, 0x10, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x74, - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x25, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x5f, - 0x74, 0x65, 0x73, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0a, 0xaa, 0xec, 0x1f, 0x06, - 0x1a, 0x04, 0x31, 0x3a, 0x39, 0x39, 0x52, 0x07, 0x69, 0x6e, 0x74, 0x54, 0x65, 0x73, 0x74, 0x12, - 0x2f, 0x0a, 0x0a, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x03, 0x42, 0x10, 0xaa, 0xec, 0x1f, 0x0c, 0x08, 0x01, 0x1a, 0x08, 0x2d, 0x31, 0x30, - 0x30, 0x3a, 0x31, 0x30, 0x30, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x54, 0x65, 0x73, 0x74, - 0x12, 0x29, 0x0a, 0x09, 0x75, 0x69, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x0d, 0x42, 0x0c, 0xaa, 0xec, 0x1f, 0x08, 0x08, 0x01, 0x1a, 0x04, 0x35, 0x3a, 0x39, - 0x39, 0x52, 0x08, 0x75, 0x69, 0x6e, 0x74, 0x54, 0x65, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x0c, 0x72, - 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x03, 0x28, - 0x05, 0x42, 0x0d, 0xaa, 0xec, 0x1f, 0x09, 0x08, 0x01, 0x1a, 0x05, 0x31, 0x30, 0x3a, 0x32, 0x30, - 0x52, 0x0b, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x74, 0x12, 0x48, 0x0a, - 0x0d, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x4e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4e, 0x65, 0x73, - 0x74, 0x65, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x0c, 0x6e, 0x65, 0x73, 0x74, 0x65, - 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x1a, 0x32, 0x0a, 0x0c, 0x4e, 0x65, 0x73, 0x74, 0x65, - 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x0c, 0xaa, 0xec, 0x1f, 0x08, 0x08, 0x01, 0x1a, 0x04, - 0x3a, 0x31, 0x30, 0x30, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x80, 0x01, 0x0a, 0x0d, - 0x4e, 0x6f, 0x6e, 0x55, 0x72, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x30, 0x0a, - 0x0f, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x5f, 0x74, 0x65, 0x73, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0x82, 0xec, 0x1f, 0x04, 0x08, 0x01, 0x68, 0x01, - 0x52, 0x0d, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x55, 0x72, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x12, - 0x3d, 0x0a, 0x16, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, - 0x5f, 0x75, 0x72, 0x6c, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x08, 0x82, 0xec, 0x1f, 0x04, 0x08, 0x01, 0x70, 0x01, 0x52, 0x13, 0x62, 0x72, 0x65, 0x61, 0x6b, - 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x55, 0x72, 0x6c, 0x54, 0x65, 0x73, 0x74, 0x42, 0x4c, - 0x5a, 0x4a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x61, 0x66, - 0x65, 0x74, 0x79, 0x43, 0x75, 0x6c, 0x74, 0x75, 0x72, 0x65, 0x2f, 0x73, 0x31, 0x32, 0x2d, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x63, 0x2d, 0x67, 0x65, 0x6e, 0x2d, 0x67, 0x6f, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x76, 0x61, 0x6c, 0x74, 0x65, 0x73, 0x74, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, -} +const file_valtest_proto_rawDesc = "" + + "\n" + + "\rvaltest.proto\x12\avaltest\x1a\"s12/protobuf/proto/validator.proto\"\xb8\x15\n" + + "\x0eValTestMessage\x12\x14\n" + + "\x02id\x18\x01 \x01(\tB\x04\x8a\xec\x1f\x00R\x02id\x12\x16\n" + + "\x03ids\x18\x03 \x03(\tB\x04\x8a\xec\x1f\x00R\x03ids\x12!\n" + + "\bmedia_id\x18\x04 \x01(\tB\x06\x8a\xec\x1f\x02\b\x01R\amediaId\x12#\n" + + "\tlegacy_id\x18\x05 \x01(\tB\x06\x8a\xec\x1f\x02\x18\x01R\blegacyId\x12I\n" + + "\x0finner_legacy_id\x18\x06 \x01(\v2!.valtest.InnerMessageWithLegacyIdR\rinnerLegacyId\x12\x1d\n" + + "\x04uuid\x18\a \x01(\tB\t\x8a\xec\x1f\x05\x12\x03anyR\x04uuid\x12 \n" + + "\x06uuidv7\x18\b \x01(\tB\b\x8a\xec\x1f\x04\x12\x02v7R\x06uuidv7\x12\x1a\n" + + "\x05email\x18\v \x01(\tB\x04\xf2\xeb\x1f\x00R\x05email\x12#\n" + + "\topt_email\x18\f \x01(\tB\x06\xf2\xeb\x1f\x02\b\x01R\boptEmail\x12,\n" + + "\vdescription\x18\x15 \x01(\tB\n" + + "\xfa\xeb\x1f\x06\x1a\x04:750R\vdescription\x122\n" + + "\bpassword\x18\x16 \x01(\tB\x16\x82\xec\x1f\x12\x1a\x028::\f~$^+`{}=|;<>R\bpassword\x12 \n" + + "\x05title\x18\x17 \x01(\tB\n" + + "\xfa\xeb\x1f\x06\x1a\x043:50R\x05title\x12*\n" + + "\ffixed_string\x18\x18 \x01(\tB\a\xfa\xeb\x1f\x03\x1a\x014R\vfixedString\x12,\n" + + "\vrune_string\x18\x19 \x01(\tB\v\xfa\xeb\x1f\a\x1a\x014 \x01@\x04R\n" + + "runeString\x12-\n" + + "\x0ereplace_string\x18\x1a \x01(\tB\x06\xfa\xeb\x1f\x02(\x01R\rreplaceString\x122\n" + + "\x12not_replace_string\x18\x1b \x01(\tB\x04\xfa\xeb\x1f\x00R\x10notReplaceString\x12-\n" + + "\fallow_string\x18\x1c \x01(\tB\n" + + "\xfa\xeb\x1f\x06(\x01:\x02~#R\vallowString\x12+\n" + + "\rsymbol_string\x18\x1d \x01(\tB\x06\xfa\xeb\x1f\x02@\x02R\fsymbolString\x12/\n" + + "\x0esymbols_string\x18\x1e \x01(\tB\b\xfa\xeb\x1f\x04@\x04@\x05R\rsymbolsString\x12-\n" + + "\x0enewline_string\x18\x1f \x01(\tB\x06\xfa\xeb\x1f\x02H\x01R\rnewlineString\x12>\n" + + "\x17invalid_encoding_string\x18 \x01(\tB\x06\xfa\xeb\x1f\x02P\x00R\x15invalidEncodingString\x12%\n" + + "\n" + + "opt_string\x18! \x01(\tB\x06\xfa\xeb\x1f\x02\b\x01R\toptString\x12'\n" + + "\vtrim_string\x18\" \x01(\tB\x06\xfa\xeb\x1f\x02\x10\x01R\n" + + "trimString\x12H\n" + + "\n" + + "all_string\x18# \x01(\tB)\xfa\xeb\x1f%\b\x00\x10\x00\x1a\x046-20 \x00(\x010\x01:\x01>@\x06@\x02@\x05@\x01@\x03@\x04H\x00P\x00X\x00R\tallString\x12%\n" + + "\x04name\x18$ \x01(\tB\x11\xfa\xeb\x1f\r\b\x01\x1a\x03:50(\x01:\x02'-R\x04name\x12)\n" + + "\bsc_title\x18% \x01(\tB\x0e\xfa\xeb\x1f\n" + + "\b\x01\x1a\x04:500(\x01R\ascTitle\x12D\n" + + "\rsc_permissive\x18& \x01(\tB\x1f\xfa\xeb\x1f\x1b\b\x01\x1a\x05:1000(\x010\x01@\x06@\x02@\x05@\x01@\x03@\x04X\x01R\fscPermissive\x122\n" + + "\x10not_sanitise_pua\x18' \x01(\tB\b\xfa\xeb\x1f\x04\b\x01X\x00R\x0enotSanitisePua\x12+\n" + + "\fsanitise_pua\x18( \x01(\tB\b\xfa\xeb\x1f\x04\b\x01X\x01R\vsanitisePua\x124\n" + + "\x0fsanitise_length\x18) \x01(\tB\v\xfa\xeb\x1f\a\b\x01\x1a\x012X\x01R\x0esanitiseLength\x122\n" + + "\x0foptional_string\x18* \x01(\tB\x04\xfa\xeb\x1f\x00H\x01R\x0eoptionalString\x88\x01\x01\x12#\n" + + "\rno_validation\x182 \x01(\tR\fnoValidation\x12\x12\n" + + "\x03fax\x183 \x01(\tH\x00R\x03fax\x12 \n" + + "\x05phone\x184 \x01(\tB\b\xfa\xeb\x1f\x04\x1a\x0211H\x00R\x05phone\x12>\n" + + "\fmsg_required\x185 \x01(\v2\x15.valtest.InnerMessageB\x04\xc8\xeb\x1f\x01R\vmsgRequired\x12L\n" + + "\x0enested_message\x188 \x01(\v2%.valtest.ValTestMessage.NestedMessageR\rnestedMessage\x12N\n" + + "\rnot_supported\x189 \x03(\v2).valtest.ValTestMessage.NotSupportedEntryR\fnotSupported\x12p\n" + + "\x1fcontacts_with_length_constraint\x18: \x03(\v2\x1f.valtest.ValTestMessage.ContactB\b\xe0\xeb\x1f\x01\xe8\xeb\x1f\n" + + "R\x1ccontactsWithLengthConstraint\x12l\n" + + "\"contacts_without_length_constraint\x18; \x03(\v2\x1f.valtest.ValTestMessage.ContactR\x1fcontactsWithoutLengthConstraint\x12\x1d\n" + + "\x06s12_id\x18< \x01(\tB\x06\x8a\xec\x1f\x02 \x01R\x05s12Id\x12@\n" + + "\finner_s12_id\x18= \x01(\v2\x1e.valtest.InnerMessageWithS12IdR\n" + + "innerS12Id\x12!\n" + + "\x06all_id\x18> \x01(\tB\n" + + "\x8a\xec\x1f\x06\b\x01\x18\x01 \x01R\x05allId\x12\x16\n" + + "\x03url\x18? \x01(\tB\x04\x9a\xec\x1f\x00R\x03url\x127\n" + + "\furl_all_opts\x18@ \x01(\tB\x15\x9a\xec\x1f\x11\b\x01\x12\x03ftp\x12\x04ftps\x18\x01 \x01R\n" + + "urlAllOpts\x12 \n" + + "\btimezone\x18A \x01(\tB\x04\xa2\xec\x1f\x00R\btimezone\x123\n" + + "\x11timezone_optional\x18B \x01(\tB\x06\xa2\xec\x1f\x02\b\x01R\x10timezoneOptional\x12/\n" + + "\vlong_string\x18C \x01(\tB\x0e\x82\xec\x1f\n" + + "\b\x01\x1a\x06:30000R\n" + + "longString\x12=\n" + + "\x12string_with_prefix\x18D \x01(\tB\x0f\xfa\xeb\x1f\v\b\x01z\aprefix_R\x10stringWithPrefix\x1a\xca\x01\n" + + "\rNestedMessage\x12\x1d\n" + + "\x03val\x18\x01 \x01(\tB\v\xfa\xeb\x1f\a\x1a\x051:100R\x03val\x12'\n" + + "\fnested_email\x186 \x01(\tB\x04\xf2\xeb\x1f\x00R\vnestedEmail\x121\n" + + "\rmember_emails\x187 \x03(\tB\f\xe0\xeb\x1f\x02\xe8\xeb\x1f\x05\xf2\xeb\x1f\x00R\fmemberEmails\x1a>\n" + + "\x12InnerNestedMessage\x12(\n" + + "\tinner_val\x18\x01 \x01(\tB\v\xfa\xeb\x1f\a\x1a\x051:100R\binnerVal\x1a?\n" + + "\x11NotSupportedEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1aA\n" + + "\aContact\x12\x1a\n" + + "\x05phone\x18\x01 \x01(\tB\x04\xc0\xeb\x1f\x01R\x05phone\x12\x1a\n" + + "\x05email\x18\x02 \x01(\tB\x04\xf2\xeb\x1f\x00R\x05emailB\x0f\n" + + "\rcontact_oneofB\x12\n" + + "\x10_optional_string\"\xc7\x03\n" + + "\x18LogOnlyValidationMessage\x12)\n" + + "\bimage_id\x18\x01 \x01(\tB\x0e\x80\xeb\x1f\x01\x8a\xec\x1f\x06\x18\x01 \x01(\x01R\aimageId\x12-\n" + + "\rinspection_id\x18\x02 \x01(\tB\b\x8a\xec\x1f\x04\x18\x01 \x01R\finspectionId\x12%\n" + + "\bowner_id\x18\x03 \x01(\tB\n" + + "\x8a\xec\x1f\x06\x18\x01 \x01(\x01R\aownerId\x12*\n" + + "\x05title\x18\x04 \x01(\tB\x14\x82\xec\x1f\x10\b\x01\x1a\x041:10(\x00H\x01X\x01`\x01R\x05title\x12+\n" + + "\x04name\x18\x05 \x01(\tB\x17\x82\xec\x1f\x13\x1a\x031:5@\x06@\x02@\x05@\x01@\x03@\x04X\x01R\x04name\x12*\n" + + "\blatitude\x18\x06 \x01(\x01B\x0e\xaa\xec\x1f\n" + + "\b\x01\x1a\x06-90:90R\blatitude\x120\n" + + "\tlongitude\x18\a \x01(\x01B\x12\xaa\xec\x1f\x0e\b\x01\x1a\b-180:180(\x01R\tlongitude\x12-\n" + + "\baccuracy\x18\t \x01(\x05B\x11\xaa\xec\x1f\r\b\x01\x1a\a0:10000(\x01R\baccuracy\x12$\n" + + "\x06answer\x18\n" + + " \x01(\tB\f\xb2\xec\x1f\b\b\x01\x10\x01\x18\x00 (R\x06answer\x12\x1e\n" + + "\x04note\x18\v \x01(\tB\n" + + "\xb2\xec\x1f\x06\b\x01\x18\x05 (R\x04note\"\x98\x03\n" + + "\x1aLowercaseValidationMessage\x12\x1e\n" + + "\x06uuidv4\x18\x01 \x01(\tB\x06\x8a\xec\x1f\x020\x01R\x06uuidv4\x120\n" + + "\x0fuuidv4_log_only\x18\x02 \x01(\tB\b\x8a\xec\x1f\x04(\x010\x01R\ruuidv4LogOnly\x12\x1e\n" + + "\x05s12id\x18\x03 \x01(\tB\b\x8a\xec\x1f\x04 \x010\x01R\x05s12id\x120\n" + + "\x0es12id_log_only\x18\x04 \x01(\tB\n" + + "\x8a\xec\x1f\x06 \x01(\x010\x01R\fs12idLogOnly\x12 \n" + + "\x06legacy\x18\x05 \x01(\tB\b\x8a\xec\x1f\x04\x18\x010\x01R\x06legacy\x122\n" + + "\x0flegacy_log_only\x18\x06 \x01(\tB\n" + + "\x8a\xec\x1f\x06\x18\x01(\x010\x01R\rlegacyLogOnly\x124\n" + + "\x06rev_id\x18\a \x01(\tB\x1d\x8a\xeb\x1f\x19^((\\d)+-([0-9a-f]){32})?$R\x05revId\x12'\n" + + "\vquestion_id\x18\b \x01(\tB\x06\x8a\xec\x1f\x02\x18\x01R\n" + + "questionId\x12!\n" + + "\aitem_id\x18\t \x01(\tB\b\x8a\xec\x1f\x04\b\x01 \x01R\x06itemId\"j\n" + + "\x1eOuterMessageUsingNestedMessage\x12H\n" + + "\fsome_message\x18\x01 \x01(\v2%.valtest.ValTestMessage.NestedMessageR\vsomeMessage\"$\n" + + "\fInnerMessage\x12\x14\n" + + "\x02id\x18\x01 \x01(\tB\x04\x80\xeb\x1f\x01R\x02id\"2\n" + + "\x18InnerMessageWithLegacyId\x12\x16\n" + + "\x02id\x18\x01 \x01(\tB\x06\x8a\xec\x1f\x02\x18\x01R\x02id\"/\n" + + "\x15InnerMessageWithS12Id\x12\x16\n" + + "\x02id\x18\x01 \x01(\tB\x06\x8a\xec\x1f\x02 \x01R\x02id\"7\n" + + "\x13NestedLevel3Message\x12 \n" + + "\aorg_id5\x18\x01 \x01(\tB\a\xfa\xeb\x1f\x03\x1a\x015R\x06orgId5\"t\n" + + "\x13NestedLevel2Message\x12 \n" + + "\aorg_id4\x18\x01 \x01(\tB\a\xfa\xeb\x1f\x03\x1a\x014R\x06orgId4\x12;\n" + + "\n" + + "org_nested\x18\x02 \x01(\v2\x1c.valtest.NestedLevel3MessageR\torgNested\"t\n" + + "\x13NestedLevel1Message\x12 \n" + + "\aorg_id3\x18\x01 \x01(\tB\a\xfa\xeb\x1f\x03\x1a\x013R\x06orgId3\x12;\n" + + "\n" + + "org_nested\x18\x02 \x01(\v2\x1c.valtest.NestedLevel2MessageR\torgNested\"m\n" + + "\fMyReqMessage\x12 \n" + + "\auser_id\x18\x01 \x01(\tB\a\xfa\xeb\x1f\x03\x1a\x012R\x06userId\x12;\n" + + "\n" + + "org_nested\x18\x02 \x01(\v2\x1c.valtest.NestedLevel1MessageR\torgNested\"'\n" + + "\tScimEmail\x12\x1a\n" + + "\x05value\x18\x03 \x01(\tB\x04\xf2\xeb\x1f\x00R\x05value\"6\n" + + "\bScimUser\x12*\n" + + "\x06emails\x18\x05 \x03(\v2\x12.valtest.ScimEmailR\x06emails\"\xc5\x01\n" + + "\x11MyMessageWithEnum\x12;\n" + + "\x04enum\x18\x01 \x01(\x0e2!.valtest.MyMessageWithEnum.MyEnumB\x04\x90\xec\x1f\x01R\x04enum\x12=\n" + + "\x05enums\x18\x02 \x03(\x0e2!.valtest.MyMessageWithEnum.MyEnumB\x04\x90\xec\x1f\x01R\x05enums\"4\n" + + "\x06MyEnum\x12\x17\n" + + "\x13MY_ENUM_UNSPECIFIED\x10\x00\x12\x11\n" + + "\rMY_ENUM_FIRST\x10\x01\"\x98\x01\n" + + "\x19MyMessageWithRepeatedEnum\x12E\n" + + "\x05enums\x18\x01 \x03(\x0e2).valtest.MyMessageWithRepeatedEnum.MyEnumB\x04\x90\xec\x1f\x01R\x05enums\"4\n" + + "\x06MyEnum\x12\x17\n" + + "\x13MY_ENUM_UNSPECIFIED\x10\x00\x12\x11\n" + + "\rMY_ENUM_FIRST\x10\x01\"9\n" + + "\x1aMyMessageWithRepeatedField\x12\x1b\n" + + "\x06my_int\x18\x01 \x03(\x05B\x04\xe8\xeb\x1f\x05R\x05myInt\"\xaa\x02\n" + + "\n" + + "MyOneOfMsg\x12E\n" + + "\x0emy_first_field\x18\x01 \x01(\v2\x1d.valtest.MyOneOfMsg.FirstTypeH\x00R\fmyFirstField\x12H\n" + + "\x0fmy_second_field\x18\x02 \x01(\v2\x1e.valtest.MyOneOfMsg.SecondTypeH\x00R\rmySecondField\x12,\n" + + "\x0emy_third_field\x18\x03 \x01(\tB\x04\xb0\xeb\x1f\x01H\x00R\fmyThirdField\x1a'\n" + + "\tFirstType\x12\x1a\n" + + "\x05value\x18\x01 \x01(\x03B\x04\x90\xeb\x1f\x01R\x05value\x1a(\n" + + "\n" + + "SecondType\x12\x1a\n" + + "\x05value\x18\x01 \x01(\x03B\x04\x90\xeb\x1f\x02R\x05valueB\n" + + "\n" + + "\bmy_field\"\x97\x06\n" + + "\rNumberMessage\x12'\n" + + "\vnan_allowed\x18\x01 \x01(\x01B\x06\xaa\xec\x1f\x02\x10\x01R\n" + + "nanAllowed\x12-\n" + + "\x0enan_disallowed\x18\x02 \x01(\x01B\x06\xaa\xec\x1f\x02\x10\x00R\rnanDisallowed\x12\x1f\n" + + "\vdefault_nan\x18\x03 \x01(\x01R\n" + + "defaultNan\x12;\n" + + "\x15optional_no_nan_value\x18\x04 \x01(\x01B\b\xaa\xec\x1f\x04\b\x01\x10\x00R\x12optionalNoNanValue\x12+\n" + + "\roptional_only\x18\x05 \x01(\x01B\x06\xaa\xec\x1f\x02\b\x01R\foptionalOnly\x12-\n" + + "\vrange_basic\x18\x06 \x01(\x01B\f\xaa\xec\x1f\b\b\x01\x1a\x041:10R\n" + + "rangeBasic\x12'\n" + + "\trange_low\x18\a \x01(\x01B\n" + + "\xaa\xec\x1f\x06\b\x01\x1a\x021:R\brangeLow\x12*\n" + + "\n" + + "range_high\x18\b \x01(\x01B\v\xaa\xec\x1f\a\b\x01\x1a\x03:10R\trangeHigh\x120\n" + + "\x0erange_novalues\x18\t \x01(\x01B\t\xaa\xec\x1f\x05\b\x01\x1a\x01:R\rrangeNovalues\x12:\n" + + "\x12range_not_optional\x18\n" + + " \x01(\x01B\f\xaa\xec\x1f\b\b\x00\x1a\x041:10R\x10rangeNotOptional\x12%\n" + + "\bint_test\x18\v \x01(\x05B\n" + + "\xaa\xec\x1f\x06\x1a\x041:99R\aintTest\x12/\n" + + "\n" + + "int64_test\x18\f \x01(\x03B\x10\xaa\xec\x1f\f\b\x01\x1a\b-100:100R\tint64Test\x12)\n" + + "\tuint_test\x18\r \x01(\rB\f\xaa\xec\x1f\b\b\x01\x1a\x045:99R\buintTest\x120\n" + + "\frepeated_int\x18\x0e \x03(\x05B\r\xaa\xec\x1f\t\b\x01\x1a\x0510:20R\vrepeatedInt\x12H\n" + + "\rnested_number\x18\x0f \x01(\v2#.valtest.NumberMessage.NestedNumberR\fnestedNumber\x1a2\n" + + "\fNestedNumber\x12\"\n" + + "\x05value\x18\x01 \x01(\x03B\f\xaa\xec\x1f\b\b\x01\x1a\x04:100R\x05value\"\x80\x01\n" + + "\rNonUrlMessage\x120\n" + + "\x0freject_url_test\x18\x01 \x01(\tB\b\x82\xec\x1f\x04\b\x01h\x01R\rrejectUrlTest\x12=\n" + + "\x16break_partial_url_test\x18\x02 \x01(\tB\b\x82\xec\x1f\x04\b\x01p\x01R\x13breakPartialUrlTestBLZJgithub.com/SafetyCulture/s12-proto/protobuf/protoc-gen-govalidator/valtestb\x06proto3" var ( file_valtest_proto_rawDescOnce sync.Once - file_valtest_proto_rawDescData = file_valtest_proto_rawDesc + file_valtest_proto_rawDescData []byte ) func file_valtest_proto_rawDescGZIP() []byte { file_valtest_proto_rawDescOnce.Do(func() { - file_valtest_proto_rawDescData = protoimpl.X.CompressGZIP(file_valtest_proto_rawDescData) + file_valtest_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_valtest_proto_rawDesc), len(file_valtest_proto_rawDesc))) }) return file_valtest_proto_rawDescData } @@ -2547,308 +2295,6 @@ func file_valtest_proto_init() { if File_valtest_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_valtest_proto_msgTypes[0].Exporter = func(v any, i int) any { - switch v := v.(*ValTestMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[1].Exporter = func(v any, i int) any { - switch v := v.(*LogOnlyValidationMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[2].Exporter = func(v any, i int) any { - switch v := v.(*LowercaseValidationMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[3].Exporter = func(v any, i int) any { - switch v := v.(*OuterMessageUsingNestedMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[4].Exporter = func(v any, i int) any { - switch v := v.(*InnerMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[5].Exporter = func(v any, i int) any { - switch v := v.(*InnerMessageWithLegacyId); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[6].Exporter = func(v any, i int) any { - switch v := v.(*InnerMessageWithS12Id); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[7].Exporter = func(v any, i int) any { - switch v := v.(*NestedLevel3Message); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[8].Exporter = func(v any, i int) any { - switch v := v.(*NestedLevel2Message); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[9].Exporter = func(v any, i int) any { - switch v := v.(*NestedLevel1Message); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[10].Exporter = func(v any, i int) any { - switch v := v.(*MyReqMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[11].Exporter = func(v any, i int) any { - switch v := v.(*ScimEmail); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[12].Exporter = func(v any, i int) any { - switch v := v.(*ScimUser); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[13].Exporter = func(v any, i int) any { - switch v := v.(*MyMessageWithEnum); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[14].Exporter = func(v any, i int) any { - switch v := v.(*MyMessageWithRepeatedEnum); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[15].Exporter = func(v any, i int) any { - switch v := v.(*MyMessageWithRepeatedField); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[16].Exporter = func(v any, i int) any { - switch v := v.(*MyOneOfMsg); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[17].Exporter = func(v any, i int) any { - switch v := v.(*NumberMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[18].Exporter = func(v any, i int) any { - switch v := v.(*NonUrlMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[19].Exporter = func(v any, i int) any { - switch v := v.(*ValTestMessage_NestedMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[21].Exporter = func(v any, i int) any { - switch v := v.(*ValTestMessage_Contact); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[22].Exporter = func(v any, i int) any { - switch v := v.(*ValTestMessage_NestedMessage_InnerNestedMessage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[23].Exporter = func(v any, i int) any { - switch v := v.(*MyOneOfMsg_FirstType); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[24].Exporter = func(v any, i int) any { - switch v := v.(*MyOneOfMsg_SecondType); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_valtest_proto_msgTypes[25].Exporter = func(v any, i int) any { - switch v := v.(*NumberMessage_NestedNumber); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } file_valtest_proto_msgTypes[0].OneofWrappers = []any{ (*ValTestMessage_Fax)(nil), (*ValTestMessage_Phone)(nil), @@ -2862,7 +2308,7 @@ func file_valtest_proto_init() { out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_valtest_proto_rawDesc, + RawDescriptor: unsafe.Slice(unsafe.StringData(file_valtest_proto_rawDesc), len(file_valtest_proto_rawDesc)), NumEnums: 2, NumMessages: 26, NumExtensions: 0, @@ -2874,7 +2320,6 @@ func file_valtest_proto_init() { MessageInfos: file_valtest_proto_msgTypes, }.Build() File_valtest_proto = out.File - file_valtest_proto_rawDesc = nil file_valtest_proto_goTypes = nil file_valtest_proto_depIdxs = nil } diff --git a/protobuf/protoc-gen-govalidator/valtest/valtest.proto b/protobuf/protoc-gen-govalidator/valtest/valtest.proto index a8fde52..041decf 100644 --- a/protobuf/protoc-gen-govalidator/valtest/valtest.proto +++ b/protobuf/protoc-gen-govalidator/valtest/valtest.proto @@ -22,6 +22,8 @@ message ValTestMessage { InnerMessageWithLegacyId inner_legacy_id = 6; // returns an error if the string cannot be parsed as a UUID string uuid = 7 [(validator.id) = { version : "any" }]; + // returns an error if the string cannot be parsed as a UUIDv7 + string uuidv7 = 8 [(validator.id) = { version: "v7" }]; // email validation string email = 11 [(validator.email) = {}]; diff --git a/protobuf/protoc-gen-govalidator/valtest/valtest.validator.pb.go b/protobuf/protoc-gen-govalidator/valtest/valtest.validator.pb.go index 699dbaa..8fcb5ed 100644 --- a/protobuf/protoc-gen-govalidator/valtest/valtest.validator.pb.go +++ b/protobuf/protoc-gen-govalidator/valtest/valtest.validator.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-govalidator. DO NOT EDIT. // versions: -// protoc-gen-govalidator v2.7.1 -// protoc v5.29.3 +// protoc-gen-govalidator v2.7.2 +// protoc v6.33.0 // source: valtest.proto package valtest @@ -62,6 +62,12 @@ func (m *ValTestMessage) Validate() error { return fmt.Errorf(`uuid: value must be parsable as UUID`) } } + if !proto.IsUUIDv7(m.Uuidv7) { + isValidId := false + if !isValidId { + return fmt.Errorf(`uuidv7: value must be parsable as UUIDv7`) + } + } if !proto.IsValidEmail(m.Email, false) { return fmt.Errorf(`email: value must be parsable as an email address`) } diff --git a/protobuf/protoc-gen-govalidator/valtest/valtest.validator_regex.pb.go b/protobuf/protoc-gen-govalidator/valtest/valtest.validator_regex.pb.go index dc1ea99..dc4c4b1 100644 --- a/protobuf/protoc-gen-govalidator/valtest/valtest.validator_regex.pb.go +++ b/protobuf/protoc-gen-govalidator/valtest/valtest.validator_regex.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-govalidator. DO NOT EDIT. // versions: -// protoc-gen-govalidator v2.7.1 -// protoc v5.29.3 +// protoc-gen-govalidator v2.7.2 +// protoc v6.33.0 // source: valtest.proto package valtest diff --git a/protobuf/protoc-gen-govalidator/valtest/valtest_test.go b/protobuf/protoc-gen-govalidator/valtest/valtest_test.go index c9be21d..ac31209 100644 --- a/protobuf/protoc-gen-govalidator/valtest/valtest_test.go +++ b/protobuf/protoc-gen-govalidator/valtest/valtest_test.go @@ -27,6 +27,7 @@ const ( password string = "1234567!" name string = "Γιώργος Νταλάρας" idv4 string = "92b6c2f9-abd8-48bc-a2c9-bf70e969751a" + idv7 string = "019a098f-e43b-7c4c-af03-63eda488eb0a" uuidNotV4 string = "e07b6ac0-8a05-11e2-9951-ddd1182f65d9" valid bool = false invalid bool = true @@ -148,6 +149,7 @@ var valMsg = ValTestMessage{ InnerLegacyId: &InnerMessageWithLegacyId{Id: id}, InnerS12Id: &InnerMessageWithS12Id{Id: s12Id}, Uuid: id, + Uuidv7: idv7, Email: email, OptEmail: email, Description: "François Truffaut 久保田 利伸 text", @@ -200,6 +202,7 @@ var valMsgOpts = ValTestMessage{ InnerLegacyId: &InnerMessageWithLegacyId{Id: legacyId}, InnerS12Id: &InnerMessageWithS12Id{Id: s12Id}, Uuid: id, + Uuidv7: idv7, Email: email, Description: "François Truffaut 久保田 利伸 text", Password: password, @@ -526,6 +529,11 @@ func TestValidationRules(t *testing.T) { getValMsg(ValTestMessage{Uuid: id}), valid, }, + { + "ValidIDVersion7WithUUIDv7", + getValMsg(ValTestMessage{Uuidv7: idv7}), + valid, + }, { "ValidIDAnyVersionWithUUIDNotV4", getValMsg(ValTestMessage{Uuid: uuidNotV4}), diff --git a/s12/flags/permissions/permissions.pb.go b/s12/flags/permissions/permissions.pb.go index ddb7e6e..3d8bbce 100644 --- a/s12/flags/permissions/permissions.pb.go +++ b/s12/flags/permissions/permissions.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.34.2 -// protoc v5.29.3 +// protoc-gen-go v1.36.10 +// protoc v6.33.0 // source: s12/flags/permissions/permissions.proto package permissions @@ -11,6 +11,7 @@ import ( protoimpl "google.golang.org/protobuf/runtime/protoimpl" descriptorpb "google.golang.org/protobuf/types/descriptorpb" reflect "reflect" + unsafe "unsafe" ) const ( @@ -64,27 +65,11 @@ var ( var File_s12_flags_permissions_permissions_proto protoreflect.FileDescriptor -var file_s12_flags_permissions_permissions_proto_rawDesc = []byte{ - 0x0a, 0x27, 0x73, 0x31, 0x32, 0x2f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x2f, 0x70, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x15, 0x73, 0x31, 0x32, 0x2e, 0x66, - 0x6c, 0x61, 0x67, 0x73, 0x2e, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, - 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x3a, 0x47, 0x0a, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x66, - 0x6c, 0x61, 0x67, 0x73, 0x12, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x84, 0x9d, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, - 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x3a, 0x47, 0x0a, 0x0e, 0x72, - 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x1e, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x85, 0x9d, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x53, - 0x63, 0x6f, 0x70, 0x65, 0x42, 0x3a, 0x5a, 0x38, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x53, 0x61, 0x66, 0x65, 0x74, 0x79, 0x43, 0x75, 0x6c, 0x74, 0x75, 0x72, 0x65, - 0x2f, 0x73, 0x31, 0x32, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x73, 0x31, 0x32, 0x2f, 0x66, - 0x6c, 0x61, 0x67, 0x73, 0x2f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, -} +const file_s12_flags_permissions_permissions_proto_rawDesc = "" + + "\n" + + "'s12/flags/permissions/permissions.proto\x12\x15s12.flags.permissions\x1a google/protobuf/descriptor.proto:G\n" + + "\x0erequired_flags\x12\x1e.google.protobuf.MethodOptions\x18\x84\x9d\x01 \x03(\tR\rrequiredFlags:G\n" + + "\x0erequired_scope\x12\x1e.google.protobuf.MethodOptions\x18\x85\x9d\x01 \x01(\tR\rrequiredScopeB:Z8github.com/SafetyCulture/s12-proto/s12/flags/permissions" var file_s12_flags_permissions_permissions_proto_goTypes = []any{ (*descriptorpb.MethodOptions)(nil), // 0: google.protobuf.MethodOptions @@ -108,7 +93,7 @@ func file_s12_flags_permissions_permissions_proto_init() { out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_s12_flags_permissions_permissions_proto_rawDesc, + RawDescriptor: unsafe.Slice(unsafe.StringData(file_s12_flags_permissions_permissions_proto_rawDesc), len(file_s12_flags_permissions_permissions_proto_rawDesc)), NumEnums: 0, NumMessages: 0, NumExtensions: 2, @@ -119,7 +104,6 @@ func file_s12_flags_permissions_permissions_proto_init() { ExtensionInfos: file_s12_flags_permissions_permissions_proto_extTypes, }.Build() File_s12_flags_permissions_permissions_proto = out.File - file_s12_flags_permissions_permissions_proto_rawDesc = nil file_s12_flags_permissions_permissions_proto_goTypes = nil file_s12_flags_permissions_permissions_proto_depIdxs = nil } diff --git a/s12/protobuf/proto/validator.pb.go b/s12/protobuf/proto/validator.pb.go index 05391a0..67df979 100644 --- a/s12/protobuf/proto/validator.pb.go +++ b/s12/protobuf/proto/validator.pb.go @@ -2,8 +2,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.34.2 -// protoc v5.29.3 +// protoc-gen-go v1.36.10 +// protoc v6.33.0 // source: s12/protobuf/proto/validator.proto package proto @@ -14,6 +14,7 @@ import ( descriptorpb "google.golang.org/protobuf/types/descriptorpb" reflect "reflect" sync "sync" + unsafe "unsafe" ) const ( @@ -109,10 +110,7 @@ func (SymbolCategory) EnumDescriptor() ([]byte, []int) { } type SimpleStringRules struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Set this as optional field (not required) // default = false Optional *bool `protobuf:"varint,1,opt,name=optional,def=0" json:"optional,omitempty"` @@ -123,7 +121,9 @@ type SimpleStringRules struct { // Min Length MinLen *int32 `protobuf:"varint,3,opt,name=min_len,json=minLen" json:"min_len,omitempty"` // Max Length - MaxLen *int32 `protobuf:"varint,4,opt,name=max_len,json=maxLen" json:"max_len,omitempty"` + MaxLen *int32 `protobuf:"varint,4,opt,name=max_len,json=maxLen" json:"max_len,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } // Default values for SimpleStringRules fields. @@ -134,11 +134,9 @@ const ( func (x *SimpleStringRules) Reset() { *x = SimpleStringRules{} - if protoimpl.UnsafeEnabled { - mi := &file_s12_protobuf_proto_validator_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_s12_protobuf_proto_validator_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *SimpleStringRules) String() string { @@ -149,7 +147,7 @@ func (*SimpleStringRules) ProtoMessage() {} func (x *SimpleStringRules) ProtoReflect() protoreflect.Message { mi := &file_s12_protobuf_proto_validator_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -194,10 +192,7 @@ func (x *SimpleStringRules) GetMaxLen() int32 { // StringRules describe the constraints applied to `string` values (for both string and unsafe_string) type StringRules struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Set this as optional field (not required) // default = false Optional *bool `protobuf:"varint,1,opt,name=optional,def=0" json:"optional,omitempty"` @@ -255,7 +250,9 @@ type StringRules struct { BreakPartialUrl *bool `protobuf:"varint,14,opt,name=break_partial_url,json=breakPartialUrl,def=0" json:"break_partial_url,omitempty"` // Prefix specifies that this field must have the specified substring at // the beginning of the string. - Prefix *string `protobuf:"bytes,15,opt,name=prefix" json:"prefix,omitempty"` + Prefix *string `protobuf:"bytes,15,opt,name=prefix" json:"prefix,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } // Default values for StringRules fields. @@ -274,11 +271,9 @@ const ( func (x *StringRules) Reset() { *x = StringRules{} - if protoimpl.UnsafeEnabled { - mi := &file_s12_protobuf_proto_validator_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_s12_protobuf_proto_validator_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *StringRules) String() string { @@ -289,7 +284,7 @@ func (*StringRules) ProtoMessage() {} func (x *StringRules) ProtoReflect() protoreflect.Message { mi := &file_s12_protobuf_proto_validator_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -411,13 +406,12 @@ func (x *StringRules) GetPrefix() string { // EmailRules describe the constraints applied to `email` values type EmailRules struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Set this as optional field (not required) // default = false - Optional *bool `protobuf:"varint,1,opt,name=optional,def=0" json:"optional,omitempty"` + Optional *bool `protobuf:"varint,1,opt,name=optional,def=0" json:"optional,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } // Default values for EmailRules fields. @@ -427,11 +421,9 @@ const ( func (x *EmailRules) Reset() { *x = EmailRules{} - if protoimpl.UnsafeEnabled { - mi := &file_s12_protobuf_proto_validator_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_s12_protobuf_proto_validator_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *EmailRules) String() string { @@ -442,7 +434,7 @@ func (*EmailRules) ProtoMessage() {} func (x *EmailRules) ProtoReflect() protoreflect.Message { mi := &file_s12_protobuf_proto_validator_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -466,10 +458,7 @@ func (x *EmailRules) GetOptional() bool { // IdRules describes the constraints applied to `Id` values such as UUIDv4 and legacy_id type IdRules struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Set this as optional field (not required) // default = false Optional *bool `protobuf:"varint,1,opt,name=optional,def=0" json:"optional,omitempty"` @@ -490,6 +479,8 @@ type IdRules struct { LogOnly *bool `protobuf:"varint,5,opt,name=log_only,json=logOnly,def=0" json:"log_only,omitempty"` // Allows to check the input against lowercase regex only LowercaseOnly *bool `protobuf:"varint,6,opt,name=lowercase_only,json=lowercaseOnly,def=0" json:"lowercase_only,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } // Default values for IdRules fields. @@ -504,11 +495,9 @@ const ( func (x *IdRules) Reset() { *x = IdRules{} - if protoimpl.UnsafeEnabled { - mi := &file_s12_protobuf_proto_validator_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_s12_protobuf_proto_validator_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *IdRules) String() string { @@ -519,7 +508,7 @@ func (*IdRules) ProtoMessage() {} func (x *IdRules) ProtoReflect() protoreflect.Message { mi := &file_s12_protobuf_proto_validator_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -578,10 +567,7 @@ func (x *IdRules) GetLowercaseOnly() bool { // URLRules describe the constraints applied to `url` values type URLRules struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Set this as optional field (not required) // default = false Optional *bool `protobuf:"varint,1,opt,name=optional,def=0" json:"optional,omitempty"` @@ -594,7 +580,9 @@ type URLRules struct { // Allow http in addition to https // Basically shortcut for schemes = ["https", "http"] // default = false - AllowHttp *bool `protobuf:"varint,4,opt,name=allow_http,json=allowHttp,def=0" json:"allow_http,omitempty"` + AllowHttp *bool `protobuf:"varint,4,opt,name=allow_http,json=allowHttp,def=0" json:"allow_http,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } // Default values for URLRules fields. @@ -606,11 +594,9 @@ const ( func (x *URLRules) Reset() { *x = URLRules{} - if protoimpl.UnsafeEnabled { - mi := &file_s12_protobuf_proto_validator_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_s12_protobuf_proto_validator_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *URLRules) String() string { @@ -621,7 +607,7 @@ func (*URLRules) ProtoMessage() {} func (x *URLRules) ProtoReflect() protoreflect.Message { mi := &file_s12_protobuf_proto_validator_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -666,13 +652,12 @@ func (x *URLRules) GetAllowHttp() bool { // TimezoneRules describe the constraints applied to `timezone` values type TimezoneRules struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Set this as optional field (not required) // default = false - Optional *bool `protobuf:"varint,1,opt,name=optional,def=0" json:"optional,omitempty"` + Optional *bool `protobuf:"varint,1,opt,name=optional,def=0" json:"optional,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } // Default values for TimezoneRules fields. @@ -682,11 +667,9 @@ const ( func (x *TimezoneRules) Reset() { *x = TimezoneRules{} - if protoimpl.UnsafeEnabled { - mi := &file_s12_protobuf_proto_validator_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_s12_protobuf_proto_validator_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *TimezoneRules) String() string { @@ -697,7 +680,7 @@ func (*TimezoneRules) ProtoMessage() {} func (x *TimezoneRules) ProtoReflect() protoreflect.Message { mi := &file_s12_protobuf_proto_validator_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -721,10 +704,7 @@ func (x *TimezoneRules) GetOptional() bool { // NumberRules describe the constraints applied to `number` values type NumberRules struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Set this as optional field (not required) // default = false Optional *bool `protobuf:"varint,1,opt,name=optional,def=0" json:"optional,omitempty"` @@ -739,7 +719,9 @@ type NumberRules struct { // Only apply soft validation. Validation errors for this validator are logged, not returned. // Be aware that due to multiples validators applying, and order of precedence // this will not prevent errors from other validators being returned. - LogOnly *bool `protobuf:"varint,5,opt,name=log_only,json=logOnly,def=0" json:"log_only,omitempty"` + LogOnly *bool `protobuf:"varint,5,opt,name=log_only,json=logOnly,def=0" json:"log_only,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } // Default values for NumberRules fields. @@ -751,11 +733,9 @@ const ( func (x *NumberRules) Reset() { *x = NumberRules{} - if protoimpl.UnsafeEnabled { - mi := &file_s12_protobuf_proto_validator_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_s12_protobuf_proto_validator_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *NumberRules) String() string { @@ -766,7 +746,7 @@ func (*NumberRules) ProtoMessage() {} func (x *NumberRules) ProtoReflect() protoreflect.Message { mi := &file_s12_protobuf_proto_validator_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1115,217 +1095,97 @@ var ( var File_s12_protobuf_proto_validator_proto protoreflect.FileDescriptor -var file_s12_protobuf_proto_validator_proto_rawDesc = []byte{ - 0x0a, 0x22, 0x73, 0x31, 0x32, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x1a, - 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x22, 0x8a, 0x01, 0x0a, 0x11, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, - 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x20, 0x0a, 0x08, 0x6c, 0x6f, - 0x67, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, - 0x6c, 0x73, 0x65, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x17, 0x0a, 0x07, - 0x6d, 0x69, 0x6e, 0x5f, 0x6c, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6d, - 0x69, 0x6e, 0x4c, 0x65, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x5f, 0x6c, 0x65, 0x6e, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x4c, 0x65, 0x6e, 0x22, 0xad, - 0x04, 0x0a, 0x0b, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x21, - 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, - 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x12, 0x19, 0x0a, 0x04, 0x74, 0x72, 0x69, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x3a, - 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x04, 0x74, 0x72, 0x69, 0x6d, 0x12, 0x10, 0x0a, 0x03, - 0x6c, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6c, 0x65, 0x6e, 0x12, 0x1b, - 0x0a, 0x05, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, - 0x61, 0x6c, 0x73, 0x65, 0x52, 0x05, 0x72, 0x75, 0x6e, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x0e, 0x72, - 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x5f, 0x75, 0x6e, 0x73, 0x61, 0x66, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x70, 0x6c, - 0x61, 0x63, 0x65, 0x55, 0x6e, 0x73, 0x61, 0x66, 0x65, 0x12, 0x2a, 0x0a, 0x0d, 0x72, 0x65, 0x70, - 0x6c, 0x61, 0x63, 0x65, 0x5f, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, - 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, - 0x4f, 0x74, 0x68, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x12, 0x33, 0x0a, 0x07, 0x73, - 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x53, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x43, - 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x52, 0x07, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, - 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x31, - 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, - 0x69, 0x6e, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x04, 0x74, 0x72, 0x75, 0x65, 0x52, - 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, - 0x67, 0x12, 0x28, 0x0a, 0x0c, 0x73, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x73, 0x65, 0x5f, 0x70, 0x75, - 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0b, - 0x73, 0x61, 0x6e, 0x69, 0x74, 0x69, 0x73, 0x65, 0x50, 0x75, 0x61, 0x12, 0x20, 0x0a, 0x08, 0x6c, - 0x6f, 0x67, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, - 0x61, 0x6c, 0x73, 0x65, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x24, 0x0a, - 0x0a, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x09, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, - 0x55, 0x72, 0x6c, 0x12, 0x31, 0x0a, 0x11, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x5f, 0x70, 0x61, 0x72, - 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, - 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0f, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x61, 0x6c, 0x55, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, - 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x22, 0x2f, - 0x0a, 0x0a, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x08, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, - 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, - 0xd6, 0x01, 0x0a, 0x07, 0x49, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x08, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, - 0x61, 0x6c, 0x73, 0x65, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x1c, - 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x3a, - 0x02, 0x76, 0x34, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x06, - 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, - 0x6c, 0x73, 0x65, 0x52, 0x06, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x12, 0x1b, 0x0a, 0x05, 0x73, - 0x31, 0x32, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, - 0x65, 0x52, 0x05, 0x73, 0x31, 0x32, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, - 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, - 0x65, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x2c, 0x0a, 0x0e, 0x6c, 0x6f, - 0x77, 0x65, 0x72, 0x63, 0x61, 0x73, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x0d, 0x6c, 0x6f, 0x77, 0x65, 0x72, - 0x63, 0x61, 0x73, 0x65, 0x4f, 0x6e, 0x6c, 0x79, 0x22, 0x9b, 0x01, 0x0a, 0x08, 0x55, 0x52, 0x4c, - 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x08, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x66, 0x72, 0x61, 0x67, - 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, - 0x65, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, - 0x12, 0x24, 0x0a, 0x0a, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, 0x09, 0x61, 0x6c, 0x6c, - 0x6f, 0x77, 0x48, 0x74, 0x74, 0x70, 0x22, 0x32, 0x0a, 0x0d, 0x54, 0x69, 0x6d, 0x65, 0x7a, 0x6f, - 0x6e, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, - 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x22, 0x8b, 0x01, 0x0a, 0x0b, 0x4e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x08, 0x6f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, - 0x6c, 0x73, 0x65, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x21, 0x0a, - 0x09, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6e, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, - 0x3a, 0x04, 0x74, 0x72, 0x75, 0x65, 0x52, 0x08, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4e, 0x61, 0x6e, - 0x12, 0x14, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x20, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x6e, - 0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x52, - 0x07, 0x6c, 0x6f, 0x67, 0x4f, 0x6e, 0x6c, 0x79, 0x2a, 0x5e, 0x0a, 0x0e, 0x53, 0x79, 0x6d, 0x62, - 0x6f, 0x6c, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x55, - 0x4e, 0x43, 0x54, 0x55, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, - 0x55, 0x52, 0x52, 0x45, 0x4e, 0x43, 0x59, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x4f, 0x44, - 0x49, 0x46, 0x49, 0x45, 0x52, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x4f, 0x54, 0x48, 0x45, 0x52, - 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, 0x4d, 0x41, 0x52, 0x4b, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, - 0x43, 0x4f, 0x4d, 0x4d, 0x4f, 0x4e, 0x10, 0x06, 0x3a, 0x37, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, - 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0xb0, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x75, 0x75, 0x69, - 0x64, 0x3a, 0x35, 0x0a, 0x05, 0x72, 0x65, 0x67, 0x65, 0x78, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, - 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xb1, 0xfd, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x72, 0x65, 0x67, 0x65, 0x78, 0x3a, 0x3a, 0x0a, 0x06, 0x69, 0x6e, 0x74, 0x5f, - 0x67, 0x74, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0xb2, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x05, 0x69, - 0x6e, 0x74, 0x47, 0x74, 0x3a, 0x3a, 0x0a, 0x06, 0x69, 0x6e, 0x74, 0x5f, 0x6c, 0x74, 0x12, 0x1d, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xb3, 0xfd, - 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x05, 0x69, 0x6e, 0x74, 0x4c, 0x74, - 0x3a, 0x3c, 0x0a, 0x07, 0x69, 0x6e, 0x74, 0x5f, 0x67, 0x74, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, - 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xb4, 0xfd, 0x03, 0x20, 0x01, - 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x69, 0x6e, 0x74, 0x47, 0x74, 0x65, 0x3a, 0x3c, - 0x0a, 0x07, 0x69, 0x6e, 0x74, 0x5f, 0x6c, 0x74, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, - 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xb5, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x03, - 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x69, 0x6e, 0x74, 0x4c, 0x74, 0x65, 0x3a, 0x42, 0x0a, 0x0a, - 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x5f, 0x67, 0x74, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, - 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xb6, 0xfd, 0x03, 0x20, 0x01, 0x28, - 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x47, 0x74, 0x65, - 0x3a, 0x42, 0x0a, 0x0a, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x5f, 0x6c, 0x74, 0x65, 0x12, 0x1d, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xb7, 0xfd, - 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x6c, 0x65, 0x6e, 0x67, 0x74, - 0x68, 0x4c, 0x74, 0x65, 0x3a, 0x3b, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, - 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0xb8, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x3a, 0x42, 0x0a, 0x0c, 0x6d, 0x73, 0x67, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, - 0x64, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0xb9, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6d, 0x73, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x69, 0x72, 0x65, 0x64, 0x3a, 0x40, 0x0a, 0x09, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x5f, - 0x69, 0x64, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0xba, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x08, 0x6c, - 0x65, 0x67, 0x61, 0x63, 0x79, 0x49, 0x64, 0x3a, 0x49, 0x0a, 0x0e, 0x74, 0x72, 0x69, 0x6d, 0x5f, - 0x6c, 0x65, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, - 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xbb, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x08, - 0x42, 0x02, 0x18, 0x01, 0x52, 0x0c, 0x74, 0x72, 0x69, 0x6d, 0x4c, 0x65, 0x6e, 0x43, 0x68, 0x65, - 0x63, 0x6b, 0x3a, 0x49, 0x0a, 0x10, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6c, - 0x65, 0x6e, 0x5f, 0x67, 0x74, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xbc, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x72, - 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x4c, 0x65, 0x6e, 0x47, 0x74, 0x65, 0x3a, 0x49, 0x0a, - 0x10, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x65, 0x6e, 0x5f, 0x6c, 0x74, - 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0xbd, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x4c, 0x65, 0x6e, 0x4c, 0x74, 0x65, 0x3a, 0x4c, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, - 0x6c, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0xbe, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, - 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x3a, 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0xbf, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x6f, 0x72, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, - 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x3a, 0x5c, 0x0a, 0x0d, 0x75, 0x6e, 0x73, 0x61, 0x66, - 0x65, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc0, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x16, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x0c, 0x75, 0x6e, 0x73, 0x61, 0x66, 0x65, 0x53, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x3a, 0x43, 0x0a, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, - 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc1, 0xfd, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x49, - 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x02, 0x69, 0x64, 0x3a, 0x44, 0x0a, 0x0d, 0x65, 0x6e, - 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x1d, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, - 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc2, 0xfd, 0x03, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0c, 0x65, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, - 0x3a, 0x46, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc3, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x55, 0x52, 0x4c, 0x52, 0x75, - 0x6c, 0x65, 0x73, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x3a, 0x55, 0x0a, 0x08, 0x74, 0x69, 0x6d, 0x65, - 0x7a, 0x6f, 0x6e, 0x65, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0xc4, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x7a, 0x6f, 0x6e, 0x65, - 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x7a, 0x6f, 0x6e, 0x65, 0x3a, - 0x4f, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, - 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc5, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x4e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x3a, 0x62, 0x0a, 0x0d, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0xc6, 0xfd, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x0c, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x53, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x42, 0x37, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x53, 0x61, 0x66, 0x65, 0x74, 0x79, 0x43, 0x75, 0x6c, 0x74, 0x75, 0x72, 0x65, - 0x2f, 0x73, 0x31, 0x32, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x73, 0x31, 0x32, 0x2f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, -} +const file_s12_protobuf_proto_validator_proto_rawDesc = "" + + "\n" + + "\"s12/protobuf/proto/validator.proto\x12\tvalidator\x1a google/protobuf/descriptor.proto\"\x8a\x01\n" + + "\x11SimpleStringRules\x12!\n" + + "\boptional\x18\x01 \x01(\b:\x05falseR\boptional\x12 \n" + + "\blog_only\x18\x02 \x01(\b:\x05falseR\alogOnly\x12\x17\n" + + "\amin_len\x18\x03 \x01(\x05R\x06minLen\x12\x17\n" + + "\amax_len\x18\x04 \x01(\x05R\x06maxLen\"\xad\x04\n" + + "\vStringRules\x12!\n" + + "\boptional\x18\x01 \x01(\b:\x05falseR\boptional\x12\x19\n" + + "\x04trim\x18\x02 \x01(\b:\x05falseR\x04trim\x12\x10\n" + + "\x03len\x18\x03 \x01(\tR\x03len\x12\x1b\n" + + "\x05runes\x18\x04 \x01(\b:\x05falseR\x05runes\x12,\n" + + "\x0ereplace_unsafe\x18\x05 \x01(\b:\x05falseR\rreplaceUnsafe\x12*\n" + + "\rreplace_other\x18\x06 \x01(\b:\x05falseR\freplaceOther\x12\x14\n" + + "\x05allow\x18\a \x01(\tR\x05allow\x123\n" + + "\asymbols\x18\b \x03(\x0e2\x19.validator.SymbolCategoryR\asymbols\x12\x1c\n" + + "\tmultiline\x18\t \x01(\bR\tmultiline\x121\n" + + "\x11validate_encoding\x18\n" + + " \x01(\b:\x04trueR\x10validateEncoding\x12(\n" + + "\fsanitise_pua\x18\v \x01(\b:\x05falseR\vsanitisePua\x12 \n" + + "\blog_only\x18\f \x01(\b:\x05falseR\alogOnly\x12$\n" + + "\n" + + "reject_url\x18\r \x01(\b:\x05falseR\trejectUrl\x121\n" + + "\x11break_partial_url\x18\x0e \x01(\b:\x05falseR\x0fbreakPartialUrl\x12\x16\n" + + "\x06prefix\x18\x0f \x01(\tR\x06prefix\"/\n" + + "\n" + + "EmailRules\x12!\n" + + "\boptional\x18\x01 \x01(\b:\x05falseR\boptional\"\xd6\x01\n" + + "\aIdRules\x12!\n" + + "\boptional\x18\x01 \x01(\b:\x05falseR\boptional\x12\x1c\n" + + "\aversion\x18\x02 \x01(\t:\x02v4R\aversion\x12\x1d\n" + + "\x06legacy\x18\x03 \x01(\b:\x05falseR\x06legacy\x12\x1b\n" + + "\x05s12id\x18\x04 \x01(\b:\x05falseR\x05s12id\x12 \n" + + "\blog_only\x18\x05 \x01(\b:\x05falseR\alogOnly\x12,\n" + + "\x0elowercase_only\x18\x06 \x01(\b:\x05falseR\rlowercaseOnly\"\x9b\x01\n" + + "\bURLRules\x12!\n" + + "\boptional\x18\x01 \x01(\b:\x05falseR\boptional\x12\x18\n" + + "\aschemes\x18\x02 \x03(\tR\aschemes\x12,\n" + + "\x0eallow_fragment\x18\x03 \x01(\b:\x05falseR\rallowFragment\x12$\n" + + "\n" + + "allow_http\x18\x04 \x01(\b:\x05falseR\tallowHttp\"2\n" + + "\rTimezoneRules\x12!\n" + + "\boptional\x18\x01 \x01(\b:\x05falseR\boptional\"\x8b\x01\n" + + "\vNumberRules\x12!\n" + + "\boptional\x18\x01 \x01(\b:\x05falseR\boptional\x12!\n" + + "\tallow_nan\x18\x02 \x01(\b:\x04trueR\ballowNan\x12\x14\n" + + "\x05range\x18\x03 \x01(\tR\x05range\x12 \n" + + "\blog_only\x18\x05 \x01(\b:\x05falseR\alogOnly*^\n" + + "\x0eSymbolCategory\x12\x0f\n" + + "\vPUNCTUATION\x10\x01\x12\f\n" + + "\bCURRENCY\x10\x02\x12\f\n" + + "\bMODIFIER\x10\x03\x12\t\n" + + "\x05OTHER\x10\x04\x12\b\n" + + "\x04MARK\x10\x05\x12\n" + + "\n" + + "\x06COMMON\x10\x06:7\n" + + "\x04uuid\x12\x1d.google.protobuf.FieldOptions\x18\xb0\xfd\x03 \x01(\bB\x02\x18\x01R\x04uuid:5\n" + + "\x05regex\x12\x1d.google.protobuf.FieldOptions\x18\xb1\xfd\x03 \x01(\tR\x05regex::\n" + + "\x06int_gt\x12\x1d.google.protobuf.FieldOptions\x18\xb2\xfd\x03 \x01(\x03B\x02\x18\x01R\x05intGt::\n" + + "\x06int_lt\x12\x1d.google.protobuf.FieldOptions\x18\xb3\xfd\x03 \x01(\x03B\x02\x18\x01R\x05intLt:<\n" + + "\aint_gte\x12\x1d.google.protobuf.FieldOptions\x18\xb4\xfd\x03 \x01(\x03B\x02\x18\x01R\x06intGte:<\n" + + "\aint_lte\x12\x1d.google.protobuf.FieldOptions\x18\xb5\xfd\x03 \x01(\x03B\x02\x18\x01R\x06intLte:B\n" + + "\n" + + "length_gte\x12\x1d.google.protobuf.FieldOptions\x18\xb6\xfd\x03 \x01(\x03B\x02\x18\x01R\tlengthGte:B\n" + + "\n" + + "length_lte\x12\x1d.google.protobuf.FieldOptions\x18\xb7\xfd\x03 \x01(\x03B\x02\x18\x01R\tlengthLte:;\n" + + "\boptional\x12\x1d.google.protobuf.FieldOptions\x18\xb8\xfd\x03 \x01(\bR\boptional:B\n" + + "\fmsg_required\x12\x1d.google.protobuf.FieldOptions\x18\xb9\xfd\x03 \x01(\bR\vmsgRequired:@\n" + + "\tlegacy_id\x12\x1d.google.protobuf.FieldOptions\x18\xba\xfd\x03 \x01(\bB\x02\x18\x01R\blegacyId:I\n" + + "\x0etrim_len_check\x12\x1d.google.protobuf.FieldOptions\x18\xbb\xfd\x03 \x01(\bB\x02\x18\x01R\ftrimLenCheck:I\n" + + "\x10repeated_len_gte\x12\x1d.google.protobuf.FieldOptions\x18\xbc\xfd\x03 \x01(\x03R\x0erepeatedLenGte:I\n" + + "\x10repeated_len_lte\x12\x1d.google.protobuf.FieldOptions\x18\xbd\xfd\x03 \x01(\x03R\x0erepeatedLenLte:L\n" + + "\x05email\x12\x1d.google.protobuf.FieldOptions\x18\xbe\xfd\x03 \x01(\v2\x15.validator.EmailRulesR\x05email:O\n" + + "\x06string\x12\x1d.google.protobuf.FieldOptions\x18\xbf\xfd\x03 \x01(\v2\x16.validator.StringRulesR\x06string:\\\n" + + "\runsafe_string\x12\x1d.google.protobuf.FieldOptions\x18\xc0\xfd\x03 \x01(\v2\x16.validator.StringRulesR\funsafeString:C\n" + + "\x02id\x12\x1d.google.protobuf.FieldOptions\x18\xc1\xfd\x03 \x01(\v2\x12.validator.IdRulesR\x02id:D\n" + + "\renum_required\x12\x1d.google.protobuf.FieldOptions\x18\xc2\xfd\x03 \x01(\bR\fenumRequired:F\n" + + "\x03url\x12\x1d.google.protobuf.FieldOptions\x18\xc3\xfd\x03 \x01(\v2\x13.validator.URLRulesR\x03url:U\n" + + "\btimezone\x12\x1d.google.protobuf.FieldOptions\x18\xc4\xfd\x03 \x01(\v2\x18.validator.TimezoneRulesR\btimezone:O\n" + + "\x06number\x12\x1d.google.protobuf.FieldOptions\x18\xc5\xfd\x03 \x01(\v2\x16.validator.NumberRulesR\x06number:b\n" + + "\rsimple_string\x12\x1d.google.protobuf.FieldOptions\x18\xc6\xfd\x03 \x01(\v2\x1c.validator.SimpleStringRulesR\fsimpleStringB7Z5github.com/SafetyCulture/s12-proto/s12/protobuf/proto" var ( file_s12_protobuf_proto_validator_proto_rawDescOnce sync.Once - file_s12_protobuf_proto_validator_proto_rawDescData = file_s12_protobuf_proto_validator_proto_rawDesc + file_s12_protobuf_proto_validator_proto_rawDescData []byte ) func file_s12_protobuf_proto_validator_proto_rawDescGZIP() []byte { file_s12_protobuf_proto_validator_proto_rawDescOnce.Do(func() { - file_s12_protobuf_proto_validator_proto_rawDescData = protoimpl.X.CompressGZIP(file_s12_protobuf_proto_validator_proto_rawDescData) + file_s12_protobuf_proto_validator_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_s12_protobuf_proto_validator_proto_rawDesc), len(file_s12_protobuf_proto_validator_proto_rawDesc))) }) return file_s12_protobuf_proto_validator_proto_rawDescData } @@ -1388,97 +1248,11 @@ func file_s12_protobuf_proto_validator_proto_init() { if File_s12_protobuf_proto_validator_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_s12_protobuf_proto_validator_proto_msgTypes[0].Exporter = func(v any, i int) any { - switch v := v.(*SimpleStringRules); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_s12_protobuf_proto_validator_proto_msgTypes[1].Exporter = func(v any, i int) any { - switch v := v.(*StringRules); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_s12_protobuf_proto_validator_proto_msgTypes[2].Exporter = func(v any, i int) any { - switch v := v.(*EmailRules); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_s12_protobuf_proto_validator_proto_msgTypes[3].Exporter = func(v any, i int) any { - switch v := v.(*IdRules); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_s12_protobuf_proto_validator_proto_msgTypes[4].Exporter = func(v any, i int) any { - switch v := v.(*URLRules); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_s12_protobuf_proto_validator_proto_msgTypes[5].Exporter = func(v any, i int) any { - switch v := v.(*TimezoneRules); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_s12_protobuf_proto_validator_proto_msgTypes[6].Exporter = func(v any, i int) any { - switch v := v.(*NumberRules); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_s12_protobuf_proto_validator_proto_rawDesc, + RawDescriptor: unsafe.Slice(unsafe.StringData(file_s12_protobuf_proto_validator_proto_rawDesc), len(file_s12_protobuf_proto_validator_proto_rawDesc)), NumEnums: 1, NumMessages: 7, NumExtensions: 23, @@ -1491,7 +1265,6 @@ func file_s12_protobuf_proto_validator_proto_init() { ExtensionInfos: file_s12_protobuf_proto_validator_proto_extTypes, }.Build() File_s12_protobuf_proto_validator_proto = out.File - file_s12_protobuf_proto_validator_proto_rawDesc = nil file_s12_protobuf_proto_validator_proto_goTypes = nil file_s12_protobuf_proto_validator_proto_depIdxs = nil } From 699df925bfa98270694176096eea1b76bd4e117a Mon Sep 17 00:00:00 2001 From: pdeaudney <130262+pdeaudney@users.noreply.github.com> Date: Wed, 22 Oct 2025 02:44:28 +0000 Subject: [PATCH 3/3] Fix Go formatting --- protobuf/protoc-gen-govalidator/valtest/valtest_test.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/protobuf/protoc-gen-govalidator/valtest/valtest_test.go b/protobuf/protoc-gen-govalidator/valtest/valtest_test.go index ac31209..94b23ef 100644 --- a/protobuf/protoc-gen-govalidator/valtest/valtest_test.go +++ b/protobuf/protoc-gen-govalidator/valtest/valtest_test.go @@ -125,8 +125,8 @@ var invalidURLs = []string{ "https:/example.com", "https//:example.com", "https://example.com/" + strings.Repeat("a", 2050), // too long - "ftp://example.com/", // default scheme is https - "https://example.com/a#fragment", // fragment not allowed unless option enabled + "ftp://example.com/", // default scheme is https + "https://example.com/a#fragment", // fragment not allowed unless option enabled "https://example.com/\na", " https://example.com/a", // leading whitespace "\thttps://example.com/a", // leading whitespace