From df1ba65a71b935f3815ad133109c5d0a1d0ccae7 Mon Sep 17 00:00:00 2001 From: Nicholas Molnar <65710+neekolas@users.noreply.github.com> Date: Mon, 30 Dec 2024 17:18:07 -0300 Subject: [PATCH] stub out new service --- dev/generate | 2 +- pkg/authn/authn.pb.go | 32 +- pkg/identity/api/v1/identity_service.go | 9 + pkg/proto/identity/api/v1/identity.pb.go | 536 +++++-- pkg/proto/identity/api/v1/identity.pb.gw.go | 54 + pkg/proto/identity/api/v1/identity_grpc.pb.go | 67 +- .../identity/associations/association.pb.go | 452 +++--- .../identity/associations/signature.pb.go | 79 +- pkg/proto/identity/credential.pb.go | 9 +- pkg/proto/keystore_api/v1/keystore.pb.go | 518 +++--- pkg/proto/message_api/v1/authn.pb.go | 18 +- pkg/proto/message_api/v1/message_api.pb.go | 116 +- pkg/proto/message_contents/ciphertext.pb.go | 60 +- pkg/proto/message_contents/composite.pb.go | 38 +- pkg/proto/message_contents/contact.pb.go | 45 +- pkg/proto/message_contents/content.pb.go | 35 +- .../conversation_reference.pb.go | 19 +- pkg/proto/message_contents/ecies.pb.go | 25 +- pkg/proto/message_contents/frames.pb.go | 108 +- pkg/proto/message_contents/invitation.pb.go | 91 +- pkg/proto/message_contents/message.pb.go | 76 +- pkg/proto/message_contents/private_key.pb.go | 145 +- .../private_preferences.pb.go | 128 +- pkg/proto/message_contents/public_key.pb.go | 99 +- pkg/proto/message_contents/signature.pb.go | 49 +- .../message_contents/signed_payload.pb.go | 11 +- pkg/proto/mls/api/v1/mls.pb.go | 387 +++-- pkg/proto/mls/database/intents.pb.go | 306 ++-- pkg/proto/mls/message_contents/content.pb.go | 584 ++++--- .../content_types/reaction.pb.go | 338 ++++ .../message_contents/group_membership.pb.go | 9 +- .../mls/message_contents/group_metadata.pb.go | 29 +- .../group_mutable_metadata.pb.go | 18 +- .../message_contents/group_permissions.pb.go | 165 +- .../transcript_messages.pb.go | 47 +- pkg/proto/mls_validation/v1/service.pb.go | 166 +- .../identity/api/v1/identity.swagger.json | 69 + .../content_types/reaction.swagger.json | 44 + .../mls_validation/v1/service.swagger.json | 4 + .../xmtpv4/envelopes/envelopes.swagger.json | 44 + .../message_api/message_api.swagger.json | 251 ++- .../xmtpv4/payer_api/payer_api.swagger.json | 503 ++++++ pkg/proto/xmtpv4/envelopes/envelopes.pb.go | 721 +++++++++ .../xmtpv4/message_api/message_api.pb.go | 1407 ++++------------- .../xmtpv4/message_api/message_api.pb.gw.go | 60 +- .../xmtpv4/message_api/message_api_grpc.pb.go | 80 +- pkg/proto/xmtpv4/payer_api/payer_api.pb.go | 223 +++ pkg/proto/xmtpv4/payer_api/payer_api.pb.gw.go | 163 ++ .../xmtpv4/payer_api/payer_api_grpc.pb.go | 113 ++ 49 files changed, 5247 insertions(+), 3305 deletions(-) create mode 100644 pkg/proto/mls/message_contents/content_types/reaction.pb.go create mode 100644 pkg/proto/openapi/mls/message_contents/content_types/reaction.swagger.json create mode 100644 pkg/proto/openapi/xmtpv4/envelopes/envelopes.swagger.json create mode 100644 pkg/proto/openapi/xmtpv4/payer_api/payer_api.swagger.json create mode 100644 pkg/proto/xmtpv4/envelopes/envelopes.pb.go create mode 100644 pkg/proto/xmtpv4/payer_api/payer_api.pb.go create mode 100644 pkg/proto/xmtpv4/payer_api/payer_api.pb.gw.go create mode 100644 pkg/proto/xmtpv4/payer_api/payer_api_grpc.pb.go diff --git a/dev/generate b/dev/generate index e82af341..261ae0a4 100755 --- a/dev/generate +++ b/dev/generate @@ -6,7 +6,7 @@ go generate ./... # Generate mocks mockery rm -rf pkg/proto/**/*.pb.go pkg/proto/**/*.pb.gw.go pkg/proto/**/*.swagger.json -if ! buf generate https://github.com/xmtp/proto.git#branch=main,subdir=proto; then +if ! buf generate https://github.com/xmtp/proto.git#branch=nm/add-association-stream,subdir=proto; then echo "Failed to generate protobuf definitions" exit 1 fi \ No newline at end of file diff --git a/pkg/authn/authn.pb.go b/pkg/authn/authn.pb.go index 872fd98c..c0de527b 100644 --- a/pkg/authn/authn.pb.go +++ b/pkg/authn/authn.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.34.2 -// protoc v5.28.2 +// protoc-gen-go v1.28.1 +// protoc v4.25.3 // source: authn.proto package authn @@ -681,7 +681,7 @@ func file_authn_proto_rawDescGZIP() []byte { } var file_authn_proto_msgTypes = make([]protoimpl.MessageInfo, 9) -var file_authn_proto_goTypes = []any{ +var file_authn_proto_goTypes = []interface{}{ (*Signature)(nil), // 0: pb.Signature (*Secp256K1Uncompresed)(nil), // 1: pb.Secp256k1Uncompresed (*PublicKey)(nil), // 2: pb.PublicKey @@ -713,7 +713,7 @@ func file_authn_proto_init() { return } if !protoimpl.UnsafeEnabled { - file_authn_proto_msgTypes[0].Exporter = func(v any, i int) any { + file_authn_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Signature); i { case 0: return &v.state @@ -725,7 +725,7 @@ func file_authn_proto_init() { return nil } } - file_authn_proto_msgTypes[1].Exporter = func(v any, i int) any { + file_authn_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Secp256K1Uncompresed); i { case 0: return &v.state @@ -737,7 +737,7 @@ func file_authn_proto_init() { return nil } } - file_authn_proto_msgTypes[2].Exporter = func(v any, i int) any { + file_authn_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PublicKey); i { case 0: return &v.state @@ -749,7 +749,7 @@ func file_authn_proto_init() { return nil } } - file_authn_proto_msgTypes[3].Exporter = func(v any, i int) any { + file_authn_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*V1ClientAuthRequest); i { case 0: return &v.state @@ -761,7 +761,7 @@ func file_authn_proto_init() { return nil } } - file_authn_proto_msgTypes[4].Exporter = func(v any, i int) any { + file_authn_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ClientAuthRequest); i { case 0: return &v.state @@ -773,7 +773,7 @@ func file_authn_proto_init() { return nil } } - file_authn_proto_msgTypes[5].Exporter = func(v any, i int) any { + file_authn_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*V1ClientAuthResponse); i { case 0: return &v.state @@ -785,7 +785,7 @@ func file_authn_proto_init() { return nil } } - file_authn_proto_msgTypes[6].Exporter = func(v any, i int) any { + file_authn_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ClientAuthResponse); i { case 0: return &v.state @@ -797,7 +797,7 @@ func file_authn_proto_init() { return nil } } - file_authn_proto_msgTypes[7].Exporter = func(v any, i int) any { + file_authn_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AuthData); i { case 0: return &v.state @@ -809,7 +809,7 @@ func file_authn_proto_init() { return nil } } - file_authn_proto_msgTypes[8].Exporter = func(v any, i int) any { + file_authn_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Signature_ECDSACompact); i { case 0: return &v.state @@ -822,16 +822,16 @@ func file_authn_proto_init() { } } } - file_authn_proto_msgTypes[0].OneofWrappers = []any{ + file_authn_proto_msgTypes[0].OneofWrappers = []interface{}{ (*Signature_EcdsaCompact)(nil), } - file_authn_proto_msgTypes[2].OneofWrappers = []any{ + file_authn_proto_msgTypes[2].OneofWrappers = []interface{}{ (*PublicKey_Secp256K1Uncompressed)(nil), } - file_authn_proto_msgTypes[4].OneofWrappers = []any{ + file_authn_proto_msgTypes[4].OneofWrappers = []interface{}{ (*ClientAuthRequest_V1)(nil), } - file_authn_proto_msgTypes[6].OneofWrappers = []any{ + file_authn_proto_msgTypes[6].OneofWrappers = []interface{}{ (*ClientAuthResponse_V1)(nil), } type x struct{} diff --git a/pkg/identity/api/v1/identity_service.go b/pkg/identity/api/v1/identity_service.go index a91b3f7c..98d992cc 100644 --- a/pkg/identity/api/v1/identity_service.go +++ b/pkg/identity/api/v1/identity_service.go @@ -8,6 +8,8 @@ import ( api "github.com/xmtp/xmtp-node-go/pkg/proto/identity/api/v1" identity "github.com/xmtp/xmtp-node-go/pkg/proto/identity/api/v1" "go.uber.org/zap" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" ) type Service struct { @@ -102,3 +104,10 @@ func (s *Service) GetInboxIds(ctx context.Context, req *api.GetInboxIdsRequest) func (s *Service) VerifySmartContractWalletSignatures(ctx context.Context, req *identity.VerifySmartContractWalletSignaturesRequest) (*identity.VerifySmartContractWalletSignaturesResponse, error) { return s.validationService.VerifySmartContractWalletSignatures(ctx, req) } + +func (s *Service) SubscribeAssociationChanges(req *identity.SubscribeAssociationChangesRequest, stream identity.IdentityApi_SubscribeAssociationChangesServer) error { + log := s.log.Named("subscribe-association-changes") + log.Info("subscription started") + + return status.Errorf(codes.Unimplemented, "method SubscribeAssociationChanges not implemented") +} diff --git a/pkg/proto/identity/api/v1/identity.pb.go b/pkg/proto/identity/api/v1/identity.pb.go index 8db581f0..872df3d2 100644 --- a/pkg/proto/identity/api/v1/identity.pb.go +++ b/pkg/proto/identity/api/v1/identity.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: identity/api/v1/identity.proto @@ -26,11 +26,10 @@ const ( ) type VerifySmartContractWalletSignaturesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Signatures []*VerifySmartContractWalletSignatureRequestSignature `protobuf:"bytes,1,rep,name=signatures,proto3" json:"signatures,omitempty"` unknownFields protoimpl.UnknownFields - - Signatures []*VerifySmartContractWalletSignatureRequestSignature `protobuf:"bytes,1,rep,name=signatures,proto3" json:"signatures,omitempty"` + sizeCache protoimpl.SizeCache } func (x *VerifySmartContractWalletSignaturesRequest) Reset() { @@ -71,18 +70,17 @@ func (x *VerifySmartContractWalletSignaturesRequest) GetSignatures() []*VerifySm } type VerifySmartContractWalletSignatureRequestSignature struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // CAIP-10 string // https://github.com/ChainAgnostic/CAIPs/blob/main/CAIPs/caip-10.md AccountId string `protobuf:"bytes,1,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"` // Specify the block number to verify the signature against BlockNumber *uint64 `protobuf:"varint,2,opt,name=block_number,json=blockNumber,proto3,oneof" json:"block_number,omitempty"` // The signature bytes - Signature []byte `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` - Hash []byte `protobuf:"bytes,4,opt,name=hash,proto3" json:"hash,omitempty"` + Signature []byte `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` + Hash []byte `protobuf:"bytes,4,opt,name=hash,proto3" json:"hash,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *VerifySmartContractWalletSignatureRequestSignature) Reset() { @@ -144,11 +142,10 @@ func (x *VerifySmartContractWalletSignatureRequestSignature) GetHash() []byte { } type VerifySmartContractWalletSignaturesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*VerifySmartContractWalletSignaturesResponse_ValidationResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*VerifySmartContractWalletSignaturesResponse_ValidationResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *VerifySmartContractWalletSignaturesResponse) Reset() { @@ -190,11 +187,10 @@ func (x *VerifySmartContractWalletSignaturesResponse) GetResponses() []*VerifySm // Publishes an identity update to the network type PublishIdentityUpdateRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` IdentityUpdate *associations.IdentityUpdate `protobuf:"bytes,1,opt,name=identity_update,json=identityUpdate,proto3" json:"identity_update,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PublishIdentityUpdateRequest) Reset() { @@ -236,9 +232,9 @@ func (x *PublishIdentityUpdateRequest) GetIdentityUpdate() *associations.Identit // The response when an identity update is published type PublishIdentityUpdateResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PublishIdentityUpdateResponse) Reset() { @@ -273,11 +269,10 @@ func (*PublishIdentityUpdateResponse) Descriptor() ([]byte, []int) { // Get all updates for an identity since the specified time type GetIdentityUpdatesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*GetIdentityUpdatesRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*GetIdentityUpdatesRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesRequest) Reset() { @@ -319,11 +314,10 @@ func (x *GetIdentityUpdatesRequest) GetRequests() []*GetIdentityUpdatesRequest_R // Returns all log entries for the requested identities type GetIdentityUpdatesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*GetIdentityUpdatesResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*GetIdentityUpdatesResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesResponse) Reset() { @@ -365,11 +359,10 @@ func (x *GetIdentityUpdatesResponse) GetResponses() []*GetIdentityUpdatesRespons // Request to retrieve the XIDs for the given addresses type GetInboxIdsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*GetInboxIdsRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*GetInboxIdsRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetInboxIdsRequest) Reset() { @@ -411,11 +404,10 @@ func (x *GetInboxIdsRequest) GetRequests() []*GetInboxIdsRequest_Request { // Response with the XIDs for the requested addresses type GetInboxIdsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*GetInboxIdsResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*GetInboxIdsResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetInboxIdsResponse) Reset() { @@ -455,19 +447,130 @@ func (x *GetInboxIdsResponse) GetResponses() []*GetInboxIdsResponse_Response { return nil } -type VerifySmartContractWalletSignaturesResponse_ValidationResponse struct { - state protoimpl.MessageState +// Request to subscribe to association changes, triggered by Identity Updates +type SubscribeAssociationChangesRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache +} + +func (x *SubscribeAssociationChangesRequest) Reset() { + *x = SubscribeAssociationChangesRequest{} + mi := &file_identity_api_v1_identity_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SubscribeAssociationChangesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SubscribeAssociationChangesRequest) ProtoMessage() {} + +func (x *SubscribeAssociationChangesRequest) ProtoReflect() protoreflect.Message { + mi := &file_identity_api_v1_identity_proto_msgTypes[9] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SubscribeAssociationChangesRequest.ProtoReflect.Descriptor instead. +func (*SubscribeAssociationChangesRequest) Descriptor() ([]byte, []int) { + return file_identity_api_v1_identity_proto_rawDescGZIP(), []int{9} +} + +type SubscribeAssociationChangesResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + TimestampNs uint64 `protobuf:"varint,1,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` + // Types that are valid to be assigned to Change: + // + // *SubscribeAssociationChangesResponse_AccountAddressAssociation_ + Change isSubscribeAssociationChangesResponse_Change `protobuf_oneof:"change"` unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} - IsValid bool `protobuf:"varint,1,opt,name=is_valid,json=isValid,proto3" json:"is_valid,omitempty"` - BlockNumber *uint64 `protobuf:"varint,2,opt,name=block_number,json=blockNumber,proto3,oneof" json:"block_number,omitempty"` - Error *string `protobuf:"bytes,3,opt,name=error,proto3,oneof" json:"error,omitempty"` +func (x *SubscribeAssociationChangesResponse) Reset() { + *x = SubscribeAssociationChangesResponse{} + mi := &file_identity_api_v1_identity_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SubscribeAssociationChangesResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SubscribeAssociationChangesResponse) ProtoMessage() {} + +func (x *SubscribeAssociationChangesResponse) ProtoReflect() protoreflect.Message { + mi := &file_identity_api_v1_identity_proto_msgTypes[10] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SubscribeAssociationChangesResponse.ProtoReflect.Descriptor instead. +func (*SubscribeAssociationChangesResponse) Descriptor() ([]byte, []int) { + return file_identity_api_v1_identity_proto_rawDescGZIP(), []int{10} +} + +func (x *SubscribeAssociationChangesResponse) GetTimestampNs() uint64 { + if x != nil { + return x.TimestampNs + } + return 0 +} + +func (x *SubscribeAssociationChangesResponse) GetChange() isSubscribeAssociationChangesResponse_Change { + if x != nil { + return x.Change + } + return nil +} + +func (x *SubscribeAssociationChangesResponse) GetAccountAddressAssociation() *SubscribeAssociationChangesResponse_AccountAddressAssociation { + if x != nil { + if x, ok := x.Change.(*SubscribeAssociationChangesResponse_AccountAddressAssociation_); ok { + return x.AccountAddressAssociation + } + } + return nil +} + +type isSubscribeAssociationChangesResponse_Change interface { + isSubscribeAssociationChangesResponse_Change() +} + +type SubscribeAssociationChangesResponse_AccountAddressAssociation_ struct { + AccountAddressAssociation *SubscribeAssociationChangesResponse_AccountAddressAssociation `protobuf:"bytes,2,opt,name=account_address_association,json=accountAddressAssociation,proto3,oneof"` +} + +func (*SubscribeAssociationChangesResponse_AccountAddressAssociation_) isSubscribeAssociationChangesResponse_Change() { +} + +type VerifySmartContractWalletSignaturesResponse_ValidationResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + IsValid bool `protobuf:"varint,1,opt,name=is_valid,json=isValid,proto3" json:"is_valid,omitempty"` + BlockNumber *uint64 `protobuf:"varint,2,opt,name=block_number,json=blockNumber,proto3,oneof" json:"block_number,omitempty"` + Error *string `protobuf:"bytes,3,opt,name=error,proto3,oneof" json:"error,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *VerifySmartContractWalletSignaturesResponse_ValidationResponse) Reset() { *x = VerifySmartContractWalletSignaturesResponse_ValidationResponse{} - mi := &file_identity_api_v1_identity_proto_msgTypes[9] + mi := &file_identity_api_v1_identity_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -479,7 +582,7 @@ func (x *VerifySmartContractWalletSignaturesResponse_ValidationResponse) String( func (*VerifySmartContractWalletSignaturesResponse_ValidationResponse) ProtoMessage() {} func (x *VerifySmartContractWalletSignaturesResponse_ValidationResponse) ProtoReflect() protoreflect.Message { - mi := &file_identity_api_v1_identity_proto_msgTypes[9] + mi := &file_identity_api_v1_identity_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -519,17 +622,16 @@ func (x *VerifySmartContractWalletSignaturesResponse_ValidationResponse) GetErro // Points to the last entry the client has received. The sequence_id should be // set to 0 if the client has not received anything. type GetIdentityUpdatesRequest_Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + SequenceId uint64 `protobuf:"varint,2,opt,name=sequence_id,json=sequenceId,proto3" json:"sequence_id,omitempty"` unknownFields protoimpl.UnknownFields - - InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` - SequenceId uint64 `protobuf:"varint,2,opt,name=sequence_id,json=sequenceId,proto3" json:"sequence_id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesRequest_Request) Reset() { *x = GetIdentityUpdatesRequest_Request{} - mi := &file_identity_api_v1_identity_proto_msgTypes[10] + mi := &file_identity_api_v1_identity_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -541,7 +643,7 @@ func (x *GetIdentityUpdatesRequest_Request) String() string { func (*GetIdentityUpdatesRequest_Request) ProtoMessage() {} func (x *GetIdentityUpdatesRequest_Request) ProtoReflect() protoreflect.Message { - mi := &file_identity_api_v1_identity_proto_msgTypes[10] + mi := &file_identity_api_v1_identity_proto_msgTypes[12] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -573,18 +675,17 @@ func (x *GetIdentityUpdatesRequest_Request) GetSequenceId() uint64 { // A single entry in the XID log on the server. type GetIdentityUpdatesResponse_IdentityUpdateLog struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` SequenceId uint64 `protobuf:"varint,1,opt,name=sequence_id,json=sequenceId,proto3" json:"sequence_id,omitempty"` ServerTimestampNs uint64 `protobuf:"varint,2,opt,name=server_timestamp_ns,json=serverTimestampNs,proto3" json:"server_timestamp_ns,omitempty"` Update *associations.IdentityUpdate `protobuf:"bytes,3,opt,name=update,proto3" json:"update,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesResponse_IdentityUpdateLog) Reset() { *x = GetIdentityUpdatesResponse_IdentityUpdateLog{} - mi := &file_identity_api_v1_identity_proto_msgTypes[11] + mi := &file_identity_api_v1_identity_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -596,7 +697,7 @@ func (x *GetIdentityUpdatesResponse_IdentityUpdateLog) String() string { func (*GetIdentityUpdatesResponse_IdentityUpdateLog) ProtoMessage() {} func (x *GetIdentityUpdatesResponse_IdentityUpdateLog) ProtoReflect() protoreflect.Message { - mi := &file_identity_api_v1_identity_proto_msgTypes[11] + mi := &file_identity_api_v1_identity_proto_msgTypes[13] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -635,17 +736,16 @@ func (x *GetIdentityUpdatesResponse_IdentityUpdateLog) GetUpdate() *associations // The update log for a single identity, starting after the last cursor type GetIdentityUpdatesResponse_Response struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + Updates []*GetIdentityUpdatesResponse_IdentityUpdateLog `protobuf:"bytes,2,rep,name=updates,proto3" json:"updates,omitempty"` unknownFields protoimpl.UnknownFields - - InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` - Updates []*GetIdentityUpdatesResponse_IdentityUpdateLog `protobuf:"bytes,2,rep,name=updates,proto3" json:"updates,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesResponse_Response) Reset() { *x = GetIdentityUpdatesResponse_Response{} - mi := &file_identity_api_v1_identity_proto_msgTypes[12] + mi := &file_identity_api_v1_identity_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -657,7 +757,7 @@ func (x *GetIdentityUpdatesResponse_Response) String() string { func (*GetIdentityUpdatesResponse_Response) ProtoMessage() {} func (x *GetIdentityUpdatesResponse_Response) ProtoReflect() protoreflect.Message { - mi := &file_identity_api_v1_identity_proto_msgTypes[12] + mi := &file_identity_api_v1_identity_proto_msgTypes[14] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -689,16 +789,15 @@ func (x *GetIdentityUpdatesResponse_Response) GetUpdates() []*GetIdentityUpdates // A single request for a given address type GetInboxIdsRequest_Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` unknownFields protoimpl.UnknownFields - - Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetInboxIdsRequest_Request) Reset() { *x = GetInboxIdsRequest_Request{} - mi := &file_identity_api_v1_identity_proto_msgTypes[13] + mi := &file_identity_api_v1_identity_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -710,7 +809,7 @@ func (x *GetInboxIdsRequest_Request) String() string { func (*GetInboxIdsRequest_Request) ProtoMessage() {} func (x *GetInboxIdsRequest_Request) ProtoReflect() protoreflect.Message { - mi := &file_identity_api_v1_identity_proto_msgTypes[13] + mi := &file_identity_api_v1_identity_proto_msgTypes[15] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -735,17 +834,16 @@ func (x *GetInboxIdsRequest_Request) GetAddress() string { // A single response for a given address type GetInboxIdsResponse_Response struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` + InboxId *string `protobuf:"bytes,2,opt,name=inbox_id,json=inboxId,proto3,oneof" json:"inbox_id,omitempty"` unknownFields protoimpl.UnknownFields - - Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` - InboxId *string `protobuf:"bytes,2,opt,name=inbox_id,json=inboxId,proto3,oneof" json:"inbox_id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetInboxIdsResponse_Response) Reset() { *x = GetInboxIdsResponse_Response{} - mi := &file_identity_api_v1_identity_proto_msgTypes[14] + mi := &file_identity_api_v1_identity_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -757,7 +855,7 @@ func (x *GetInboxIdsResponse_Response) String() string { func (*GetInboxIdsResponse_Response) ProtoMessage() {} func (x *GetInboxIdsResponse_Response) ProtoReflect() protoreflect.Message { - mi := &file_identity_api_v1_identity_proto_msgTypes[14] + mi := &file_identity_api_v1_identity_proto_msgTypes[16] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -787,6 +885,59 @@ func (x *GetInboxIdsResponse_Response) GetInboxId() string { return "" } +// A change in account_address -> inbox_id association +type SubscribeAssociationChangesResponse_AccountAddressAssociation struct { + state protoimpl.MessageState `protogen:"open.v1"` + AccountAddress string `protobuf:"bytes,1,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` + InboxId string `protobuf:"bytes,2,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SubscribeAssociationChangesResponse_AccountAddressAssociation) Reset() { + *x = SubscribeAssociationChangesResponse_AccountAddressAssociation{} + mi := &file_identity_api_v1_identity_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SubscribeAssociationChangesResponse_AccountAddressAssociation) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SubscribeAssociationChangesResponse_AccountAddressAssociation) ProtoMessage() {} + +func (x *SubscribeAssociationChangesResponse_AccountAddressAssociation) ProtoReflect() protoreflect.Message { + mi := &file_identity_api_v1_identity_proto_msgTypes[17] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SubscribeAssociationChangesResponse_AccountAddressAssociation.ProtoReflect.Descriptor instead. +func (*SubscribeAssociationChangesResponse_AccountAddressAssociation) Descriptor() ([]byte, []int) { + return file_identity_api_v1_identity_proto_rawDescGZIP(), []int{10, 0} +} + +func (x *SubscribeAssociationChangesResponse_AccountAddressAssociation) GetAccountAddress() string { + if x != nil { + return x.AccountAddress + } + return "" +} + +func (x *SubscribeAssociationChangesResponse_AccountAddressAssociation) GetInboxId() string { + if x != nil { + return x.InboxId + } + return "" +} + var File_identity_api_v1_identity_proto protoreflect.FileDescriptor var file_identity_api_v1_identity_proto_rawDesc = []byte{ @@ -912,69 +1063,105 @@ var file_identity_api_v1_identity_proto_rawDesc = []byte{ 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1e, 0x0a, 0x08, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x5f, - 0x69, 0x64, 0x32, 0xe3, 0x05, 0x0a, 0x0b, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, - 0x70, 0x69, 0x12, 0xb1, 0x01, 0x0a, 0x15, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x32, 0x2e, 0x78, - 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, - 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x33, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x69, 0x64, 0x22, 0x24, 0x0a, 0x22, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x41, + 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xcb, 0x02, 0x0a, 0x23, 0x53, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x6e, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x4e, 0x73, 0x12, 0x95, 0x01, 0x0a, 0x1b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x53, 0x2e, 0x78, 0x6d, 0x74, 0x70, + 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, + 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, + 0x52, 0x19, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x5f, 0x0a, 0x19, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x41, 0x73, 0x73, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x42, 0x08, 0x0a, 0x06, + 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x32, 0xb1, 0x07, 0x0a, 0x0b, 0x49, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x41, 0x70, 0x69, 0x12, 0xb1, 0x01, 0x0a, 0x15, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x12, 0x32, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x49, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x29, 0x3a, 0x01, 0x2a, - 0x22, 0x24, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x70, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x2d, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2d, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0xa5, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x2f, 0x2e, - 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, - 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x3a, 0x01, 0x2a, 0x22, 0x21, 0x2f, 0x69, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x65, 0x74, 0x2d, 0x69, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x12, 0x89, - 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x73, 0x12, 0x28, - 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x29, 0x3a, 0x01, 0x2a, 0x22, 0x24, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, + 0x76, 0x31, 0x2f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x2d, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x2d, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0xa5, 0x01, 0x0a, 0x12, 0x47, + 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x73, 0x12, 0x2f, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x3a, 0x01, 0x2a, 0x22, + 0x21, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x65, + 0x74, 0x2d, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2d, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x73, 0x12, 0x89, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, + 0x64, 0x73, 0x12, 0x28, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, + 0x6f, 0x78, 0x49, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x78, + 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x3a, + 0x01, 0x2a, 0x22, 0x1a, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x76, 0x31, + 0x2f, 0x67, 0x65, 0x74, 0x2d, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x2d, 0x69, 0x64, 0x73, 0x12, 0xeb, + 0x01, 0x0a, 0x23, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x43, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x53, 0x69, 0x67, 0x6e, + 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x40, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, + 0x72, 0x69, 0x66, 0x79, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, - 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x3a, 0x01, 0x2a, 0x22, 0x1a, - 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x65, 0x74, - 0x2d, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x2d, 0x69, 0x64, 0x73, 0x12, 0xeb, 0x01, 0x0a, 0x23, 0x56, - 0x65, 0x72, 0x69, 0x66, 0x79, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, - 0x65, 0x73, 0x12, 0x40, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, - 0x53, 0x6d, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x57, 0x61, 0x6c, - 0x6c, 0x65, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x69, - 0x66, 0x79, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x57, - 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x39, 0x3a, - 0x01, 0x2a, 0x22, 0x34, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x76, 0x31, - 0x2f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x2d, 0x73, 0x6d, 0x61, 0x72, 0x74, 0x2d, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2d, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x2d, 0x73, 0x69, - 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x42, 0xf1, 0x01, 0x92, 0x41, 0x14, 0x12, 0x12, - 0x0a, 0x0b, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, 0x70, 0x69, 0x32, 0x03, 0x31, - 0x2e, 0x30, 0x0a, 0x18, 0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x42, 0x0d, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2f, 0x78, - 0x6d, 0x74, 0x70, 0x2d, 0x6e, 0x6f, 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x61, - 0x70, 0x69, 0x2f, 0x76, 0x31, 0x3b, 0x61, 0x70, 0x69, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x58, 0x49, - 0x41, 0xaa, 0x02, 0x14, 0x58, 0x6d, 0x74, 0x70, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x14, 0x58, 0x6d, 0x74, 0x70, 0x5c, - 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x56, 0x31, 0xe2, - 0x02, 0x20, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5c, - 0x41, 0x70, 0x69, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0xea, 0x02, 0x17, 0x58, 0x6d, 0x74, 0x70, 0x3a, 0x3a, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, + 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3f, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x39, 0x3a, 0x01, 0x2a, 0x22, 0x34, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x2d, 0x73, 0x6d, 0x61, 0x72, + 0x74, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2d, 0x77, 0x61, 0x6c, 0x6c, 0x65, + 0x74, 0x2d, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0xcb, 0x01, 0x0a, + 0x1b, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x38, 0x2e, 0x78, + 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x41, 0x73, 0x73, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x35, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x3a, 0x01, 0x2a, 0x22, 0x2a, 0x2f, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, + 0x72, 0x69, 0x62, 0x65, 0x2d, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2d, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x30, 0x01, 0x42, 0xf1, 0x01, 0x92, 0x41, 0x14, + 0x12, 0x12, 0x0a, 0x0b, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, 0x70, 0x69, 0x32, + 0x03, 0x31, 0x2e, 0x30, 0x0a, 0x18, 0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x42, 0x0d, + 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, + 0x3c, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, + 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2d, 0x6e, 0x6f, 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, + 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, + 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31, 0x3b, 0x61, 0x70, 0x69, 0x76, 0x31, 0xa2, 0x02, 0x03, + 0x58, 0x49, 0x41, 0xaa, 0x02, 0x14, 0x58, 0x6d, 0x74, 0x70, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x14, 0x58, 0x6d, 0x74, + 0x70, 0x5c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x56, + 0x31, 0xe2, 0x02, 0x20, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x17, 0x58, 0x6d, 0x74, 0x70, 0x3a, 0x3a, 0x49, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -989,7 +1176,7 @@ func file_identity_api_v1_identity_proto_rawDescGZIP() []byte { return file_identity_api_v1_identity_proto_rawDescData } -var file_identity_api_v1_identity_proto_msgTypes = make([]protoimpl.MessageInfo, 15) +var file_identity_api_v1_identity_proto_msgTypes = make([]protoimpl.MessageInfo, 18) var file_identity_api_v1_identity_proto_goTypes = []any{ (*VerifySmartContractWalletSignaturesRequest)(nil), // 0: xmtp.identity.api.v1.VerifySmartContractWalletSignaturesRequest (*VerifySmartContractWalletSignatureRequestSignature)(nil), // 1: xmtp.identity.api.v1.VerifySmartContractWalletSignatureRequestSignature @@ -1000,37 +1187,43 @@ var file_identity_api_v1_identity_proto_goTypes = []any{ (*GetIdentityUpdatesResponse)(nil), // 6: xmtp.identity.api.v1.GetIdentityUpdatesResponse (*GetInboxIdsRequest)(nil), // 7: xmtp.identity.api.v1.GetInboxIdsRequest (*GetInboxIdsResponse)(nil), // 8: xmtp.identity.api.v1.GetInboxIdsResponse - (*VerifySmartContractWalletSignaturesResponse_ValidationResponse)(nil), // 9: xmtp.identity.api.v1.VerifySmartContractWalletSignaturesResponse.ValidationResponse - (*GetIdentityUpdatesRequest_Request)(nil), // 10: xmtp.identity.api.v1.GetIdentityUpdatesRequest.Request - (*GetIdentityUpdatesResponse_IdentityUpdateLog)(nil), // 11: xmtp.identity.api.v1.GetIdentityUpdatesResponse.IdentityUpdateLog - (*GetIdentityUpdatesResponse_Response)(nil), // 12: xmtp.identity.api.v1.GetIdentityUpdatesResponse.Response - (*GetInboxIdsRequest_Request)(nil), // 13: xmtp.identity.api.v1.GetInboxIdsRequest.Request - (*GetInboxIdsResponse_Response)(nil), // 14: xmtp.identity.api.v1.GetInboxIdsResponse.Response - (*associations.IdentityUpdate)(nil), // 15: xmtp.identity.associations.IdentityUpdate + (*SubscribeAssociationChangesRequest)(nil), // 9: xmtp.identity.api.v1.SubscribeAssociationChangesRequest + (*SubscribeAssociationChangesResponse)(nil), // 10: xmtp.identity.api.v1.SubscribeAssociationChangesResponse + (*VerifySmartContractWalletSignaturesResponse_ValidationResponse)(nil), // 11: xmtp.identity.api.v1.VerifySmartContractWalletSignaturesResponse.ValidationResponse + (*GetIdentityUpdatesRequest_Request)(nil), // 12: xmtp.identity.api.v1.GetIdentityUpdatesRequest.Request + (*GetIdentityUpdatesResponse_IdentityUpdateLog)(nil), // 13: xmtp.identity.api.v1.GetIdentityUpdatesResponse.IdentityUpdateLog + (*GetIdentityUpdatesResponse_Response)(nil), // 14: xmtp.identity.api.v1.GetIdentityUpdatesResponse.Response + (*GetInboxIdsRequest_Request)(nil), // 15: xmtp.identity.api.v1.GetInboxIdsRequest.Request + (*GetInboxIdsResponse_Response)(nil), // 16: xmtp.identity.api.v1.GetInboxIdsResponse.Response + (*SubscribeAssociationChangesResponse_AccountAddressAssociation)(nil), // 17: xmtp.identity.api.v1.SubscribeAssociationChangesResponse.AccountAddressAssociation + (*associations.IdentityUpdate)(nil), // 18: xmtp.identity.associations.IdentityUpdate } var file_identity_api_v1_identity_proto_depIdxs = []int32{ 1, // 0: xmtp.identity.api.v1.VerifySmartContractWalletSignaturesRequest.signatures:type_name -> xmtp.identity.api.v1.VerifySmartContractWalletSignatureRequestSignature - 9, // 1: xmtp.identity.api.v1.VerifySmartContractWalletSignaturesResponse.responses:type_name -> xmtp.identity.api.v1.VerifySmartContractWalletSignaturesResponse.ValidationResponse - 15, // 2: xmtp.identity.api.v1.PublishIdentityUpdateRequest.identity_update:type_name -> xmtp.identity.associations.IdentityUpdate - 10, // 3: xmtp.identity.api.v1.GetIdentityUpdatesRequest.requests:type_name -> xmtp.identity.api.v1.GetIdentityUpdatesRequest.Request - 12, // 4: xmtp.identity.api.v1.GetIdentityUpdatesResponse.responses:type_name -> xmtp.identity.api.v1.GetIdentityUpdatesResponse.Response - 13, // 5: xmtp.identity.api.v1.GetInboxIdsRequest.requests:type_name -> xmtp.identity.api.v1.GetInboxIdsRequest.Request - 14, // 6: xmtp.identity.api.v1.GetInboxIdsResponse.responses:type_name -> xmtp.identity.api.v1.GetInboxIdsResponse.Response - 15, // 7: xmtp.identity.api.v1.GetIdentityUpdatesResponse.IdentityUpdateLog.update:type_name -> xmtp.identity.associations.IdentityUpdate - 11, // 8: xmtp.identity.api.v1.GetIdentityUpdatesResponse.Response.updates:type_name -> xmtp.identity.api.v1.GetIdentityUpdatesResponse.IdentityUpdateLog - 3, // 9: xmtp.identity.api.v1.IdentityApi.PublishIdentityUpdate:input_type -> xmtp.identity.api.v1.PublishIdentityUpdateRequest - 5, // 10: xmtp.identity.api.v1.IdentityApi.GetIdentityUpdates:input_type -> xmtp.identity.api.v1.GetIdentityUpdatesRequest - 7, // 11: xmtp.identity.api.v1.IdentityApi.GetInboxIds:input_type -> xmtp.identity.api.v1.GetInboxIdsRequest - 0, // 12: xmtp.identity.api.v1.IdentityApi.VerifySmartContractWalletSignatures:input_type -> xmtp.identity.api.v1.VerifySmartContractWalletSignaturesRequest - 4, // 13: xmtp.identity.api.v1.IdentityApi.PublishIdentityUpdate:output_type -> xmtp.identity.api.v1.PublishIdentityUpdateResponse - 6, // 14: xmtp.identity.api.v1.IdentityApi.GetIdentityUpdates:output_type -> xmtp.identity.api.v1.GetIdentityUpdatesResponse - 8, // 15: xmtp.identity.api.v1.IdentityApi.GetInboxIds:output_type -> xmtp.identity.api.v1.GetInboxIdsResponse - 2, // 16: xmtp.identity.api.v1.IdentityApi.VerifySmartContractWalletSignatures:output_type -> xmtp.identity.api.v1.VerifySmartContractWalletSignaturesResponse - 13, // [13:17] is the sub-list for method output_type - 9, // [9:13] is the sub-list for method input_type - 9, // [9:9] is the sub-list for extension type_name - 9, // [9:9] is the sub-list for extension extendee - 0, // [0:9] is the sub-list for field type_name + 11, // 1: xmtp.identity.api.v1.VerifySmartContractWalletSignaturesResponse.responses:type_name -> xmtp.identity.api.v1.VerifySmartContractWalletSignaturesResponse.ValidationResponse + 18, // 2: xmtp.identity.api.v1.PublishIdentityUpdateRequest.identity_update:type_name -> xmtp.identity.associations.IdentityUpdate + 12, // 3: xmtp.identity.api.v1.GetIdentityUpdatesRequest.requests:type_name -> xmtp.identity.api.v1.GetIdentityUpdatesRequest.Request + 14, // 4: xmtp.identity.api.v1.GetIdentityUpdatesResponse.responses:type_name -> xmtp.identity.api.v1.GetIdentityUpdatesResponse.Response + 15, // 5: xmtp.identity.api.v1.GetInboxIdsRequest.requests:type_name -> xmtp.identity.api.v1.GetInboxIdsRequest.Request + 16, // 6: xmtp.identity.api.v1.GetInboxIdsResponse.responses:type_name -> xmtp.identity.api.v1.GetInboxIdsResponse.Response + 17, // 7: xmtp.identity.api.v1.SubscribeAssociationChangesResponse.account_address_association:type_name -> xmtp.identity.api.v1.SubscribeAssociationChangesResponse.AccountAddressAssociation + 18, // 8: xmtp.identity.api.v1.GetIdentityUpdatesResponse.IdentityUpdateLog.update:type_name -> xmtp.identity.associations.IdentityUpdate + 13, // 9: xmtp.identity.api.v1.GetIdentityUpdatesResponse.Response.updates:type_name -> xmtp.identity.api.v1.GetIdentityUpdatesResponse.IdentityUpdateLog + 3, // 10: xmtp.identity.api.v1.IdentityApi.PublishIdentityUpdate:input_type -> xmtp.identity.api.v1.PublishIdentityUpdateRequest + 5, // 11: xmtp.identity.api.v1.IdentityApi.GetIdentityUpdates:input_type -> xmtp.identity.api.v1.GetIdentityUpdatesRequest + 7, // 12: xmtp.identity.api.v1.IdentityApi.GetInboxIds:input_type -> xmtp.identity.api.v1.GetInboxIdsRequest + 0, // 13: xmtp.identity.api.v1.IdentityApi.VerifySmartContractWalletSignatures:input_type -> xmtp.identity.api.v1.VerifySmartContractWalletSignaturesRequest + 9, // 14: xmtp.identity.api.v1.IdentityApi.SubscribeAssociationChanges:input_type -> xmtp.identity.api.v1.SubscribeAssociationChangesRequest + 4, // 15: xmtp.identity.api.v1.IdentityApi.PublishIdentityUpdate:output_type -> xmtp.identity.api.v1.PublishIdentityUpdateResponse + 6, // 16: xmtp.identity.api.v1.IdentityApi.GetIdentityUpdates:output_type -> xmtp.identity.api.v1.GetIdentityUpdatesResponse + 8, // 17: xmtp.identity.api.v1.IdentityApi.GetInboxIds:output_type -> xmtp.identity.api.v1.GetInboxIdsResponse + 2, // 18: xmtp.identity.api.v1.IdentityApi.VerifySmartContractWalletSignatures:output_type -> xmtp.identity.api.v1.VerifySmartContractWalletSignaturesResponse + 10, // 19: xmtp.identity.api.v1.IdentityApi.SubscribeAssociationChanges:output_type -> xmtp.identity.api.v1.SubscribeAssociationChangesResponse + 15, // [15:20] is the sub-list for method output_type + 10, // [10:15] is the sub-list for method input_type + 10, // [10:10] is the sub-list for extension type_name + 10, // [10:10] is the sub-list for extension extendee + 0, // [0:10] is the sub-list for field type_name } func init() { file_identity_api_v1_identity_proto_init() } @@ -1039,15 +1232,18 @@ func file_identity_api_v1_identity_proto_init() { return } file_identity_api_v1_identity_proto_msgTypes[1].OneofWrappers = []any{} - file_identity_api_v1_identity_proto_msgTypes[9].OneofWrappers = []any{} - file_identity_api_v1_identity_proto_msgTypes[14].OneofWrappers = []any{} + file_identity_api_v1_identity_proto_msgTypes[10].OneofWrappers = []any{ + (*SubscribeAssociationChangesResponse_AccountAddressAssociation_)(nil), + } + file_identity_api_v1_identity_proto_msgTypes[11].OneofWrappers = []any{} + file_identity_api_v1_identity_proto_msgTypes[16].OneofWrappers = []any{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_identity_api_v1_identity_proto_rawDesc, NumEnums: 0, - NumMessages: 15, + NumMessages: 18, NumExtensions: 0, NumServices: 1, }, diff --git a/pkg/proto/identity/api/v1/identity.pb.gw.go b/pkg/proto/identity/api/v1/identity.pb.gw.go index 3ff2c3d5..0f2af86f 100644 --- a/pkg/proto/identity/api/v1/identity.pb.gw.go +++ b/pkg/proto/identity/api/v1/identity.pb.gw.go @@ -135,6 +135,27 @@ func local_request_IdentityApi_VerifySmartContractWalletSignatures_0(ctx context } +func request_IdentityApi_SubscribeAssociationChanges_0(ctx context.Context, marshaler runtime.Marshaler, client IdentityApiClient, req *http.Request, pathParams map[string]string) (IdentityApi_SubscribeAssociationChangesClient, runtime.ServerMetadata, error) { + var protoReq SubscribeAssociationChangesRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + stream, err := client.SubscribeAssociationChanges(ctx, &protoReq) + if err != nil { + return nil, metadata, err + } + header, err := stream.Header() + if err != nil { + return nil, metadata, err + } + metadata.HeaderMD = header + return stream, metadata, nil + +} + // RegisterIdentityApiHandlerServer registers the http handlers for service IdentityApi to "mux". // UnaryRPC :call IdentityApiServer directly. // StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. @@ -241,6 +262,13 @@ func RegisterIdentityApiHandlerServer(ctx context.Context, mux *runtime.ServeMux }) + mux.Handle("POST", pattern_IdentityApi_SubscribeAssociationChanges_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") + _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + }) + return nil } @@ -370,6 +398,28 @@ func RegisterIdentityApiHandlerClient(ctx context.Context, mux *runtime.ServeMux }) + mux.Handle("POST", pattern_IdentityApi_SubscribeAssociationChanges_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/xmtp.identity.api.v1.IdentityApi/SubscribeAssociationChanges", runtime.WithHTTPPathPattern("/identity/v1/subscribe-association-changes")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_IdentityApi_SubscribeAssociationChanges_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_IdentityApi_SubscribeAssociationChanges_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + + }) + return nil } @@ -381,6 +431,8 @@ var ( pattern_IdentityApi_GetInboxIds_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"identity", "v1", "get-inbox-ids"}, "")) pattern_IdentityApi_VerifySmartContractWalletSignatures_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"identity", "v1", "verify-smart-contract-wallet-signatures"}, "")) + + pattern_IdentityApi_SubscribeAssociationChanges_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"identity", "v1", "subscribe-association-changes"}, "")) ) var ( @@ -391,4 +443,6 @@ var ( forward_IdentityApi_GetInboxIds_0 = runtime.ForwardResponseMessage forward_IdentityApi_VerifySmartContractWalletSignatures_0 = runtime.ForwardResponseMessage + + forward_IdentityApi_SubscribeAssociationChanges_0 = runtime.ForwardResponseStream ) diff --git a/pkg/proto/identity/api/v1/identity_grpc.pb.go b/pkg/proto/identity/api/v1/identity_grpc.pb.go index 6b12b8db..64818145 100644 --- a/pkg/proto/identity/api/v1/identity_grpc.pb.go +++ b/pkg/proto/identity/api/v1/identity_grpc.pb.go @@ -25,6 +25,7 @@ const ( IdentityApi_GetIdentityUpdates_FullMethodName = "/xmtp.identity.api.v1.IdentityApi/GetIdentityUpdates" IdentityApi_GetInboxIds_FullMethodName = "/xmtp.identity.api.v1.IdentityApi/GetInboxIds" IdentityApi_VerifySmartContractWalletSignatures_FullMethodName = "/xmtp.identity.api.v1.IdentityApi/VerifySmartContractWalletSignatures" + IdentityApi_SubscribeAssociationChanges_FullMethodName = "/xmtp.identity.api.v1.IdentityApi/SubscribeAssociationChanges" ) // IdentityApiClient is the client API for IdentityApi service. @@ -42,6 +43,7 @@ type IdentityApiClient interface { GetInboxIds(ctx context.Context, in *GetInboxIdsRequest, opts ...grpc.CallOption) (*GetInboxIdsResponse, error) // Verify an unverified smart contract wallet signature VerifySmartContractWalletSignatures(ctx context.Context, in *VerifySmartContractWalletSignaturesRequest, opts ...grpc.CallOption) (*VerifySmartContractWalletSignaturesResponse, error) + SubscribeAssociationChanges(ctx context.Context, in *SubscribeAssociationChangesRequest, opts ...grpc.CallOption) (IdentityApi_SubscribeAssociationChangesClient, error) } type identityApiClient struct { @@ -88,6 +90,38 @@ func (c *identityApiClient) VerifySmartContractWalletSignatures(ctx context.Cont return out, nil } +func (c *identityApiClient) SubscribeAssociationChanges(ctx context.Context, in *SubscribeAssociationChangesRequest, opts ...grpc.CallOption) (IdentityApi_SubscribeAssociationChangesClient, error) { + stream, err := c.cc.NewStream(ctx, &IdentityApi_ServiceDesc.Streams[0], IdentityApi_SubscribeAssociationChanges_FullMethodName, opts...) + if err != nil { + return nil, err + } + x := &identityApiSubscribeAssociationChangesClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type IdentityApi_SubscribeAssociationChangesClient interface { + Recv() (*SubscribeAssociationChangesResponse, error) + grpc.ClientStream +} + +type identityApiSubscribeAssociationChangesClient struct { + grpc.ClientStream +} + +func (x *identityApiSubscribeAssociationChangesClient) Recv() (*SubscribeAssociationChangesResponse, error) { + m := new(SubscribeAssociationChangesResponse) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + // IdentityApiServer is the server API for IdentityApi service. // All implementations must embed UnimplementedIdentityApiServer // for forward compatibility @@ -103,6 +137,7 @@ type IdentityApiServer interface { GetInboxIds(context.Context, *GetInboxIdsRequest) (*GetInboxIdsResponse, error) // Verify an unverified smart contract wallet signature VerifySmartContractWalletSignatures(context.Context, *VerifySmartContractWalletSignaturesRequest) (*VerifySmartContractWalletSignaturesResponse, error) + SubscribeAssociationChanges(*SubscribeAssociationChangesRequest, IdentityApi_SubscribeAssociationChangesServer) error mustEmbedUnimplementedIdentityApiServer() } @@ -122,6 +157,9 @@ func (UnimplementedIdentityApiServer) GetInboxIds(context.Context, *GetInboxIdsR func (UnimplementedIdentityApiServer) VerifySmartContractWalletSignatures(context.Context, *VerifySmartContractWalletSignaturesRequest) (*VerifySmartContractWalletSignaturesResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method VerifySmartContractWalletSignatures not implemented") } +func (UnimplementedIdentityApiServer) SubscribeAssociationChanges(*SubscribeAssociationChangesRequest, IdentityApi_SubscribeAssociationChangesServer) error { + return status.Errorf(codes.Unimplemented, "method SubscribeAssociationChanges not implemented") +} func (UnimplementedIdentityApiServer) mustEmbedUnimplementedIdentityApiServer() {} // UnsafeIdentityApiServer may be embedded to opt out of forward compatibility for this service. @@ -207,6 +245,27 @@ func _IdentityApi_VerifySmartContractWalletSignatures_Handler(srv interface{}, c return interceptor(ctx, in, info, handler) } +func _IdentityApi_SubscribeAssociationChanges_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(SubscribeAssociationChangesRequest) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(IdentityApiServer).SubscribeAssociationChanges(m, &identityApiSubscribeAssociationChangesServer{stream}) +} + +type IdentityApi_SubscribeAssociationChangesServer interface { + Send(*SubscribeAssociationChangesResponse) error + grpc.ServerStream +} + +type identityApiSubscribeAssociationChangesServer struct { + grpc.ServerStream +} + +func (x *identityApiSubscribeAssociationChangesServer) Send(m *SubscribeAssociationChangesResponse) error { + return x.ServerStream.SendMsg(m) +} + // IdentityApi_ServiceDesc is the grpc.ServiceDesc for IdentityApi service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -231,6 +290,12 @@ var IdentityApi_ServiceDesc = grpc.ServiceDesc{ Handler: _IdentityApi_VerifySmartContractWalletSignatures_Handler, }, }, - Streams: []grpc.StreamDesc{}, + Streams: []grpc.StreamDesc{ + { + StreamName: "SubscribeAssociationChanges", + Handler: _IdentityApi_SubscribeAssociationChanges_Handler, + ServerStreams: true, + }, + }, Metadata: "identity/api/v1/identity.proto", } diff --git a/pkg/proto/identity/associations/association.pb.go b/pkg/proto/identity/associations/association.pb.go index cb2b338c..a14c6438 100644 --- a/pkg/proto/identity/associations/association.pb.go +++ b/pkg/proto/identity/associations/association.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: identity/associations/association.proto @@ -24,15 +24,14 @@ const ( // The identifier for a member of an XID type MemberIdentifier struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Kind: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Kind: // // *MemberIdentifier_Address // *MemberIdentifier_InstallationPublicKey - Kind isMemberIdentifier_Kind `protobuf_oneof:"kind"` + Kind isMemberIdentifier_Kind `protobuf_oneof:"kind"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *MemberIdentifier) Reset() { @@ -65,23 +64,27 @@ func (*MemberIdentifier) Descriptor() ([]byte, []int) { return file_identity_associations_association_proto_rawDescGZIP(), []int{0} } -func (m *MemberIdentifier) GetKind() isMemberIdentifier_Kind { - if m != nil { - return m.Kind +func (x *MemberIdentifier) GetKind() isMemberIdentifier_Kind { + if x != nil { + return x.Kind } return nil } func (x *MemberIdentifier) GetAddress() string { - if x, ok := x.GetKind().(*MemberIdentifier_Address); ok { - return x.Address + if x != nil { + if x, ok := x.Kind.(*MemberIdentifier_Address); ok { + return x.Address + } } return "" } func (x *MemberIdentifier) GetInstallationPublicKey() []byte { - if x, ok := x.GetKind().(*MemberIdentifier_InstallationPublicKey); ok { - return x.InstallationPublicKey + if x != nil { + if x, ok := x.Kind.(*MemberIdentifier_InstallationPublicKey); ok { + return x.InstallationPublicKey + } } return nil } @@ -104,13 +107,13 @@ func (*MemberIdentifier_InstallationPublicKey) isMemberIdentifier_Kind() {} // single member that optionally indicates the member that added them type Member struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Identifier *MemberIdentifier `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"` - AddedByEntity *MemberIdentifier `protobuf:"bytes,2,opt,name=added_by_entity,json=addedByEntity,proto3,oneof" json:"added_by_entity,omitempty"` - ClientTimestampNs *uint64 `protobuf:"varint,3,opt,name=client_timestamp_ns,json=clientTimestampNs,proto3,oneof" json:"client_timestamp_ns,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + Identifier *MemberIdentifier `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"` + AddedByEntity *MemberIdentifier `protobuf:"bytes,2,opt,name=added_by_entity,json=addedByEntity,proto3,oneof" json:"added_by_entity,omitempty"` + ClientTimestampNs *uint64 `protobuf:"varint,3,opt,name=client_timestamp_ns,json=clientTimestampNs,proto3,oneof" json:"client_timestamp_ns,omitempty"` + AddedOnChainId *uint64 `protobuf:"varint,4,opt,name=added_on_chain_id,json=addedOnChainId,proto3,oneof" json:"added_on_chain_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Member) Reset() { @@ -164,18 +167,24 @@ func (x *Member) GetClientTimestampNs() uint64 { return 0 } +func (x *Member) GetAddedOnChainId() uint64 { + if x != nil && x.AddedOnChainId != nil { + return *x.AddedOnChainId + } + return 0 +} + // The first entry of any XID log. The XID must be deterministically derivable // from the address and nonce. // The recovery address defaults to the initial associated_address unless // there is a subsequent ChangeRecoveryAddress in the log. type CreateInbox struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InitialAddress string `protobuf:"bytes,1,opt,name=initial_address,json=initialAddress,proto3" json:"initial_address,omitempty"` - Nonce uint64 `protobuf:"varint,2,opt,name=nonce,proto3" json:"nonce,omitempty"` - InitialAddressSignature *Signature `protobuf:"bytes,3,opt,name=initial_address_signature,json=initialAddressSignature,proto3" json:"initial_address_signature,omitempty"` // Must be an addressable member + state protoimpl.MessageState `protogen:"open.v1"` + InitialAddress string `protobuf:"bytes,1,opt,name=initial_address,json=initialAddress,proto3" json:"initial_address,omitempty"` + Nonce uint64 `protobuf:"varint,2,opt,name=nonce,proto3" json:"nonce,omitempty"` + InitialAddressSignature *Signature `protobuf:"bytes,3,opt,name=initial_address_signature,json=initialAddressSignature,proto3" json:"initial_address_signature,omitempty"` // Must be an addressable member + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *CreateInbox) Reset() { @@ -234,13 +243,12 @@ func (x *CreateInbox) GetInitialAddressSignature() *Signature { // A key-pair that has been associated with one role MUST not be permitted to be // associated with a different role. type AddAssociation struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - NewMemberIdentifier *MemberIdentifier `protobuf:"bytes,1,opt,name=new_member_identifier,json=newMemberIdentifier,proto3" json:"new_member_identifier,omitempty"` - ExistingMemberSignature *Signature `protobuf:"bytes,2,opt,name=existing_member_signature,json=existingMemberSignature,proto3" json:"existing_member_signature,omitempty"` - NewMemberSignature *Signature `protobuf:"bytes,3,opt,name=new_member_signature,json=newMemberSignature,proto3" json:"new_member_signature,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + NewMemberIdentifier *MemberIdentifier `protobuf:"bytes,1,opt,name=new_member_identifier,json=newMemberIdentifier,proto3" json:"new_member_identifier,omitempty"` + ExistingMemberSignature *Signature `protobuf:"bytes,2,opt,name=existing_member_signature,json=existingMemberSignature,proto3" json:"existing_member_signature,omitempty"` + NewMemberSignature *Signature `protobuf:"bytes,3,opt,name=new_member_signature,json=newMemberSignature,proto3" json:"new_member_signature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *AddAssociation) Reset() { @@ -296,12 +304,11 @@ func (x *AddAssociation) GetNewMemberSignature() *Signature { // Revokes a member from an XID. The recovery address must sign the revocation. type RevokeAssociation struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MemberToRevoke *MemberIdentifier `protobuf:"bytes,1,opt,name=member_to_revoke,json=memberToRevoke,proto3" json:"member_to_revoke,omitempty"` - RecoveryAddressSignature *Signature `protobuf:"bytes,2,opt,name=recovery_address_signature,json=recoveryAddressSignature,proto3" json:"recovery_address_signature,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + MemberToRevoke *MemberIdentifier `protobuf:"bytes,1,opt,name=member_to_revoke,json=memberToRevoke,proto3" json:"member_to_revoke,omitempty"` + RecoveryAddressSignature *Signature `protobuf:"bytes,2,opt,name=recovery_address_signature,json=recoveryAddressSignature,proto3" json:"recovery_address_signature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *RevokeAssociation) Reset() { @@ -352,12 +359,11 @@ func (x *RevokeAssociation) GetRecoveryAddressSignature() *Signature { // to be a member of the XID. In addition to being able to add members, the // recovery address can also revoke members. type ChangeRecoveryAddress struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - NewRecoveryAddress string `protobuf:"bytes,1,opt,name=new_recovery_address,json=newRecoveryAddress,proto3" json:"new_recovery_address,omitempty"` - ExistingRecoveryAddressSignature *Signature `protobuf:"bytes,2,opt,name=existing_recovery_address_signature,json=existingRecoveryAddressSignature,proto3" json:"existing_recovery_address_signature,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + NewRecoveryAddress string `protobuf:"bytes,1,opt,name=new_recovery_address,json=newRecoveryAddress,proto3" json:"new_recovery_address,omitempty"` + ExistingRecoveryAddressSignature *Signature `protobuf:"bytes,2,opt,name=existing_recovery_address_signature,json=existingRecoveryAddressSignature,proto3" json:"existing_recovery_address_signature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ChangeRecoveryAddress) Reset() { @@ -406,17 +412,16 @@ func (x *ChangeRecoveryAddress) GetExistingRecoveryAddressSignature() *Signature // A single identity operation type IdentityAction struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Kind: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Kind: // // *IdentityAction_CreateInbox // *IdentityAction_Add // *IdentityAction_Revoke // *IdentityAction_ChangeRecoveryAddress - Kind isIdentityAction_Kind `protobuf_oneof:"kind"` + Kind isIdentityAction_Kind `protobuf_oneof:"kind"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *IdentityAction) Reset() { @@ -449,37 +454,45 @@ func (*IdentityAction) Descriptor() ([]byte, []int) { return file_identity_associations_association_proto_rawDescGZIP(), []int{6} } -func (m *IdentityAction) GetKind() isIdentityAction_Kind { - if m != nil { - return m.Kind +func (x *IdentityAction) GetKind() isIdentityAction_Kind { + if x != nil { + return x.Kind } return nil } func (x *IdentityAction) GetCreateInbox() *CreateInbox { - if x, ok := x.GetKind().(*IdentityAction_CreateInbox); ok { - return x.CreateInbox + if x != nil { + if x, ok := x.Kind.(*IdentityAction_CreateInbox); ok { + return x.CreateInbox + } } return nil } func (x *IdentityAction) GetAdd() *AddAssociation { - if x, ok := x.GetKind().(*IdentityAction_Add); ok { - return x.Add + if x != nil { + if x, ok := x.Kind.(*IdentityAction_Add); ok { + return x.Add + } } return nil } func (x *IdentityAction) GetRevoke() *RevokeAssociation { - if x, ok := x.GetKind().(*IdentityAction_Revoke); ok { - return x.Revoke + if x != nil { + if x, ok := x.Kind.(*IdentityAction_Revoke); ok { + return x.Revoke + } } return nil } func (x *IdentityAction) GetChangeRecoveryAddress() *ChangeRecoveryAddress { - if x, ok := x.GetKind().(*IdentityAction_ChangeRecoveryAddress); ok { - return x.ChangeRecoveryAddress + if x != nil { + if x, ok := x.Kind.(*IdentityAction_ChangeRecoveryAddress); ok { + return x.ChangeRecoveryAddress + } } return nil } @@ -520,13 +533,12 @@ func (*IdentityAction_ChangeRecoveryAddress) isIdentityAction_Kind() {} // 3. The resulting signature is added to each association proto where relevant. // The same signature may be used for multiple associations in the array. type IdentityUpdate struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Actions []*IdentityAction `protobuf:"bytes,1,rep,name=actions,proto3" json:"actions,omitempty"` - ClientTimestampNs uint64 `protobuf:"varint,2,opt,name=client_timestamp_ns,json=clientTimestampNs,proto3" json:"client_timestamp_ns,omitempty"` - InboxId string `protobuf:"bytes,3,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + Actions []*IdentityAction `protobuf:"bytes,1,rep,name=actions,proto3" json:"actions,omitempty"` + ClientTimestampNs uint64 `protobuf:"varint,2,opt,name=client_timestamp_ns,json=clientTimestampNs,proto3" json:"client_timestamp_ns,omitempty"` + InboxId string `protobuf:"bytes,3,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *IdentityUpdate) Reset() { @@ -582,12 +594,11 @@ func (x *IdentityUpdate) GetInboxId() string { // Map of members belonging to an inbox_id type MemberMap struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Key *MemberIdentifier `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + Value *Member `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` unknownFields protoimpl.UnknownFields - - Key *MemberIdentifier `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - Value *Member `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MemberMap) Reset() { @@ -636,14 +647,13 @@ func (x *MemberMap) GetValue() *Member { // A final association state resulting from multiple `IdentityUpdates` type AssociationState struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` - Members []*MemberMap `protobuf:"bytes,2,rep,name=members,proto3" json:"members,omitempty"` - RecoveryAddress string `protobuf:"bytes,3,opt,name=recovery_address,json=recoveryAddress,proto3" json:"recovery_address,omitempty"` - SeenSignatures [][]byte `protobuf:"bytes,4,rep,name=seen_signatures,json=seenSignatures,proto3" json:"seen_signatures,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + Members []*MemberMap `protobuf:"bytes,2,rep,name=members,proto3" json:"members,omitempty"` + RecoveryAddress string `protobuf:"bytes,3,opt,name=recovery_address,json=recoveryAddress,proto3" json:"recovery_address,omitempty"` + SeenSignatures [][]byte `protobuf:"bytes,4,rep,name=seen_signatures,json=seenSignatures,proto3" json:"seen_signatures,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *AssociationState) Reset() { @@ -706,12 +716,11 @@ func (x *AssociationState) GetSeenSignatures() [][]byte { // / state diff between two final AssociationStates type AssociationStateDiff struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - NewMembers []*MemberIdentifier `protobuf:"bytes,1,rep,name=new_members,json=newMembers,proto3" json:"new_members,omitempty"` - RemovedMembers []*MemberIdentifier `protobuf:"bytes,2,rep,name=removed_members,json=removedMembers,proto3" json:"removed_members,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + NewMembers []*MemberIdentifier `protobuf:"bytes,1,rep,name=new_members,json=newMembers,proto3" json:"new_members,omitempty"` + RemovedMembers []*MemberIdentifier `protobuf:"bytes,2,rep,name=removed_members,json=removedMembers,proto3" json:"removed_members,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *AssociationStateDiff) Reset() { @@ -774,7 +783,7 @@ var file_identity_associations_association_proto_rawDesc = []byte{ 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x15, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x92, + 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xd8, 0x02, 0x0a, 0x06, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x4c, 0x0a, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, @@ -789,146 +798,151 @@ var file_identity_associations_association_proto_rawDesc = []byte{ 0x01, 0x01, 0x12, 0x33, 0x0a, 0x13, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x4e, 0x73, 0x88, 0x01, 0x01, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x61, 0x64, 0x64, 0x65, + 0x6d, 0x70, 0x4e, 0x73, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x11, 0x61, 0x64, 0x64, 0x65, 0x64, + 0x5f, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x04, 0x48, 0x02, 0x52, 0x0e, 0x61, 0x64, 0x64, 0x65, 0x64, 0x4f, 0x6e, 0x43, 0x68, 0x61, + 0x69, 0x6e, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x61, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x5f, 0x6e, 0x73, 0x22, 0xaf, 0x01, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, - 0x62, 0x6f, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, - 0x69, 0x74, 0x69, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, - 0x63, 0x65, 0x12, 0x61, 0x0a, 0x19, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x17, 0x69, 0x6e, - 0x69, 0x74, 0x69, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x69, 0x67, 0x6e, - 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xae, 0x02, 0x0a, 0x0e, 0x41, 0x64, 0x64, 0x41, 0x73, 0x73, - 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x60, 0x0a, 0x15, 0x6e, 0x65, 0x77, 0x5f, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x13, 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x61, 0x0a, 0x19, 0x65, 0x78, - 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x73, 0x69, - 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, - 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, - 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x52, 0x17, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x57, 0x0a, - 0x14, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, + 0x5f, 0x6e, 0x73, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x61, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x6f, 0x6e, + 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x69, 0x64, 0x22, 0xaf, 0x01, 0x0a, 0x0b, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x69, + 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x61, 0x0a, 0x19, 0x69, 0x6e, 0x69, 0x74, + 0x69, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x53, 0x69, 0x67, - 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xd0, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x76, 0x6f, 0x6b, - 0x65, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x56, 0x0a, 0x10, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x66, 0x69, 0x65, 0x72, 0x52, 0x0e, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x6f, 0x52, 0x65, - 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x63, 0x0a, 0x1a, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, + 0x72, 0x65, 0x52, 0x17, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xae, 0x02, 0x0a, 0x0e, + 0x41, 0x64, 0x64, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x60, + 0x0a, 0x15, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, + 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, + 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x13, 0x6e, 0x65, 0x77, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x12, 0x61, 0x0a, 0x19, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x17, 0x65, 0x78, 0x69, 0x73, + 0x74, 0x69, 0x6e, 0x67, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x12, 0x57, 0x0a, 0x14, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x25, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x53, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xd0, 0x01, 0x0a, + 0x11, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x56, 0x0a, 0x10, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x5f, + 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, + 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0e, 0x6d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x54, 0x6f, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x63, 0x0a, 0x1a, 0x72, 0x65, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x73, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, + 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, + 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, + 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x18, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, + 0xbf, 0x01, 0x0a, 0x15, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, + 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x6e, 0x65, 0x77, + 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x52, 0x65, 0x63, 0x6f, + 0x76, 0x65, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x74, 0x0a, 0x23, 0x65, + 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, - 0x18, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xbf, 0x01, 0x0a, 0x15, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x6e, 0x65, 0x77, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, - 0x65, 0x72, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x74, 0x0a, 0x23, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, - 0x67, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x20, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x22, 0xdc, 0x02, 0x0a, 0x0e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4c, 0x0a, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x69, + 0x6e, 0x62, 0x6f, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x78, 0x6d, 0x74, + 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, + 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, + 0x62, 0x6f, 0x78, 0x48, 0x00, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x62, + 0x6f, 0x78, 0x12, 0x3e, 0x0a, 0x03, 0x61, 0x64, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2a, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, + 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x41, 0x64, 0x64, + 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x61, + 0x64, 0x64, 0x12, 0x47, 0x0a, 0x06, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, - 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x20, 0x65, 0x78, 0x69, 0x73, 0x74, - 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xdc, 0x02, 0x0a, 0x0e, - 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4c, - 0x0a, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x48, 0x00, 0x52, - 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x12, 0x3e, 0x0a, 0x03, - 0x61, 0x64, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x6d, 0x74, 0x70, - 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03, 0x61, 0x64, 0x64, 0x12, 0x47, 0x0a, 0x06, - 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x78, + 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x6b, 0x0a, 0x17, 0x63, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, - 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, - 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x06, 0x72, - 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x6b, 0x0a, 0x17, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, - 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x48, + 0x00, 0x52, 0x15, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, + 0x22, 0xa1, 0x01, 0x0a, 0x0e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x12, 0x44, 0x0a, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x6e, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4e, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x62, + 0x6f, 0x78, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x62, + 0x6f, 0x78, 0x49, 0x64, 0x22, 0x85, 0x01, 0x0a, 0x09, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4d, + 0x61, 0x70, 0x12, 0x3e, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, + 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x38, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x22, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xc2, 0x01, 0x0a, + 0x10, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x07, + 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, + 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, + 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x4d, 0x61, 0x70, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x29, 0x0a, + 0x10, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x65, 0x6e, + 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0c, 0x52, 0x0e, 0x73, 0x65, 0x65, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x73, 0x22, 0xbc, 0x01, 0x0a, 0x14, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x44, 0x69, 0x66, 0x66, 0x12, 0x4d, 0x0a, 0x0b, 0x6e, 0x65, + 0x77, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, + 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0a, 0x6e, + 0x65, 0x77, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x55, 0x0a, 0x0f, 0x72, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, + 0x52, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x42, 0xfa, 0x01, 0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x15, 0x63, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xa1, 0x01, 0x0a, 0x0e, 0x49, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x44, 0x0a, - 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, - 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, - 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x49, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x4e, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x5f, 0x69, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x22, 0x85, - 0x01, 0x0a, 0x09, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x12, 0x3e, 0x0a, 0x03, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, - 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x38, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x78, 0x6d, - 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, - 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xc2, 0x01, 0x0a, 0x10, 0x41, 0x73, 0x73, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x69, - 0x6e, 0x62, 0x6f, 0x78, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, - 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x61, 0x70, 0x52, 0x07, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x6f, 0x76, - 0x65, 0x72, 0x79, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x65, 0x6e, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0e, 0x73, 0x65, 0x65, - 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x22, 0xbc, 0x01, 0x0a, 0x14, - 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x44, 0x69, 0x66, 0x66, 0x12, 0x4d, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, - 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x12, 0x55, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x5f, 0x6d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, - 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, - 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0e, 0x72, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x42, 0xfa, 0x01, 0x0a, 0x1e, 0x63, - 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x10, 0x41, - 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, - 0x01, 0x5a, 0x3c, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, - 0x74, 0x70, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2d, 0x6e, 0x6f, 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, - 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x2f, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0xa2, - 0x02, 0x03, 0x58, 0x49, 0x41, 0xaa, 0x02, 0x1a, 0x58, 0x6d, 0x74, 0x70, 0x2e, 0x49, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0xca, 0x02, 0x1a, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x5c, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0xe2, - 0x02, 0x26, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5c, - 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5c, 0x47, 0x50, 0x42, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1c, 0x58, 0x6d, 0x74, 0x70, 0x3a, - 0x3a, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x3a, 0x3a, 0x41, 0x73, 0x73, 0x6f, 0x63, - 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6f, 0x6e, 0x73, 0x42, 0x10, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2d, 0x6e, 0x6f, + 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0xa2, 0x02, 0x03, 0x58, 0x49, 0x41, 0xaa, 0x02, 0x1a, 0x58, 0x6d, + 0x74, 0x70, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x41, 0x73, 0x73, 0x6f, + 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0xca, 0x02, 0x1a, 0x58, 0x6d, 0x74, 0x70, 0x5c, + 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5c, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0xe2, 0x02, 0x26, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x49, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5c, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, + 0x1c, 0x58, 0x6d, 0x74, 0x70, 0x3a, 0x3a, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x3a, + 0x3a, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/pkg/proto/identity/associations/signature.pb.go b/pkg/proto/identity/associations/signature.pb.go index 975ca91b..bf29de1e 100644 --- a/pkg/proto/identity/associations/signature.pb.go +++ b/pkg/proto/identity/associations/signature.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: identity/associations/signature.proto @@ -25,12 +25,11 @@ const ( // RecoverableEcdsaSignature for EIP-191 and V2 signatures type RecoverableEcdsaSignature struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // 65-bytes [ R || S || V ], with recovery id as the last byte - Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` + Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *RecoverableEcdsaSignature) Reset() { @@ -72,14 +71,13 @@ func (x *RecoverableEcdsaSignature) GetBytes() []byte { // EdDSA signature for 25519 type RecoverableEd25519Signature struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // 64 bytes [R(32 bytes) || S(32 bytes)] Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` // 32 bytes - PublicKey []byte `protobuf:"bytes,2,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` + PublicKey []byte `protobuf:"bytes,2,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *RecoverableEd25519Signature) Reset() { @@ -128,17 +126,16 @@ func (x *RecoverableEd25519Signature) GetPublicKey() []byte { // Smart Contract Wallet signature type SmartContractWalletSignature struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // CAIP-10 string // https://github.com/ChainAgnostic/CAIPs/blob/main/CAIPs/caip-10.md AccountId string `protobuf:"bytes,1,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"` // Specify the block number to verify the signature against BlockNumber uint64 `protobuf:"varint,2,opt,name=block_number,json=blockNumber,proto3" json:"block_number,omitempty"` // The actual signature bytes - Signature []byte `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` + Signature []byte `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SmartContractWalletSignature) Reset() { @@ -199,12 +196,11 @@ func (x *SmartContractWalletSignature) GetSignature() []byte { // This signature type can ONLY be used for CreateXid and AddAssociation // payloads, and can only be used once in xmtpv3. type LegacyDelegatedSignature struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + DelegatedKey *message_contents.SignedPublicKey `protobuf:"bytes,1,opt,name=delegated_key,json=delegatedKey,proto3" json:"delegated_key,omitempty"` + Signature *RecoverableEcdsaSignature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` unknownFields protoimpl.UnknownFields - - DelegatedKey *message_contents.SignedPublicKey `protobuf:"bytes,1,opt,name=delegated_key,json=delegatedKey,proto3" json:"delegated_key,omitempty"` - Signature *RecoverableEcdsaSignature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` + sizeCache protoimpl.SizeCache } func (x *LegacyDelegatedSignature) Reset() { @@ -253,23 +249,22 @@ func (x *LegacyDelegatedSignature) GetSignature() *RecoverableEcdsaSignature { // A wrapper for all possible signature types type Signature struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Must have two properties: // 1. An identifier (address or public key) for the signer must either be // recoverable, or specified as a field. // 2. The signer certifies that the signing payload is correct. The payload // must be inferred from the context in which the signature is provided. // - // Types that are assignable to Signature: + // Types that are valid to be assigned to Signature: // // *Signature_Erc_191 // *Signature_Erc_6492 // *Signature_InstallationKey // *Signature_DelegatedErc_191 - Signature isSignature_Signature `protobuf_oneof:"signature"` + Signature isSignature_Signature `protobuf_oneof:"signature"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Signature) Reset() { @@ -302,37 +297,45 @@ func (*Signature) Descriptor() ([]byte, []int) { return file_identity_associations_signature_proto_rawDescGZIP(), []int{4} } -func (m *Signature) GetSignature() isSignature_Signature { - if m != nil { - return m.Signature +func (x *Signature) GetSignature() isSignature_Signature { + if x != nil { + return x.Signature } return nil } func (x *Signature) GetErc_191() *RecoverableEcdsaSignature { - if x, ok := x.GetSignature().(*Signature_Erc_191); ok { - return x.Erc_191 + if x != nil { + if x, ok := x.Signature.(*Signature_Erc_191); ok { + return x.Erc_191 + } } return nil } func (x *Signature) GetErc_6492() *SmartContractWalletSignature { - if x, ok := x.GetSignature().(*Signature_Erc_6492); ok { - return x.Erc_6492 + if x != nil { + if x, ok := x.Signature.(*Signature_Erc_6492); ok { + return x.Erc_6492 + } } return nil } func (x *Signature) GetInstallationKey() *RecoverableEd25519Signature { - if x, ok := x.GetSignature().(*Signature_InstallationKey); ok { - return x.InstallationKey + if x != nil { + if x, ok := x.Signature.(*Signature_InstallationKey); ok { + return x.InstallationKey + } } return nil } func (x *Signature) GetDelegatedErc_191() *LegacyDelegatedSignature { - if x, ok := x.GetSignature().(*Signature_DelegatedErc_191); ok { - return x.DelegatedErc_191 + if x != nil { + if x, ok := x.Signature.(*Signature_DelegatedErc_191); ok { + return x.DelegatedErc_191 + } } return nil } diff --git a/pkg/proto/identity/credential.pb.go b/pkg/proto/identity/credential.pb.go index e39848ac..0df22599 100644 --- a/pkg/proto/identity/credential.pb.go +++ b/pkg/proto/identity/credential.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: identity/credential.proto @@ -24,11 +24,10 @@ const ( // A credential that can be used in MLS leaf nodes type MlsCredential struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` unknownFields protoimpl.UnknownFields - - InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MlsCredential) Reset() { diff --git a/pkg/proto/keystore_api/v1/keystore.pb.go b/pkg/proto/keystore_api/v1/keystore.pb.go index 30cd04b1..a450a9b6 100644 --- a/pkg/proto/keystore_api/v1/keystore.pb.go +++ b/pkg/proto/keystore_api/v1/keystore.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: keystore_api/v1/keystore.proto @@ -178,12 +178,11 @@ func (GetKeystoreStatusResponse_KeystoreStatus) EnumDescriptor() ([]byte, []int) // Wrapper class for errors from the Keystore API type KeystoreError struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"` + Code ErrorCode `protobuf:"varint,2,opt,name=code,proto3,enum=xmtp.keystore_api.v1.ErrorCode" json:"code,omitempty"` unknownFields protoimpl.UnknownFields - - Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"` - Code ErrorCode `protobuf:"varint,2,opt,name=code,proto3,enum=xmtp.keystore_api.v1.ErrorCode" json:"code,omitempty"` + sizeCache protoimpl.SizeCache } func (x *KeystoreError) Reset() { @@ -232,11 +231,10 @@ func (x *KeystoreError) GetCode() ErrorCode { // Decrypt a batch of messages using X3DH key agreement type DecryptV1Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*DecryptV1Request_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*DecryptV1Request_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *DecryptV1Request) Reset() { @@ -278,11 +276,10 @@ func (x *DecryptV1Request) GetRequests() []*DecryptV1Request_Request { // Response type for both V1 and V2 decryption requests type DecryptResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*DecryptResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*DecryptResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *DecryptResponse) Reset() { @@ -324,11 +321,10 @@ func (x *DecryptResponse) GetResponses() []*DecryptResponse_Response { // Decrypt a batch of messages using the appropriate topic keys type DecryptV2Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*DecryptV2Request_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*DecryptV2Request_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *DecryptV2Request) Reset() { @@ -370,11 +366,10 @@ func (x *DecryptV2Request) GetRequests() []*DecryptV2Request_Request { // Encrypt a batch of messages using X3DH key agreement type EncryptV1Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*EncryptV1Request_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*EncryptV1Request_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *EncryptV1Request) Reset() { @@ -416,11 +411,10 @@ func (x *EncryptV1Request) GetRequests() []*EncryptV1Request_Request { // Response type for both V1 and V2 encryption requests type EncryptResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*EncryptResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*EncryptResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *EncryptResponse) Reset() { @@ -462,11 +456,10 @@ func (x *EncryptResponse) GetResponses() []*EncryptResponse_Response { // Encrypt a batch of messages using the appropriate topic keys type EncryptV2Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*EncryptV2Request_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*EncryptV2Request_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *EncryptV2Request) Reset() { @@ -508,11 +501,10 @@ func (x *EncryptV2Request) GetRequests() []*EncryptV2Request_Request { // Encrypt a message for yourself type SelfEncryptRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*SelfEncryptRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*SelfEncryptRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SelfEncryptRequest) Reset() { @@ -554,11 +546,10 @@ func (x *SelfEncryptRequest) GetRequests() []*SelfEncryptRequest_Request { // Response type for SelfEncryptRequest type SelfEncryptResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*SelfEncryptResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*SelfEncryptResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SelfEncryptResponse) Reset() { @@ -600,11 +591,10 @@ func (x *SelfEncryptResponse) GetResponses() []*SelfEncryptResponse_Response { // SelfDecryptRequest type SelfDecryptRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*SelfDecryptRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*SelfDecryptRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SelfDecryptRequest) Reset() { @@ -646,11 +636,10 @@ func (x *SelfDecryptRequest) GetRequests() []*SelfDecryptRequest_Request { // Get the private preferences topic identifier type GetPrivatePreferencesTopicIdentifierResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Identifier string `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"` unknownFields protoimpl.UnknownFields - - Identifier string `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetPrivatePreferencesTopicIdentifierResponse) Reset() { @@ -692,14 +681,13 @@ func (x *GetPrivatePreferencesTopicIdentifierResponse) GetIdentifier() string { // Request to create an invite payload, and store the topic keys in the Keystore type CreateInviteRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Context *message_contents.InvitationV1_Context `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` + Recipient *message_contents.SignedPublicKeyBundle `protobuf:"bytes,2,opt,name=recipient,proto3" json:"recipient,omitempty"` + CreatedNs uint64 `protobuf:"varint,3,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` + ConsentProof *message_contents.ConsentProofPayload `protobuf:"bytes,4,opt,name=consent_proof,json=consentProof,proto3" json:"consent_proof,omitempty"` unknownFields protoimpl.UnknownFields - - Context *message_contents.InvitationV1_Context `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"` - Recipient *message_contents.SignedPublicKeyBundle `protobuf:"bytes,2,opt,name=recipient,proto3" json:"recipient,omitempty"` - CreatedNs uint64 `protobuf:"varint,3,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` - ConsentProof *message_contents.ConsentProofPayload `protobuf:"bytes,4,opt,name=consent_proof,json=consentProof,proto3" json:"consent_proof,omitempty"` + sizeCache protoimpl.SizeCache } func (x *CreateInviteRequest) Reset() { @@ -762,12 +750,11 @@ func (x *CreateInviteRequest) GetConsentProof() *message_contents.ConsentProofPa // Response to a CreateInviteRequest type CreateInviteResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Conversation *message_contents.ConversationReference `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation,omitempty"` + Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"` unknownFields protoimpl.UnknownFields - - Conversation *message_contents.ConversationReference `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation,omitempty"` - Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"` + sizeCache protoimpl.SizeCache } func (x *CreateInviteResponse) Reset() { @@ -816,11 +803,10 @@ func (x *CreateInviteResponse) GetPayload() []byte { // Request to save a batch of invite messages to the Keystore type SaveInvitesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*SaveInvitesRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*SaveInvitesRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SaveInvitesRequest) Reset() { @@ -862,11 +848,10 @@ func (x *SaveInvitesRequest) GetRequests() []*SaveInvitesRequest_Request { // Response to a SaveInvitesRequest type SaveInvitesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*SaveInvitesResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*SaveInvitesResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SaveInvitesResponse) Reset() { @@ -908,11 +893,10 @@ func (x *SaveInvitesResponse) GetResponses() []*SaveInvitesResponse_Response { // CreateAuthTokenRequest is used to create an auth token for the XMTP API type CreateAuthTokenRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + TimestampNs *uint64 `protobuf:"varint,1,opt,name=timestamp_ns,json=timestampNs,proto3,oneof" json:"timestamp_ns,omitempty"` unknownFields protoimpl.UnknownFields - - TimestampNs *uint64 `protobuf:"varint,1,opt,name=timestamp_ns,json=timestampNs,proto3,oneof" json:"timestamp_ns,omitempty"` + sizeCache protoimpl.SizeCache } func (x *CreateAuthTokenRequest) Reset() { @@ -955,11 +939,10 @@ func (x *CreateAuthTokenRequest) GetTimestampNs() uint64 { // SaveV1ConversationsRequest is used to save a batch of conversations to the // built in persistence type SaveV1ConversationsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` Conversations []*message_contents.ConversationReference `protobuf:"bytes,1,rep,name=conversations,proto3" json:"conversations,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SaveV1ConversationsRequest) Reset() { @@ -1001,9 +984,9 @@ func (x *SaveV1ConversationsRequest) GetConversations() []*message_contents.Conv // Placeholder response type for SaveV1Conversations type SaveV1ConversationsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SaveV1ConversationsResponse) Reset() { @@ -1038,11 +1021,10 @@ func (*SaveV1ConversationsResponse) Descriptor() ([]byte, []int) { // Response for GetV2Conversations type GetConversationsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` Conversations []*message_contents.ConversationReference `protobuf:"bytes,1,rep,name=conversations,proto3" json:"conversations,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetConversationsResponse) Reset() { @@ -1085,11 +1067,10 @@ func (x *GetConversationsResponse) GetConversations() []*message_contents.Conver // Used to check if the Keystore implementation has been setup for the given // wallet address Only used for MM Snap Keystore currently type GetKeystoreStatusRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + WalletAddress string `protobuf:"bytes,1,opt,name=wallet_address,json=walletAddress,proto3" json:"wallet_address,omitempty"` unknownFields protoimpl.UnknownFields - - WalletAddress string `protobuf:"bytes,1,opt,name=wallet_address,json=walletAddress,proto3" json:"wallet_address,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetKeystoreStatusRequest) Reset() { @@ -1131,11 +1112,10 @@ func (x *GetKeystoreStatusRequest) GetWalletAddress() string { // Response to GetKeystoreStatusRequest type GetKeystoreStatusResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Status GetKeystoreStatusResponse_KeystoreStatus `protobuf:"varint,1,opt,name=status,proto3,enum=xmtp.keystore_api.v1.GetKeystoreStatusResponse_KeystoreStatus" json:"status,omitempty"` unknownFields protoimpl.UnknownFields - - Status GetKeystoreStatusResponse_KeystoreStatus `protobuf:"varint,1,opt,name=status,proto3,enum=xmtp.keystore_api.v1.GetKeystoreStatusResponse_KeystoreStatus" json:"status,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetKeystoreStatusResponse) Reset() { @@ -1178,14 +1158,13 @@ func (x *GetKeystoreStatusResponse) GetStatus() GetKeystoreStatusResponse_Keysto // Used to initialize the Keystore with a private key bundle retrieved from the // client type InitKeystoreRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Bundle: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Bundle: // // *InitKeystoreRequest_V1 - Bundle isInitKeystoreRequest_Bundle `protobuf_oneof:"bundle"` + Bundle isInitKeystoreRequest_Bundle `protobuf_oneof:"bundle"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *InitKeystoreRequest) Reset() { @@ -1218,16 +1197,18 @@ func (*InitKeystoreRequest) Descriptor() ([]byte, []int) { return file_keystore_api_v1_keystore_proto_rawDescGZIP(), []int{21} } -func (m *InitKeystoreRequest) GetBundle() isInitKeystoreRequest_Bundle { - if m != nil { - return m.Bundle +func (x *InitKeystoreRequest) GetBundle() isInitKeystoreRequest_Bundle { + if x != nil { + return x.Bundle } return nil } func (x *InitKeystoreRequest) GetV1() *message_contents.PrivateKeyBundleV1 { - if x, ok := x.GetBundle().(*InitKeystoreRequest_V1); ok { - return x.V1 + if x != nil { + if x, ok := x.Bundle.(*InitKeystoreRequest_V1); ok { + return x.V1 + } } return nil } @@ -1244,11 +1225,10 @@ func (*InitKeystoreRequest_V1) isInitKeystoreRequest_Bundle() {} // Response to the request to initialize the Keystore type InitKeystoreResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Error *KeystoreError `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"` unknownFields protoimpl.UnknownFields - - Error *KeystoreError `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"` + sizeCache protoimpl.SizeCache } func (x *InitKeystoreResponse) Reset() { @@ -1291,16 +1271,15 @@ func (x *InitKeystoreResponse) GetError() *KeystoreError { // SignDigestRequest is used to sign a digest with either the identity key // or a prekey type SignDigestRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Digest []byte `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"` - // Types that are assignable to Signer: + state protoimpl.MessageState `protogen:"open.v1"` + Digest []byte `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"` + // Types that are valid to be assigned to Signer: // // *SignDigestRequest_IdentityKey // *SignDigestRequest_PrekeyIndex - Signer isSignDigestRequest_Signer `protobuf_oneof:"signer"` + Signer isSignDigestRequest_Signer `protobuf_oneof:"signer"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SignDigestRequest) Reset() { @@ -1340,23 +1319,27 @@ func (x *SignDigestRequest) GetDigest() []byte { return nil } -func (m *SignDigestRequest) GetSigner() isSignDigestRequest_Signer { - if m != nil { - return m.Signer +func (x *SignDigestRequest) GetSigner() isSignDigestRequest_Signer { + if x != nil { + return x.Signer } return nil } func (x *SignDigestRequest) GetIdentityKey() bool { - if x, ok := x.GetSigner().(*SignDigestRequest_IdentityKey); ok { - return x.IdentityKey + if x != nil { + if x, ok := x.Signer.(*SignDigestRequest_IdentityKey); ok { + return x.IdentityKey + } } return false } func (x *SignDigestRequest) GetPrekeyIndex() uint32 { - if x, ok := x.GetSigner().(*SignDigestRequest_PrekeyIndex); ok { - return x.PrekeyIndex + if x != nil { + if x, ok := x.Signer.(*SignDigestRequest_PrekeyIndex); ok { + return x.PrekeyIndex + } } return 0 } @@ -1379,11 +1362,10 @@ func (*SignDigestRequest_PrekeyIndex) isSignDigestRequest_Signer() {} // GetRefreshJobRequest is used to get the last run time of a refresh job type GetRefreshJobRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + JobType JobType `protobuf:"varint,1,opt,name=job_type,json=jobType,proto3,enum=xmtp.keystore_api.v1.JobType" json:"job_type,omitempty"` unknownFields protoimpl.UnknownFields - - JobType JobType `protobuf:"varint,1,opt,name=job_type,json=jobType,proto3,enum=xmtp.keystore_api.v1.JobType" json:"job_type,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetRefreshJobRequest) Reset() { @@ -1425,11 +1407,10 @@ func (x *GetRefreshJobRequest) GetJobType() JobType { // GetRefreshJobResponse is used to return the last run time of a refresh job type GetRefreshJobResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + LastRunNs int64 `protobuf:"varint,1,opt,name=last_run_ns,json=lastRunNs,proto3" json:"last_run_ns,omitempty"` unknownFields protoimpl.UnknownFields - - LastRunNs int64 `protobuf:"varint,1,opt,name=last_run_ns,json=lastRunNs,proto3" json:"last_run_ns,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetRefreshJobResponse) Reset() { @@ -1471,12 +1452,11 @@ func (x *GetRefreshJobResponse) GetLastRunNs() int64 { // SetRefreshJobRequest is used to set the last run time of a refresh job type SetRefeshJobRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + JobType JobType `protobuf:"varint,1,opt,name=job_type,json=jobType,proto3,enum=xmtp.keystore_api.v1.JobType" json:"job_type,omitempty"` + LastRunNs int64 `protobuf:"varint,2,opt,name=last_run_ns,json=lastRunNs,proto3" json:"last_run_ns,omitempty"` unknownFields protoimpl.UnknownFields - - JobType JobType `protobuf:"varint,1,opt,name=job_type,json=jobType,proto3,enum=xmtp.keystore_api.v1.JobType" json:"job_type,omitempty"` - LastRunNs int64 `protobuf:"varint,2,opt,name=last_run_ns,json=lastRunNs,proto3" json:"last_run_ns,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SetRefeshJobRequest) Reset() { @@ -1525,9 +1505,9 @@ func (x *SetRefeshJobRequest) GetLastRunNs() int64 { // SetRefreshJobResponse is an empty response type type SetRefreshJobResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SetRefreshJobResponse) Reset() { @@ -1562,11 +1542,10 @@ func (*SetRefreshJobResponse) Descriptor() ([]byte, []int) { // A mapping of topics to their decrypted invitations type TopicMap struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Topics map[string]*TopicMap_TopicData `protobuf:"bytes,1,rep,name=topics,proto3" json:"topics,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` unknownFields protoimpl.UnknownFields - - Topics map[string]*TopicMap_TopicData `protobuf:"bytes,1,rep,name=topics,proto3" json:"topics,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + sizeCache protoimpl.SizeCache } func (x *TopicMap) Reset() { @@ -1608,11 +1587,10 @@ func (x *TopicMap) GetTopics() map[string]*TopicMap_TopicData { // Used to get a mapping of conversation topics to their HMAC keys type GetConversationHmacKeysRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Topics []string `protobuf:"bytes,1,rep,name=topics,proto3" json:"topics,omitempty"` unknownFields protoimpl.UnknownFields - - Topics []string `protobuf:"bytes,1,rep,name=topics,proto3" json:"topics,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetConversationHmacKeysRequest) Reset() { @@ -1654,11 +1632,10 @@ func (x *GetConversationHmacKeysRequest) GetTopics() []string { // A mapping of topics to their HMAC keys type GetConversationHmacKeysResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + HmacKeys map[string]*GetConversationHmacKeysResponse_HmacKeys `protobuf:"bytes,1,rep,name=hmac_keys,json=hmacKeys,proto3" json:"hmac_keys,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` unknownFields protoimpl.UnknownFields - - HmacKeys map[string]*GetConversationHmacKeysResponse_HmacKeys `protobuf:"bytes,1,rep,name=hmac_keys,json=hmacKeys,proto3" json:"hmac_keys,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + sizeCache protoimpl.SizeCache } func (x *GetConversationHmacKeysResponse) Reset() { @@ -1700,11 +1677,10 @@ func (x *GetConversationHmacKeysResponse) GetHmacKeys() map[string]*GetConversat // A mapping of message hashes to their private preferences action type PrivatePreferencesActionMap struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Actions map[string]*message_contents.PrivatePreferencesAction `protobuf:"bytes,1,rep,name=actions,proto3" json:"actions,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` unknownFields protoimpl.UnknownFields - - Actions map[string]*message_contents.PrivatePreferencesAction `protobuf:"bytes,1,rep,name=actions,proto3" json:"actions,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + sizeCache protoimpl.SizeCache } func (x *PrivatePreferencesActionMap) Reset() { @@ -1746,14 +1722,13 @@ func (x *PrivatePreferencesActionMap) GetActions() map[string]*message_contents. // A single decryption request type DecryptV1Request_Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Payload *message_contents.Ciphertext `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` + PeerKeys *message_contents.PublicKeyBundle `protobuf:"bytes,2,opt,name=peer_keys,json=peerKeys,proto3" json:"peer_keys,omitempty"` + HeaderBytes []byte `protobuf:"bytes,3,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` + IsSender bool `protobuf:"varint,4,opt,name=is_sender,json=isSender,proto3" json:"is_sender,omitempty"` unknownFields protoimpl.UnknownFields - - Payload *message_contents.Ciphertext `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` - PeerKeys *message_contents.PublicKeyBundle `protobuf:"bytes,2,opt,name=peer_keys,json=peerKeys,proto3" json:"peer_keys,omitempty"` - HeaderBytes []byte `protobuf:"bytes,3,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` - IsSender bool `protobuf:"varint,4,opt,name=is_sender,json=isSender,proto3" json:"is_sender,omitempty"` + sizeCache protoimpl.SizeCache } func (x *DecryptV1Request_Request) Reset() { @@ -1816,15 +1791,14 @@ func (x *DecryptV1Request_Request) GetIsSender() bool { // A single decryption response type DecryptResponse_Response struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Response: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Response: // // *DecryptResponse_Response_Result // *DecryptResponse_Response_Error - Response isDecryptResponse_Response_Response `protobuf_oneof:"response"` + Response isDecryptResponse_Response_Response `protobuf_oneof:"response"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *DecryptResponse_Response) Reset() { @@ -1857,23 +1831,27 @@ func (*DecryptResponse_Response) Descriptor() ([]byte, []int) { return file_keystore_api_v1_keystore_proto_rawDescGZIP(), []int{2, 0} } -func (m *DecryptResponse_Response) GetResponse() isDecryptResponse_Response_Response { - if m != nil { - return m.Response +func (x *DecryptResponse_Response) GetResponse() isDecryptResponse_Response_Response { + if x != nil { + return x.Response } return nil } func (x *DecryptResponse_Response) GetResult() *DecryptResponse_Response_Success { - if x, ok := x.GetResponse().(*DecryptResponse_Response_Result); ok { - return x.Result + if x != nil { + if x, ok := x.Response.(*DecryptResponse_Response_Result); ok { + return x.Result + } } return nil } func (x *DecryptResponse_Response) GetError() *KeystoreError { - if x, ok := x.GetResponse().(*DecryptResponse_Response_Error); ok { - return x.Error + if x != nil { + if x, ok := x.Response.(*DecryptResponse_Response_Error); ok { + return x.Error + } } return nil } @@ -1896,11 +1874,10 @@ func (*DecryptResponse_Response_Error) isDecryptResponse_Response_Response() {} // Wrapper object for success response type DecryptResponse_Response_Success struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Decrypted []byte `protobuf:"bytes,1,opt,name=decrypted,proto3" json:"decrypted,omitempty"` unknownFields protoimpl.UnknownFields - - Decrypted []byte `protobuf:"bytes,1,opt,name=decrypted,proto3" json:"decrypted,omitempty"` + sizeCache protoimpl.SizeCache } func (x *DecryptResponse_Response_Success) Reset() { @@ -1942,13 +1919,12 @@ func (x *DecryptResponse_Response_Success) GetDecrypted() []byte { // A single decryption request type DecryptV2Request_Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Payload *message_contents.Ciphertext `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` + HeaderBytes []byte `protobuf:"bytes,2,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` + ContentTopic string `protobuf:"bytes,3,opt,name=content_topic,json=contentTopic,proto3" json:"content_topic,omitempty"` unknownFields protoimpl.UnknownFields - - Payload *message_contents.Ciphertext `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` - HeaderBytes []byte `protobuf:"bytes,2,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` - ContentTopic string `protobuf:"bytes,3,opt,name=content_topic,json=contentTopic,proto3" json:"content_topic,omitempty"` + sizeCache protoimpl.SizeCache } func (x *DecryptV2Request_Request) Reset() { @@ -2004,13 +1980,12 @@ func (x *DecryptV2Request_Request) GetContentTopic() string { // A single encryption request type EncryptV1Request_Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Recipient *message_contents.PublicKeyBundle `protobuf:"bytes,1,opt,name=recipient,proto3" json:"recipient,omitempty"` + Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"` + HeaderBytes []byte `protobuf:"bytes,3,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` unknownFields protoimpl.UnknownFields - - Recipient *message_contents.PublicKeyBundle `protobuf:"bytes,1,opt,name=recipient,proto3" json:"recipient,omitempty"` - Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"` - HeaderBytes []byte `protobuf:"bytes,3,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` + sizeCache protoimpl.SizeCache } func (x *EncryptV1Request_Request) Reset() { @@ -2066,15 +2041,14 @@ func (x *EncryptV1Request_Request) GetHeaderBytes() []byte { // A single encryption response type EncryptResponse_Response struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Response: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Response: // // *EncryptResponse_Response_Result // *EncryptResponse_Response_Error - Response isEncryptResponse_Response_Response `protobuf_oneof:"response"` + Response isEncryptResponse_Response_Response `protobuf_oneof:"response"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *EncryptResponse_Response) Reset() { @@ -2107,23 +2081,27 @@ func (*EncryptResponse_Response) Descriptor() ([]byte, []int) { return file_keystore_api_v1_keystore_proto_rawDescGZIP(), []int{5, 0} } -func (m *EncryptResponse_Response) GetResponse() isEncryptResponse_Response_Response { - if m != nil { - return m.Response +func (x *EncryptResponse_Response) GetResponse() isEncryptResponse_Response_Response { + if x != nil { + return x.Response } return nil } func (x *EncryptResponse_Response) GetResult() *EncryptResponse_Response_Success { - if x, ok := x.GetResponse().(*EncryptResponse_Response_Result); ok { - return x.Result + if x != nil { + if x, ok := x.Response.(*EncryptResponse_Response_Result); ok { + return x.Result + } } return nil } func (x *EncryptResponse_Response) GetError() *KeystoreError { - if x, ok := x.GetResponse().(*EncryptResponse_Response_Error); ok { - return x.Error + if x != nil { + if x, ok := x.Response.(*EncryptResponse_Response_Error); ok { + return x.Error + } } return nil } @@ -2146,12 +2124,11 @@ func (*EncryptResponse_Response_Error) isEncryptResponse_Response_Response() {} // Wrapper object for success response type EncryptResponse_Response_Success struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Encrypted *message_contents.Ciphertext `protobuf:"bytes,1,opt,name=encrypted,proto3" json:"encrypted,omitempty"` + SenderHmac []byte `protobuf:"bytes,2,opt,name=sender_hmac,json=senderHmac,proto3" json:"sender_hmac,omitempty"` unknownFields protoimpl.UnknownFields - - Encrypted *message_contents.Ciphertext `protobuf:"bytes,1,opt,name=encrypted,proto3" json:"encrypted,omitempty"` - SenderHmac []byte `protobuf:"bytes,2,opt,name=sender_hmac,json=senderHmac,proto3" json:"sender_hmac,omitempty"` + sizeCache protoimpl.SizeCache } func (x *EncryptResponse_Response_Success) Reset() { @@ -2200,13 +2177,12 @@ func (x *EncryptResponse_Response_Success) GetSenderHmac() []byte { // A single encryption request type EncryptV2Request_Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` + HeaderBytes []byte `protobuf:"bytes,2,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` + ContentTopic string `protobuf:"bytes,3,opt,name=content_topic,json=contentTopic,proto3" json:"content_topic,omitempty"` unknownFields protoimpl.UnknownFields - - Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` - HeaderBytes []byte `protobuf:"bytes,2,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` - ContentTopic string `protobuf:"bytes,3,opt,name=content_topic,json=contentTopic,proto3" json:"content_topic,omitempty"` + sizeCache protoimpl.SizeCache } func (x *EncryptV2Request_Request) Reset() { @@ -2262,11 +2238,10 @@ func (x *EncryptV2Request_Request) GetContentTopic() string { // Request type type SelfEncryptRequest_Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` unknownFields protoimpl.UnknownFields - - Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SelfEncryptRequest_Request) Reset() { @@ -2308,15 +2283,14 @@ func (x *SelfEncryptRequest_Request) GetPayload() []byte { // Response type type SelfEncryptResponse_Response struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Response: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Response: // // *SelfEncryptResponse_Response_Result // *SelfEncryptResponse_Response_Error - Response isSelfEncryptResponse_Response_Response `protobuf_oneof:"response"` + Response isSelfEncryptResponse_Response_Response `protobuf_oneof:"response"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SelfEncryptResponse_Response) Reset() { @@ -2349,23 +2323,27 @@ func (*SelfEncryptResponse_Response) Descriptor() ([]byte, []int) { return file_keystore_api_v1_keystore_proto_rawDescGZIP(), []int{8, 0} } -func (m *SelfEncryptResponse_Response) GetResponse() isSelfEncryptResponse_Response_Response { - if m != nil { - return m.Response +func (x *SelfEncryptResponse_Response) GetResponse() isSelfEncryptResponse_Response_Response { + if x != nil { + return x.Response } return nil } func (x *SelfEncryptResponse_Response) GetResult() *SelfEncryptResponse_Response_Success { - if x, ok := x.GetResponse().(*SelfEncryptResponse_Response_Result); ok { - return x.Result + if x != nil { + if x, ok := x.Response.(*SelfEncryptResponse_Response_Result); ok { + return x.Result + } } return nil } func (x *SelfEncryptResponse_Response) GetError() *KeystoreError { - if x, ok := x.GetResponse().(*SelfEncryptResponse_Response_Error); ok { - return x.Error + if x != nil { + if x, ok := x.Response.(*SelfEncryptResponse_Response_Error); ok { + return x.Error + } } return nil } @@ -2388,11 +2366,10 @@ func (*SelfEncryptResponse_Response_Error) isSelfEncryptResponse_Response_Respon // Success response type SelfEncryptResponse_Response_Success struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Encrypted []byte `protobuf:"bytes,1,opt,name=encrypted,proto3" json:"encrypted,omitempty"` unknownFields protoimpl.UnknownFields - - Encrypted []byte `protobuf:"bytes,1,opt,name=encrypted,proto3" json:"encrypted,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SelfEncryptResponse_Response_Success) Reset() { @@ -2434,11 +2411,10 @@ func (x *SelfEncryptResponse_Response_Success) GetEncrypted() []byte { // Request type type SelfDecryptRequest_Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` unknownFields protoimpl.UnknownFields - - Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SelfDecryptRequest_Request) Reset() { @@ -2480,13 +2456,12 @@ func (x *SelfDecryptRequest_Request) GetPayload() []byte { // Mirrors xmtp.envelope schema type SaveInvitesRequest_Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + ContentTopic string `protobuf:"bytes,1,opt,name=content_topic,json=contentTopic,proto3" json:"content_topic,omitempty"` + TimestampNs uint64 `protobuf:"varint,2,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` + Payload []byte `protobuf:"bytes,3,opt,name=payload,proto3" json:"payload,omitempty"` unknownFields protoimpl.UnknownFields - - ContentTopic string `protobuf:"bytes,1,opt,name=content_topic,json=contentTopic,proto3" json:"content_topic,omitempty"` - TimestampNs uint64 `protobuf:"varint,2,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` - Payload []byte `protobuf:"bytes,3,opt,name=payload,proto3" json:"payload,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SaveInvitesRequest_Request) Reset() { @@ -2542,15 +2517,14 @@ func (x *SaveInvitesRequest_Request) GetPayload() []byte { // A single response type SaveInvitesResponse_Response struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Response: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Response: // // *SaveInvitesResponse_Response_Result // *SaveInvitesResponse_Response_Error - Response isSaveInvitesResponse_Response_Response `protobuf_oneof:"response"` + Response isSaveInvitesResponse_Response_Response `protobuf_oneof:"response"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SaveInvitesResponse_Response) Reset() { @@ -2583,23 +2557,27 @@ func (*SaveInvitesResponse_Response) Descriptor() ([]byte, []int) { return file_keystore_api_v1_keystore_proto_rawDescGZIP(), []int{14, 0} } -func (m *SaveInvitesResponse_Response) GetResponse() isSaveInvitesResponse_Response_Response { - if m != nil { - return m.Response +func (x *SaveInvitesResponse_Response) GetResponse() isSaveInvitesResponse_Response_Response { + if x != nil { + return x.Response } return nil } func (x *SaveInvitesResponse_Response) GetResult() *SaveInvitesResponse_Response_Success { - if x, ok := x.GetResponse().(*SaveInvitesResponse_Response_Result); ok { - return x.Result + if x != nil { + if x, ok := x.Response.(*SaveInvitesResponse_Response_Result); ok { + return x.Result + } } return nil } func (x *SaveInvitesResponse_Response) GetError() *KeystoreError { - if x, ok := x.GetResponse().(*SaveInvitesResponse_Response_Error); ok { - return x.Error + if x != nil { + if x, ok := x.Response.(*SaveInvitesResponse_Response_Error); ok { + return x.Error + } } return nil } @@ -2622,11 +2600,10 @@ func (*SaveInvitesResponse_Response_Error) isSaveInvitesResponse_Response_Respon // Wrapper object for success response type SaveInvitesResponse_Response_Success struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Conversation *message_contents.ConversationReference `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation,omitempty"` unknownFields protoimpl.UnknownFields - - Conversation *message_contents.ConversationReference `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SaveInvitesResponse_Response_Success) Reset() { @@ -2668,13 +2645,12 @@ func (x *SaveInvitesResponse_Response_Success) GetConversation() *message_conten // TopicData wraps the invitation and the timestamp it was created type TopicMap_TopicData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + CreatedNs uint64 `protobuf:"varint,1,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` + PeerAddress string `protobuf:"bytes,2,opt,name=peer_address,json=peerAddress,proto3" json:"peer_address,omitempty"` + Invitation *message_contents.InvitationV1 `protobuf:"bytes,3,opt,name=invitation,proto3" json:"invitation,omitempty"` unknownFields protoimpl.UnknownFields - - CreatedNs uint64 `protobuf:"varint,1,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` - PeerAddress string `protobuf:"bytes,2,opt,name=peer_address,json=peerAddress,proto3" json:"peer_address,omitempty"` - Invitation *message_contents.InvitationV1 `protobuf:"bytes,3,opt,name=invitation,proto3" json:"invitation,omitempty"` + sizeCache protoimpl.SizeCache } func (x *TopicMap_TopicData) Reset() { @@ -2730,12 +2706,11 @@ func (x *TopicMap_TopicData) GetInvitation() *message_contents.InvitationV1 { // HmacKeyData wraps the HMAC key and the number of 30 day periods since epoch type GetConversationHmacKeysResponse_HmacKeyData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ThirtyDayPeriodsSinceEpoch int32 `protobuf:"varint,1,opt,name=thirty_day_periods_since_epoch,json=thirtyDayPeriodsSinceEpoch,proto3" json:"thirty_day_periods_since_epoch,omitempty"` - HmacKey []byte `protobuf:"bytes,2,opt,name=hmac_key,json=hmacKey,proto3" json:"hmac_key,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + ThirtyDayPeriodsSinceEpoch int32 `protobuf:"varint,1,opt,name=thirty_day_periods_since_epoch,json=thirtyDayPeriodsSinceEpoch,proto3" json:"thirty_day_periods_since_epoch,omitempty"` + HmacKey []byte `protobuf:"bytes,2,opt,name=hmac_key,json=hmacKey,proto3" json:"hmac_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetConversationHmacKeysResponse_HmacKeyData) Reset() { @@ -2784,11 +2759,10 @@ func (x *GetConversationHmacKeysResponse_HmacKeyData) GetHmacKey() []byte { // HmacKeys represents multiple HmacKeyData objects type GetConversationHmacKeysResponse_HmacKeys struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Values []*GetConversationHmacKeysResponse_HmacKeyData `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` unknownFields protoimpl.UnknownFields - - Values []*GetConversationHmacKeysResponse_HmacKeyData `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetConversationHmacKeysResponse_HmacKeys) Reset() { diff --git a/pkg/proto/message_api/v1/authn.pb.go b/pkg/proto/message_api/v1/authn.pb.go index 015b4fb3..32a1a2b0 100644 --- a/pkg/proto/message_api/v1/authn.pb.go +++ b/pkg/proto/message_api/v1/authn.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_api/v1/authn.proto @@ -26,16 +26,15 @@ const ( // Token is used by clients to prove to the nodes // that they are serving a specific wallet. type Token struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // identity key signed by a wallet IdentityKey *message_contents.PublicKey `protobuf:"bytes,1,opt,name=identity_key,json=identityKey,proto3" json:"identity_key,omitempty"` // encoded bytes of AuthData AuthDataBytes []byte `protobuf:"bytes,2,opt,name=auth_data_bytes,json=authDataBytes,proto3" json:"auth_data_bytes,omitempty"` // identity key signature of AuthData bytes AuthDataSignature *message_contents.Signature `protobuf:"bytes,3,opt,name=auth_data_signature,json=authDataSignature,proto3" json:"auth_data_signature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Token) Reset() { @@ -95,14 +94,13 @@ func (x *Token) GetAuthDataSignature() *message_contents.Signature { // so that the bytes don't need to be reconstructed // to verify the token signature. type AuthData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // address of the wallet WalletAddr string `protobuf:"bytes,1,opt,name=wallet_addr,json=walletAddr,proto3" json:"wallet_addr,omitempty"` // time when the token was generated/signed - CreatedNs uint64 `protobuf:"varint,2,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` + CreatedNs uint64 `protobuf:"varint,2,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *AuthData) Reset() { diff --git a/pkg/proto/message_api/v1/message_api.pb.go b/pkg/proto/message_api/v1/message_api.pb.go index 7eb65927..83d4dc90 100644 --- a/pkg/proto/message_api/v1/message_api.pb.go +++ b/pkg/proto/message_api/v1/message_api.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_api/v1/message_api.proto @@ -78,12 +78,11 @@ func (SortDirection) EnumDescriptor() ([]byte, []int) { // receiverTime and pubsubTopic removed for simplicity. // Both removed fields are optional type IndexCursor struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Digest []byte `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"` + SenderTimeNs uint64 `protobuf:"varint,2,opt,name=sender_time_ns,json=senderTimeNs,proto3" json:"sender_time_ns,omitempty"` unknownFields protoimpl.UnknownFields - - Digest []byte `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"` - SenderTimeNs uint64 `protobuf:"varint,2,opt,name=sender_time_ns,json=senderTimeNs,proto3" json:"sender_time_ns,omitempty"` + sizeCache protoimpl.SizeCache } func (x *IndexCursor) Reset() { @@ -132,18 +131,17 @@ func (x *IndexCursor) GetSenderTimeNs() uint64 { // Wrapper for potentially multiple types of cursor type Cursor struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Making the cursor a one-of type, as I would like to change the way we // handle pagination to use a precomputed sort field. // This way we can handle both methods // - // Types that are assignable to Cursor: + // Types that are valid to be assigned to Cursor: // // *Cursor_Index - Cursor isCursor_Cursor `protobuf_oneof:"cursor"` + Cursor isCursor_Cursor `protobuf_oneof:"cursor"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Cursor) Reset() { @@ -176,16 +174,18 @@ func (*Cursor) Descriptor() ([]byte, []int) { return file_message_api_v1_message_api_proto_rawDescGZIP(), []int{1} } -func (m *Cursor) GetCursor() isCursor_Cursor { - if m != nil { - return m.Cursor +func (x *Cursor) GetCursor() isCursor_Cursor { + if x != nil { + return x.Cursor } return nil } func (x *Cursor) GetIndex() *IndexCursor { - if x, ok := x.GetCursor().(*Cursor_Index); ok { - return x.Index + if x != nil { + if x, ok := x.Cursor.(*Cursor_Index); ok { + return x.Index + } } return nil } @@ -203,14 +203,13 @@ func (*Cursor_Index) isCursor_Cursor() {} // This is based off of the go-waku PagingInfo struct, but with the direction // changed to our SortDirection enum format type PagingInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Note: this is a uint32, while go-waku's pageSize is a uint64 - Limit uint32 `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"` - Cursor *Cursor `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor,omitempty"` - Direction SortDirection `protobuf:"varint,3,opt,name=direction,proto3,enum=xmtp.message_api.v1.SortDirection" json:"direction,omitempty"` + Limit uint32 `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"` + Cursor *Cursor `protobuf:"bytes,2,opt,name=cursor,proto3" json:"cursor,omitempty"` + Direction SortDirection `protobuf:"varint,3,opt,name=direction,proto3,enum=xmtp.message_api.v1.SortDirection" json:"direction,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PagingInfo) Reset() { @@ -266,10 +265,7 @@ func (x *PagingInfo) GetDirection() SortDirection { // Envelope encapsulates a message while in transit. type Envelope struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // The topic the message belongs to, // If the message includes the topic as well // it MUST be the same as the topic in the envelope. @@ -277,8 +273,10 @@ type Envelope struct { // Message creation timestamp // If the message includes the timestamp as well // it MUST be equivalent to the timestamp in the envelope. - TimestampNs uint64 `protobuf:"varint,2,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` - Message []byte `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"` + TimestampNs uint64 `protobuf:"varint,2,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` + Message []byte `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Envelope) Reset() { @@ -334,11 +332,10 @@ func (x *Envelope) GetMessage() []byte { // Publish type PublishRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Envelopes []*Envelope `protobuf:"bytes,1,rep,name=envelopes,proto3" json:"envelopes,omitempty"` unknownFields protoimpl.UnknownFields - - Envelopes []*Envelope `protobuf:"bytes,1,rep,name=envelopes,proto3" json:"envelopes,omitempty"` + sizeCache protoimpl.SizeCache } func (x *PublishRequest) Reset() { @@ -380,9 +377,9 @@ func (x *PublishRequest) GetEnvelopes() []*Envelope { // Empty message as a response for Publish type PublishResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PublishResponse) Reset() { @@ -417,11 +414,10 @@ func (*PublishResponse) Descriptor() ([]byte, []int) { // Subscribe type SubscribeRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + ContentTopics []string `protobuf:"bytes,1,rep,name=content_topics,json=contentTopics,proto3" json:"content_topics,omitempty"` unknownFields protoimpl.UnknownFields - - ContentTopics []string `protobuf:"bytes,1,rep,name=content_topics,json=contentTopics,proto3" json:"content_topics,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SubscribeRequest) Reset() { @@ -463,9 +459,9 @@ func (x *SubscribeRequest) GetContentTopics() []string { // SubscribeAll type SubscribeAllRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SubscribeAllRequest) Reset() { @@ -500,14 +496,13 @@ func (*SubscribeAllRequest) Descriptor() ([]byte, []int) { // Query type QueryRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + ContentTopics []string `protobuf:"bytes,1,rep,name=content_topics,json=contentTopics,proto3" json:"content_topics,omitempty"` + StartTimeNs uint64 `protobuf:"varint,2,opt,name=start_time_ns,json=startTimeNs,proto3" json:"start_time_ns,omitempty"` + EndTimeNs uint64 `protobuf:"varint,3,opt,name=end_time_ns,json=endTimeNs,proto3" json:"end_time_ns,omitempty"` + PagingInfo *PagingInfo `protobuf:"bytes,4,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` unknownFields protoimpl.UnknownFields - - ContentTopics []string `protobuf:"bytes,1,rep,name=content_topics,json=contentTopics,proto3" json:"content_topics,omitempty"` - StartTimeNs uint64 `protobuf:"varint,2,opt,name=start_time_ns,json=startTimeNs,proto3" json:"start_time_ns,omitempty"` - EndTimeNs uint64 `protobuf:"varint,3,opt,name=end_time_ns,json=endTimeNs,proto3" json:"end_time_ns,omitempty"` - PagingInfo *PagingInfo `protobuf:"bytes,4,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` + sizeCache protoimpl.SizeCache } func (x *QueryRequest) Reset() { @@ -570,12 +565,11 @@ func (x *QueryRequest) GetPagingInfo() *PagingInfo { // The response, containing envelopes, for a query type QueryResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Envelopes []*Envelope `protobuf:"bytes,1,rep,name=envelopes,proto3" json:"envelopes,omitempty"` + PagingInfo *PagingInfo `protobuf:"bytes,2,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` unknownFields protoimpl.UnknownFields - - Envelopes []*Envelope `protobuf:"bytes,1,rep,name=envelopes,proto3" json:"envelopes,omitempty"` - PagingInfo *PagingInfo `protobuf:"bytes,2,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` + sizeCache protoimpl.SizeCache } func (x *QueryResponse) Reset() { @@ -624,11 +618,10 @@ func (x *QueryResponse) GetPagingInfo() *PagingInfo { // BatchQuery type BatchQueryRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*QueryRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*QueryRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *BatchQueryRequest) Reset() { @@ -670,11 +663,10 @@ func (x *BatchQueryRequest) GetRequests() []*QueryRequest { // Response containing a list of QueryResponse messages type BatchQueryResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*QueryResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*QueryResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *BatchQueryResponse) Reset() { diff --git a/pkg/proto/message_contents/ciphertext.pb.go b/pkg/proto/message_contents/ciphertext.pb.go index 061d3396..baaf61bf 100644 --- a/pkg/proto/message_contents/ciphertext.pb.go +++ b/pkg/proto/message_contents/ciphertext.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/ciphertext.proto @@ -27,14 +27,13 @@ const ( // The payload is accompanied by the cryptographic parameters // required by the chosen encryption scheme. type Ciphertext struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Union: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Union: // // *Ciphertext_Aes256GcmHkdfSha256 - Union isCiphertext_Union `protobuf_oneof:"union"` + Union isCiphertext_Union `protobuf_oneof:"union"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Ciphertext) Reset() { @@ -67,16 +66,18 @@ func (*Ciphertext) Descriptor() ([]byte, []int) { return file_message_contents_ciphertext_proto_rawDescGZIP(), []int{0} } -func (m *Ciphertext) GetUnion() isCiphertext_Union { - if m != nil { - return m.Union +func (x *Ciphertext) GetUnion() isCiphertext_Union { + if x != nil { + return x.Union } return nil } func (x *Ciphertext) GetAes256GcmHkdfSha256() *Ciphertext_Aes256GcmHkdfsha256 { - if x, ok := x.GetUnion().(*Ciphertext_Aes256GcmHkdfSha256); ok { - return x.Aes256GcmHkdfSha256 + if x != nil { + if x, ok := x.Union.(*Ciphertext_Aes256GcmHkdfSha256); ok { + return x.Aes256GcmHkdfSha256 + } } return nil } @@ -93,14 +94,13 @@ func (*Ciphertext_Aes256GcmHkdfSha256) isCiphertext_Union() {} // SignedEciesCiphertext represents an ECIES encrypted payload and a signature type SignedEciesCiphertext struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // serialized Ecies message EciesBytes []byte `protobuf:"bytes,1,opt,name=ecies_bytes,json=eciesBytes,proto3" json:"ecies_bytes,omitempty"` // signature of sha256(ecies_bytes) signed with the IdentityKey - Signature *Signature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` + Signature *Signature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SignedEciesCiphertext) Reset() { @@ -150,13 +150,12 @@ func (x *SignedEciesCiphertext) GetSignature() *Signature { // Encryption: AES256-GCM // Key derivation function: HKDF-SHA256 type Ciphertext_Aes256GcmHkdfsha256 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + HkdfSalt []byte `protobuf:"bytes,1,opt,name=hkdf_salt,json=hkdfSalt,proto3" json:"hkdf_salt,omitempty"` // 32 bytes + GcmNonce []byte `protobuf:"bytes,2,opt,name=gcm_nonce,json=gcmNonce,proto3" json:"gcm_nonce,omitempty"` // 12 bytes + Payload []byte `protobuf:"bytes,3,opt,name=payload,proto3" json:"payload,omitempty"` // encrypted payload unknownFields protoimpl.UnknownFields - - HkdfSalt []byte `protobuf:"bytes,1,opt,name=hkdf_salt,json=hkdfSalt,proto3" json:"hkdf_salt,omitempty"` // 32 bytes - GcmNonce []byte `protobuf:"bytes,2,opt,name=gcm_nonce,json=gcmNonce,proto3" json:"gcm_nonce,omitempty"` // 12 bytes - Payload []byte `protobuf:"bytes,3,opt,name=payload,proto3" json:"payload,omitempty"` // encrypted payload + sizeCache protoimpl.SizeCache } func (x *Ciphertext_Aes256GcmHkdfsha256) Reset() { @@ -212,14 +211,13 @@ func (x *Ciphertext_Aes256GcmHkdfsha256) GetPayload() []byte { // Ecies is ciphertext encrypted using ECIES with a MAC type SignedEciesCiphertext_Ecies struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - EphemeralPublicKey []byte `protobuf:"bytes,1,opt,name=ephemeral_public_key,json=ephemeralPublicKey,proto3" json:"ephemeral_public_key,omitempty"` // 65 bytes - Iv []byte `protobuf:"bytes,2,opt,name=iv,proto3" json:"iv,omitempty"` // 16 bytes - Mac []byte `protobuf:"bytes,3,opt,name=mac,proto3" json:"mac,omitempty"` // 32 bytes - Ciphertext []byte `protobuf:"bytes,4,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` // encrypted payload with block size of 16 + state protoimpl.MessageState `protogen:"open.v1"` + EphemeralPublicKey []byte `protobuf:"bytes,1,opt,name=ephemeral_public_key,json=ephemeralPublicKey,proto3" json:"ephemeral_public_key,omitempty"` // 65 bytes + Iv []byte `protobuf:"bytes,2,opt,name=iv,proto3" json:"iv,omitempty"` // 16 bytes + Mac []byte `protobuf:"bytes,3,opt,name=mac,proto3" json:"mac,omitempty"` // 32 bytes + Ciphertext []byte `protobuf:"bytes,4,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` // encrypted payload with block size of 16 + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SignedEciesCiphertext_Ecies) Reset() { diff --git a/pkg/proto/message_contents/composite.pb.go b/pkg/proto/message_contents/composite.pb.go index ad77d364..40c8b51a 100644 --- a/pkg/proto/message_contents/composite.pb.go +++ b/pkg/proto/message_contents/composite.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/composite.proto @@ -24,11 +24,10 @@ const ( // Composite is used to implement xmtp.org/composite content type type Composite struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Parts []*Composite_Part `protobuf:"bytes,1,rep,name=parts,proto3" json:"parts,omitempty"` unknownFields protoimpl.UnknownFields - - Parts []*Composite_Part `protobuf:"bytes,1,rep,name=parts,proto3" json:"parts,omitempty"` + sizeCache protoimpl.SizeCache } func (x *Composite) Reset() { @@ -70,15 +69,14 @@ func (x *Composite) GetParts() []*Composite_Part { // Part represents one section of a composite message type Composite_Part struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Element: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Element: // // *Composite_Part_Part // *Composite_Part_Composite - Element isComposite_Part_Element `protobuf_oneof:"element"` + Element isComposite_Part_Element `protobuf_oneof:"element"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Composite_Part) Reset() { @@ -111,23 +109,27 @@ func (*Composite_Part) Descriptor() ([]byte, []int) { return file_message_contents_composite_proto_rawDescGZIP(), []int{0, 0} } -func (m *Composite_Part) GetElement() isComposite_Part_Element { - if m != nil { - return m.Element +func (x *Composite_Part) GetElement() isComposite_Part_Element { + if x != nil { + return x.Element } return nil } func (x *Composite_Part) GetPart() *EncodedContent { - if x, ok := x.GetElement().(*Composite_Part_Part); ok { - return x.Part + if x != nil { + if x, ok := x.Element.(*Composite_Part_Part); ok { + return x.Part + } } return nil } func (x *Composite_Part) GetComposite() *Composite { - if x, ok := x.GetElement().(*Composite_Part_Composite); ok { - return x.Composite + if x != nil { + if x, ok := x.Element.(*Composite_Part_Composite); ok { + return x.Composite + } } return nil } diff --git a/pkg/proto/message_contents/contact.pb.go b/pkg/proto/message_contents/contact.pb.go index 66d6b2ec..1c8e594f 100644 --- a/pkg/proto/message_contents/contact.pb.go +++ b/pkg/proto/message_contents/contact.pb.go @@ -6,7 +6,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/contact.proto @@ -29,11 +29,10 @@ const ( // LEGACY: User key bundle V1 using PublicKeys. // The PublicKeys MUST be signed. type ContactBundleV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + KeyBundle *PublicKeyBundle `protobuf:"bytes,1,opt,name=key_bundle,json=keyBundle,proto3" json:"key_bundle,omitempty"` unknownFields protoimpl.UnknownFields - - KeyBundle *PublicKeyBundle `protobuf:"bytes,1,opt,name=key_bundle,json=keyBundle,proto3" json:"key_bundle,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ContactBundleV1) Reset() { @@ -75,11 +74,10 @@ func (x *ContactBundleV1) GetKeyBundle() *PublicKeyBundle { // User key bundle V2 using SignedPublicKeys. type ContactBundleV2 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + KeyBundle *SignedPublicKeyBundle `protobuf:"bytes,1,opt,name=key_bundle,json=keyBundle,proto3" json:"key_bundle,omitempty"` unknownFields protoimpl.UnknownFields - - KeyBundle *SignedPublicKeyBundle `protobuf:"bytes,1,opt,name=key_bundle,json=keyBundle,proto3" json:"key_bundle,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ContactBundleV2) Reset() { @@ -121,15 +119,14 @@ func (x *ContactBundleV2) GetKeyBundle() *SignedPublicKeyBundle { // Versioned ContactBundle type ContactBundle struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *ContactBundle_V1 // *ContactBundle_V2 - Version isContactBundle_Version `protobuf_oneof:"version"` + Version isContactBundle_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ContactBundle) Reset() { @@ -162,23 +159,27 @@ func (*ContactBundle) Descriptor() ([]byte, []int) { return file_message_contents_contact_proto_rawDescGZIP(), []int{2} } -func (m *ContactBundle) GetVersion() isContactBundle_Version { - if m != nil { - return m.Version +func (x *ContactBundle) GetVersion() isContactBundle_Version { + if x != nil { + return x.Version } return nil } func (x *ContactBundle) GetV1() *ContactBundleV1 { - if x, ok := x.GetVersion().(*ContactBundle_V1); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*ContactBundle_V1); ok { + return x.V1 + } } return nil } func (x *ContactBundle) GetV2() *ContactBundleV2 { - if x, ok := x.GetVersion().(*ContactBundle_V2); ok { - return x.V2 + if x != nil { + if x, ok := x.Version.(*ContactBundle_V2); ok { + return x.V2 + } } return nil } diff --git a/pkg/proto/message_contents/content.pb.go b/pkg/proto/message_contents/content.pb.go index 0ef5b8b0..8abe2146 100644 --- a/pkg/proto/message_contents/content.pb.go +++ b/pkg/proto/message_contents/content.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/content.proto @@ -72,14 +72,13 @@ func (Compression) EnumDescriptor() ([]byte, []int) { // ContentTypeId is used to identify the type of content stored in a Message. type ContentTypeId struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + AuthorityId string `protobuf:"bytes,1,opt,name=authority_id,json=authorityId,proto3" json:"authority_id,omitempty"` // authority governing this content type + TypeId string `protobuf:"bytes,2,opt,name=type_id,json=typeId,proto3" json:"type_id,omitempty"` // type identifier + VersionMajor uint32 `protobuf:"varint,3,opt,name=version_major,json=versionMajor,proto3" json:"version_major,omitempty"` // major version of the type + VersionMinor uint32 `protobuf:"varint,4,opt,name=version_minor,json=versionMinor,proto3" json:"version_minor,omitempty"` // minor version of the type unknownFields protoimpl.UnknownFields - - AuthorityId string `protobuf:"bytes,1,opt,name=authority_id,json=authorityId,proto3" json:"authority_id,omitempty"` // authority governing this content type - TypeId string `protobuf:"bytes,2,opt,name=type_id,json=typeId,proto3" json:"type_id,omitempty"` // type identifier - VersionMajor uint32 `protobuf:"varint,3,opt,name=version_major,json=versionMajor,proto3" json:"version_major,omitempty"` // major version of the type - VersionMinor uint32 `protobuf:"varint,4,opt,name=version_minor,json=versionMinor,proto3" json:"version_minor,omitempty"` // minor version of the type + sizeCache protoimpl.SizeCache } func (x *ContentTypeId) Reset() { @@ -143,15 +142,12 @@ func (x *ContentTypeId) GetVersionMinor() uint32 { // EncodedContent bundles the content with metadata identifying its type // and parameters required for correct decoding and presentation of the content. type EncodedContent struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // content type identifier used to match the payload with // the correct decoding machinery Type *ContentTypeId `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` // optional encoding parameters required to correctly decode the content - Parameters map[string]string `protobuf:"bytes,2,rep,name=parameters,proto3" json:"parameters,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Parameters map[string]string `protobuf:"bytes,2,rep,name=parameters,proto3" json:"parameters,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // optional fallback description of the content that can be used in case // the client cannot decode or render the content Fallback *string `protobuf:"bytes,3,opt,name=fallback,proto3,oneof" json:"fallback,omitempty"` @@ -159,7 +155,9 @@ type EncodedContent struct { // compress the encoded content bytes Compression *Compression `protobuf:"varint,5,opt,name=compression,proto3,enum=xmtp.message_contents.Compression,oneof" json:"compression,omitempty"` // encoded content itself - Content []byte `protobuf:"bytes,4,opt,name=content,proto3" json:"content,omitempty"` + Content []byte `protobuf:"bytes,4,opt,name=content,proto3" json:"content,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *EncodedContent) Reset() { @@ -229,17 +227,16 @@ func (x *EncodedContent) GetContent() []byte { // SignedContent attaches a signature to EncodedContent. type SignedContent struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // MUST contain EncodedContent Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` Sender *SignedPublicKeyBundle `protobuf:"bytes,2,opt,name=sender,proto3" json:"sender,omitempty"` // MUST be a signature of a concatenation of // the message header bytes and the payload bytes, // signed by the sender's pre-key. - Signature *Signature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` + Signature *Signature `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SignedContent) Reset() { diff --git a/pkg/proto/message_contents/conversation_reference.pb.go b/pkg/proto/message_contents/conversation_reference.pb.go index 2ce65cfd..556ef3e7 100644 --- a/pkg/proto/message_contents/conversation_reference.pb.go +++ b/pkg/proto/message_contents/conversation_reference.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/conversation_reference.proto @@ -24,15 +24,14 @@ const ( // A light pointer for a conversation that contains no decryption keys type ConversationReference struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Topic string `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"` - PeerAddress string `protobuf:"bytes,2,opt,name=peer_address,json=peerAddress,proto3" json:"peer_address,omitempty"` - CreatedNs uint64 `protobuf:"varint,3,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` - Context *InvitationV1_Context `protobuf:"bytes,4,opt,name=context,proto3" json:"context,omitempty"` - ConsentProofPayload *ConsentProofPayload `protobuf:"bytes,5,opt,name=consent_proof_payload,json=consentProofPayload,proto3" json:"consent_proof_payload,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + Topic string `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"` + PeerAddress string `protobuf:"bytes,2,opt,name=peer_address,json=peerAddress,proto3" json:"peer_address,omitempty"` + CreatedNs uint64 `protobuf:"varint,3,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` + Context *InvitationV1_Context `protobuf:"bytes,4,opt,name=context,proto3" json:"context,omitempty"` + ConsentProofPayload *ConsentProofPayload `protobuf:"bytes,5,opt,name=consent_proof_payload,json=consentProofPayload,proto3" json:"consent_proof_payload,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ConversationReference) Reset() { diff --git a/pkg/proto/message_contents/ecies.pb.go b/pkg/proto/message_contents/ecies.pb.go index 031a5ab6..65a47ea6 100644 --- a/pkg/proto/message_contents/ecies.pb.go +++ b/pkg/proto/message_contents/ecies.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/ecies.proto @@ -24,14 +24,13 @@ const ( // EciesMessage is a wrapper for ECIES encrypted payloads type EciesMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *EciesMessage_V1 - Version isEciesMessage_Version `protobuf_oneof:"version"` + Version isEciesMessage_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *EciesMessage) Reset() { @@ -64,16 +63,18 @@ func (*EciesMessage) Descriptor() ([]byte, []int) { return file_message_contents_ecies_proto_rawDescGZIP(), []int{0} } -func (m *EciesMessage) GetVersion() isEciesMessage_Version { - if m != nil { - return m.Version +func (x *EciesMessage) GetVersion() isEciesMessage_Version { + if x != nil { + return x.Version } return nil } func (x *EciesMessage) GetV1() []byte { - if x, ok := x.GetVersion().(*EciesMessage_V1); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*EciesMessage_V1); ok { + return x.V1 + } } return nil } diff --git a/pkg/proto/message_contents/frames.pb.go b/pkg/proto/message_contents/frames.pb.go index cd3e532e..14307ce4 100644 --- a/pkg/proto/message_contents/frames.pb.go +++ b/pkg/proto/message_contents/frames.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/frames.proto @@ -25,10 +25,7 @@ const ( // The message that will be signed by the Client and returned inside the // `action_body` field of the FrameAction message type FrameActionBody struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // The URL of the frame that was clicked // May be different from `post_url` FrameUrl string `protobuf:"bytes,1,opt,name=frame_url,json=frameUrl,proto3" json:"frame_url,omitempty"` @@ -51,6 +48,8 @@ type FrameActionBody struct { Address string `protobuf:"bytes,8,opt,name=address,proto3" json:"address,omitempty"` // A hash from a transaction TransactionId string `protobuf:"bytes,9,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *FrameActionBody) Reset() { @@ -150,17 +149,25 @@ func (x *FrameActionBody) GetTransactionId() string { // The outer payload that will be sent as the `messageBytes` in the // `trusted_data` part of the Frames message type FrameAction struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` + // Deprecated: Marked as deprecated in message_contents/frames.proto. Signature *Signature `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"` // The SignedPublicKeyBundle of the signer, used to link the XMTP signature // with a blockchain account through a chain of signatures. + // + // Deprecated: Marked as deprecated in message_contents/frames.proto. SignedPublicKeyBundle *SignedPublicKeyBundle `protobuf:"bytes,2,opt,name=signed_public_key_bundle,json=signedPublicKeyBundle,proto3" json:"signed_public_key_bundle,omitempty"` // Serialized FrameActionBody message, so that the signature verification can // happen on a byte-perfect representation of the message ActionBody []byte `protobuf:"bytes,3,opt,name=action_body,json=actionBody,proto3" json:"action_body,omitempty"` + // The installation signature + InstallationSignature []byte `protobuf:"bytes,4,opt,name=installation_signature,json=installationSignature,proto3" json:"installation_signature,omitempty"` + // The public installation id used to sign. + InstallationId []byte `protobuf:"bytes,5,opt,name=installation_id,json=installationId,proto3" json:"installation_id,omitempty"` + // The inbox id of the installation used to sign. + InboxId string `protobuf:"bytes,6,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *FrameAction) Reset() { @@ -193,6 +200,7 @@ func (*FrameAction) Descriptor() ([]byte, []int) { return file_message_contents_frames_proto_rawDescGZIP(), []int{1} } +// Deprecated: Marked as deprecated in message_contents/frames.proto. func (x *FrameAction) GetSignature() *Signature { if x != nil { return x.Signature @@ -200,6 +208,7 @@ func (x *FrameAction) GetSignature() *Signature { return nil } +// Deprecated: Marked as deprecated in message_contents/frames.proto. func (x *FrameAction) GetSignedPublicKeyBundle() *SignedPublicKeyBundle { if x != nil { return x.SignedPublicKeyBundle @@ -214,6 +223,27 @@ func (x *FrameAction) GetActionBody() []byte { return nil } +func (x *FrameAction) GetInstallationSignature() []byte { + if x != nil { + return x.InstallationSignature + } + return nil +} + +func (x *FrameAction) GetInstallationId() []byte { + if x != nil { + return x.InstallationId + } + return nil +} + +func (x *FrameAction) GetInboxId() string { + if x != nil { + return x.InboxId + } + return "" +} + var File_message_contents_frames_proto protoreflect.FileDescriptor var file_message_contents_frames_proto_rawDesc = []byte{ @@ -246,34 +276,42 @@ var file_message_contents_frames_proto_rawDesc = []byte{ 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xd5, 0x01, 0x0a, 0x0b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, + 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xd8, 0x02, 0x0a, 0x0b, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x42, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2e, - 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x12, 0x65, 0x0a, 0x18, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x70, - 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x53, - 0x69, 0x67, 0x6e, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, - 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x15, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, - 0x69, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6f, 0x64, 0x79, 0x42, 0xd2, 0x01, 0x0a, - 0x19, 0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x0b, 0x46, 0x72, 0x61, 0x6d, - 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x37, 0x67, 0x69, 0x74, 0x68, 0x75, - 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2d, - 0x6e, 0x6f, 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x73, 0xa2, 0x02, 0x03, 0x58, 0x4d, 0x58, 0xaa, 0x02, 0x14, 0x58, 0x6d, 0x74, 0x70, 0x2e, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0xca, - 0x02, 0x14, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0xe2, 0x02, 0x20, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x5c, 0x47, 0x50, - 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x15, 0x58, 0x6d, 0x74, 0x70, - 0x3a, 0x3a, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x73, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x69, 0x0a, 0x18, 0x73, 0x69, 0x67, 0x6e, + 0x65, 0x64, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x62, 0x75, + 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x6d, 0x74, + 0x70, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, + 0x65, 0x79, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x15, 0x73, 0x69, + 0x67, 0x6e, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x6f, + 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x42, 0x6f, 0x64, 0x79, 0x12, 0x35, 0x0a, 0x16, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x15, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x5f, 0x69, 0x64, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x42, + 0xd2, 0x01, 0x0a, 0x19, 0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x0b, 0x46, + 0x72, 0x61, 0x6d, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x37, 0x67, 0x69, + 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2f, 0x78, 0x6d, + 0x74, 0x70, 0x2d, 0x6e, 0x6f, 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x73, 0xa2, 0x02, 0x03, 0x58, 0x4d, 0x58, 0xaa, 0x02, 0x14, 0x58, 0x6d, + 0x74, 0x70, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x73, 0xca, 0x02, 0x14, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0xe2, 0x02, 0x20, 0x58, 0x6d, 0x74, 0x70, + 0x5c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, + 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x15, 0x58, + 0x6d, 0x74, 0x70, 0x3a, 0x3a, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/pkg/proto/message_contents/invitation.pb.go b/pkg/proto/message_contents/invitation.pb.go index 0350cd72..248cbdea 100644 --- a/pkg/proto/message_contents/invitation.pb.go +++ b/pkg/proto/message_contents/invitation.pb.go @@ -4,7 +4,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/invitation.proto @@ -73,10 +73,7 @@ func (ConsentProofPayloadVersion) EnumDescriptor() ([]byte, []int) { // Unsealed invitation V1 type InvitationV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // topic name chosen for this conversation. // It MUST be randomly generated bytes (length >= 32), // then base64 encoded without padding @@ -85,12 +82,14 @@ type InvitationV1 struct { Context *InvitationV1_Context `protobuf:"bytes,2,opt,name=context,proto3" json:"context,omitempty"` // message encryption scheme and keys for this conversation. // - // Types that are assignable to Encryption: + // Types that are valid to be assigned to Encryption: // // *InvitationV1_Aes256GcmHkdfSha256 Encryption isInvitationV1_Encryption `protobuf_oneof:"encryption"` // The user's consent proof - ConsentProof *ConsentProofPayload `protobuf:"bytes,4,opt,name=consent_proof,json=consentProof,proto3" json:"consent_proof,omitempty"` + ConsentProof *ConsentProofPayload `protobuf:"bytes,4,opt,name=consent_proof,json=consentProof,proto3" json:"consent_proof,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *InvitationV1) Reset() { @@ -137,16 +136,18 @@ func (x *InvitationV1) GetContext() *InvitationV1_Context { return nil } -func (m *InvitationV1) GetEncryption() isInvitationV1_Encryption { - if m != nil { - return m.Encryption +func (x *InvitationV1) GetEncryption() isInvitationV1_Encryption { + if x != nil { + return x.Encryption } return nil } func (x *InvitationV1) GetAes256GcmHkdfSha256() *InvitationV1_Aes256GcmHkdfsha256 { - if x, ok := x.GetEncryption().(*InvitationV1_Aes256GcmHkdfSha256); ok { - return x.Aes256GcmHkdfSha256 + if x != nil { + if x, ok := x.Encryption.(*InvitationV1_Aes256GcmHkdfSha256); ok { + return x.Aes256GcmHkdfSha256 + } } return nil } @@ -174,13 +175,12 @@ func (*InvitationV1_Aes256GcmHkdfSha256) isInvitationV1_Encryption() {} // it is however authenticated as associated data with the AEAD scheme used // to encrypt the invitation body, thus providing tamper evidence. type SealedInvitationHeaderV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Sender *SignedPublicKeyBundle `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + Recipient *SignedPublicKeyBundle `protobuf:"bytes,2,opt,name=recipient,proto3" json:"recipient,omitempty"` + CreatedNs uint64 `protobuf:"varint,3,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` unknownFields protoimpl.UnknownFields - - Sender *SignedPublicKeyBundle `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` - Recipient *SignedPublicKeyBundle `protobuf:"bytes,2,opt,name=recipient,proto3" json:"recipient,omitempty"` - CreatedNs uint64 `protobuf:"varint,3,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SealedInvitationHeaderV1) Reset() { @@ -239,14 +239,13 @@ func (x *SealedInvitationHeaderV1) GetCreatedNs() uint64 { // recipient's public key bundles using simplified X3DH where // the sender's ephemeral key is replaced with sender's pre-key. type SealedInvitationV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // encoded SealedInvitationHeaderV1 used as associated data for Ciphertext HeaderBytes []byte `protobuf:"bytes,1,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` // Ciphertext.payload MUST contain encrypted InvitationV1. - Ciphertext *Ciphertext `protobuf:"bytes,2,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` + Ciphertext *Ciphertext `protobuf:"bytes,2,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SealedInvitationV1) Reset() { @@ -295,14 +294,13 @@ func (x *SealedInvitationV1) GetCiphertext() *Ciphertext { // Versioned Sealed Invitation type SealedInvitation struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *SealedInvitation_V1 - Version isSealedInvitation_Version `protobuf_oneof:"version"` + Version isSealedInvitation_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SealedInvitation) Reset() { @@ -335,16 +333,18 @@ func (*SealedInvitation) Descriptor() ([]byte, []int) { return file_message_contents_invitation_proto_rawDescGZIP(), []int{3} } -func (m *SealedInvitation) GetVersion() isSealedInvitation_Version { - if m != nil { - return m.Version +func (x *SealedInvitation) GetVersion() isSealedInvitation_Version { + if x != nil { + return x.Version } return nil } func (x *SealedInvitation) GetV1() *SealedInvitationV1 { - if x, ok := x.GetVersion().(*SealedInvitation_V1); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*SealedInvitation_V1); ok { + return x.V1 + } } return nil } @@ -362,16 +362,15 @@ func (*SealedInvitation_V1) isSealedInvitation_Version() {} // Payload for user's consent proof to be set in the invitation // Signifying the conversation should be preapproved for the user on receipt type ConsentProofPayload struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // the user's signature in hex format Signature string `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"` // approximate time when the user signed Timestamp uint64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` // version of the payload PayloadVersion ConsentProofPayloadVersion `protobuf:"varint,3,opt,name=payload_version,json=payloadVersion,proto3,enum=xmtp.message_contents.ConsentProofPayloadVersion" json:"payload_version,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ConsentProofPayload) Reset() { @@ -428,11 +427,10 @@ func (x *ConsentProofPayload) GetPayloadVersion() ConsentProofPayloadVersion { // Supported encryption schemes // AES256-GCM-HKDF-SHA256 type InvitationV1_Aes256GcmHkdfsha256 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + KeyMaterial []byte `protobuf:"bytes,1,opt,name=key_material,json=keyMaterial,proto3" json:"key_material,omitempty"` // randomly generated key material (32 bytes) unknownFields protoimpl.UnknownFields - - KeyMaterial []byte `protobuf:"bytes,1,opt,name=key_material,json=keyMaterial,proto3" json:"key_material,omitempty"` // randomly generated key material (32 bytes) + sizeCache protoimpl.SizeCache } func (x *InvitationV1_Aes256GcmHkdfsha256) Reset() { @@ -474,15 +472,14 @@ func (x *InvitationV1_Aes256GcmHkdfsha256) GetKeyMaterial() []byte { // The context type type InvitationV1_Context struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Expected to be a URI (ie xmtp.org/convo1) ConversationId string `protobuf:"bytes,1,opt,name=conversation_id,json=conversationId,proto3" json:"conversation_id,omitempty"` // Key value map of additional metadata that would be exposed to // application developers and could be used for filtering - Metadata map[string]string `protobuf:"bytes,2,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Metadata map[string]string `protobuf:"bytes,2,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *InvitationV1_Context) Reset() { diff --git a/pkg/proto/message_contents/message.pb.go b/pkg/proto/message_contents/message.pb.go index c913f9b9..b77ba4bc 100644 --- a/pkg/proto/message_contents/message.pb.go +++ b/pkg/proto/message_contents/message.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/message.proto @@ -25,13 +25,12 @@ const ( // Message header is encoded separately as the bytes are also used // as associated data for authenticated encryption type MessageHeaderV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Sender *PublicKeyBundle `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` + Recipient *PublicKeyBundle `protobuf:"bytes,2,opt,name=recipient,proto3" json:"recipient,omitempty"` + Timestamp uint64 `protobuf:"varint,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"` unknownFields protoimpl.UnknownFields - - Sender *PublicKeyBundle `protobuf:"bytes,1,opt,name=sender,proto3" json:"sender,omitempty"` - Recipient *PublicKeyBundle `protobuf:"bytes,2,opt,name=recipient,proto3" json:"recipient,omitempty"` - Timestamp uint64 `protobuf:"varint,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MessageHeaderV1) Reset() { @@ -87,14 +86,13 @@ func (x *MessageHeaderV1) GetTimestamp() uint64 { // Message is the top level protocol element type MessageV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // encapsulates encoded MessageHeaderV1 HeaderBytes []byte `protobuf:"bytes,1,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` // Ciphertext.payload MUST contain encrypted EncodedContent - Ciphertext *Ciphertext `protobuf:"bytes,2,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` + Ciphertext *Ciphertext `protobuf:"bytes,2,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *MessageV1) Reset() { @@ -146,14 +144,13 @@ func (x *MessageV1) GetCiphertext() *Ciphertext { // of the AEAD encryption used to protect the message, // thus providing tamper evidence. type MessageHeaderV2 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // sender specified message creation time CreatedNs uint64 `protobuf:"varint,1,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` // the topic the message belongs to - Topic string `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"` + Topic string `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *MessageHeaderV2) Reset() { @@ -202,10 +199,7 @@ func (x *MessageHeaderV2) GetTopic() string { // Message combines the encoded header with the encrypted payload. type MessageV2 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // encapsulates encoded MessageHeaderV2 HeaderBytes []byte `protobuf:"bytes,1,opt,name=header_bytes,json=headerBytes,proto3" json:"header_bytes,omitempty"` // Ciphertext.payload MUST contain encrypted SignedContent @@ -215,7 +209,9 @@ type MessageV2 struct { SenderHmac []byte `protobuf:"bytes,3,opt,name=sender_hmac,json=senderHmac,proto3,oneof" json:"sender_hmac,omitempty"` // Flag indicating whether the message should be pushed from a notification // server - ShouldPush *bool `protobuf:"varint,4,opt,name=should_push,json=shouldPush,proto3,oneof" json:"should_push,omitempty"` + ShouldPush *bool `protobuf:"varint,4,opt,name=should_push,json=shouldPush,proto3,oneof" json:"should_push,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *MessageV2) Reset() { @@ -278,15 +274,14 @@ func (x *MessageV2) GetShouldPush() bool { // Versioned Message type Message struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *Message_V1 // *Message_V2 - Version isMessage_Version `protobuf_oneof:"version"` + Version isMessage_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Message) Reset() { @@ -319,23 +314,27 @@ func (*Message) Descriptor() ([]byte, []int) { return file_message_contents_message_proto_rawDescGZIP(), []int{4} } -func (m *Message) GetVersion() isMessage_Version { - if m != nil { - return m.Version +func (x *Message) GetVersion() isMessage_Version { + if x != nil { + return x.Version } return nil } func (x *Message) GetV1() *MessageV1 { - if x, ok := x.GetVersion().(*Message_V1); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*Message_V1); ok { + return x.V1 + } } return nil } func (x *Message) GetV2() *MessageV2 { - if x, ok := x.GetVersion().(*Message_V2); ok { - return x.V2 + if x != nil { + if x, ok := x.Version.(*Message_V2); ok { + return x.V2 + } } return nil } @@ -360,10 +359,7 @@ func (*Message_V2) isMessage_Version() {} // DecodedMessage instances are not stored on the network, but // may be serialized and stored by clients type DecodedMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` MessageVersion string `protobuf:"bytes,2,opt,name=message_version,json=messageVersion,proto3" json:"message_version,omitempty"` SenderAddress string `protobuf:"bytes,3,opt,name=sender_address,json=senderAddress,proto3" json:"sender_address,omitempty"` @@ -372,6 +368,8 @@ type DecodedMessage struct { ContentTopic string `protobuf:"bytes,6,opt,name=content_topic,json=contentTopic,proto3" json:"content_topic,omitempty"` Conversation *ConversationReference `protobuf:"bytes,7,opt,name=conversation,proto3" json:"conversation,omitempty"` ContentBytes []byte `protobuf:"bytes,8,opt,name=content_bytes,json=contentBytes,proto3" json:"content_bytes,omitempty"` // encapsulates EncodedContent + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *DecodedMessage) Reset() { diff --git a/pkg/proto/message_contents/private_key.pb.go b/pkg/proto/message_contents/private_key.pb.go index 716b4107..63c6c440 100644 --- a/pkg/proto/message_contents/private_key.pb.go +++ b/pkg/proto/message_contents/private_key.pb.go @@ -5,7 +5,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/private_key.proto @@ -27,20 +27,19 @@ const ( // PrivateKey generalized to support different key types type SignedPrivateKey struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // time the key was created CreatedNs uint64 `protobuf:"varint,1,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` // private key // - // Types that are assignable to Union: + // Types that are valid to be assigned to Union: // // *SignedPrivateKey_Secp256K1_ Union isSignedPrivateKey_Union `protobuf_oneof:"union"` // public key for this private key - PublicKey *SignedPublicKey `protobuf:"bytes,3,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` + PublicKey *SignedPublicKey `protobuf:"bytes,3,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SignedPrivateKey) Reset() { @@ -80,16 +79,18 @@ func (x *SignedPrivateKey) GetCreatedNs() uint64 { return 0 } -func (m *SignedPrivateKey) GetUnion() isSignedPrivateKey_Union { - if m != nil { - return m.Union +func (x *SignedPrivateKey) GetUnion() isSignedPrivateKey_Union { + if x != nil { + return x.Union } return nil } func (x *SignedPrivateKey) GetSecp256K1() *SignedPrivateKey_Secp256K1 { - if x, ok := x.GetUnion().(*SignedPrivateKey_Secp256K1_); ok { - return x.Secp256K1 + if x != nil { + if x, ok := x.Union.(*SignedPrivateKey_Secp256K1_); ok { + return x.Secp256K1 + } } return nil } @@ -114,13 +115,12 @@ func (*SignedPrivateKey_Secp256K1_) isSignedPrivateKey_Union() {} // PrivateKeyBundle wraps the identityKey and the preKeys, // enforces usage of signed keys. type PrivateKeyBundleV2 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - IdentityKey *SignedPrivateKey `protobuf:"bytes,1,opt,name=identity_key,json=identityKey,proto3" json:"identity_key,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + IdentityKey *SignedPrivateKey `protobuf:"bytes,1,opt,name=identity_key,json=identityKey,proto3" json:"identity_key,omitempty"` // all the known pre-keys, newer keys first, - PreKeys []*SignedPrivateKey `protobuf:"bytes,2,rep,name=pre_keys,json=preKeys,proto3" json:"pre_keys,omitempty"` + PreKeys []*SignedPrivateKey `protobuf:"bytes,2,rep,name=pre_keys,json=preKeys,proto3" json:"pre_keys,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivateKeyBundleV2) Reset() { @@ -169,20 +169,19 @@ func (x *PrivateKeyBundleV2) GetPreKeys() []*SignedPrivateKey { // LEGACY: PrivateKey generalized to support different key types type PrivateKey struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // time the key was created Timestamp uint64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` // private key // - // Types that are assignable to Union: + // Types that are valid to be assigned to Union: // // *PrivateKey_Secp256K1_ Union isPrivateKey_Union `protobuf_oneof:"union"` // public key for this private key - PublicKey *PublicKey `protobuf:"bytes,3,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` + PublicKey *PublicKey `protobuf:"bytes,3,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivateKey) Reset() { @@ -222,16 +221,18 @@ func (x *PrivateKey) GetTimestamp() uint64 { return 0 } -func (m *PrivateKey) GetUnion() isPrivateKey_Union { - if m != nil { - return m.Union +func (x *PrivateKey) GetUnion() isPrivateKey_Union { + if x != nil { + return x.Union } return nil } func (x *PrivateKey) GetSecp256K1() *PrivateKey_Secp256K1 { - if x, ok := x.GetUnion().(*PrivateKey_Secp256K1_); ok { - return x.Secp256K1 + if x != nil { + if x, ok := x.Union.(*PrivateKey_Secp256K1_); ok { + return x.Secp256K1 + } } return nil } @@ -255,13 +256,12 @@ func (*PrivateKey_Secp256K1_) isPrivateKey_Union() {} // LEGACY: PrivateKeyBundleV1 wraps the identityKey and the preKeys type PrivateKeyBundleV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - IdentityKey *PrivateKey `protobuf:"bytes,1,opt,name=identity_key,json=identityKey,proto3" json:"identity_key,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + IdentityKey *PrivateKey `protobuf:"bytes,1,opt,name=identity_key,json=identityKey,proto3" json:"identity_key,omitempty"` // all the known pre-keys, newer keys first, - PreKeys []*PrivateKey `protobuf:"bytes,2,rep,name=pre_keys,json=preKeys,proto3" json:"pre_keys,omitempty"` + PreKeys []*PrivateKey `protobuf:"bytes,2,rep,name=pre_keys,json=preKeys,proto3" json:"pre_keys,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivateKeyBundleV1) Reset() { @@ -310,15 +310,14 @@ func (x *PrivateKeyBundleV1) GetPreKeys() []*PrivateKey { // Versioned PrivateKeyBundle type PrivateKeyBundle struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *PrivateKeyBundle_V1 // *PrivateKeyBundle_V2 - Version isPrivateKeyBundle_Version `protobuf_oneof:"version"` + Version isPrivateKeyBundle_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivateKeyBundle) Reset() { @@ -351,23 +350,27 @@ func (*PrivateKeyBundle) Descriptor() ([]byte, []int) { return file_message_contents_private_key_proto_rawDescGZIP(), []int{4} } -func (m *PrivateKeyBundle) GetVersion() isPrivateKeyBundle_Version { - if m != nil { - return m.Version +func (x *PrivateKeyBundle) GetVersion() isPrivateKeyBundle_Version { + if x != nil { + return x.Version } return nil } func (x *PrivateKeyBundle) GetV1() *PrivateKeyBundleV1 { - if x, ok := x.GetVersion().(*PrivateKeyBundle_V1); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*PrivateKeyBundle_V1); ok { + return x.V1 + } } return nil } func (x *PrivateKeyBundle) GetV2() *PrivateKeyBundleV2 { - if x, ok := x.GetVersion().(*PrivateKeyBundle_V2); ok { - return x.V2 + if x != nil { + if x, ok := x.Version.(*PrivateKeyBundle_V2); ok { + return x.V2 + } } return nil } @@ -394,14 +397,13 @@ func (*PrivateKeyBundle_V2) isPrivateKeyBundle_Version() {} // the pre-key embedded in it. // (see xmtp-js::PrivateKeyBundle.toEncryptedBytes for details) type EncryptedPrivateKeyBundleV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // randomly generated pre-key WalletPreKey []byte `protobuf:"bytes,1,opt,name=wallet_pre_key,json=walletPreKey,proto3" json:"wallet_pre_key,omitempty"` // 32 bytes // MUST contain encrypted PrivateKeyBundle - Ciphertext *Ciphertext `protobuf:"bytes,2,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` + Ciphertext *Ciphertext `protobuf:"bytes,2,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *EncryptedPrivateKeyBundleV1) Reset() { @@ -450,14 +452,13 @@ func (x *EncryptedPrivateKeyBundleV1) GetCiphertext() *Ciphertext { // Versioned encrypted PrivateKeyBundle type EncryptedPrivateKeyBundle struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *EncryptedPrivateKeyBundle_V1 - Version isEncryptedPrivateKeyBundle_Version `protobuf_oneof:"version"` + Version isEncryptedPrivateKeyBundle_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *EncryptedPrivateKeyBundle) Reset() { @@ -490,16 +491,18 @@ func (*EncryptedPrivateKeyBundle) Descriptor() ([]byte, []int) { return file_message_contents_private_key_proto_rawDescGZIP(), []int{6} } -func (m *EncryptedPrivateKeyBundle) GetVersion() isEncryptedPrivateKeyBundle_Version { - if m != nil { - return m.Version +func (x *EncryptedPrivateKeyBundle) GetVersion() isEncryptedPrivateKeyBundle_Version { + if x != nil { + return x.Version } return nil } func (x *EncryptedPrivateKeyBundle) GetV1() *EncryptedPrivateKeyBundleV1 { - if x, ok := x.GetVersion().(*EncryptedPrivateKeyBundle_V1); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*EncryptedPrivateKeyBundle_V1); ok { + return x.V1 + } } return nil } @@ -516,11 +519,10 @@ func (*EncryptedPrivateKeyBundle_V1) isEncryptedPrivateKeyBundle_Version() {} // EC: SECP256k1 type SignedPrivateKey_Secp256K1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` // D big-endian, 32 bytes unknownFields protoimpl.UnknownFields - - Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` // D big-endian, 32 bytes + sizeCache protoimpl.SizeCache } func (x *SignedPrivateKey_Secp256K1) Reset() { @@ -562,11 +564,10 @@ func (x *SignedPrivateKey_Secp256K1) GetBytes() []byte { // EC: SECP256k1 type PrivateKey_Secp256K1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` // D big-endian, 32 bytes unknownFields protoimpl.UnknownFields - - Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` // D big-endian, 32 bytes + sizeCache protoimpl.SizeCache } func (x *PrivateKey_Secp256K1) Reset() { diff --git a/pkg/proto/message_contents/private_preferences.pb.go b/pkg/proto/message_contents/private_preferences.pb.go index d348e1dc..9d64ae22 100644 --- a/pkg/proto/message_contents/private_preferences.pb.go +++ b/pkg/proto/message_contents/private_preferences.pb.go @@ -5,7 +5,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/private_preferences.proto @@ -28,11 +28,8 @@ const ( // PrivatePreferencesAction is a message used to update the client's preference // store. type PrivatePreferencesAction struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to MessageType: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to MessageType: // // *PrivatePreferencesAction_AllowAddress_ // *PrivatePreferencesAction_DenyAddress_ @@ -40,7 +37,9 @@ type PrivatePreferencesAction struct { // *PrivatePreferencesAction_DenyGroup_ // *PrivatePreferencesAction_AllowInboxId_ // *PrivatePreferencesAction_DenyInboxId_ - MessageType isPrivatePreferencesAction_MessageType `protobuf_oneof:"message_type"` + MessageType isPrivatePreferencesAction_MessageType `protobuf_oneof:"message_type"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivatePreferencesAction) Reset() { @@ -73,51 +72,63 @@ func (*PrivatePreferencesAction) Descriptor() ([]byte, []int) { return file_message_contents_private_preferences_proto_rawDescGZIP(), []int{0} } -func (m *PrivatePreferencesAction) GetMessageType() isPrivatePreferencesAction_MessageType { - if m != nil { - return m.MessageType +func (x *PrivatePreferencesAction) GetMessageType() isPrivatePreferencesAction_MessageType { + if x != nil { + return x.MessageType } return nil } func (x *PrivatePreferencesAction) GetAllowAddress() *PrivatePreferencesAction_AllowAddress { - if x, ok := x.GetMessageType().(*PrivatePreferencesAction_AllowAddress_); ok { - return x.AllowAddress + if x != nil { + if x, ok := x.MessageType.(*PrivatePreferencesAction_AllowAddress_); ok { + return x.AllowAddress + } } return nil } func (x *PrivatePreferencesAction) GetDenyAddress() *PrivatePreferencesAction_DenyAddress { - if x, ok := x.GetMessageType().(*PrivatePreferencesAction_DenyAddress_); ok { - return x.DenyAddress + if x != nil { + if x, ok := x.MessageType.(*PrivatePreferencesAction_DenyAddress_); ok { + return x.DenyAddress + } } return nil } func (x *PrivatePreferencesAction) GetAllowGroup() *PrivatePreferencesAction_AllowGroup { - if x, ok := x.GetMessageType().(*PrivatePreferencesAction_AllowGroup_); ok { - return x.AllowGroup + if x != nil { + if x, ok := x.MessageType.(*PrivatePreferencesAction_AllowGroup_); ok { + return x.AllowGroup + } } return nil } func (x *PrivatePreferencesAction) GetDenyGroup() *PrivatePreferencesAction_DenyGroup { - if x, ok := x.GetMessageType().(*PrivatePreferencesAction_DenyGroup_); ok { - return x.DenyGroup + if x != nil { + if x, ok := x.MessageType.(*PrivatePreferencesAction_DenyGroup_); ok { + return x.DenyGroup + } } return nil } func (x *PrivatePreferencesAction) GetAllowInboxId() *PrivatePreferencesAction_AllowInboxId { - if x, ok := x.GetMessageType().(*PrivatePreferencesAction_AllowInboxId_); ok { - return x.AllowInboxId + if x != nil { + if x, ok := x.MessageType.(*PrivatePreferencesAction_AllowInboxId_); ok { + return x.AllowInboxId + } } return nil } func (x *PrivatePreferencesAction) GetDenyInboxId() *PrivatePreferencesAction_DenyInboxId { - if x, ok := x.GetMessageType().(*PrivatePreferencesAction_DenyInboxId_); ok { - return x.DenyInboxId + if x != nil { + if x, ok := x.MessageType.(*PrivatePreferencesAction_DenyInboxId_); ok { + return x.DenyInboxId + } } return nil } @@ -164,14 +175,13 @@ func (*PrivatePreferencesAction_DenyInboxId_) isPrivatePreferencesAction_Message // The payload that goes over the wire type PrivatePreferencesPayload struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *PrivatePreferencesPayload_V1 - Version isPrivatePreferencesPayload_Version `protobuf_oneof:"version"` + Version isPrivatePreferencesPayload_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivatePreferencesPayload) Reset() { @@ -204,16 +214,18 @@ func (*PrivatePreferencesPayload) Descriptor() ([]byte, []int) { return file_message_contents_private_preferences_proto_rawDescGZIP(), []int{1} } -func (m *PrivatePreferencesPayload) GetVersion() isPrivatePreferencesPayload_Version { - if m != nil { - return m.Version +func (x *PrivatePreferencesPayload) GetVersion() isPrivatePreferencesPayload_Version { + if x != nil { + return x.Version } return nil } func (x *PrivatePreferencesPayload) GetV1() *Ciphertext { - if x, ok := x.GetVersion().(*PrivatePreferencesPayload_V1); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*PrivatePreferencesPayload_V1); ok { + return x.V1 + } } return nil } @@ -230,12 +242,11 @@ func (*PrivatePreferencesPayload_V1) isPrivatePreferencesPayload_Version() {} // Allow 1:1 direct message (DM) access type PrivatePreferencesAction_AllowAddress struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Add the given wallet addresses to the allow list WalletAddresses []string `protobuf:"bytes,1,rep,name=wallet_addresses,json=walletAddresses,proto3" json:"wallet_addresses,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivatePreferencesAction_AllowAddress) Reset() { @@ -277,12 +288,11 @@ func (x *PrivatePreferencesAction_AllowAddress) GetWalletAddresses() []string { // Deny (block) 1:1 direct message (DM) access type PrivatePreferencesAction_DenyAddress struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Add the given wallet addresses to the deny list WalletAddresses []string `protobuf:"bytes,1,rep,name=wallet_addresses,json=walletAddresses,proto3" json:"wallet_addresses,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivatePreferencesAction_DenyAddress) Reset() { @@ -324,12 +334,11 @@ func (x *PrivatePreferencesAction_DenyAddress) GetWalletAddresses() []string { // Allow V3 1:1 direct message (DM) access type PrivatePreferencesAction_AllowInboxId struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Add the given inbox id to the allow list - InboxIds []string `protobuf:"bytes,1,rep,name=inbox_ids,json=inboxIds,proto3" json:"inbox_ids,omitempty"` + InboxIds []string `protobuf:"bytes,1,rep,name=inbox_ids,json=inboxIds,proto3" json:"inbox_ids,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivatePreferencesAction_AllowInboxId) Reset() { @@ -371,12 +380,11 @@ func (x *PrivatePreferencesAction_AllowInboxId) GetInboxIds() []string { // Deny (block) V3 1:1 direct message (DM) access type PrivatePreferencesAction_DenyInboxId struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Add the given inbox id to the deny list - InboxIds []string `protobuf:"bytes,1,rep,name=inbox_ids,json=inboxIds,proto3" json:"inbox_ids,omitempty"` + InboxIds []string `protobuf:"bytes,1,rep,name=inbox_ids,json=inboxIds,proto3" json:"inbox_ids,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivatePreferencesAction_DenyInboxId) Reset() { @@ -418,12 +426,11 @@ func (x *PrivatePreferencesAction_DenyInboxId) GetInboxIds() []string { // Allow Group access type PrivatePreferencesAction_AllowGroup struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Add the given group_ids to the allow list - GroupIds []string `protobuf:"bytes,1,rep,name=group_ids,json=groupIds,proto3" json:"group_ids,omitempty"` + GroupIds []string `protobuf:"bytes,1,rep,name=group_ids,json=groupIds,proto3" json:"group_ids,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivatePreferencesAction_AllowGroup) Reset() { @@ -465,12 +472,11 @@ func (x *PrivatePreferencesAction_AllowGroup) GetGroupIds() []string { // Deny (deny) Group access type PrivatePreferencesAction_DenyGroup struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Add the given group_ids to the deny list - GroupIds []string `protobuf:"bytes,1,rep,name=group_ids,json=groupIds,proto3" json:"group_ids,omitempty"` + GroupIds []string `protobuf:"bytes,1,rep,name=group_ids,json=groupIds,proto3" json:"group_ids,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PrivatePreferencesAction_DenyGroup) Reset() { diff --git a/pkg/proto/message_contents/public_key.pb.go b/pkg/proto/message_contents/public_key.pb.go index 9fd2cd9e..8897fdae 100644 --- a/pkg/proto/message_contents/public_key.pb.go +++ b/pkg/proto/message_contents/public_key.pb.go @@ -3,7 +3,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/public_key.proto @@ -26,15 +26,14 @@ const ( // UnsignedPublicKey represents a generalized public key, // defined as a union to support cryptographic algorithm agility. type UnsignedPublicKey struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CreatedNs uint64 `protobuf:"varint,1,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` - // Types that are assignable to Union: + state protoimpl.MessageState `protogen:"open.v1"` + CreatedNs uint64 `protobuf:"varint,1,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` + // Types that are valid to be assigned to Union: // // *UnsignedPublicKey_Secp256K1Uncompressed_ - Union isUnsignedPublicKey_Union `protobuf_oneof:"union"` + Union isUnsignedPublicKey_Union `protobuf_oneof:"union"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *UnsignedPublicKey) Reset() { @@ -74,16 +73,18 @@ func (x *UnsignedPublicKey) GetCreatedNs() uint64 { return 0 } -func (m *UnsignedPublicKey) GetUnion() isUnsignedPublicKey_Union { - if m != nil { - return m.Union +func (x *UnsignedPublicKey) GetUnion() isUnsignedPublicKey_Union { + if x != nil { + return x.Union } return nil } func (x *UnsignedPublicKey) GetSecp256K1Uncompressed() *UnsignedPublicKey_Secp256K1Uncompressed { - if x, ok := x.GetUnion().(*UnsignedPublicKey_Secp256K1Uncompressed_); ok { - return x.Secp256K1Uncompressed + if x != nil { + if x, ok := x.Union.(*UnsignedPublicKey_Secp256K1Uncompressed_); ok { + return x.Secp256K1Uncompressed + } } return nil } @@ -100,12 +101,11 @@ func (*UnsignedPublicKey_Secp256K1Uncompressed_) isUnsignedPublicKey_Union() {} // SignedPublicKey type SignedPublicKey struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + KeyBytes []byte `protobuf:"bytes,1,opt,name=key_bytes,json=keyBytes,proto3" json:"key_bytes,omitempty"` // embeds an UnsignedPublicKey + Signature *Signature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` // signs key_bytes unknownFields protoimpl.UnknownFields - - KeyBytes []byte `protobuf:"bytes,1,opt,name=key_bytes,json=keyBytes,proto3" json:"key_bytes,omitempty"` // embeds an UnsignedPublicKey - Signature *Signature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` // signs key_bytes + sizeCache protoimpl.SizeCache } func (x *SignedPublicKey) Reset() { @@ -154,14 +154,13 @@ func (x *SignedPublicKey) GetSignature() *Signature { // PublicKeyBundle packages the cryptographic keys associated with a wallet. type SignedPublicKeyBundle struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Identity key MUST be signed by the wallet. IdentityKey *SignedPublicKey `protobuf:"bytes,1,opt,name=identity_key,json=identityKey,proto3" json:"identity_key,omitempty"` // Pre-key MUST be signed by the identity key. - PreKey *SignedPublicKey `protobuf:"bytes,2,opt,name=pre_key,json=preKey,proto3" json:"pre_key,omitempty"` + PreKey *SignedPublicKey `protobuf:"bytes,2,opt,name=pre_key,json=preKey,proto3" json:"pre_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SignedPublicKeyBundle) Reset() { @@ -211,16 +210,15 @@ func (x *SignedPublicKeyBundle) GetPreKey() *SignedPublicKey { // PublicKey represents a generalized public key, // defined as a union to support cryptographic algorithm agility. type PublicKey struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Timestamp uint64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` - Signature *Signature `protobuf:"bytes,2,opt,name=signature,proto3,oneof" json:"signature,omitempty"` - // Types that are assignable to Union: + state protoimpl.MessageState `protogen:"open.v1"` + Timestamp uint64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + Signature *Signature `protobuf:"bytes,2,opt,name=signature,proto3,oneof" json:"signature,omitempty"` + // Types that are valid to be assigned to Union: // // *PublicKey_Secp256K1Uncompressed_ - Union isPublicKey_Union `protobuf_oneof:"union"` + Union isPublicKey_Union `protobuf_oneof:"union"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PublicKey) Reset() { @@ -267,16 +265,18 @@ func (x *PublicKey) GetSignature() *Signature { return nil } -func (m *PublicKey) GetUnion() isPublicKey_Union { - if m != nil { - return m.Union +func (x *PublicKey) GetUnion() isPublicKey_Union { + if x != nil { + return x.Union } return nil } func (x *PublicKey) GetSecp256K1Uncompressed() *PublicKey_Secp256K1Uncompressed { - if x, ok := x.GetUnion().(*PublicKey_Secp256K1Uncompressed_); ok { - return x.Secp256K1Uncompressed + if x != nil { + if x, ok := x.Union.(*PublicKey_Secp256K1Uncompressed_); ok { + return x.Secp256K1Uncompressed + } } return nil } @@ -294,14 +294,13 @@ func (*PublicKey_Secp256K1Uncompressed_) isPublicKey_Union() {} // PublicKeyBundle packages the cryptographic keys associated with a wallet, // both senders and recipients are identified by their key bundles. type PublicKeyBundle struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Identity key MUST be signed by the wallet. IdentityKey *PublicKey `protobuf:"bytes,1,opt,name=identity_key,json=identityKey,proto3" json:"identity_key,omitempty"` // Pre-key MUST be signed by the identity key. - PreKey *PublicKey `protobuf:"bytes,2,opt,name=pre_key,json=preKey,proto3" json:"pre_key,omitempty"` + PreKey *PublicKey `protobuf:"bytes,2,opt,name=pre_key,json=preKey,proto3" json:"pre_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PublicKeyBundle) Reset() { @@ -350,12 +349,11 @@ func (x *PublicKeyBundle) GetPreKey() *PublicKey { // EC: SECP256k1 type UnsignedPublicKey_Secp256K1Uncompressed struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // uncompressed point with prefix (0x04) [ P || X || Y ], 65 bytes - Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` + Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *UnsignedPublicKey_Secp256K1Uncompressed) Reset() { @@ -397,12 +395,11 @@ func (x *UnsignedPublicKey_Secp256K1Uncompressed) GetBytes() []byte { // The key bytes type PublicKey_Secp256K1Uncompressed struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // uncompressed point with prefix (0x04) [ P || X || Y ], 65 bytes - Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` + Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PublicKey_Secp256K1Uncompressed) Reset() { diff --git a/pkg/proto/message_contents/signature.pb.go b/pkg/proto/message_contents/signature.pb.go index c60a7602..7748ea1e 100644 --- a/pkg/proto/message_contents/signature.pb.go +++ b/pkg/proto/message_contents/signature.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/signature.proto @@ -25,15 +25,14 @@ const ( // Signature represents a generalized public key signature, // defined as a union to support cryptographic algorithm agility. type Signature struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Union: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Union: // // *Signature_EcdsaCompact // *Signature_WalletEcdsaCompact - Union isSignature_Union `protobuf_oneof:"union"` + Union isSignature_Union `protobuf_oneof:"union"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Signature) Reset() { @@ -66,23 +65,27 @@ func (*Signature) Descriptor() ([]byte, []int) { return file_message_contents_signature_proto_rawDescGZIP(), []int{0} } -func (m *Signature) GetUnion() isSignature_Union { - if m != nil { - return m.Union +func (x *Signature) GetUnion() isSignature_Union { + if x != nil { + return x.Union } return nil } func (x *Signature) GetEcdsaCompact() *Signature_ECDSACompact { - if x, ok := x.GetUnion().(*Signature_EcdsaCompact); ok { - return x.EcdsaCompact + if x != nil { + if x, ok := x.Union.(*Signature_EcdsaCompact); ok { + return x.EcdsaCompact + } } return nil } func (x *Signature) GetWalletEcdsaCompact() *Signature_WalletECDSACompact { - if x, ok := x.GetUnion().(*Signature_WalletEcdsaCompact); ok { - return x.WalletEcdsaCompact + if x != nil { + if x, ok := x.Union.(*Signature_WalletEcdsaCompact); ok { + return x.WalletEcdsaCompact + } } return nil } @@ -105,12 +108,11 @@ func (*Signature_WalletEcdsaCompact) isSignature_Union() {} // ECDSA signature bytes and the recovery bit type Signature_ECDSACompact struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` // compact representation [ R || S ], 64 bytes + Recovery uint32 `protobuf:"varint,2,opt,name=recovery,proto3" json:"recovery,omitempty"` // recovery bit unknownFields protoimpl.UnknownFields - - Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` // compact representation [ R || S ], 64 bytes - Recovery uint32 `protobuf:"varint,2,opt,name=recovery,proto3" json:"recovery,omitempty"` // recovery bit + sizeCache protoimpl.SizeCache } func (x *Signature_ECDSACompact) Reset() { @@ -162,12 +164,11 @@ func (x *Signature_ECDSACompact) GetRecovery() uint32 { // EIP-191 signature of a "Create Identity" message with the key embedded. // Used to sign identity keys. type Signature_WalletECDSACompact struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` // compact representation [ R || S ], 64 bytes + Recovery uint32 `protobuf:"varint,2,opt,name=recovery,proto3" json:"recovery,omitempty"` // recovery bit unknownFields protoimpl.UnknownFields - - Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3" json:"bytes,omitempty"` // compact representation [ R || S ], 64 bytes - Recovery uint32 `protobuf:"varint,2,opt,name=recovery,proto3" json:"recovery,omitempty"` // recovery bit + sizeCache protoimpl.SizeCache } func (x *Signature_WalletECDSACompact) Reset() { diff --git a/pkg/proto/message_contents/signed_payload.pb.go b/pkg/proto/message_contents/signed_payload.pb.go index c2981f36..b517fdb4 100644 --- a/pkg/proto/message_contents/signed_payload.pb.go +++ b/pkg/proto/message_contents/signed_payload.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: message_contents/signed_payload.proto @@ -24,12 +24,11 @@ const ( // SignedPayload is a wrapper for a signature and a payload type SignedPayload struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` + Signature *Signature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` unknownFields protoimpl.UnknownFields - - Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` - Signature *Signature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SignedPayload) Reset() { diff --git a/pkg/proto/mls/api/v1/mls.pb.go b/pkg/proto/mls/api/v1/mls.pb.go index 1a96d3ff..b87c679b 100644 --- a/pkg/proto/mls/api/v1/mls.pb.go +++ b/pkg/proto/mls/api/v1/mls.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: mls/api/v1/mls.proto @@ -78,14 +78,13 @@ func (SortDirection) EnumDescriptor() ([]byte, []int) { // Full representation of a welcome message type WelcomeMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *WelcomeMessage_V1_ - Version isWelcomeMessage_Version `protobuf_oneof:"version"` + Version isWelcomeMessage_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *WelcomeMessage) Reset() { @@ -118,16 +117,18 @@ func (*WelcomeMessage) Descriptor() ([]byte, []int) { return file_mls_api_v1_mls_proto_rawDescGZIP(), []int{0} } -func (m *WelcomeMessage) GetVersion() isWelcomeMessage_Version { - if m != nil { - return m.Version +func (x *WelcomeMessage) GetVersion() isWelcomeMessage_Version { + if x != nil { + return x.Version } return nil } func (x *WelcomeMessage) GetV1() *WelcomeMessage_V1 { - if x, ok := x.GetVersion().(*WelcomeMessage_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*WelcomeMessage_V1_); ok { + return x.V1 + } } return nil } @@ -144,14 +145,13 @@ func (*WelcomeMessage_V1_) isWelcomeMessage_Version() {} // Input type for a welcome message type WelcomeMessageInput struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *WelcomeMessageInput_V1_ - Version isWelcomeMessageInput_Version `protobuf_oneof:"version"` + Version isWelcomeMessageInput_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *WelcomeMessageInput) Reset() { @@ -184,16 +184,18 @@ func (*WelcomeMessageInput) Descriptor() ([]byte, []int) { return file_mls_api_v1_mls_proto_rawDescGZIP(), []int{1} } -func (m *WelcomeMessageInput) GetVersion() isWelcomeMessageInput_Version { - if m != nil { - return m.Version +func (x *WelcomeMessageInput) GetVersion() isWelcomeMessageInput_Version { + if x != nil { + return x.Version } return nil } func (x *WelcomeMessageInput) GetV1() *WelcomeMessageInput_V1 { - if x, ok := x.GetVersion().(*WelcomeMessageInput_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*WelcomeMessageInput_V1_); ok { + return x.V1 + } } return nil } @@ -210,14 +212,13 @@ func (*WelcomeMessageInput_V1_) isWelcomeMessageInput_Version() {} // Full representation of a group message type GroupMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *GroupMessage_V1_ - Version isGroupMessage_Version `protobuf_oneof:"version"` + Version isGroupMessage_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GroupMessage) Reset() { @@ -250,16 +251,18 @@ func (*GroupMessage) Descriptor() ([]byte, []int) { return file_mls_api_v1_mls_proto_rawDescGZIP(), []int{2} } -func (m *GroupMessage) GetVersion() isGroupMessage_Version { - if m != nil { - return m.Version +func (x *GroupMessage) GetVersion() isGroupMessage_Version { + if x != nil { + return x.Version } return nil } func (x *GroupMessage) GetV1() *GroupMessage_V1 { - if x, ok := x.GetVersion().(*GroupMessage_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*GroupMessage_V1_); ok { + return x.V1 + } } return nil } @@ -276,14 +279,13 @@ func (*GroupMessage_V1_) isGroupMessage_Version() {} // Input type for a group message type GroupMessageInput struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *GroupMessageInput_V1_ - Version isGroupMessageInput_Version `protobuf_oneof:"version"` + Version isGroupMessageInput_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GroupMessageInput) Reset() { @@ -316,16 +318,18 @@ func (*GroupMessageInput) Descriptor() ([]byte, []int) { return file_mls_api_v1_mls_proto_rawDescGZIP(), []int{3} } -func (m *GroupMessageInput) GetVersion() isGroupMessageInput_Version { - if m != nil { - return m.Version +func (x *GroupMessageInput) GetVersion() isGroupMessageInput_Version { + if x != nil { + return x.Version } return nil } func (x *GroupMessageInput) GetV1() *GroupMessageInput_V1 { - if x, ok := x.GetVersion().(*GroupMessageInput_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*GroupMessageInput_V1_); ok { + return x.V1 + } } return nil } @@ -342,11 +346,10 @@ func (*GroupMessageInput_V1_) isGroupMessageInput_Version() {} // Send a batch of MLS messages type SendGroupMessagesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Messages []*GroupMessageInput `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` unknownFields protoimpl.UnknownFields - - Messages []*GroupMessageInput `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SendGroupMessagesRequest) Reset() { @@ -388,11 +391,10 @@ func (x *SendGroupMessagesRequest) GetMessages() []*GroupMessageInput { // Send a batch of welcome messages type SendWelcomeMessagesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Messages []*WelcomeMessageInput `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` unknownFields protoimpl.UnknownFields - - Messages []*WelcomeMessageInput `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SendWelcomeMessagesRequest) Reset() { @@ -434,13 +436,12 @@ func (x *SendWelcomeMessagesRequest) GetMessages() []*WelcomeMessageInput { // A wrapper around the Key Package bytes type KeyPackageUpload struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // The owner's wallet address would be extracted from the identity // credential in the key package, and all signatures would be validated. KeyPackageTlsSerialized []byte `protobuf:"bytes,1,opt,name=key_package_tls_serialized,json=keyPackageTlsSerialized,proto3" json:"key_package_tls_serialized,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *KeyPackageUpload) Reset() { @@ -482,13 +483,12 @@ func (x *KeyPackageUpload) GetKeyPackageTlsSerialized() []byte { // Register a new installation type RegisterInstallationRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // The Key Package contains all information needed to register an installation KeyPackage *KeyPackageUpload `protobuf:"bytes,1,opt,name=key_package,json=keyPackage,proto3" json:"key_package,omitempty"` IsInboxIdCredential bool `protobuf:"varint,2,opt,name=is_inbox_id_credential,json=isInboxIdCredential,proto3" json:"is_inbox_id_credential,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *RegisterInstallationRequest) Reset() { @@ -537,11 +537,10 @@ func (x *RegisterInstallationRequest) GetIsInboxIdCredential() bool { // The response to a RegisterInstallationRequest type RegisterInstallationResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *RegisterInstallationResponse) Reset() { @@ -583,13 +582,12 @@ func (x *RegisterInstallationResponse) GetInstallationKey() []byte { // Upload a new key packages type UploadKeyPackageRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // An individual key package upload request KeyPackage *KeyPackageUpload `protobuf:"bytes,1,opt,name=key_package,json=keyPackage,proto3" json:"key_package,omitempty"` IsInboxIdCredential bool `protobuf:"varint,2,opt,name=is_inbox_id_credential,json=isInboxIdCredential,proto3" json:"is_inbox_id_credential,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *UploadKeyPackageRequest) Reset() { @@ -638,14 +636,13 @@ func (x *UploadKeyPackageRequest) GetIsInboxIdCredential() bool { // Fetch one or more key packages type FetchKeyPackagesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // The caller can provide an array of installation keys, and the API // will return one key package for each installation associated with each // installation key InstallationKeys [][]byte `protobuf:"bytes,1,rep,name=installation_keys,json=installationKeys,proto3" json:"installation_keys,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *FetchKeyPackagesRequest) Reset() { @@ -687,14 +684,13 @@ func (x *FetchKeyPackagesRequest) GetInstallationKeys() [][]byte { // The response to a FetchKeyPackagesRequest type FetchKeyPackagesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Returns one key package per installation in the original order of the // request. If any installations are missing key packages, an empty entry is // left in their respective spots in the array. - KeyPackages []*FetchKeyPackagesResponse_KeyPackage `protobuf:"bytes,1,rep,name=key_packages,json=keyPackages,proto3" json:"key_packages,omitempty"` + KeyPackages []*FetchKeyPackagesResponse_KeyPackage `protobuf:"bytes,1,rep,name=key_packages,json=keyPackages,proto3" json:"key_packages,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *FetchKeyPackagesResponse) Reset() { @@ -736,14 +732,13 @@ func (x *FetchKeyPackagesResponse) GetKeyPackages() []*FetchKeyPackagesResponse_ // Revoke an installation type RevokeInstallationRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` // All revocations must be validated with a wallet signature over the // installation_id being revoked (and some sort of standard prologue) WalletSignature *message_contents.Signature `protobuf:"bytes,2,opt,name=wallet_signature,json=walletSignature,proto3" json:"wallet_signature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *RevokeInstallationRequest) Reset() { @@ -792,12 +787,11 @@ func (x *RevokeInstallationRequest) GetWalletSignature() *message_contents.Signa // Get all updates for an identity since the specified time type GetIdentityUpdatesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - AccountAddresses []string `protobuf:"bytes,1,rep,name=account_addresses,json=accountAddresses,proto3" json:"account_addresses,omitempty"` - StartTimeNs uint64 `protobuf:"varint,2,opt,name=start_time_ns,json=startTimeNs,proto3" json:"start_time_ns,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + AccountAddresses []string `protobuf:"bytes,1,rep,name=account_addresses,json=accountAddresses,proto3" json:"account_addresses,omitempty"` + StartTimeNs uint64 `protobuf:"varint,2,opt,name=start_time_ns,json=startTimeNs,proto3" json:"start_time_ns,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesRequest) Reset() { @@ -846,13 +840,12 @@ func (x *GetIdentityUpdatesRequest) GetStartTimeNs() uint64 { // Used to get any new or revoked installations for a list of wallet addresses type GetIdentityUpdatesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // A list of updates (or empty objects if no changes) in the original order // of the request - Updates []*GetIdentityUpdatesResponse_WalletUpdates `protobuf:"bytes,1,rep,name=updates,proto3" json:"updates,omitempty"` + Updates []*GetIdentityUpdatesResponse_WalletUpdates `protobuf:"bytes,1,rep,name=updates,proto3" json:"updates,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesResponse) Reset() { @@ -894,13 +887,12 @@ func (x *GetIdentityUpdatesResponse) GetUpdates() []*GetIdentityUpdatesResponse_ // Pagination config for queries type PagingInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Direction SortDirection `protobuf:"varint,1,opt,name=direction,proto3,enum=xmtp.mls.api.v1.SortDirection" json:"direction,omitempty"` + Limit uint32 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"` + IdCursor uint64 `protobuf:"varint,3,opt,name=id_cursor,json=idCursor,proto3" json:"id_cursor,omitempty"` unknownFields protoimpl.UnknownFields - - Direction SortDirection `protobuf:"varint,1,opt,name=direction,proto3,enum=xmtp.mls.api.v1.SortDirection" json:"direction,omitempty"` - Limit uint32 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"` - IdCursor uint64 `protobuf:"varint,3,opt,name=id_cursor,json=idCursor,proto3" json:"id_cursor,omitempty"` + sizeCache protoimpl.SizeCache } func (x *PagingInfo) Reset() { @@ -956,12 +948,11 @@ func (x *PagingInfo) GetIdCursor() uint64 { // Request for group message queries type QueryGroupMessagesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + GroupId []byte `protobuf:"bytes,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` + PagingInfo *PagingInfo `protobuf:"bytes,2,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` unknownFields protoimpl.UnknownFields - - GroupId []byte `protobuf:"bytes,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` - PagingInfo *PagingInfo `protobuf:"bytes,2,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` + sizeCache protoimpl.SizeCache } func (x *QueryGroupMessagesRequest) Reset() { @@ -1010,12 +1001,11 @@ func (x *QueryGroupMessagesRequest) GetPagingInfo() *PagingInfo { // Response for group message queries type QueryGroupMessagesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Messages []*GroupMessage `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` + PagingInfo *PagingInfo `protobuf:"bytes,2,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` unknownFields protoimpl.UnknownFields - - Messages []*GroupMessage `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` - PagingInfo *PagingInfo `protobuf:"bytes,2,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` + sizeCache protoimpl.SizeCache } func (x *QueryGroupMessagesResponse) Reset() { @@ -1064,12 +1054,11 @@ func (x *QueryGroupMessagesResponse) GetPagingInfo() *PagingInfo { // Request for welcome message queries type QueryWelcomeMessagesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` - PagingInfo *PagingInfo `protobuf:"bytes,2,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + PagingInfo *PagingInfo `protobuf:"bytes,2,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *QueryWelcomeMessagesRequest) Reset() { @@ -1118,12 +1107,11 @@ func (x *QueryWelcomeMessagesRequest) GetPagingInfo() *PagingInfo { // Response for welcome message queries type QueryWelcomeMessagesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Messages []*WelcomeMessage `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` + PagingInfo *PagingInfo `protobuf:"bytes,2,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` unknownFields protoimpl.UnknownFields - - Messages []*WelcomeMessage `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"` - PagingInfo *PagingInfo `protobuf:"bytes,2,opt,name=paging_info,json=pagingInfo,proto3" json:"paging_info,omitempty"` + sizeCache protoimpl.SizeCache } func (x *QueryWelcomeMessagesResponse) Reset() { @@ -1172,11 +1160,10 @@ func (x *QueryWelcomeMessagesResponse) GetPagingInfo() *PagingInfo { // Request for subscribing to group messages type SubscribeGroupMessagesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Filters []*SubscribeGroupMessagesRequest_Filter `protobuf:"bytes,1,rep,name=filters,proto3" json:"filters,omitempty"` unknownFields protoimpl.UnknownFields - - Filters []*SubscribeGroupMessagesRequest_Filter `protobuf:"bytes,1,rep,name=filters,proto3" json:"filters,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SubscribeGroupMessagesRequest) Reset() { @@ -1218,11 +1205,10 @@ func (x *SubscribeGroupMessagesRequest) GetFilters() []*SubscribeGroupMessagesRe // Request for subscribing to welcome messages type SubscribeWelcomeMessagesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Filters []*SubscribeWelcomeMessagesRequest_Filter `protobuf:"bytes,1,rep,name=filters,proto3" json:"filters,omitempty"` unknownFields protoimpl.UnknownFields - - Filters []*SubscribeWelcomeMessagesRequest_Filter `protobuf:"bytes,1,rep,name=filters,proto3" json:"filters,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SubscribeWelcomeMessagesRequest) Reset() { @@ -1264,15 +1250,14 @@ func (x *SubscribeWelcomeMessagesRequest) GetFilters() []*SubscribeWelcomeMessag // Version 1 of the WelcomeMessage format type WelcomeMessage_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` - CreatedNs uint64 `protobuf:"varint,2,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` - InstallationKey []byte `protobuf:"bytes,3,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` - Data []byte `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` - HpkePublicKey []byte `protobuf:"bytes,5,opt,name=hpke_public_key,json=hpkePublicKey,proto3" json:"hpke_public_key,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + CreatedNs uint64 `protobuf:"varint,2,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` + InstallationKey []byte `protobuf:"bytes,3,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + Data []byte `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` + HpkePublicKey []byte `protobuf:"bytes,5,opt,name=hpke_public_key,json=hpkePublicKey,proto3" json:"hpke_public_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *WelcomeMessage_V1) Reset() { @@ -1342,13 +1327,12 @@ func (x *WelcomeMessage_V1) GetHpkePublicKey() []byte { // Version 1 of the WelcomeMessageInput format type WelcomeMessageInput_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` - Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"` - HpkePublicKey []byte `protobuf:"bytes,3,opt,name=hpke_public_key,json=hpkePublicKey,proto3" json:"hpke_public_key,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"` + HpkePublicKey []byte `protobuf:"bytes,3,opt,name=hpke_public_key,json=hpkePublicKey,proto3" json:"hpke_public_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *WelcomeMessageInput_V1) Reset() { @@ -1404,15 +1388,14 @@ func (x *WelcomeMessageInput_V1) GetHpkePublicKey() []byte { // Version 1 of the GroupMessage format type GroupMessage_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + CreatedNs uint64 `protobuf:"varint,2,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` + GroupId []byte `protobuf:"bytes,3,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` + Data []byte `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` + SenderHmac []byte `protobuf:"bytes,5,opt,name=sender_hmac,json=senderHmac,proto3" json:"sender_hmac,omitempty"` unknownFields protoimpl.UnknownFields - - Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` - CreatedNs uint64 `protobuf:"varint,2,opt,name=created_ns,json=createdNs,proto3" json:"created_ns,omitempty"` - GroupId []byte `protobuf:"bytes,3,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` - Data []byte `protobuf:"bytes,4,opt,name=data,proto3" json:"data,omitempty"` - SenderHmac []byte `protobuf:"bytes,5,opt,name=sender_hmac,json=senderHmac,proto3" json:"sender_hmac,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GroupMessage_V1) Reset() { @@ -1482,12 +1465,11 @@ func (x *GroupMessage_V1) GetSenderHmac() []byte { // Version 1 of the GroupMessageInput payload format type GroupMessageInput_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` // Serialized MlsProtocolMessage + SenderHmac []byte `protobuf:"bytes,2,opt,name=sender_hmac,json=senderHmac,proto3" json:"sender_hmac,omitempty"` unknownFields protoimpl.UnknownFields - - Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` // Serialized MlsProtocolMessage - SenderHmac []byte `protobuf:"bytes,2,opt,name=sender_hmac,json=senderHmac,proto3" json:"sender_hmac,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GroupMessageInput_V1) Reset() { @@ -1536,11 +1518,10 @@ func (x *GroupMessageInput_V1) GetSenderHmac() []byte { // An individual key package type FetchKeyPackagesResponse_KeyPackage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - KeyPackageTlsSerialized []byte `protobuf:"bytes,1,opt,name=key_package_tls_serialized,json=keyPackageTlsSerialized,proto3" json:"key_package_tls_serialized,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + KeyPackageTlsSerialized []byte `protobuf:"bytes,1,opt,name=key_package_tls_serialized,json=keyPackageTlsSerialized,proto3" json:"key_package_tls_serialized,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *FetchKeyPackagesResponse_KeyPackage) Reset() { @@ -1582,12 +1563,11 @@ func (x *FetchKeyPackagesResponse_KeyPackage) GetKeyPackageTlsSerialized() []byt // A new installation key was seen for the first time by the nodes type GetIdentityUpdatesResponse_NewInstallationUpdate struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` - CredentialIdentity []byte `protobuf:"bytes,2,opt,name=credential_identity,json=credentialIdentity,proto3" json:"credential_identity,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + CredentialIdentity []byte `protobuf:"bytes,2,opt,name=credential_identity,json=credentialIdentity,proto3" json:"credential_identity,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesResponse_NewInstallationUpdate) Reset() { @@ -1636,11 +1616,10 @@ func (x *GetIdentityUpdatesResponse_NewInstallationUpdate) GetCredentialIdentity // An installation was revoked type GetIdentityUpdatesResponse_RevokedInstallationUpdate struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesResponse_RevokedInstallationUpdate) Reset() { @@ -1682,16 +1661,15 @@ func (x *GetIdentityUpdatesResponse_RevokedInstallationUpdate) GetInstallationKe // A wrapper for any update to the wallet type GetIdentityUpdatesResponse_Update struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TimestampNs uint64 `protobuf:"varint,1,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` - // Types that are assignable to Kind: + state protoimpl.MessageState `protogen:"open.v1"` + TimestampNs uint64 `protobuf:"varint,1,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` + // Types that are valid to be assigned to Kind: // // *GetIdentityUpdatesResponse_Update_NewInstallation // *GetIdentityUpdatesResponse_Update_RevokedInstallation - Kind isGetIdentityUpdatesResponse_Update_Kind `protobuf_oneof:"kind"` + Kind isGetIdentityUpdatesResponse_Update_Kind `protobuf_oneof:"kind"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesResponse_Update) Reset() { @@ -1731,23 +1709,27 @@ func (x *GetIdentityUpdatesResponse_Update) GetTimestampNs() uint64 { return 0 } -func (m *GetIdentityUpdatesResponse_Update) GetKind() isGetIdentityUpdatesResponse_Update_Kind { - if m != nil { - return m.Kind +func (x *GetIdentityUpdatesResponse_Update) GetKind() isGetIdentityUpdatesResponse_Update_Kind { + if x != nil { + return x.Kind } return nil } func (x *GetIdentityUpdatesResponse_Update) GetNewInstallation() *GetIdentityUpdatesResponse_NewInstallationUpdate { - if x, ok := x.GetKind().(*GetIdentityUpdatesResponse_Update_NewInstallation); ok { - return x.NewInstallation + if x != nil { + if x, ok := x.Kind.(*GetIdentityUpdatesResponse_Update_NewInstallation); ok { + return x.NewInstallation + } } return nil } func (x *GetIdentityUpdatesResponse_Update) GetRevokedInstallation() *GetIdentityUpdatesResponse_RevokedInstallationUpdate { - if x, ok := x.GetKind().(*GetIdentityUpdatesResponse_Update_RevokedInstallation); ok { - return x.RevokedInstallation + if x != nil { + if x, ok := x.Kind.(*GetIdentityUpdatesResponse_Update_RevokedInstallation); ok { + return x.RevokedInstallation + } } return nil } @@ -1772,11 +1754,10 @@ func (*GetIdentityUpdatesResponse_Update_RevokedInstallation) isGetIdentityUpdat // A wrapper for the updates for a single wallet type GetIdentityUpdatesResponse_WalletUpdates struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Updates []*GetIdentityUpdatesResponse_Update `protobuf:"bytes,1,rep,name=updates,proto3" json:"updates,omitempty"` unknownFields protoimpl.UnknownFields - - Updates []*GetIdentityUpdatesResponse_Update `protobuf:"bytes,1,rep,name=updates,proto3" json:"updates,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetIdentityUpdatesResponse_WalletUpdates) Reset() { @@ -1818,12 +1799,11 @@ func (x *GetIdentityUpdatesResponse_WalletUpdates) GetUpdates() []*GetIdentityUp // Subscription filter type SubscribeGroupMessagesRequest_Filter struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + GroupId []byte `protobuf:"bytes,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` + IdCursor uint64 `protobuf:"varint,2,opt,name=id_cursor,json=idCursor,proto3" json:"id_cursor,omitempty"` unknownFields protoimpl.UnknownFields - - GroupId []byte `protobuf:"bytes,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` - IdCursor uint64 `protobuf:"varint,2,opt,name=id_cursor,json=idCursor,proto3" json:"id_cursor,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SubscribeGroupMessagesRequest_Filter) Reset() { @@ -1872,12 +1852,11 @@ func (x *SubscribeGroupMessagesRequest_Filter) GetIdCursor() uint64 { // Subscription filter type SubscribeWelcomeMessagesRequest_Filter struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` - IdCursor uint64 `protobuf:"varint,2,opt,name=id_cursor,json=idCursor,proto3" json:"id_cursor,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + IdCursor uint64 `protobuf:"varint,2,opt,name=id_cursor,json=idCursor,proto3" json:"id_cursor,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SubscribeWelcomeMessagesRequest_Filter) Reset() { diff --git a/pkg/proto/mls/database/intents.pb.go b/pkg/proto/mls/database/intents.pb.go index acac457a..d7550cbd 100644 --- a/pkg/proto/mls/database/intents.pb.go +++ b/pkg/proto/mls/database/intents.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: mls/database/intents.proto @@ -195,14 +195,13 @@ func (PermissionPolicyOption) EnumDescriptor() ([]byte, []int) { // The data required to publish a message type SendMessageData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *SendMessageData_V1_ - Version isSendMessageData_Version `protobuf_oneof:"version"` + Version isSendMessageData_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *SendMessageData) Reset() { @@ -235,16 +234,18 @@ func (*SendMessageData) Descriptor() ([]byte, []int) { return file_mls_database_intents_proto_rawDescGZIP(), []int{0} } -func (m *SendMessageData) GetVersion() isSendMessageData_Version { - if m != nil { - return m.Version +func (x *SendMessageData) GetVersion() isSendMessageData_Version { + if x != nil { + return x.Version } return nil } func (x *SendMessageData) GetV1() *SendMessageData_V1 { - if x, ok := x.GetVersion().(*SendMessageData_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*SendMessageData_V1_); ok { + return x.V1 + } } return nil } @@ -261,11 +262,10 @@ func (*SendMessageData_V1_) isSendMessageData_Version() {} // Wrapper around a list af repeated EVM Account Addresses type AccountAddresses struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - AccountAddresses []string `protobuf:"bytes,1,rep,name=account_addresses,json=accountAddresses,proto3" json:"account_addresses,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + AccountAddresses []string `protobuf:"bytes,1,rep,name=account_addresses,json=accountAddresses,proto3" json:"account_addresses,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *AccountAddresses) Reset() { @@ -307,11 +307,10 @@ func (x *AccountAddresses) GetAccountAddresses() []string { // Wrapper around a list of repeated Installation IDs type InstallationIds struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InstallationIds [][]byte `protobuf:"bytes,1,rep,name=installation_ids,json=installationIds,proto3" json:"installation_ids,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InstallationIds [][]byte `protobuf:"bytes,1,rep,name=installation_ids,json=installationIds,proto3" json:"installation_ids,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *InstallationIds) Reset() { @@ -353,15 +352,14 @@ func (x *InstallationIds) GetInstallationIds() [][]byte { // One of an EVM account address or Installation ID type AddressesOrInstallationIds struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to AddressesOrInstallationIds: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to AddressesOrInstallationIds: // // *AddressesOrInstallationIds_AccountAddresses // *AddressesOrInstallationIds_InstallationIds AddressesOrInstallationIds isAddressesOrInstallationIds_AddressesOrInstallationIds `protobuf_oneof:"addresses_or_installation_ids"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *AddressesOrInstallationIds) Reset() { @@ -394,23 +392,27 @@ func (*AddressesOrInstallationIds) Descriptor() ([]byte, []int) { return file_mls_database_intents_proto_rawDescGZIP(), []int{3} } -func (m *AddressesOrInstallationIds) GetAddressesOrInstallationIds() isAddressesOrInstallationIds_AddressesOrInstallationIds { - if m != nil { - return m.AddressesOrInstallationIds +func (x *AddressesOrInstallationIds) GetAddressesOrInstallationIds() isAddressesOrInstallationIds_AddressesOrInstallationIds { + if x != nil { + return x.AddressesOrInstallationIds } return nil } func (x *AddressesOrInstallationIds) GetAccountAddresses() *AccountAddresses { - if x, ok := x.GetAddressesOrInstallationIds().(*AddressesOrInstallationIds_AccountAddresses); ok { - return x.AccountAddresses + if x != nil { + if x, ok := x.AddressesOrInstallationIds.(*AddressesOrInstallationIds_AccountAddresses); ok { + return x.AccountAddresses + } } return nil } func (x *AddressesOrInstallationIds) GetInstallationIds() *InstallationIds { - if x, ok := x.GetAddressesOrInstallationIds().(*AddressesOrInstallationIds_InstallationIds); ok { - return x.InstallationIds + if x != nil { + if x, ok := x.AddressesOrInstallationIds.(*AddressesOrInstallationIds_InstallationIds); ok { + return x.InstallationIds + } } return nil } @@ -435,14 +437,13 @@ func (*AddressesOrInstallationIds_InstallationIds) isAddressesOrInstallationIds_ // The data required to add members to a group type AddMembersData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *AddMembersData_V1_ - Version isAddMembersData_Version `protobuf_oneof:"version"` + Version isAddMembersData_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *AddMembersData) Reset() { @@ -475,16 +476,18 @@ func (*AddMembersData) Descriptor() ([]byte, []int) { return file_mls_database_intents_proto_rawDescGZIP(), []int{4} } -func (m *AddMembersData) GetVersion() isAddMembersData_Version { - if m != nil { - return m.Version +func (x *AddMembersData) GetVersion() isAddMembersData_Version { + if x != nil { + return x.Version } return nil } func (x *AddMembersData) GetV1() *AddMembersData_V1 { - if x, ok := x.GetVersion().(*AddMembersData_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*AddMembersData_V1_); ok { + return x.V1 + } } return nil } @@ -501,14 +504,13 @@ func (*AddMembersData_V1_) isAddMembersData_Version() {} // The data required to remove members from a group type RemoveMembersData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *RemoveMembersData_V1_ - Version isRemoveMembersData_Version `protobuf_oneof:"version"` + Version isRemoveMembersData_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *RemoveMembersData) Reset() { @@ -541,16 +543,18 @@ func (*RemoveMembersData) Descriptor() ([]byte, []int) { return file_mls_database_intents_proto_rawDescGZIP(), []int{5} } -func (m *RemoveMembersData) GetVersion() isRemoveMembersData_Version { - if m != nil { - return m.Version +func (x *RemoveMembersData) GetVersion() isRemoveMembersData_Version { + if x != nil { + return x.Version } return nil } func (x *RemoveMembersData) GetV1() *RemoveMembersData_V1 { - if x, ok := x.GetVersion().(*RemoveMembersData_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*RemoveMembersData_V1_); ok { + return x.V1 + } } return nil } @@ -568,14 +572,13 @@ func (*RemoveMembersData_V1_) isRemoveMembersData_Version() {} // The data required to make a commit that updates group membership // Handles both Add and Remove actions type UpdateGroupMembershipData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *UpdateGroupMembershipData_V1_ - Version isUpdateGroupMembershipData_Version `protobuf_oneof:"version"` + Version isUpdateGroupMembershipData_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *UpdateGroupMembershipData) Reset() { @@ -608,16 +611,18 @@ func (*UpdateGroupMembershipData) Descriptor() ([]byte, []int) { return file_mls_database_intents_proto_rawDescGZIP(), []int{6} } -func (m *UpdateGroupMembershipData) GetVersion() isUpdateGroupMembershipData_Version { - if m != nil { - return m.Version +func (x *UpdateGroupMembershipData) GetVersion() isUpdateGroupMembershipData_Version { + if x != nil { + return x.Version } return nil } func (x *UpdateGroupMembershipData) GetV1() *UpdateGroupMembershipData_V1 { - if x, ok := x.GetVersion().(*UpdateGroupMembershipData_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*UpdateGroupMembershipData_V1_); ok { + return x.V1 + } } return nil } @@ -634,14 +639,13 @@ func (*UpdateGroupMembershipData_V1_) isUpdateGroupMembershipData_Version() {} // The data required to update group metadata type UpdateMetadataData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *UpdateMetadataData_V1_ - Version isUpdateMetadataData_Version `protobuf_oneof:"version"` + Version isUpdateMetadataData_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *UpdateMetadataData) Reset() { @@ -674,16 +678,18 @@ func (*UpdateMetadataData) Descriptor() ([]byte, []int) { return file_mls_database_intents_proto_rawDescGZIP(), []int{7} } -func (m *UpdateMetadataData) GetVersion() isUpdateMetadataData_Version { - if m != nil { - return m.Version +func (x *UpdateMetadataData) GetVersion() isUpdateMetadataData_Version { + if x != nil { + return x.Version } return nil } func (x *UpdateMetadataData) GetV1() *UpdateMetadataData_V1 { - if x, ok := x.GetVersion().(*UpdateMetadataData_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*UpdateMetadataData_V1_); ok { + return x.V1 + } } return nil } @@ -700,14 +706,13 @@ func (*UpdateMetadataData_V1_) isUpdateMetadataData_Version() {} // The data required to update group admin/super admin lists type UpdateAdminListsData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *UpdateAdminListsData_V1_ - Version isUpdateAdminListsData_Version `protobuf_oneof:"version"` + Version isUpdateAdminListsData_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *UpdateAdminListsData) Reset() { @@ -740,16 +745,18 @@ func (*UpdateAdminListsData) Descriptor() ([]byte, []int) { return file_mls_database_intents_proto_rawDescGZIP(), []int{8} } -func (m *UpdateAdminListsData) GetVersion() isUpdateAdminListsData_Version { - if m != nil { - return m.Version +func (x *UpdateAdminListsData) GetVersion() isUpdateAdminListsData_Version { + if x != nil { + return x.Version } return nil } func (x *UpdateAdminListsData) GetV1() *UpdateAdminListsData_V1 { - if x, ok := x.GetVersion().(*UpdateAdminListsData_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*UpdateAdminListsData_V1_); ok { + return x.V1 + } } return nil } @@ -766,14 +773,13 @@ func (*UpdateAdminListsData_V1_) isUpdateAdminListsData_Version() {} // The data required to update permissions type UpdatePermissionData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Version: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Version: // // *UpdatePermissionData_V1_ - Version isUpdatePermissionData_Version `protobuf_oneof:"version"` + Version isUpdatePermissionData_Version `protobuf_oneof:"version"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *UpdatePermissionData) Reset() { @@ -806,16 +812,18 @@ func (*UpdatePermissionData) Descriptor() ([]byte, []int) { return file_mls_database_intents_proto_rawDescGZIP(), []int{9} } -func (m *UpdatePermissionData) GetVersion() isUpdatePermissionData_Version { - if m != nil { - return m.Version +func (x *UpdatePermissionData) GetVersion() isUpdatePermissionData_Version { + if x != nil { + return x.Version } return nil } func (x *UpdatePermissionData) GetV1() *UpdatePermissionData_V1 { - if x, ok := x.GetVersion().(*UpdatePermissionData_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Version.(*UpdatePermissionData_V1_); ok { + return x.V1 + } } return nil } @@ -832,14 +840,13 @@ func (*UpdatePermissionData_V1_) isUpdatePermissionData_Version() {} // Generic data-type for all post-commit actions type PostCommitAction struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Kind: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Kind: // // *PostCommitAction_SendWelcomes_ - Kind isPostCommitAction_Kind `protobuf_oneof:"kind"` + Kind isPostCommitAction_Kind `protobuf_oneof:"kind"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PostCommitAction) Reset() { @@ -872,16 +879,18 @@ func (*PostCommitAction) Descriptor() ([]byte, []int) { return file_mls_database_intents_proto_rawDescGZIP(), []int{10} } -func (m *PostCommitAction) GetKind() isPostCommitAction_Kind { - if m != nil { - return m.Kind +func (x *PostCommitAction) GetKind() isPostCommitAction_Kind { + if x != nil { + return x.Kind } return nil } func (x *PostCommitAction) GetSendWelcomes() *PostCommitAction_SendWelcomes { - if x, ok := x.GetKind().(*PostCommitAction_SendWelcomes_); ok { - return x.SendWelcomes + if x != nil { + if x, ok := x.Kind.(*PostCommitAction_SendWelcomes_); ok { + return x.SendWelcomes + } } return nil } @@ -898,11 +907,10 @@ func (*PostCommitAction_SendWelcomes_) isPostCommitAction_Kind() {} // V1 of SendMessagePublishData type SendMessageData_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + PayloadBytes []byte `protobuf:"bytes,1,opt,name=payload_bytes,json=payloadBytes,proto3" json:"payload_bytes,omitempty"` unknownFields protoimpl.UnknownFields - - PayloadBytes []byte `protobuf:"bytes,1,opt,name=payload_bytes,json=payloadBytes,proto3" json:"payload_bytes,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SendMessageData_V1) Reset() { @@ -944,11 +952,10 @@ func (x *SendMessageData_V1) GetPayloadBytes() []byte { // V1 of AddMembersPublishData type AddMembersData_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` AddressesOrInstallationIds *AddressesOrInstallationIds `protobuf:"bytes,1,opt,name=addresses_or_installation_ids,json=addressesOrInstallationIds,proto3" json:"addresses_or_installation_ids,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *AddMembersData_V1) Reset() { @@ -990,11 +997,10 @@ func (x *AddMembersData_V1) GetAddressesOrInstallationIds() *AddressesOrInstalla // V1 of RemoveMembersPublishData type RemoveMembersData_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` AddressesOrInstallationIds *AddressesOrInstallationIds `protobuf:"bytes,1,opt,name=addresses_or_installation_ids,json=addressesOrInstallationIds,proto3" json:"addresses_or_installation_ids,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *RemoveMembersData_V1) Reset() { @@ -1036,14 +1042,13 @@ func (x *RemoveMembersData_V1) GetAddressesOrInstallationIds() *AddressesOrInsta // V1 of UpdateGroupMembershipPublishData type UpdateGroupMembershipData_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Contains delta of membership updates that need to be applied - MembershipUpdates map[string]uint64 `protobuf:"bytes,1,rep,name=membership_updates,json=membershipUpdates,proto3" json:"membership_updates,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + MembershipUpdates map[string]uint64 `protobuf:"bytes,1,rep,name=membership_updates,json=membershipUpdates,proto3" json:"membership_updates,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` // Contains the list of members that will be removed RemovedMembers []string `protobuf:"bytes,2,rep,name=removed_members,json=removedMembers,proto3" json:"removed_members,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *UpdateGroupMembershipData_V1) Reset() { @@ -1092,12 +1097,11 @@ func (x *UpdateGroupMembershipData_V1) GetRemovedMembers() []string { // V1 of UpdateMetadataPublishData type UpdateMetadataData_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + FieldName string `protobuf:"bytes,1,opt,name=field_name,json=fieldName,proto3" json:"field_name,omitempty"` + FieldValue string `protobuf:"bytes,2,opt,name=field_value,json=fieldValue,proto3" json:"field_value,omitempty"` unknownFields protoimpl.UnknownFields - - FieldName string `protobuf:"bytes,1,opt,name=field_name,json=fieldName,proto3" json:"field_name,omitempty"` - FieldValue string `protobuf:"bytes,2,opt,name=field_value,json=fieldValue,proto3" json:"field_value,omitempty"` + sizeCache protoimpl.SizeCache } func (x *UpdateMetadataData_V1) Reset() { @@ -1146,12 +1150,11 @@ func (x *UpdateMetadataData_V1) GetFieldValue() string { // V1 of UpdateAdminListsPublishData type UpdateAdminListsData_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - AdminListUpdateType AdminListUpdateType `protobuf:"varint,1,opt,name=admin_list_update_type,json=adminListUpdateType,proto3,enum=xmtp.mls.database.AdminListUpdateType" json:"admin_list_update_type,omitempty"` - InboxId string `protobuf:"bytes,2,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + AdminListUpdateType AdminListUpdateType `protobuf:"varint,1,opt,name=admin_list_update_type,json=adminListUpdateType,proto3,enum=xmtp.mls.database.AdminListUpdateType" json:"admin_list_update_type,omitempty"` + InboxId string `protobuf:"bytes,2,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *UpdateAdminListsData_V1) Reset() { @@ -1200,14 +1203,13 @@ func (x *UpdateAdminListsData_V1) GetInboxId() string { // V1 of UpdatePermissionData type UpdatePermissionData_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` PermissionUpdateType PermissionUpdateType `protobuf:"varint,1,opt,name=permission_update_type,json=permissionUpdateType,proto3,enum=xmtp.mls.database.PermissionUpdateType" json:"permission_update_type,omitempty"` PermissionPolicyOption PermissionPolicyOption `protobuf:"varint,2,opt,name=permission_policy_option,json=permissionPolicyOption,proto3,enum=xmtp.mls.database.PermissionPolicyOption" json:"permission_policy_option,omitempty"` // Metadata permissions update specify which field permission they are updating MetadataFieldName *string `protobuf:"bytes,3,opt,name=metadata_field_name,json=metadataFieldName,proto3,oneof" json:"metadata_field_name,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *UpdatePermissionData_V1) Reset() { @@ -1263,12 +1265,11 @@ func (x *UpdatePermissionData_V1) GetMetadataFieldName() string { // An installation type PostCommitAction_Installation struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` - HpkePublicKey []byte `protobuf:"bytes,2,opt,name=hpke_public_key,json=hpkePublicKey,proto3" json:"hpke_public_key,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InstallationKey []byte `protobuf:"bytes,1,opt,name=installation_key,json=installationKey,proto3" json:"installation_key,omitempty"` + HpkePublicKey []byte `protobuf:"bytes,2,opt,name=hpke_public_key,json=hpkePublicKey,proto3" json:"hpke_public_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PostCommitAction_Installation) Reset() { @@ -1317,12 +1318,11 @@ func (x *PostCommitAction_Installation) GetHpkePublicKey() []byte { // SendWelcome message type PostCommitAction_SendWelcomes struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` Installations []*PostCommitAction_Installation `protobuf:"bytes,1,rep,name=installations,proto3" json:"installations,omitempty"` WelcomeMessage []byte `protobuf:"bytes,2,opt,name=welcome_message,json=welcomeMessage,proto3" json:"welcome_message,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PostCommitAction_SendWelcomes) Reset() { diff --git a/pkg/proto/mls/message_contents/content.pb.go b/pkg/proto/mls/message_contents/content.pb.go index 3749bc40..096c2ea4 100644 --- a/pkg/proto/mls/message_contents/content.pb.go +++ b/pkg/proto/mls/message_contents/content.pb.go @@ -3,7 +3,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: mls/message_contents/content.proto @@ -71,16 +71,65 @@ func (Compression) EnumDescriptor() ([]byte, []int) { return file_mls_message_contents_content_proto_rawDescGZIP(), []int{0} } +// The kind of device sync payload being sent +type DeviceSyncKind int32 + +const ( + DeviceSyncKind_DEVICE_SYNC_KIND_UNSPECIFIED DeviceSyncKind = 0 + DeviceSyncKind_DEVICE_SYNC_KIND_MESSAGE_HISTORY DeviceSyncKind = 1 + DeviceSyncKind_DEVICE_SYNC_KIND_CONSENT DeviceSyncKind = 2 +) + +// Enum value maps for DeviceSyncKind. +var ( + DeviceSyncKind_name = map[int32]string{ + 0: "DEVICE_SYNC_KIND_UNSPECIFIED", + 1: "DEVICE_SYNC_KIND_MESSAGE_HISTORY", + 2: "DEVICE_SYNC_KIND_CONSENT", + } + DeviceSyncKind_value = map[string]int32{ + "DEVICE_SYNC_KIND_UNSPECIFIED": 0, + "DEVICE_SYNC_KIND_MESSAGE_HISTORY": 1, + "DEVICE_SYNC_KIND_CONSENT": 2, + } +) + +func (x DeviceSyncKind) Enum() *DeviceSyncKind { + p := new(DeviceSyncKind) + *p = x + return p +} + +func (x DeviceSyncKind) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (DeviceSyncKind) Descriptor() protoreflect.EnumDescriptor { + return file_mls_message_contents_content_proto_enumTypes[1].Descriptor() +} + +func (DeviceSyncKind) Type() protoreflect.EnumType { + return &file_mls_message_contents_content_proto_enumTypes[1] +} + +func (x DeviceSyncKind) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use DeviceSyncKind.Descriptor instead. +func (DeviceSyncKind) EnumDescriptor() ([]byte, []int) { + return file_mls_message_contents_content_proto_rawDescGZIP(), []int{1} +} + // ContentTypeId is used to identify the type of content stored in a Message. type ContentTypeId struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + AuthorityId string `protobuf:"bytes,1,opt,name=authority_id,json=authorityId,proto3" json:"authority_id,omitempty"` // authority governing this content type + TypeId string `protobuf:"bytes,2,opt,name=type_id,json=typeId,proto3" json:"type_id,omitempty"` // type identifier + VersionMajor uint32 `protobuf:"varint,3,opt,name=version_major,json=versionMajor,proto3" json:"version_major,omitempty"` // major version of the type + VersionMinor uint32 `protobuf:"varint,4,opt,name=version_minor,json=versionMinor,proto3" json:"version_minor,omitempty"` // minor version of the type unknownFields protoimpl.UnknownFields - - AuthorityId string `protobuf:"bytes,1,opt,name=authority_id,json=authorityId,proto3" json:"authority_id,omitempty"` // authority governing this content type - TypeId string `protobuf:"bytes,2,opt,name=type_id,json=typeId,proto3" json:"type_id,omitempty"` // type identifier - VersionMajor uint32 `protobuf:"varint,3,opt,name=version_major,json=versionMajor,proto3" json:"version_major,omitempty"` // major version of the type - VersionMinor uint32 `protobuf:"varint,4,opt,name=version_minor,json=versionMinor,proto3" json:"version_minor,omitempty"` // minor version of the type + sizeCache protoimpl.SizeCache } func (x *ContentTypeId) Reset() { @@ -144,15 +193,12 @@ func (x *ContentTypeId) GetVersionMinor() uint32 { // EncodedContent bundles the content with metadata identifying its type // and parameters required for correct decoding and presentation of the content. type EncodedContent struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // content type identifier used to match the payload with // the correct decoding machinery Type *ContentTypeId `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` // optional encoding parameters required to correctly decode the content - Parameters map[string]string `protobuf:"bytes,2,rep,name=parameters,proto3" json:"parameters,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Parameters map[string]string `protobuf:"bytes,2,rep,name=parameters,proto3" json:"parameters,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // optional fallback description of the content that can be used in case // the client cannot decode or render the content Fallback *string `protobuf:"bytes,3,opt,name=fallback,proto3,oneof" json:"fallback,omitempty"` @@ -160,7 +206,9 @@ type EncodedContent struct { // compress the encoded content bytes Compression *Compression `protobuf:"varint,5,opt,name=compression,proto3,enum=xmtp.mls.message_contents.Compression,oneof" json:"compression,omitempty"` // encoded content itself - Content []byte `protobuf:"bytes,4,opt,name=content,proto3" json:"content,omitempty"` + Content []byte `protobuf:"bytes,4,opt,name=content,proto3" json:"content,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *EncodedContent) Reset() { @@ -230,18 +278,17 @@ func (x *EncodedContent) GetContent() []byte { // A PlaintextEnvelope is the outermost payload that gets encrypted by MLS type PlaintextEnvelope struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Selector which declares which version of the EncodedContent this // PlaintextEnvelope is // - // Types that are assignable to Content: + // Types that are valid to be assigned to Content: // // *PlaintextEnvelope_V1_ // *PlaintextEnvelope_V2_ - Content isPlaintextEnvelope_Content `protobuf_oneof:"content"` + Content isPlaintextEnvelope_Content `protobuf_oneof:"content"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PlaintextEnvelope) Reset() { @@ -274,23 +321,27 @@ func (*PlaintextEnvelope) Descriptor() ([]byte, []int) { return file_mls_message_contents_content_proto_rawDescGZIP(), []int{2} } -func (m *PlaintextEnvelope) GetContent() isPlaintextEnvelope_Content { - if m != nil { - return m.Content +func (x *PlaintextEnvelope) GetContent() isPlaintextEnvelope_Content { + if x != nil { + return x.Content } return nil } func (x *PlaintextEnvelope) GetV1() *PlaintextEnvelope_V1 { - if x, ok := x.GetContent().(*PlaintextEnvelope_V1_); ok { - return x.V1 + if x != nil { + if x, ok := x.Content.(*PlaintextEnvelope_V1_); ok { + return x.V1 + } } return nil } func (x *PlaintextEnvelope) GetV2() *PlaintextEnvelope_V2 { - if x, ok := x.GetContent().(*PlaintextEnvelope_V2_); ok { - return x.V2 + if x != nil { + if x, ok := x.Content.(*PlaintextEnvelope_V2_); ok { + return x.V2 + } } return nil } @@ -311,32 +362,33 @@ func (*PlaintextEnvelope_V1_) isPlaintextEnvelope_Content() {} func (*PlaintextEnvelope_V2_) isPlaintextEnvelope_Content() {} -// Initiator or new installation id requesting a history will send a request -type MessageHistoryRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - +// Initiator or new installation id requesting a sync payload send a request +type DeviceSyncRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` // Unique identifier for each request RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` // Ensures a human is in the loop PinCode string `protobuf:"bytes,2,opt,name=pin_code,json=pinCode,proto3" json:"pin_code,omitempty"` + // request kind + Kind DeviceSyncKind `protobuf:"varint,3,opt,name=kind,proto3,enum=xmtp.mls.message_contents.DeviceSyncKind" json:"kind,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (x *MessageHistoryRequest) Reset() { - *x = MessageHistoryRequest{} +func (x *DeviceSyncRequest) Reset() { + *x = DeviceSyncRequest{} mi := &file_mls_message_contents_content_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *MessageHistoryRequest) String() string { +func (x *DeviceSyncRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*MessageHistoryRequest) ProtoMessage() {} +func (*DeviceSyncRequest) ProtoMessage() {} -func (x *MessageHistoryRequest) ProtoReflect() protoreflect.Message { +func (x *DeviceSyncRequest) ProtoReflect() protoreflect.Message { mi := &file_mls_message_contents_content_proto_msgTypes[3] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -348,53 +400,63 @@ func (x *MessageHistoryRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use MessageHistoryRequest.ProtoReflect.Descriptor instead. -func (*MessageHistoryRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use DeviceSyncRequest.ProtoReflect.Descriptor instead. +func (*DeviceSyncRequest) Descriptor() ([]byte, []int) { return file_mls_message_contents_content_proto_rawDescGZIP(), []int{3} } -func (x *MessageHistoryRequest) GetRequestId() string { +func (x *DeviceSyncRequest) GetRequestId() string { if x != nil { return x.RequestId } return "" } -func (x *MessageHistoryRequest) GetPinCode() string { +func (x *DeviceSyncRequest) GetPinCode() string { if x != nil { return x.PinCode } return "" } -// Pre-existing installation id capable of supplying a history sends this reply -type MessageHistoryReply struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +func (x *DeviceSyncRequest) GetKind() DeviceSyncKind { + if x != nil { + return x.Kind + } + return DeviceSyncKind_DEVICE_SYNC_KIND_UNSPECIFIED +} +// Pre-existing installation id capable of supplying a sync payload sends this reply +type DeviceSyncReply struct { + state protoimpl.MessageState `protogen:"open.v1"` // Must match an existing request_id from a message history request RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"` // Where the messages can be retrieved from Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"` // Generated input 'secret' for the AES Key used to encrypt the message-bundle - EncryptionKey *MessageHistoryKeyType `protobuf:"bytes,3,opt,name=encryption_key,json=encryptionKey,proto3" json:"encryption_key,omitempty"` + EncryptionKey *DeviceSyncKeyType `protobuf:"bytes,3,opt,name=encryption_key,json=encryptionKey,proto3" json:"encryption_key,omitempty"` + // ns unix timestamp of when the reply was sent + TimestampNs uint64 `protobuf:"varint,4,opt,name=timestamp_ns,json=timestampNs,proto3" json:"timestamp_ns,omitempty"` + // request kind + Kind DeviceSyncKind `protobuf:"varint,5,opt,name=kind,proto3,enum=xmtp.mls.message_contents.DeviceSyncKind" json:"kind,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (x *MessageHistoryReply) Reset() { - *x = MessageHistoryReply{} +func (x *DeviceSyncReply) Reset() { + *x = DeviceSyncReply{} mi := &file_mls_message_contents_content_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *MessageHistoryReply) String() string { +func (x *DeviceSyncReply) String() string { return protoimpl.X.MessageStringOf(x) } -func (*MessageHistoryReply) ProtoMessage() {} +func (*DeviceSyncReply) ProtoMessage() {} -func (x *MessageHistoryReply) ProtoReflect() protoreflect.Message { +func (x *DeviceSyncReply) ProtoReflect() protoreflect.Message { mi := &file_mls_message_contents_content_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -406,58 +468,71 @@ func (x *MessageHistoryReply) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use MessageHistoryReply.ProtoReflect.Descriptor instead. -func (*MessageHistoryReply) Descriptor() ([]byte, []int) { +// Deprecated: Use DeviceSyncReply.ProtoReflect.Descriptor instead. +func (*DeviceSyncReply) Descriptor() ([]byte, []int) { return file_mls_message_contents_content_proto_rawDescGZIP(), []int{4} } -func (x *MessageHistoryReply) GetRequestId() string { +func (x *DeviceSyncReply) GetRequestId() string { if x != nil { return x.RequestId } return "" } -func (x *MessageHistoryReply) GetUrl() string { +func (x *DeviceSyncReply) GetUrl() string { if x != nil { return x.Url } return "" } -func (x *MessageHistoryReply) GetEncryptionKey() *MessageHistoryKeyType { +func (x *DeviceSyncReply) GetEncryptionKey() *DeviceSyncKeyType { if x != nil { return x.EncryptionKey } return nil } -// Key used to encrypt the message-bundle -type MessageHistoryKeyType struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +func (x *DeviceSyncReply) GetTimestampNs() uint64 { + if x != nil { + return x.TimestampNs + } + return 0 +} - // Types that are assignable to Key: +func (x *DeviceSyncReply) GetKind() DeviceSyncKind { + if x != nil { + return x.Kind + } + return DeviceSyncKind_DEVICE_SYNC_KIND_UNSPECIFIED +} + +// Key used to encrypt the message-bundle +type DeviceSyncKeyType struct { + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Key: // - // *MessageHistoryKeyType_Chacha20Poly1305 - Key isMessageHistoryKeyType_Key `protobuf_oneof:"key"` + // *DeviceSyncKeyType_Aes_256Gcm + Key isDeviceSyncKeyType_Key `protobuf_oneof:"key"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (x *MessageHistoryKeyType) Reset() { - *x = MessageHistoryKeyType{} +func (x *DeviceSyncKeyType) Reset() { + *x = DeviceSyncKeyType{} mi := &file_mls_message_contents_content_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *MessageHistoryKeyType) String() string { +func (x *DeviceSyncKeyType) String() string { return protoimpl.X.MessageStringOf(x) } -func (*MessageHistoryKeyType) ProtoMessage() {} +func (*DeviceSyncKeyType) ProtoMessage() {} -func (x *MessageHistoryKeyType) ProtoReflect() protoreflect.Message { +func (x *DeviceSyncKeyType) ProtoReflect() protoreflect.Message { mi := &file_mls_message_contents_content_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -469,51 +544,96 @@ func (x *MessageHistoryKeyType) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use MessageHistoryKeyType.ProtoReflect.Descriptor instead. -func (*MessageHistoryKeyType) Descriptor() ([]byte, []int) { +// Deprecated: Use DeviceSyncKeyType.ProtoReflect.Descriptor instead. +func (*DeviceSyncKeyType) Descriptor() ([]byte, []int) { return file_mls_message_contents_content_proto_rawDescGZIP(), []int{5} } -func (m *MessageHistoryKeyType) GetKey() isMessageHistoryKeyType_Key { - if m != nil { - return m.Key +func (x *DeviceSyncKeyType) GetKey() isDeviceSyncKeyType_Key { + if x != nil { + return x.Key } return nil } -func (x *MessageHistoryKeyType) GetChacha20Poly1305() []byte { - if x, ok := x.GetKey().(*MessageHistoryKeyType_Chacha20Poly1305); ok { - return x.Chacha20Poly1305 +func (x *DeviceSyncKeyType) GetAes_256Gcm() []byte { + if x != nil { + if x, ok := x.Key.(*DeviceSyncKeyType_Aes_256Gcm); ok { + return x.Aes_256Gcm + } } return nil } -type isMessageHistoryKeyType_Key interface { - isMessageHistoryKeyType_Key() +type isDeviceSyncKeyType_Key interface { + isDeviceSyncKeyType_Key() } -type MessageHistoryKeyType_Chacha20Poly1305 struct { - Chacha20Poly1305 []byte `protobuf:"bytes,1,opt,name=chacha20_poly1305,json=chacha20Poly1305,proto3,oneof"` +type DeviceSyncKeyType_Aes_256Gcm struct { + Aes_256Gcm []byte `protobuf:"bytes,1,opt,name=aes_256_gcm,json=aes256Gcm,proto3,oneof"` } -func (*MessageHistoryKeyType_Chacha20Poly1305) isMessageHistoryKeyType_Key() {} +func (*DeviceSyncKeyType_Aes_256Gcm) isDeviceSyncKeyType_Key() {} -// Version 1 of the encrypted envelope -type PlaintextEnvelope_V1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache +type UserPreferenceUpdate struct { + state protoimpl.MessageState `protogen:"open.v1"` + Contents [][]byte `protobuf:"bytes,1,rep,name=contents,proto3" json:"contents,omitempty"` unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *UserPreferenceUpdate) Reset() { + *x = UserPreferenceUpdate{} + mi := &file_mls_message_contents_content_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *UserPreferenceUpdate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UserPreferenceUpdate) ProtoMessage() {} + +func (x *UserPreferenceUpdate) ProtoReflect() protoreflect.Message { + mi := &file_mls_message_contents_content_proto_msgTypes[6] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UserPreferenceUpdate.ProtoReflect.Descriptor instead. +func (*UserPreferenceUpdate) Descriptor() ([]byte, []int) { + return file_mls_message_contents_content_proto_rawDescGZIP(), []int{6} +} + +func (x *UserPreferenceUpdate) GetContents() [][]byte { + if x != nil { + return x.Contents + } + return nil +} +// Version 1 of the encrypted envelope +type PlaintextEnvelope_V1 struct { + state protoimpl.MessageState `protogen:"open.v1"` // Expected to be EncodedContent Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` // A unique value that can be used to ensure that the same content can // produce different hashes. May be the sender timestamp. IdempotencyKey string `protobuf:"bytes,2,opt,name=idempotency_key,json=idempotencyKey,proto3" json:"idempotency_key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PlaintextEnvelope_V1) Reset() { *x = PlaintextEnvelope_V1{} - mi := &file_mls_message_contents_content_proto_msgTypes[7] + mi := &file_mls_message_contents_content_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -525,7 +645,7 @@ func (x *PlaintextEnvelope_V1) String() string { func (*PlaintextEnvelope_V1) ProtoMessage() {} func (x *PlaintextEnvelope_V1) ProtoReflect() protoreflect.Message { - mi := &file_mls_message_contents_content_proto_msgTypes[7] + mi := &file_mls_message_contents_content_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -557,24 +677,24 @@ func (x *PlaintextEnvelope_V1) GetIdempotencyKey() string { // Version 2 of the encrypted envelope type PlaintextEnvelope_V2 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // A unique value that can be used to ensure that the same content can // produce different hashes. May be the sender timestamp. IdempotencyKey string `protobuf:"bytes,1,opt,name=idempotency_key,json=idempotencyKey,proto3" json:"idempotency_key,omitempty"` - // Types that are assignable to MessageType: + // Types that are valid to be assigned to MessageType: // // *PlaintextEnvelope_V2_Content - // *PlaintextEnvelope_V2_Request - // *PlaintextEnvelope_V2_Reply - MessageType isPlaintextEnvelope_V2_MessageType `protobuf_oneof:"message_type"` + // *PlaintextEnvelope_V2_DeviceSyncRequest + // *PlaintextEnvelope_V2_DeviceSyncReply + // *PlaintextEnvelope_V2_UserPreferenceUpdate + MessageType isPlaintextEnvelope_V2_MessageType `protobuf_oneof:"message_type"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PlaintextEnvelope_V2) Reset() { *x = PlaintextEnvelope_V2{} - mi := &file_mls_message_contents_content_proto_msgTypes[8] + mi := &file_mls_message_contents_content_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -586,7 +706,7 @@ func (x *PlaintextEnvelope_V2) String() string { func (*PlaintextEnvelope_V2) ProtoMessage() {} func (x *PlaintextEnvelope_V2) ProtoReflect() protoreflect.Message { - mi := &file_mls_message_contents_content_proto_msgTypes[8] + mi := &file_mls_message_contents_content_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -609,30 +729,45 @@ func (x *PlaintextEnvelope_V2) GetIdempotencyKey() string { return "" } -func (m *PlaintextEnvelope_V2) GetMessageType() isPlaintextEnvelope_V2_MessageType { - if m != nil { - return m.MessageType +func (x *PlaintextEnvelope_V2) GetMessageType() isPlaintextEnvelope_V2_MessageType { + if x != nil { + return x.MessageType } return nil } func (x *PlaintextEnvelope_V2) GetContent() []byte { - if x, ok := x.GetMessageType().(*PlaintextEnvelope_V2_Content); ok { - return x.Content + if x != nil { + if x, ok := x.MessageType.(*PlaintextEnvelope_V2_Content); ok { + return x.Content + } + } + return nil +} + +func (x *PlaintextEnvelope_V2) GetDeviceSyncRequest() *DeviceSyncRequest { + if x != nil { + if x, ok := x.MessageType.(*PlaintextEnvelope_V2_DeviceSyncRequest); ok { + return x.DeviceSyncRequest + } } return nil } -func (x *PlaintextEnvelope_V2) GetRequest() *MessageHistoryRequest { - if x, ok := x.GetMessageType().(*PlaintextEnvelope_V2_Request); ok { - return x.Request +func (x *PlaintextEnvelope_V2) GetDeviceSyncReply() *DeviceSyncReply { + if x != nil { + if x, ok := x.MessageType.(*PlaintextEnvelope_V2_DeviceSyncReply); ok { + return x.DeviceSyncReply + } } return nil } -func (x *PlaintextEnvelope_V2) GetReply() *MessageHistoryReply { - if x, ok := x.GetMessageType().(*PlaintextEnvelope_V2_Reply); ok { - return x.Reply +func (x *PlaintextEnvelope_V2) GetUserPreferenceUpdate() *UserPreferenceUpdate { + if x != nil { + if x, ok := x.MessageType.(*PlaintextEnvelope_V2_UserPreferenceUpdate); ok { + return x.UserPreferenceUpdate + } } return nil } @@ -646,21 +781,28 @@ type PlaintextEnvelope_V2_Content struct { Content []byte `protobuf:"bytes,2,opt,name=content,proto3,oneof"` } -type PlaintextEnvelope_V2_Request struct { - // Initiator sends a request to receive message history - Request *MessageHistoryRequest `protobuf:"bytes,3,opt,name=request,proto3,oneof"` +type PlaintextEnvelope_V2_DeviceSyncRequest struct { + // Initiator sends a request to receive sync payload + DeviceSyncRequest *DeviceSyncRequest `protobuf:"bytes,3,opt,name=device_sync_request,json=deviceSyncRequest,proto3,oneof"` } -type PlaintextEnvelope_V2_Reply struct { - // Some other authorized installation sends a reply - Reply *MessageHistoryReply `protobuf:"bytes,4,opt,name=reply,proto3,oneof"` +type PlaintextEnvelope_V2_DeviceSyncReply struct { + // Some other authorized installation sends a reply with a link to payload + DeviceSyncReply *DeviceSyncReply `protobuf:"bytes,4,opt,name=device_sync_reply,json=deviceSyncReply,proto3,oneof"` +} + +type PlaintextEnvelope_V2_UserPreferenceUpdate struct { + // A serialized user preference update + UserPreferenceUpdate *UserPreferenceUpdate `protobuf:"bytes,5,opt,name=user_preference_update,json=userPreferenceUpdate,proto3,oneof"` } func (*PlaintextEnvelope_V2_Content) isPlaintextEnvelope_V2_MessageType() {} -func (*PlaintextEnvelope_V2_Request) isPlaintextEnvelope_V2_MessageType() {} +func (*PlaintextEnvelope_V2_DeviceSyncRequest) isPlaintextEnvelope_V2_MessageType() {} -func (*PlaintextEnvelope_V2_Reply) isPlaintextEnvelope_V2_MessageType() {} +func (*PlaintextEnvelope_V2_DeviceSyncReply) isPlaintextEnvelope_V2_MessageType() {} + +func (*PlaintextEnvelope_V2_UserPreferenceUpdate) isPlaintextEnvelope_V2_MessageType() {} var File_mls_message_contents_content_proto protoreflect.FileDescriptor @@ -703,7 +845,7 @@ var file_mls_message_contents_content_proto_rawDesc = []byte{ 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, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x63, 0x6f, - 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xdf, 0x03, 0x0a, 0x11, 0x50, 0x6c, + 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xec, 0x04, 0x0a, 0x11, 0x50, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x41, 0x0a, 0x02, 0x76, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, @@ -717,63 +859,91 @@ var file_mls_message_contents_content_proto_rawDesc = []byte{ 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x64, 0x65, 0x6d, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x69, 0x64, 0x65, 0x6d, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x4b, 0x65, 0x79, 0x1a, 0xef, - 0x01, 0x0a, 0x02, 0x56, 0x32, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x64, 0x65, 0x6d, 0x70, 0x6f, 0x74, + 0x69, 0x64, 0x65, 0x6d, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x4b, 0x65, 0x79, 0x1a, 0xfc, + 0x02, 0x0a, 0x02, 0x56, 0x32, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x64, 0x65, 0x6d, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x64, 0x65, 0x6d, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x4b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, - 0x00, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x4c, 0x0a, 0x07, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x6d, - 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, - 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x05, 0x72, 0x65, 0x70, 0x6c, - 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, + 0x00, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x5e, 0x0a, 0x13, 0x64, 0x65, + 0x76, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x73, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x48, 0x00, 0x52, 0x05, 0x72, 0x65, 0x70, 0x6c, 0x79, - 0x42, 0x0e, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x42, 0x09, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x51, 0x0a, 0x15, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x69, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x9f, - 0x01, 0x0a, 0x13, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, - 0x79, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x57, 0x0a, 0x0e, 0x65, 0x6e, 0x63, 0x72, 0x79, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x30, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, - 0x65, 0x52, 0x0d, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, - 0x22, 0x4d, 0x0a, 0x15, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2d, 0x0a, 0x11, 0x63, 0x68, 0x61, - 0x63, 0x68, 0x61, 0x32, 0x30, 0x5f, 0x70, 0x6f, 0x6c, 0x79, 0x31, 0x33, 0x30, 0x35, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x10, 0x63, 0x68, 0x61, 0x63, 0x68, 0x61, 0x32, 0x30, - 0x50, 0x6f, 0x6c, 0x79, 0x31, 0x33, 0x30, 0x35, 0x42, 0x05, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x2a, - 0x3c, 0x0a, 0x0b, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x17, - 0x0a, 0x13, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x45, - 0x46, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x4f, 0x4d, 0x50, 0x52, - 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x47, 0x5a, 0x49, 0x50, 0x10, 0x01, 0x42, 0xec, 0x01, - 0x0a, 0x1d, 0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x42, - 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, - 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, - 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2d, 0x6e, 0x6f, 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, - 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6d, 0x6c, 0x73, 0x2f, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0xa2, 0x02, 0x03, 0x58, - 0x4d, 0x4d, 0xaa, 0x02, 0x18, 0x58, 0x6d, 0x74, 0x70, 0x2e, 0x4d, 0x6c, 0x73, 0x2e, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0xca, 0x02, 0x18, - 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x4d, 0x6c, 0x73, 0x5c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0xe2, 0x02, 0x24, 0x58, 0x6d, 0x74, 0x70, 0x5c, - 0x4d, 0x6c, 0x73, 0x5c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, - 0x02, 0x1a, 0x58, 0x6d, 0x74, 0x70, 0x3a, 0x3a, 0x4d, 0x6c, 0x73, 0x3a, 0x3a, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, + 0x6e, 0x74, 0x73, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x11, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, + 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x58, 0x0a, 0x11, 0x64, 0x65, + 0x76, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, + 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x73, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x70, 0x6c, + 0x79, 0x48, 0x00, 0x52, 0x0f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x52, + 0x65, 0x70, 0x6c, 0x79, 0x12, 0x67, 0x0a, 0x16, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x65, + 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, + 0x2e, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x14, 0x75, 0x73, 0x65, 0x72, 0x50, 0x72, 0x65, + 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x0e, 0x0a, + 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x09, 0x0a, + 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x8c, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x76, + 0x69, 0x63, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, + 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, + 0x08, 0x70, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x70, 0x69, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x3d, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, + 0x73, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x73, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x4b, 0x69, 0x6e, + 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xf9, 0x01, 0x0a, 0x0f, 0x44, 0x65, 0x76, 0x69, + 0x63, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, + 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x53, 0x0a, 0x0e, + 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, + 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x4b, 0x65, 0x79, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x0d, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, + 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x6e, + 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x4e, 0x73, 0x12, 0x3d, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x44, + 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, + 0x69, 0x6e, 0x64, 0x22, 0x3c, 0x0a, 0x11, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x6e, + 0x63, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x65, 0x73, 0x5f, + 0x32, 0x35, 0x36, 0x5f, 0x67, 0x63, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, + 0x09, 0x61, 0x65, 0x73, 0x32, 0x35, 0x36, 0x47, 0x63, 0x6d, 0x42, 0x05, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x22, 0x32, 0x0a, 0x14, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, + 0x6e, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2a, 0x3c, 0x0a, 0x0b, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, + 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x45, 0x46, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x14, 0x0a, + 0x10, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x47, 0x5a, 0x49, + 0x50, 0x10, 0x01, 0x2a, 0x76, 0x0a, 0x0e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x6e, + 0x63, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x45, 0x56, 0x49, 0x43, 0x45, 0x5f, + 0x53, 0x59, 0x4e, 0x43, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, + 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x45, 0x56, 0x49, 0x43, + 0x45, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4d, 0x45, 0x53, 0x53, + 0x41, 0x47, 0x45, 0x5f, 0x48, 0x49, 0x53, 0x54, 0x4f, 0x52, 0x59, 0x10, 0x01, 0x12, 0x1c, 0x0a, + 0x18, 0x44, 0x45, 0x56, 0x49, 0x43, 0x45, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x5f, 0x4b, 0x49, 0x4e, + 0x44, 0x5f, 0x43, 0x4f, 0x4e, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x42, 0xec, 0x01, 0x0a, 0x1d, + 0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x0c, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3b, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2f, 0x78, + 0x6d, 0x74, 0x70, 0x2d, 0x6e, 0x6f, 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6d, 0x6c, 0x73, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0xa2, 0x02, 0x03, 0x58, 0x4d, 0x4d, + 0xaa, 0x02, 0x18, 0x58, 0x6d, 0x74, 0x70, 0x2e, 0x4d, 0x6c, 0x73, 0x2e, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0xca, 0x02, 0x18, 0x58, 0x6d, + 0x74, 0x70, 0x5c, 0x4d, 0x6c, 0x73, 0x5c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0xe2, 0x02, 0x24, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x4d, 0x6c, + 0x73, 0x5c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1a, + 0x58, 0x6d, 0x74, 0x70, 0x3a, 0x3a, 0x4d, 0x6c, 0x73, 0x3a, 0x3a, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, } var ( @@ -788,34 +958,39 @@ func file_mls_message_contents_content_proto_rawDescGZIP() []byte { return file_mls_message_contents_content_proto_rawDescData } -var file_mls_message_contents_content_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_mls_message_contents_content_proto_msgTypes = make([]protoimpl.MessageInfo, 9) +var file_mls_message_contents_content_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_mls_message_contents_content_proto_msgTypes = make([]protoimpl.MessageInfo, 10) var file_mls_message_contents_content_proto_goTypes = []any{ - (Compression)(0), // 0: xmtp.mls.message_contents.Compression - (*ContentTypeId)(nil), // 1: xmtp.mls.message_contents.ContentTypeId - (*EncodedContent)(nil), // 2: xmtp.mls.message_contents.EncodedContent - (*PlaintextEnvelope)(nil), // 3: xmtp.mls.message_contents.PlaintextEnvelope - (*MessageHistoryRequest)(nil), // 4: xmtp.mls.message_contents.MessageHistoryRequest - (*MessageHistoryReply)(nil), // 5: xmtp.mls.message_contents.MessageHistoryReply - (*MessageHistoryKeyType)(nil), // 6: xmtp.mls.message_contents.MessageHistoryKeyType - nil, // 7: xmtp.mls.message_contents.EncodedContent.ParametersEntry - (*PlaintextEnvelope_V1)(nil), // 8: xmtp.mls.message_contents.PlaintextEnvelope.V1 - (*PlaintextEnvelope_V2)(nil), // 9: xmtp.mls.message_contents.PlaintextEnvelope.V2 + (Compression)(0), // 0: xmtp.mls.message_contents.Compression + (DeviceSyncKind)(0), // 1: xmtp.mls.message_contents.DeviceSyncKind + (*ContentTypeId)(nil), // 2: xmtp.mls.message_contents.ContentTypeId + (*EncodedContent)(nil), // 3: xmtp.mls.message_contents.EncodedContent + (*PlaintextEnvelope)(nil), // 4: xmtp.mls.message_contents.PlaintextEnvelope + (*DeviceSyncRequest)(nil), // 5: xmtp.mls.message_contents.DeviceSyncRequest + (*DeviceSyncReply)(nil), // 6: xmtp.mls.message_contents.DeviceSyncReply + (*DeviceSyncKeyType)(nil), // 7: xmtp.mls.message_contents.DeviceSyncKeyType + (*UserPreferenceUpdate)(nil), // 8: xmtp.mls.message_contents.UserPreferenceUpdate + nil, // 9: xmtp.mls.message_contents.EncodedContent.ParametersEntry + (*PlaintextEnvelope_V1)(nil), // 10: xmtp.mls.message_contents.PlaintextEnvelope.V1 + (*PlaintextEnvelope_V2)(nil), // 11: xmtp.mls.message_contents.PlaintextEnvelope.V2 } var file_mls_message_contents_content_proto_depIdxs = []int32{ - 1, // 0: xmtp.mls.message_contents.EncodedContent.type:type_name -> xmtp.mls.message_contents.ContentTypeId - 7, // 1: xmtp.mls.message_contents.EncodedContent.parameters:type_name -> xmtp.mls.message_contents.EncodedContent.ParametersEntry - 0, // 2: xmtp.mls.message_contents.EncodedContent.compression:type_name -> xmtp.mls.message_contents.Compression - 8, // 3: xmtp.mls.message_contents.PlaintextEnvelope.v1:type_name -> xmtp.mls.message_contents.PlaintextEnvelope.V1 - 9, // 4: xmtp.mls.message_contents.PlaintextEnvelope.v2:type_name -> xmtp.mls.message_contents.PlaintextEnvelope.V2 - 6, // 5: xmtp.mls.message_contents.MessageHistoryReply.encryption_key:type_name -> xmtp.mls.message_contents.MessageHistoryKeyType - 4, // 6: xmtp.mls.message_contents.PlaintextEnvelope.V2.request:type_name -> xmtp.mls.message_contents.MessageHistoryRequest - 5, // 7: xmtp.mls.message_contents.PlaintextEnvelope.V2.reply:type_name -> xmtp.mls.message_contents.MessageHistoryReply - 8, // [8:8] is the sub-list for method output_type - 8, // [8:8] is the sub-list for method input_type - 8, // [8:8] is the sub-list for extension type_name - 8, // [8:8] is the sub-list for extension extendee - 0, // [0:8] is the sub-list for field type_name + 2, // 0: xmtp.mls.message_contents.EncodedContent.type:type_name -> xmtp.mls.message_contents.ContentTypeId + 9, // 1: xmtp.mls.message_contents.EncodedContent.parameters:type_name -> xmtp.mls.message_contents.EncodedContent.ParametersEntry + 0, // 2: xmtp.mls.message_contents.EncodedContent.compression:type_name -> xmtp.mls.message_contents.Compression + 10, // 3: xmtp.mls.message_contents.PlaintextEnvelope.v1:type_name -> xmtp.mls.message_contents.PlaintextEnvelope.V1 + 11, // 4: xmtp.mls.message_contents.PlaintextEnvelope.v2:type_name -> xmtp.mls.message_contents.PlaintextEnvelope.V2 + 1, // 5: xmtp.mls.message_contents.DeviceSyncRequest.kind:type_name -> xmtp.mls.message_contents.DeviceSyncKind + 7, // 6: xmtp.mls.message_contents.DeviceSyncReply.encryption_key:type_name -> xmtp.mls.message_contents.DeviceSyncKeyType + 1, // 7: xmtp.mls.message_contents.DeviceSyncReply.kind:type_name -> xmtp.mls.message_contents.DeviceSyncKind + 5, // 8: xmtp.mls.message_contents.PlaintextEnvelope.V2.device_sync_request:type_name -> xmtp.mls.message_contents.DeviceSyncRequest + 6, // 9: xmtp.mls.message_contents.PlaintextEnvelope.V2.device_sync_reply:type_name -> xmtp.mls.message_contents.DeviceSyncReply + 8, // 10: xmtp.mls.message_contents.PlaintextEnvelope.V2.user_preference_update:type_name -> xmtp.mls.message_contents.UserPreferenceUpdate + 11, // [11:11] is the sub-list for method output_type + 11, // [11:11] is the sub-list for method input_type + 11, // [11:11] is the sub-list for extension type_name + 11, // [11:11] is the sub-list for extension extendee + 0, // [0:11] is the sub-list for field type_name } func init() { file_mls_message_contents_content_proto_init() } @@ -829,20 +1004,21 @@ func file_mls_message_contents_content_proto_init() { (*PlaintextEnvelope_V2_)(nil), } file_mls_message_contents_content_proto_msgTypes[5].OneofWrappers = []any{ - (*MessageHistoryKeyType_Chacha20Poly1305)(nil), + (*DeviceSyncKeyType_Aes_256Gcm)(nil), } - file_mls_message_contents_content_proto_msgTypes[8].OneofWrappers = []any{ + file_mls_message_contents_content_proto_msgTypes[9].OneofWrappers = []any{ (*PlaintextEnvelope_V2_Content)(nil), - (*PlaintextEnvelope_V2_Request)(nil), - (*PlaintextEnvelope_V2_Reply)(nil), + (*PlaintextEnvelope_V2_DeviceSyncRequest)(nil), + (*PlaintextEnvelope_V2_DeviceSyncReply)(nil), + (*PlaintextEnvelope_V2_UserPreferenceUpdate)(nil), } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_mls_message_contents_content_proto_rawDesc, - NumEnums: 1, - NumMessages: 9, + NumEnums: 2, + NumMessages: 10, NumExtensions: 0, NumServices: 0, }, diff --git a/pkg/proto/mls/message_contents/content_types/reaction.pb.go b/pkg/proto/mls/message_contents/content_types/reaction.pb.go new file mode 100644 index 00000000..9c44dd66 --- /dev/null +++ b/pkg/proto/mls/message_contents/content_types/reaction.pb.go @@ -0,0 +1,338 @@ +// reaction.proto +// This file defines the ReactionV2 message type and is associated with the following ContentTypeId: +// +// ContentTypeId { +// authority_id: "xmtp.org", +// type_id: "reaction", +// version_major: 2, +// version_minor: 0, +// } +// + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.1 +// protoc (unknown) +// source: mls/message_contents/content_types/reaction.proto + +package content_types + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// Action enum to represent reaction states +type ReactionAction int32 + +const ( + ReactionAction_REACTION_ACTION_UNSPECIFIED ReactionAction = 0 + ReactionAction_REACTION_ACTION_ADDED ReactionAction = 1 + ReactionAction_REACTION_ACTION_REMOVED ReactionAction = 2 +) + +// Enum value maps for ReactionAction. +var ( + ReactionAction_name = map[int32]string{ + 0: "REACTION_ACTION_UNSPECIFIED", + 1: "REACTION_ACTION_ADDED", + 2: "REACTION_ACTION_REMOVED", + } + ReactionAction_value = map[string]int32{ + "REACTION_ACTION_UNSPECIFIED": 0, + "REACTION_ACTION_ADDED": 1, + "REACTION_ACTION_REMOVED": 2, + } +) + +func (x ReactionAction) Enum() *ReactionAction { + p := new(ReactionAction) + *p = x + return p +} + +func (x ReactionAction) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ReactionAction) Descriptor() protoreflect.EnumDescriptor { + return file_mls_message_contents_content_types_reaction_proto_enumTypes[0].Descriptor() +} + +func (ReactionAction) Type() protoreflect.EnumType { + return &file_mls_message_contents_content_types_reaction_proto_enumTypes[0] +} + +func (x ReactionAction) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ReactionAction.Descriptor instead. +func (ReactionAction) EnumDescriptor() ([]byte, []int) { + return file_mls_message_contents_content_types_reaction_proto_rawDescGZIP(), []int{0} +} + +// Schema enum to represent reaction content types +type ReactionSchema int32 + +const ( + ReactionSchema_REACTION_SCHEMA_UNSPECIFIED ReactionSchema = 0 + ReactionSchema_REACTION_SCHEMA_UNICODE ReactionSchema = 1 + ReactionSchema_REACTION_SCHEMA_SHORTCODE ReactionSchema = 2 + ReactionSchema_REACTION_SCHEMA_CUSTOM ReactionSchema = 3 +) + +// Enum value maps for ReactionSchema. +var ( + ReactionSchema_name = map[int32]string{ + 0: "REACTION_SCHEMA_UNSPECIFIED", + 1: "REACTION_SCHEMA_UNICODE", + 2: "REACTION_SCHEMA_SHORTCODE", + 3: "REACTION_SCHEMA_CUSTOM", + } + ReactionSchema_value = map[string]int32{ + "REACTION_SCHEMA_UNSPECIFIED": 0, + "REACTION_SCHEMA_UNICODE": 1, + "REACTION_SCHEMA_SHORTCODE": 2, + "REACTION_SCHEMA_CUSTOM": 3, + } +) + +func (x ReactionSchema) Enum() *ReactionSchema { + p := new(ReactionSchema) + *p = x + return p +} + +func (x ReactionSchema) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ReactionSchema) Descriptor() protoreflect.EnumDescriptor { + return file_mls_message_contents_content_types_reaction_proto_enumTypes[1].Descriptor() +} + +func (ReactionSchema) Type() protoreflect.EnumType { + return &file_mls_message_contents_content_types_reaction_proto_enumTypes[1] +} + +func (x ReactionSchema) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ReactionSchema.Descriptor instead. +func (ReactionSchema) EnumDescriptor() ([]byte, []int) { + return file_mls_message_contents_content_types_reaction_proto_rawDescGZIP(), []int{1} +} + +// Reaction message type +type ReactionV2 struct { + state protoimpl.MessageState `protogen:"open.v1"` + // The message ID being reacted to + Reference string `protobuf:"bytes,1,opt,name=reference,proto3" json:"reference,omitempty"` + // The inbox ID of the user who sent the message being reacted to + // Optional for group messages + ReferenceInboxId string `protobuf:"bytes,2,opt,name=reference_inbox_id,json=referenceInboxId,proto3" json:"reference_inbox_id,omitempty"` + // The action of the reaction (added or removed) + Action ReactionAction `protobuf:"varint,3,opt,name=action,proto3,enum=xmtp.mls.message_contents.content_types.ReactionAction" json:"action,omitempty"` + // The content of the reaction + Content string `protobuf:"bytes,4,opt,name=content,proto3" json:"content,omitempty"` + // The schema of the reaction content + Schema ReactionSchema `protobuf:"varint,5,opt,name=schema,proto3,enum=xmtp.mls.message_contents.content_types.ReactionSchema" json:"schema,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ReactionV2) Reset() { + *x = ReactionV2{} + mi := &file_mls_message_contents_content_types_reaction_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReactionV2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReactionV2) ProtoMessage() {} + +func (x *ReactionV2) ProtoReflect() protoreflect.Message { + mi := &file_mls_message_contents_content_types_reaction_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReactionV2.ProtoReflect.Descriptor instead. +func (*ReactionV2) Descriptor() ([]byte, []int) { + return file_mls_message_contents_content_types_reaction_proto_rawDescGZIP(), []int{0} +} + +func (x *ReactionV2) GetReference() string { + if x != nil { + return x.Reference + } + return "" +} + +func (x *ReactionV2) GetReferenceInboxId() string { + if x != nil { + return x.ReferenceInboxId + } + return "" +} + +func (x *ReactionV2) GetAction() ReactionAction { + if x != nil { + return x.Action + } + return ReactionAction_REACTION_ACTION_UNSPECIFIED +} + +func (x *ReactionV2) GetContent() string { + if x != nil { + return x.Content + } + return "" +} + +func (x *ReactionV2) GetSchema() ReactionSchema { + if x != nil { + return x.Schema + } + return ReactionSchema_REACTION_SCHEMA_UNSPECIFIED +} + +var File_mls_message_contents_content_types_reaction_proto protoreflect.FileDescriptor + +var file_mls_message_contents_content_types_reaction_proto_rawDesc = []byte{ + 0x0a, 0x31, 0x6d, 0x6c, 0x73, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x2f, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x12, 0x27, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x22, 0x94, 0x02, 0x0a, + 0x0a, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x32, 0x12, 0x1c, 0x0a, 0x09, 0x72, + 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, + 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, + 0x6c, 0x73, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x2e, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x06, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x2a, 0x69, 0x0a, 0x0e, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x41, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x1b, 0x52, 0x45, 0x41, 0x43, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, + 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x41, 0x43, 0x54, 0x49, + 0x4f, 0x4e, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x44, 0x44, 0x45, 0x44, 0x10, + 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x52, 0x45, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x43, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x44, 0x10, 0x02, 0x2a, 0x89, + 0x01, 0x0a, 0x0e, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x12, 0x1f, 0x0a, 0x1b, 0x52, 0x45, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x43, + 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x52, 0x45, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, + 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x55, 0x4e, 0x49, 0x43, 0x4f, 0x44, 0x45, 0x10, 0x01, 0x12, + 0x1d, 0x0a, 0x19, 0x52, 0x45, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x43, 0x48, 0x45, + 0x4d, 0x41, 0x5f, 0x53, 0x48, 0x4f, 0x52, 0x54, 0x43, 0x4f, 0x44, 0x45, 0x10, 0x02, 0x12, 0x1a, + 0x0a, 0x16, 0x52, 0x45, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, + 0x41, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x03, 0x42, 0xbf, 0x02, 0x0a, 0x2b, 0x63, + 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x42, 0x0d, 0x52, 0x65, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x49, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2f, 0x78, 0x6d, 0x74, + 0x70, 0x2d, 0x6e, 0x6f, 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x2f, 0x6d, 0x6c, 0x73, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0xa2, 0x02, 0x04, 0x58, 0x4d, 0x4d, 0x43, 0xaa, 0x02, 0x25, + 0x58, 0x6d, 0x74, 0x70, 0x2e, 0x4d, 0x6c, 0x73, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x73, 0xca, 0x02, 0x25, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x4d, 0x6c, 0x73, + 0x5c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, + 0x5c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0xe2, 0x02, 0x31, + 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x4d, 0x6c, 0x73, 0x5c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x5c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0xea, 0x02, 0x28, 0x58, 0x6d, 0x74, 0x70, 0x3a, 0x3a, 0x4d, 0x6c, 0x73, 0x3a, 0x3a, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x3a, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_mls_message_contents_content_types_reaction_proto_rawDescOnce sync.Once + file_mls_message_contents_content_types_reaction_proto_rawDescData = file_mls_message_contents_content_types_reaction_proto_rawDesc +) + +func file_mls_message_contents_content_types_reaction_proto_rawDescGZIP() []byte { + file_mls_message_contents_content_types_reaction_proto_rawDescOnce.Do(func() { + file_mls_message_contents_content_types_reaction_proto_rawDescData = protoimpl.X.CompressGZIP(file_mls_message_contents_content_types_reaction_proto_rawDescData) + }) + return file_mls_message_contents_content_types_reaction_proto_rawDescData +} + +var file_mls_message_contents_content_types_reaction_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_mls_message_contents_content_types_reaction_proto_msgTypes = make([]protoimpl.MessageInfo, 1) +var file_mls_message_contents_content_types_reaction_proto_goTypes = []any{ + (ReactionAction)(0), // 0: xmtp.mls.message_contents.content_types.ReactionAction + (ReactionSchema)(0), // 1: xmtp.mls.message_contents.content_types.ReactionSchema + (*ReactionV2)(nil), // 2: xmtp.mls.message_contents.content_types.ReactionV2 +} +var file_mls_message_contents_content_types_reaction_proto_depIdxs = []int32{ + 0, // 0: xmtp.mls.message_contents.content_types.ReactionV2.action:type_name -> xmtp.mls.message_contents.content_types.ReactionAction + 1, // 1: xmtp.mls.message_contents.content_types.ReactionV2.schema:type_name -> xmtp.mls.message_contents.content_types.ReactionSchema + 2, // [2:2] is the sub-list for method output_type + 2, // [2:2] is the sub-list for method input_type + 2, // [2:2] is the sub-list for extension type_name + 2, // [2:2] is the sub-list for extension extendee + 0, // [0:2] is the sub-list for field type_name +} + +func init() { file_mls_message_contents_content_types_reaction_proto_init() } +func file_mls_message_contents_content_types_reaction_proto_init() { + if File_mls_message_contents_content_types_reaction_proto != nil { + return + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_mls_message_contents_content_types_reaction_proto_rawDesc, + NumEnums: 2, + NumMessages: 1, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_mls_message_contents_content_types_reaction_proto_goTypes, + DependencyIndexes: file_mls_message_contents_content_types_reaction_proto_depIdxs, + EnumInfos: file_mls_message_contents_content_types_reaction_proto_enumTypes, + MessageInfos: file_mls_message_contents_content_types_reaction_proto_msgTypes, + }.Build() + File_mls_message_contents_content_types_reaction_proto = out.File + file_mls_message_contents_content_types_reaction_proto_rawDesc = nil + file_mls_message_contents_content_types_reaction_proto_goTypes = nil + file_mls_message_contents_content_types_reaction_proto_depIdxs = nil +} diff --git a/pkg/proto/mls/message_contents/group_membership.pb.go b/pkg/proto/mls/message_contents/group_membership.pb.go index a16c0393..9e64c38e 100644 --- a/pkg/proto/mls/message_contents/group_membership.pb.go +++ b/pkg/proto/mls/message_contents/group_membership.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: mls/message_contents/group_membership.proto @@ -25,11 +25,10 @@ const ( // Contains a mapping of `inbox_id` -> `sequence_id` for all members of a group. // Designed to be stored in the group context extension of the MLS group type GroupMembership struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Members map[string]uint64 `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` unknownFields protoimpl.UnknownFields - - Members map[string]uint64 `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + sizeCache protoimpl.SizeCache } func (x *GroupMembership) Reset() { diff --git a/pkg/proto/mls/message_contents/group_metadata.pb.go b/pkg/proto/mls/message_contents/group_metadata.pb.go index 6727b5f1..1d300236 100644 --- a/pkg/proto/mls/message_contents/group_metadata.pb.go +++ b/pkg/proto/mls/message_contents/group_metadata.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: mls/message_contents/group_metadata.proto @@ -77,16 +77,15 @@ func (ConversationType) EnumDescriptor() ([]byte, []int) { // Parent message for group metadata type GroupMetadataV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationType ConversationType `protobuf:"varint,1,opt,name=conversation_type,json=conversationType,proto3,enum=xmtp.mls.message_contents.ConversationType" json:"conversation_type,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + ConversationType ConversationType `protobuf:"varint,1,opt,name=conversation_type,json=conversationType,proto3,enum=xmtp.mls.message_contents.ConversationType" json:"conversation_type,omitempty"` // This will be removed soon CreatorAccountAddress string `protobuf:"bytes,2,opt,name=creator_account_address,json=creatorAccountAddress,proto3" json:"creator_account_address,omitempty"` CreatorInboxId string `protobuf:"bytes,3,opt,name=creator_inbox_id,json=creatorInboxId,proto3" json:"creator_inbox_id,omitempty"` // Should only be present for CONVERSATION_TYPE_DM - DmMembers *DmMembers `protobuf:"bytes,4,opt,name=dm_members,json=dmMembers,proto3,oneof" json:"dm_members,omitempty"` + DmMembers *DmMembers `protobuf:"bytes,4,opt,name=dm_members,json=dmMembers,proto3,oneof" json:"dm_members,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GroupMetadataV1) Reset() { @@ -149,11 +148,10 @@ func (x *GroupMetadataV1) GetDmMembers() *DmMembers { // Wrapper around an Inbox Id type Inbox struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` unknownFields protoimpl.UnknownFields - - InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *Inbox) Reset() { @@ -195,12 +193,11 @@ func (x *Inbox) GetInboxId() string { // Ordering does not matter here type DmMembers struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + DmMemberOne *Inbox `protobuf:"bytes,1,opt,name=dm_member_one,json=dmMemberOne,proto3" json:"dm_member_one,omitempty"` + DmMemberTwo *Inbox `protobuf:"bytes,2,opt,name=dm_member_two,json=dmMemberTwo,proto3" json:"dm_member_two,omitempty"` unknownFields protoimpl.UnknownFields - - DmMemberOne *Inbox `protobuf:"bytes,1,opt,name=dm_member_one,json=dmMemberOne,proto3" json:"dm_member_one,omitempty"` - DmMemberTwo *Inbox `protobuf:"bytes,2,opt,name=dm_member_two,json=dmMemberTwo,proto3" json:"dm_member_two,omitempty"` + sizeCache protoimpl.SizeCache } func (x *DmMembers) Reset() { diff --git a/pkg/proto/mls/message_contents/group_mutable_metadata.pb.go b/pkg/proto/mls/message_contents/group_mutable_metadata.pb.go index 80ca4b34..aff31613 100644 --- a/pkg/proto/mls/message_contents/group_mutable_metadata.pb.go +++ b/pkg/proto/mls/message_contents/group_mutable_metadata.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: mls/message_contents/group_mutable_metadata.proto @@ -24,16 +24,15 @@ const ( // Message for group mutable metadata type GroupMutableMetadataV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Map to store various metadata attributes (Group name, etc.) - Attributes map[string]string `protobuf:"bytes,1,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Attributes map[string]string `protobuf:"bytes,1,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` AdminList *Inboxes `protobuf:"bytes,2,opt,name=admin_list,json=adminList,proto3" json:"admin_list,omitempty"` // Creator starts as only super_admin // Only super_admin can add/remove other super_admin SuperAdminList *Inboxes `protobuf:"bytes,3,opt,name=super_admin_list,json=superAdminList,proto3" json:"super_admin_list,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GroupMutableMetadataV1) Reset() { @@ -89,11 +88,10 @@ func (x *GroupMutableMetadataV1) GetSuperAdminList() *Inboxes { // Wrapper around a list of repeated Inbox Ids type Inboxes struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + InboxIds []string `protobuf:"bytes,1,rep,name=inbox_ids,json=inboxIds,proto3" json:"inbox_ids,omitempty"` unknownFields protoimpl.UnknownFields - - InboxIds []string `protobuf:"bytes,1,rep,name=inbox_ids,json=inboxIds,proto3" json:"inbox_ids,omitempty"` + sizeCache protoimpl.SizeCache } func (x *Inboxes) Reset() { diff --git a/pkg/proto/mls/message_contents/group_permissions.pb.go b/pkg/proto/mls/message_contents/group_permissions.pb.go index 5797bc44..c356e845 100644 --- a/pkg/proto/mls/message_contents/group_permissions.pb.go +++ b/pkg/proto/mls/message_contents/group_permissions.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: mls/message_contents/group_permissions.proto @@ -189,11 +189,10 @@ func (PermissionsUpdatePolicy_PermissionsBasePolicy) EnumDescriptor() ([]byte, [ // Message for group mutable metadata type GroupMutablePermissionsV1 struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Policies *PolicySet `protobuf:"bytes,1,opt,name=policies,proto3" json:"policies,omitempty"` unknownFields protoimpl.UnknownFields - - Policies *PolicySet `protobuf:"bytes,1,opt,name=policies,proto3" json:"policies,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GroupMutablePermissionsV1) Reset() { @@ -235,16 +234,15 @@ func (x *GroupMutablePermissionsV1) GetPolicies() *PolicySet { // The set of policies that govern the group type PolicySet struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` AddMemberPolicy *MembershipPolicy `protobuf:"bytes,1,opt,name=add_member_policy,json=addMemberPolicy,proto3" json:"add_member_policy,omitempty"` RemoveMemberPolicy *MembershipPolicy `protobuf:"bytes,2,opt,name=remove_member_policy,json=removeMemberPolicy,proto3" json:"remove_member_policy,omitempty"` - UpdateMetadataPolicy map[string]*MetadataPolicy `protobuf:"bytes,3,rep,name=update_metadata_policy,json=updateMetadataPolicy,proto3" json:"update_metadata_policy,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + UpdateMetadataPolicy map[string]*MetadataPolicy `protobuf:"bytes,3,rep,name=update_metadata_policy,json=updateMetadataPolicy,proto3" json:"update_metadata_policy,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` AddAdminPolicy *PermissionsUpdatePolicy `protobuf:"bytes,4,opt,name=add_admin_policy,json=addAdminPolicy,proto3" json:"add_admin_policy,omitempty"` RemoveAdminPolicy *PermissionsUpdatePolicy `protobuf:"bytes,5,opt,name=remove_admin_policy,json=removeAdminPolicy,proto3" json:"remove_admin_policy,omitempty"` UpdatePermissionsPolicy *PermissionsUpdatePolicy `protobuf:"bytes,6,opt,name=update_permissions_policy,json=updatePermissionsPolicy,proto3" json:"update_permissions_policy,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PolicySet) Reset() { @@ -321,16 +319,15 @@ func (x *PolicySet) GetUpdatePermissionsPolicy() *PermissionsUpdatePolicy { // A policy that governs adding/removing members or installations type MembershipPolicy struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Kind: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Kind: // // *MembershipPolicy_Base // *MembershipPolicy_AndCondition_ // *MembershipPolicy_AnyCondition_ - Kind isMembershipPolicy_Kind `protobuf_oneof:"kind"` + Kind isMembershipPolicy_Kind `protobuf_oneof:"kind"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *MembershipPolicy) Reset() { @@ -363,30 +360,36 @@ func (*MembershipPolicy) Descriptor() ([]byte, []int) { return file_mls_message_contents_group_permissions_proto_rawDescGZIP(), []int{2} } -func (m *MembershipPolicy) GetKind() isMembershipPolicy_Kind { - if m != nil { - return m.Kind +func (x *MembershipPolicy) GetKind() isMembershipPolicy_Kind { + if x != nil { + return x.Kind } return nil } func (x *MembershipPolicy) GetBase() MembershipPolicy_BasePolicy { - if x, ok := x.GetKind().(*MembershipPolicy_Base); ok { - return x.Base + if x != nil { + if x, ok := x.Kind.(*MembershipPolicy_Base); ok { + return x.Base + } } return MembershipPolicy_BASE_POLICY_UNSPECIFIED } func (x *MembershipPolicy) GetAndCondition() *MembershipPolicy_AndCondition { - if x, ok := x.GetKind().(*MembershipPolicy_AndCondition_); ok { - return x.AndCondition + if x != nil { + if x, ok := x.Kind.(*MembershipPolicy_AndCondition_); ok { + return x.AndCondition + } } return nil } func (x *MembershipPolicy) GetAnyCondition() *MembershipPolicy_AnyCondition { - if x, ok := x.GetKind().(*MembershipPolicy_AnyCondition_); ok { - return x.AnyCondition + if x != nil { + if x, ok := x.Kind.(*MembershipPolicy_AnyCondition_); ok { + return x.AnyCondition + } } return nil } @@ -415,16 +418,15 @@ func (*MembershipPolicy_AnyCondition_) isMembershipPolicy_Kind() {} // A policy that governs updating metadata type MetadataPolicy struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Kind: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Kind: // // *MetadataPolicy_Base // *MetadataPolicy_AndCondition_ // *MetadataPolicy_AnyCondition_ - Kind isMetadataPolicy_Kind `protobuf_oneof:"kind"` + Kind isMetadataPolicy_Kind `protobuf_oneof:"kind"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *MetadataPolicy) Reset() { @@ -457,30 +459,36 @@ func (*MetadataPolicy) Descriptor() ([]byte, []int) { return file_mls_message_contents_group_permissions_proto_rawDescGZIP(), []int{3} } -func (m *MetadataPolicy) GetKind() isMetadataPolicy_Kind { - if m != nil { - return m.Kind +func (x *MetadataPolicy) GetKind() isMetadataPolicy_Kind { + if x != nil { + return x.Kind } return nil } func (x *MetadataPolicy) GetBase() MetadataPolicy_MetadataBasePolicy { - if x, ok := x.GetKind().(*MetadataPolicy_Base); ok { - return x.Base + if x != nil { + if x, ok := x.Kind.(*MetadataPolicy_Base); ok { + return x.Base + } } return MetadataPolicy_METADATA_BASE_POLICY_UNSPECIFIED } func (x *MetadataPolicy) GetAndCondition() *MetadataPolicy_AndCondition { - if x, ok := x.GetKind().(*MetadataPolicy_AndCondition_); ok { - return x.AndCondition + if x != nil { + if x, ok := x.Kind.(*MetadataPolicy_AndCondition_); ok { + return x.AndCondition + } } return nil } func (x *MetadataPolicy) GetAnyCondition() *MetadataPolicy_AnyCondition { - if x, ok := x.GetKind().(*MetadataPolicy_AnyCondition_); ok { - return x.AnyCondition + if x != nil { + if x, ok := x.Kind.(*MetadataPolicy_AnyCondition_); ok { + return x.AnyCondition + } } return nil } @@ -509,16 +517,15 @@ func (*MetadataPolicy_AnyCondition_) isMetadataPolicy_Kind() {} // A policy that governs updating permissions type PermissionsUpdatePolicy struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Kind: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to Kind: // // *PermissionsUpdatePolicy_Base // *PermissionsUpdatePolicy_AndCondition_ // *PermissionsUpdatePolicy_AnyCondition_ - Kind isPermissionsUpdatePolicy_Kind `protobuf_oneof:"kind"` + Kind isPermissionsUpdatePolicy_Kind `protobuf_oneof:"kind"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *PermissionsUpdatePolicy) Reset() { @@ -551,30 +558,36 @@ func (*PermissionsUpdatePolicy) Descriptor() ([]byte, []int) { return file_mls_message_contents_group_permissions_proto_rawDescGZIP(), []int{4} } -func (m *PermissionsUpdatePolicy) GetKind() isPermissionsUpdatePolicy_Kind { - if m != nil { - return m.Kind +func (x *PermissionsUpdatePolicy) GetKind() isPermissionsUpdatePolicy_Kind { + if x != nil { + return x.Kind } return nil } func (x *PermissionsUpdatePolicy) GetBase() PermissionsUpdatePolicy_PermissionsBasePolicy { - if x, ok := x.GetKind().(*PermissionsUpdatePolicy_Base); ok { - return x.Base + if x != nil { + if x, ok := x.Kind.(*PermissionsUpdatePolicy_Base); ok { + return x.Base + } } return PermissionsUpdatePolicy_PERMISSIONS_BASE_POLICY_UNSPECIFIED } func (x *PermissionsUpdatePolicy) GetAndCondition() *PermissionsUpdatePolicy_AndCondition { - if x, ok := x.GetKind().(*PermissionsUpdatePolicy_AndCondition_); ok { - return x.AndCondition + if x != nil { + if x, ok := x.Kind.(*PermissionsUpdatePolicy_AndCondition_); ok { + return x.AndCondition + } } return nil } func (x *PermissionsUpdatePolicy) GetAnyCondition() *PermissionsUpdatePolicy_AnyCondition { - if x, ok := x.GetKind().(*PermissionsUpdatePolicy_AnyCondition_); ok { - return x.AnyCondition + if x != nil { + if x, ok := x.Kind.(*PermissionsUpdatePolicy_AnyCondition_); ok { + return x.AnyCondition + } } return nil } @@ -603,11 +616,10 @@ func (*PermissionsUpdatePolicy_AnyCondition_) isPermissionsUpdatePolicy_Kind() { // Combine multiple policies. All must evaluate to true type MembershipPolicy_AndCondition struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Policies []*MembershipPolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` unknownFields protoimpl.UnknownFields - - Policies []*MembershipPolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MembershipPolicy_AndCondition) Reset() { @@ -649,11 +661,10 @@ func (x *MembershipPolicy_AndCondition) GetPolicies() []*MembershipPolicy { // Combine multiple policies. Any must evaluate to true type MembershipPolicy_AnyCondition struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Policies []*MembershipPolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` unknownFields protoimpl.UnknownFields - - Policies []*MembershipPolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MembershipPolicy_AnyCondition) Reset() { @@ -695,11 +706,10 @@ func (x *MembershipPolicy_AnyCondition) GetPolicies() []*MembershipPolicy { // Combine multiple policies. All must evaluate to true type MetadataPolicy_AndCondition struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Policies []*MetadataPolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` unknownFields protoimpl.UnknownFields - - Policies []*MetadataPolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MetadataPolicy_AndCondition) Reset() { @@ -741,11 +751,10 @@ func (x *MetadataPolicy_AndCondition) GetPolicies() []*MetadataPolicy { // Combine multiple policies. Any must evaluate to true type MetadataPolicy_AnyCondition struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Policies []*MetadataPolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` unknownFields protoimpl.UnknownFields - - Policies []*MetadataPolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MetadataPolicy_AnyCondition) Reset() { @@ -787,11 +796,10 @@ func (x *MetadataPolicy_AnyCondition) GetPolicies() []*MetadataPolicy { // Combine multiple policies. All must evaluate to true type PermissionsUpdatePolicy_AndCondition struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Policies []*PermissionsUpdatePolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` unknownFields protoimpl.UnknownFields - - Policies []*PermissionsUpdatePolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` + sizeCache protoimpl.SizeCache } func (x *PermissionsUpdatePolicy_AndCondition) Reset() { @@ -833,11 +841,10 @@ func (x *PermissionsUpdatePolicy_AndCondition) GetPolicies() []*PermissionsUpdat // Combine multiple policies. Any must evaluate to true type PermissionsUpdatePolicy_AnyCondition struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Policies []*PermissionsUpdatePolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` unknownFields protoimpl.UnknownFields - - Policies []*PermissionsUpdatePolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` + sizeCache protoimpl.SizeCache } func (x *PermissionsUpdatePolicy_AnyCondition) Reset() { diff --git a/pkg/proto/mls/message_contents/transcript_messages.pb.go b/pkg/proto/mls/message_contents/transcript_messages.pb.go index 10347bfa..c663cb4c 100644 --- a/pkg/proto/mls/message_contents/transcript_messages.pb.go +++ b/pkg/proto/mls/message_contents/transcript_messages.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: mls/message_contents/transcript_messages.proto @@ -24,13 +24,12 @@ const ( // A group member and affected installation IDs type MembershipChange struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InstallationIds [][]byte `protobuf:"bytes,1,rep,name=installation_ids,json=installationIds,proto3" json:"installation_ids,omitempty"` - AccountAddress string `protobuf:"bytes,2,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` - InitiatedByAccountAddress string `protobuf:"bytes,3,opt,name=initiated_by_account_address,json=initiatedByAccountAddress,proto3" json:"initiated_by_account_address,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InstallationIds [][]byte `protobuf:"bytes,1,rep,name=installation_ids,json=installationIds,proto3" json:"installation_ids,omitempty"` + AccountAddress string `protobuf:"bytes,2,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` + InitiatedByAccountAddress string `protobuf:"bytes,3,opt,name=initiated_by_account_address,json=initiatedByAccountAddress,proto3" json:"initiated_by_account_address,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *MembershipChange) Reset() { @@ -86,10 +85,7 @@ func (x *MembershipChange) GetInitiatedByAccountAddress() string { // The group membership change proto type GroupMembershipChanges struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Members that have been added in the commit MembersAdded []*MembershipChange `protobuf:"bytes,1,rep,name=members_added,json=membersAdded,proto3" json:"members_added,omitempty"` // Members that have been removed in the commit @@ -98,6 +94,8 @@ type GroupMembershipChanges struct { InstallationsAdded []*MembershipChange `protobuf:"bytes,3,rep,name=installations_added,json=installationsAdded,proto3" json:"installations_added,omitempty"` // Installations removed in the commit, grouped by member InstallationsRemoved []*MembershipChange `protobuf:"bytes,4,rep,name=installations_removed,json=installationsRemoved,proto3" json:"installations_removed,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GroupMembershipChanges) Reset() { @@ -161,17 +159,16 @@ func (x *GroupMembershipChanges) GetInstallationsRemoved() []*MembershipChange { // A summary of the changes in a commit. // Includes added/removed inboxes and changes to metadata type GroupUpdated struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InitiatedByInboxId string `protobuf:"bytes,1,opt,name=initiated_by_inbox_id,json=initiatedByInboxId,proto3" json:"initiated_by_inbox_id,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + InitiatedByInboxId string `protobuf:"bytes,1,opt,name=initiated_by_inbox_id,json=initiatedByInboxId,proto3" json:"initiated_by_inbox_id,omitempty"` // The inboxes added in the commit AddedInboxes []*GroupUpdated_Inbox `protobuf:"bytes,2,rep,name=added_inboxes,json=addedInboxes,proto3" json:"added_inboxes,omitempty"` // The inboxes removed in the commit RemovedInboxes []*GroupUpdated_Inbox `protobuf:"bytes,3,rep,name=removed_inboxes,json=removedInboxes,proto3" json:"removed_inboxes,omitempty"` // The metadata changes in the commit MetadataFieldChanges []*GroupUpdated_MetadataFieldChange `protobuf:"bytes,4,rep,name=metadata_field_changes,json=metadataFieldChanges,proto3" json:"metadata_field_changes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GroupUpdated) Reset() { @@ -234,11 +231,10 @@ func (x *GroupUpdated) GetMetadataFieldChanges() []*GroupUpdated_MetadataFieldCh // An inbox that was added or removed in this commit type GroupUpdated_Inbox struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` unknownFields protoimpl.UnknownFields - - InboxId string `protobuf:"bytes,1,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GroupUpdated_Inbox) Reset() { @@ -280,16 +276,15 @@ func (x *GroupUpdated_Inbox) GetInboxId() string { // A summary of a change to the mutable metadata type GroupUpdated_MetadataFieldChange struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // The field that was changed FieldName string `protobuf:"bytes,1,opt,name=field_name,json=fieldName,proto3" json:"field_name,omitempty"` // The previous value OldValue *string `protobuf:"bytes,2,opt,name=old_value,json=oldValue,proto3,oneof" json:"old_value,omitempty"` // The updated value - NewValue *string `protobuf:"bytes,3,opt,name=new_value,json=newValue,proto3,oneof" json:"new_value,omitempty"` + NewValue *string `protobuf:"bytes,3,opt,name=new_value,json=newValue,proto3,oneof" json:"new_value,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GroupUpdated_MetadataFieldChange) Reset() { diff --git a/pkg/proto/mls_validation/v1/service.pb.go b/pkg/proto/mls_validation/v1/service.pb.go index e19e8fea..acb37b00 100644 --- a/pkg/proto/mls_validation/v1/service.pb.go +++ b/pkg/proto/mls_validation/v1/service.pb.go @@ -2,7 +2,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: mls_validation/v1/service.proto @@ -27,11 +27,10 @@ const ( // Contains a batch of serialized Key Packages type ValidateInboxIdKeyPackagesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + KeyPackages []*ValidateInboxIdKeyPackagesRequest_KeyPackage `protobuf:"bytes,1,rep,name=key_packages,json=keyPackages,proto3" json:"key_packages,omitempty"` unknownFields protoimpl.UnknownFields - - KeyPackages []*ValidateInboxIdKeyPackagesRequest_KeyPackage `protobuf:"bytes,1,rep,name=key_packages,json=keyPackages,proto3" json:"key_packages,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ValidateInboxIdKeyPackagesRequest) Reset() { @@ -73,11 +72,10 @@ func (x *ValidateInboxIdKeyPackagesRequest) GetKeyPackages() []*ValidateInboxIdK // Validates a Inbox-ID Key Package Type type ValidateInboxIdKeyPackagesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*ValidateInboxIdKeyPackagesResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*ValidateInboxIdKeyPackagesResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ValidateInboxIdKeyPackagesResponse) Reset() { @@ -119,11 +117,10 @@ func (x *ValidateInboxIdKeyPackagesResponse) GetResponses() []*ValidateInboxIdKe // Contains a batch of serialized Key Packages type ValidateKeyPackagesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + KeyPackages []*ValidateKeyPackagesRequest_KeyPackage `protobuf:"bytes,1,rep,name=key_packages,json=keyPackages,proto3" json:"key_packages,omitempty"` unknownFields protoimpl.UnknownFields - - KeyPackages []*ValidateKeyPackagesRequest_KeyPackage `protobuf:"bytes,1,rep,name=key_packages,json=keyPackages,proto3" json:"key_packages,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ValidateKeyPackagesRequest) Reset() { @@ -165,11 +162,10 @@ func (x *ValidateKeyPackagesRequest) GetKeyPackages() []*ValidateKeyPackagesRequ // Response to ValidateKeyPackagesRequest type ValidateKeyPackagesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*ValidateKeyPackagesResponse_ValidationResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*ValidateKeyPackagesResponse_ValidationResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ValidateKeyPackagesResponse) Reset() { @@ -211,11 +207,10 @@ func (x *ValidateKeyPackagesResponse) GetResponses() []*ValidateKeyPackagesRespo // Contains a batch of serialized Group Messages type ValidateGroupMessagesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` GroupMessages []*ValidateGroupMessagesRequest_GroupMessage `protobuf:"bytes,1,rep,name=group_messages,json=groupMessages,proto3" json:"group_messages,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ValidateGroupMessagesRequest) Reset() { @@ -257,11 +252,10 @@ func (x *ValidateGroupMessagesRequest) GetGroupMessages() []*ValidateGroupMessag // Response to ValidateGroupMessagesRequest type ValidateGroupMessagesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*ValidateGroupMessagesResponse_ValidationResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*ValidateGroupMessagesResponse_ValidationResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ValidateGroupMessagesResponse) Reset() { @@ -303,13 +297,12 @@ func (x *ValidateGroupMessagesResponse) GetResponses() []*ValidateGroupMessagesR // Request to get a final association state for identity updates type GetAssociationStateRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // List of identity updates - OldUpdates []*associations.IdentityUpdate `protobuf:"bytes,1,rep,name=old_updates,json=oldUpdates,proto3" json:"old_updates,omitempty"` - NewUpdates []*associations.IdentityUpdate `protobuf:"bytes,2,rep,name=new_updates,json=newUpdates,proto3" json:"new_updates,omitempty"` + OldUpdates []*associations.IdentityUpdate `protobuf:"bytes,1,rep,name=old_updates,json=oldUpdates,proto3" json:"old_updates,omitempty"` + NewUpdates []*associations.IdentityUpdate `protobuf:"bytes,2,rep,name=new_updates,json=newUpdates,proto3" json:"new_updates,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetAssociationStateRequest) Reset() { @@ -359,12 +352,11 @@ func (x *GetAssociationStateRequest) GetNewUpdates() []*associations.IdentityUpd // Response to GetAssociationStateRequest, containing the final association state // for an InboxID type GetAssociationStateResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` AssociationState *associations.AssociationState `protobuf:"bytes,1,opt,name=association_state,json=associationState,proto3" json:"association_state,omitempty"` StateDiff *associations.AssociationStateDiff `protobuf:"bytes,2,opt,name=state_diff,json=stateDiff,proto3" json:"state_diff,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetAssociationStateResponse) Reset() { @@ -413,12 +405,11 @@ func (x *GetAssociationStateResponse) GetStateDiff() *associations.AssociationSt // Request to validate an InboxID with the backend service. Ensures an Inbox Id <> Installation key are valid. type ValidateInboxIdsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // list of validation requests - Requests []*ValidateInboxIdsRequest_ValidationRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + Requests []*ValidateInboxIdsRequest_ValidationRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ValidateInboxIdsRequest) Reset() { @@ -460,12 +451,11 @@ func (x *ValidateInboxIdsRequest) GetRequests() []*ValidateInboxIdsRequest_Valid // Response to ValidateInboxIdRequest type ValidateInboxIdsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // List of validation responses - Responses []*ValidateInboxIdsResponse_ValidationResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + Responses []*ValidateInboxIdsResponse_ValidationResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ValidateInboxIdsResponse) Reset() { @@ -507,12 +497,11 @@ func (x *ValidateInboxIdsResponse) GetResponses() []*ValidateInboxIdsResponse_Va // Wrapper for each key package type ValidateInboxIdKeyPackagesRequest_KeyPackage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - KeyPackageBytesTlsSerialized []byte `protobuf:"bytes,1,opt,name=key_package_bytes_tls_serialized,json=keyPackageBytesTlsSerialized,proto3" json:"key_package_bytes_tls_serialized,omitempty"` - IsInboxIdCredential bool `protobuf:"varint,2,opt,name=is_inbox_id_credential,json=isInboxIdCredential,proto3" json:"is_inbox_id_credential,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + KeyPackageBytesTlsSerialized []byte `protobuf:"bytes,1,opt,name=key_package_bytes_tls_serialized,json=keyPackageBytesTlsSerialized,proto3" json:"key_package_bytes_tls_serialized,omitempty"` + IsInboxIdCredential bool `protobuf:"varint,2,opt,name=is_inbox_id_credential,json=isInboxIdCredential,proto3" json:"is_inbox_id_credential,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ValidateInboxIdKeyPackagesRequest_KeyPackage) Reset() { @@ -561,15 +550,14 @@ func (x *ValidateInboxIdKeyPackagesRequest_KeyPackage) GetIsInboxIdCredential() // one response corresponding to information about one key package type ValidateInboxIdKeyPackagesResponse_Response struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` IsOk bool `protobuf:"varint,1,opt,name=is_ok,json=isOk,proto3" json:"is_ok,omitempty"` ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` Credential *identity.MlsCredential `protobuf:"bytes,3,opt,name=credential,proto3" json:"credential,omitempty"` InstallationPublicKey []byte `protobuf:"bytes,4,opt,name=installation_public_key,json=installationPublicKey,proto3" json:"installation_public_key,omitempty"` Expiration uint64 `protobuf:"varint,5,opt,name=expiration,proto3" json:"expiration,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ValidateInboxIdKeyPackagesResponse_Response) Reset() { @@ -639,12 +627,11 @@ func (x *ValidateInboxIdKeyPackagesResponse_Response) GetExpiration() uint64 { // Wrapper for each key package type ValidateKeyPackagesRequest_KeyPackage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - KeyPackageBytesTlsSerialized []byte `protobuf:"bytes,1,opt,name=key_package_bytes_tls_serialized,json=keyPackageBytesTlsSerialized,proto3" json:"key_package_bytes_tls_serialized,omitempty"` - IsInboxIdCredential bool `protobuf:"varint,2,opt,name=is_inbox_id_credential,json=isInboxIdCredential,proto3" json:"is_inbox_id_credential,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + KeyPackageBytesTlsSerialized []byte `protobuf:"bytes,1,opt,name=key_package_bytes_tls_serialized,json=keyPackageBytesTlsSerialized,proto3" json:"key_package_bytes_tls_serialized,omitempty"` + IsInboxIdCredential bool `protobuf:"varint,2,opt,name=is_inbox_id_credential,json=isInboxIdCredential,proto3" json:"is_inbox_id_credential,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ValidateKeyPackagesRequest_KeyPackage) Reset() { @@ -693,16 +680,15 @@ func (x *ValidateKeyPackagesRequest_KeyPackage) GetIsInboxIdCredential() bool { // An individual response to one key package type ValidateKeyPackagesResponse_ValidationResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - IsOk bool `protobuf:"varint,1,opt,name=is_ok,json=isOk,proto3" json:"is_ok,omitempty"` - ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` - InstallationId []byte `protobuf:"bytes,3,opt,name=installation_id,json=installationId,proto3" json:"installation_id,omitempty"` - AccountAddress string `protobuf:"bytes,4,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` - CredentialIdentityBytes []byte `protobuf:"bytes,5,opt,name=credential_identity_bytes,json=credentialIdentityBytes,proto3" json:"credential_identity_bytes,omitempty"` - Expiration uint64 `protobuf:"varint,6,opt,name=expiration,proto3" json:"expiration,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + IsOk bool `protobuf:"varint,1,opt,name=is_ok,json=isOk,proto3" json:"is_ok,omitempty"` + ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` + InstallationId []byte `protobuf:"bytes,3,opt,name=installation_id,json=installationId,proto3" json:"installation_id,omitempty"` + AccountAddress string `protobuf:"bytes,4,opt,name=account_address,json=accountAddress,proto3" json:"account_address,omitempty"` + CredentialIdentityBytes []byte `protobuf:"bytes,5,opt,name=credential_identity_bytes,json=credentialIdentityBytes,proto3" json:"credential_identity_bytes,omitempty"` + Expiration uint64 `protobuf:"varint,6,opt,name=expiration,proto3" json:"expiration,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ValidateKeyPackagesResponse_ValidationResponse) Reset() { @@ -779,11 +765,10 @@ func (x *ValidateKeyPackagesResponse_ValidationResponse) GetExpiration() uint64 // Wrapper for each message type ValidateGroupMessagesRequest_GroupMessage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupMessageBytesTlsSerialized []byte `protobuf:"bytes,1,opt,name=group_message_bytes_tls_serialized,json=groupMessageBytesTlsSerialized,proto3" json:"group_message_bytes_tls_serialized,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + GroupMessageBytesTlsSerialized []byte `protobuf:"bytes,1,opt,name=group_message_bytes_tls_serialized,json=groupMessageBytesTlsSerialized,proto3" json:"group_message_bytes_tls_serialized,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ValidateGroupMessagesRequest_GroupMessage) Reset() { @@ -825,13 +810,12 @@ func (x *ValidateGroupMessagesRequest_GroupMessage) GetGroupMessageBytesTlsSeria // An individual response to one message type ValidateGroupMessagesResponse_ValidationResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + IsOk bool `protobuf:"varint,1,opt,name=is_ok,json=isOk,proto3" json:"is_ok,omitempty"` + ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` + GroupId string `protobuf:"bytes,3,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` unknownFields protoimpl.UnknownFields - - IsOk bool `protobuf:"varint,1,opt,name=is_ok,json=isOk,proto3" json:"is_ok,omitempty"` - ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` - GroupId string `protobuf:"bytes,3,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ValidateGroupMessagesResponse_ValidationResponse) Reset() { @@ -887,13 +871,12 @@ func (x *ValidateGroupMessagesResponse_ValidationResponse) GetGroupId() string { // a single validation request type ValidateInboxIdsRequest_ValidationRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` Credential *identity.MlsCredential `protobuf:"bytes,1,opt,name=credential,proto3" json:"credential,omitempty"` InstallationPublicKey []byte `protobuf:"bytes,2,opt,name=installation_public_key,json=installationPublicKey,proto3" json:"installation_public_key,omitempty"` IdentityUpdates []*associations.IdentityUpdate `protobuf:"bytes,3,rep,name=identity_updates,json=identityUpdates,proto3" json:"identity_updates,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ValidateInboxIdsRequest_ValidationRequest) Reset() { @@ -949,13 +932,12 @@ func (x *ValidateInboxIdsRequest_ValidationRequest) GetIdentityUpdates() []*asso // a single validation response type ValidateInboxIdsResponse_ValidationResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + IsOk bool `protobuf:"varint,1,opt,name=is_ok,json=isOk,proto3" json:"is_ok,omitempty"` + ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` + InboxId string `protobuf:"bytes,3,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` unknownFields protoimpl.UnknownFields - - IsOk bool `protobuf:"varint,1,opt,name=is_ok,json=isOk,proto3" json:"is_ok,omitempty"` - ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` - InboxId string `protobuf:"bytes,3,opt,name=inbox_id,json=inboxId,proto3" json:"inbox_id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ValidateInboxIdsResponse_ValidationResponse) Reset() { diff --git a/pkg/proto/openapi/identity/api/v1/identity.swagger.json b/pkg/proto/openapi/identity/api/v1/identity.swagger.json index a96fa40c..ad0f9179 100644 --- a/pkg/proto/openapi/identity/api/v1/identity.swagger.json +++ b/pkg/proto/openapi/identity/api/v1/identity.swagger.json @@ -115,6 +115,47 @@ ] } }, + "/identity/v1/subscribe-association-changes": { + "post": { + "operationId": "IdentityApi_SubscribeAssociationChanges", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/definitions/v1SubscribeAssociationChangesResponse" + }, + "error": { + "$ref": "#/definitions/rpcStatus" + } + }, + "title": "Stream result of v1SubscribeAssociationChangesResponse" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/rpcStatus" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/v1SubscribeAssociationChangesRequest" + } + } + ], + "tags": [ + "IdentityApi" + ] + } + }, "/identity/v1/verify-smart-contract-wallet-signatures": { "post": { "summary": "Verify an unverified smart contract wallet signature", @@ -199,6 +240,18 @@ }, "description": "ECDSA signature bytes and the recovery bit\nproduced by xmtp-js::PublicKey.signWithWallet function, i.e.\nEIP-191 signature of a \"Create Identity\" message with the key embedded.\nUsed to sign identity keys." }, + "SubscribeAssociationChangesResponseAccountAddressAssociation": { + "type": "object", + "properties": { + "accountAddress": { + "type": "string" + }, + "inboxId": { + "type": "string" + } + }, + "title": "A change in account_address -\u003e inbox_id association" + }, "apiv1GetInboxIdsRequest": { "type": "object", "properties": { @@ -515,6 +568,22 @@ "type": "object", "title": "The response when an identity update is published" }, + "v1SubscribeAssociationChangesRequest": { + "type": "object", + "title": "Request to subscribe to association changes, triggered by Identity Updates" + }, + "v1SubscribeAssociationChangesResponse": { + "type": "object", + "properties": { + "timestampNs": { + "type": "string", + "format": "uint64" + }, + "accountAddressAssociation": { + "$ref": "#/definitions/SubscribeAssociationChangesResponseAccountAddressAssociation" + } + } + }, "v1VerifySmartContractWalletSignatureRequestSignature": { "type": "object", "properties": { diff --git a/pkg/proto/openapi/mls/message_contents/content_types/reaction.swagger.json b/pkg/proto/openapi/mls/message_contents/content_types/reaction.swagger.json new file mode 100644 index 00000000..7de26694 --- /dev/null +++ b/pkg/proto/openapi/mls/message_contents/content_types/reaction.swagger.json @@ -0,0 +1,44 @@ +{ + "swagger": "2.0", + "info": { + "title": "mls/message_contents/content_types/reaction.proto", + "version": "version not set" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/pkg/proto/openapi/mls_validation/v1/service.swagger.json b/pkg/proto/openapi/mls_validation/v1/service.swagger.json index e9d2bebd..d1bb324c 100644 --- a/pkg/proto/openapi/mls_validation/v1/service.swagger.json +++ b/pkg/proto/openapi/mls_validation/v1/service.swagger.json @@ -221,6 +221,10 @@ "clientTimestampNs": { "type": "string", "format": "uint64" + }, + "addedOnChainId": { + "type": "string", + "format": "uint64" } }, "title": "single member that optionally indicates the member that added them" diff --git a/pkg/proto/openapi/xmtpv4/envelopes/envelopes.swagger.json b/pkg/proto/openapi/xmtpv4/envelopes/envelopes.swagger.json new file mode 100644 index 00000000..880598a8 --- /dev/null +++ b/pkg/proto/openapi/xmtpv4/envelopes/envelopes.swagger.json @@ -0,0 +1,44 @@ +{ + "swagger": "2.0", + "info": { + "title": "xmtpv4/envelopes/envelopes.proto", + "version": "version not set" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": {}, + "definitions": { + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + } + } +} diff --git a/pkg/proto/openapi/xmtpv4/message_api/message_api.swagger.json b/pkg/proto/openapi/xmtpv4/message_api/message_api.swagger.json index 581c8285..f68d11df 100644 --- a/pkg/proto/openapi/xmtpv4/message_api/message_api.swagger.json +++ b/pkg/proto/openapi/xmtpv4/message_api/message_api.swagger.json @@ -24,7 +24,7 @@ "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/xmtpxmtpv4GetInboxIdsResponse" + "$ref": "#/definitions/xmtpv4message_apiGetInboxIdsResponse" } }, "default": { @@ -40,7 +40,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/xmtpxmtpv4GetInboxIdsRequest" + "$ref": "#/definitions/xmtpv4message_apiGetInboxIdsRequest" } } ], @@ -49,15 +49,15 @@ ] } }, - "/mls/v2/publish-envelope": { + "/mls/v2/publish-payer-envelopes": { "post": { "summary": "Publish envelope", - "operationId": "ReplicationApi_PublishEnvelope", + "operationId": "ReplicationApi_PublishPayerEnvelopes", "responses": { "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/xmtpv4PublishEnvelopeResponse" + "$ref": "#/definitions/message_apiPublishPayerEnvelopesResponse" } }, "default": { @@ -73,7 +73,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/xmtpv4PublishEnvelopeRequest" + "$ref": "#/definitions/message_apiPublishPayerEnvelopesRequest" } } ], @@ -90,7 +90,7 @@ "200": { "description": "A successful response.", "schema": { - "$ref": "#/definitions/xmtpv4QueryEnvelopesResponse" + "$ref": "#/definitions/message_apiQueryEnvelopesResponse" } }, "default": { @@ -106,7 +106,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/xmtpv4QueryEnvelopesRequest" + "$ref": "#/definitions/message_apiQueryEnvelopesRequest" } } ], @@ -118,7 +118,7 @@ "/mls/v2/subscribe-envelopes": { "post": { "summary": "Subscribe to envelopes", - "operationId": "ReplicationApi_BatchSubscribeEnvelopes", + "operationId": "ReplicationApi_SubscribeEnvelopes", "responses": { "200": { "description": "A successful response.(streaming responses)", @@ -126,13 +126,13 @@ "type": "object", "properties": { "result": { - "$ref": "#/definitions/xmtpv4BatchSubscribeEnvelopesResponse" + "$ref": "#/definitions/message_apiSubscribeEnvelopesResponse" }, "error": { "$ref": "#/definitions/rpcStatus" } }, - "title": "Stream result of xmtpv4BatchSubscribeEnvelopesResponse" + "title": "Stream result of message_apiSubscribeEnvelopesResponse" } }, "default": { @@ -148,7 +148,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/xmtpv4BatchSubscribeEnvelopesRequest" + "$ref": "#/definitions/message_apiSubscribeEnvelopesRequest" } } ], @@ -159,15 +159,6 @@ } }, "definitions": { - "BatchSubscribeEnvelopesRequestSubscribeEnvelopesRequest": { - "type": "object", - "properties": { - "query": { - "$ref": "#/definitions/xmtpv4EnvelopesQuery" - } - }, - "title": "Single subscription request for envelopes" - }, "associationsRecoverableEcdsaSignature": { "type": "object", "properties": { @@ -179,94 +170,17 @@ }, "title": "RecoverableEcdsaSignature for EIP-191 and V2 signatures" }, - "protobufAny": { - "type": "object", - "properties": { - "@type": { - "type": "string" - } - }, - "additionalProperties": {} - }, - "rpcStatus": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32" - }, - "message": { - "type": "string" - }, - "details": { - "type": "array", - "items": { - "type": "object", - "$ref": "#/definitions/protobufAny" - } - } - } - }, - "xmtpv4BatchSubscribeEnvelopesRequest": { - "type": "object", - "properties": { - "requests": { - "type": "array", - "items": { - "type": "object", - "$ref": "#/definitions/BatchSubscribeEnvelopesRequestSubscribeEnvelopesRequest" - } - } - }, - "title": "Batch subscribe to envelopes" - }, - "xmtpv4BatchSubscribeEnvelopesResponse": { - "type": "object", - "properties": { - "envelopes": { - "type": "array", - "items": { - "type": "object", - "$ref": "#/definitions/xmtpv4OriginatorEnvelope" - } - } - }, - "title": "Streamed response for batch subscribe - can be multiple envelopes at once" - }, - "xmtpv4BlockchainProof": { + "envelopesBlockchainProof": { "type": "object", "properties": { - "blockNumber": { + "transactionHash": { "type": "string", - "format": "uint64" - }, - "publisherNodeId": { - "type": "integer", - "format": "int64" + "format": "byte" } }, "title": "An alternative to a signature for blockchain payloads" }, - "xmtpv4EnvelopesQuery": { - "type": "object", - "properties": { - "topic": { - "type": "string", - "format": "byte", - "title": "Client queries" - }, - "originatorNodeId": { - "type": "integer", - "format": "int64", - "title": "Node queries" - }, - "lastSeen": { - "$ref": "#/definitions/xmtpv4VectorClock" - } - }, - "title": "Query for envelopes, shared by query and subscribe endpoints" - }, - "xmtpv4OriginatorEnvelope": { + "envelopesOriginatorEnvelope": { "type": "object", "properties": { "unsignedOriginatorEnvelope": { @@ -278,12 +192,12 @@ "$ref": "#/definitions/associationsRecoverableEcdsaSignature" }, "blockchainProof": { - "$ref": "#/definitions/xmtpv4BlockchainProof" + "$ref": "#/definitions/envelopesBlockchainProof" } }, "title": "Signed originator envelope" }, - "xmtpv4PayerEnvelope": { + "envelopesPayerEnvelope": { "type": "object", "properties": { "unsignedClientEnvelope": { @@ -297,27 +211,73 @@ }, "title": "Wraps client envelope with payer signature" }, - "xmtpv4PublishEnvelopeRequest": { + "envelopesVectorClock": { "type": "object", "properties": { - "payerEnvelope": { - "$ref": "#/definitions/xmtpv4PayerEnvelope" + "nodeIdToSequenceId": { + "type": "object", + "additionalProperties": { + "type": "string", + "format": "uint64" + } + } + }, + "description": "The last seen entry per originator. Originators that have not been seen are omitted.\nEntries MUST be sorted in ascending order, so that smaller node ID's appear first." + }, + "message_apiEnvelopesQuery": { + "type": "object", + "properties": { + "topics": { + "type": "array", + "items": { + "type": "string", + "format": "byte" + }, + "title": "Client queries" + }, + "originatorNodeIds": { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "title": "Node queries" + }, + "lastSeen": { + "$ref": "#/definitions/envelopesVectorClock" + } + }, + "title": "Query for envelopes, shared by query and subscribe endpoints\nEither topics or originator_node_ids may be set, but not both" + }, + "message_apiPublishPayerEnvelopesRequest": { + "type": "object", + "properties": { + "payerEnvelopes": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/envelopesPayerEnvelope" + } } } }, - "xmtpv4PublishEnvelopeResponse": { + "message_apiPublishPayerEnvelopesResponse": { "type": "object", "properties": { - "originatorEnvelope": { - "$ref": "#/definitions/xmtpv4OriginatorEnvelope" + "originatorEnvelopes": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/envelopesOriginatorEnvelope" + } } } }, - "xmtpv4QueryEnvelopesRequest": { + "message_apiQueryEnvelopesRequest": { "type": "object", "properties": { "query": { - "$ref": "#/definitions/xmtpv4EnvelopesQuery" + "$ref": "#/definitions/message_apiEnvelopesQuery" }, "limit": { "type": "integer", @@ -326,46 +286,83 @@ }, "title": "Query envelopes request" }, - "xmtpv4QueryEnvelopesResponse": { + "message_apiQueryEnvelopesResponse": { "type": "object", "properties": { "envelopes": { "type": "array", "items": { "type": "object", - "$ref": "#/definitions/xmtpv4OriginatorEnvelope" + "$ref": "#/definitions/envelopesOriginatorEnvelope" } } }, "title": "Query envelopes response" }, - "xmtpv4VectorClock": { + "message_apiSubscribeEnvelopesRequest": { "type": "object", "properties": { - "nodeIdToSequenceId": { - "type": "object", - "additionalProperties": { - "type": "string", - "format": "uint64" + "query": { + "$ref": "#/definitions/message_apiEnvelopesQuery" + } + }, + "title": "Batch subscribe to envelopes" + }, + "message_apiSubscribeEnvelopesResponse": { + "type": "object", + "properties": { + "envelopes": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/envelopesOriginatorEnvelope" } } }, - "description": "The last seen entry per originator. Originators that have not been seen are omitted.\nEntries MUST be sorted in ascending order, so that smaller node ID's appear first." + "title": "Streamed response for batch subscribe - can be multiple envelopes at once" + }, + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } }, - "xmtpxmtpv4GetInboxIdsRequest": { + "xmtpv4message_apiGetInboxIdsRequest": { "type": "object", "properties": { "requests": { "type": "array", "items": { "type": "object", - "$ref": "#/definitions/xmtpxmtpv4GetInboxIdsRequestRequest" + "$ref": "#/definitions/xmtpv4message_apiGetInboxIdsRequestRequest" } } }, "title": "Request to retrieve the XIDs for the given addresses" }, - "xmtpxmtpv4GetInboxIdsRequestRequest": { + "xmtpv4message_apiGetInboxIdsRequestRequest": { "type": "object", "properties": { "address": { @@ -374,20 +371,20 @@ }, "title": "A single request for a given address" }, - "xmtpxmtpv4GetInboxIdsResponse": { + "xmtpv4message_apiGetInboxIdsResponse": { "type": "object", "properties": { "responses": { "type": "array", "items": { "type": "object", - "$ref": "#/definitions/xmtpxmtpv4GetInboxIdsResponseResponse" + "$ref": "#/definitions/xmtpv4message_apiGetInboxIdsResponseResponse" } } }, "title": "Response with the XIDs for the requested addresses" }, - "xmtpxmtpv4GetInboxIdsResponseResponse": { + "xmtpv4message_apiGetInboxIdsResponseResponse": { "type": "object", "properties": { "address": { diff --git a/pkg/proto/openapi/xmtpv4/payer_api/payer_api.swagger.json b/pkg/proto/openapi/xmtpv4/payer_api/payer_api.swagger.json new file mode 100644 index 00000000..12867844 --- /dev/null +++ b/pkg/proto/openapi/xmtpv4/payer_api/payer_api.swagger.json @@ -0,0 +1,503 @@ +{ + "swagger": "2.0", + "info": { + "title": "xmtpv4/payer_api/payer_api.proto", + "version": "version not set" + }, + "tags": [ + { + "name": "PayerApi" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/mls/v2/payer/publish-client-envelopes": { + "post": { + "summary": "Publish envelope", + "operationId": "PayerApi_PublishClientEnvelopes", + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/payer_apiPublishClientEnvelopesResponse" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/rpcStatus" + } + } + }, + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/payer_apiPublishClientEnvelopesRequest" + } + } + ], + "tags": [ + "PayerApi" + ] + } + } + }, + "definitions": { + "SignatureECDSACompact": { + "type": "object", + "properties": { + "bytes": { + "type": "string", + "format": "byte", + "title": "compact representation [ R || S ], 64 bytes" + }, + "recovery": { + "type": "integer", + "format": "int64", + "title": "recovery bit" + } + }, + "title": "ECDSA signature bytes and the recovery bit" + }, + "SignatureWalletECDSACompact": { + "type": "object", + "properties": { + "bytes": { + "type": "string", + "format": "byte", + "title": "compact representation [ R || S ], 64 bytes" + }, + "recovery": { + "type": "integer", + "format": "int64", + "title": "recovery bit" + } + }, + "description": "ECDSA signature bytes and the recovery bit\nproduced by xmtp-js::PublicKey.signWithWallet function, i.e.\nEIP-191 signature of a \"Create Identity\" message with the key embedded.\nUsed to sign identity keys." + }, + "associationsAddAssociation": { + "type": "object", + "properties": { + "newMemberIdentifier": { + "$ref": "#/definitions/associationsMemberIdentifier" + }, + "existingMemberSignature": { + "$ref": "#/definitions/identityassociationsSignature" + }, + "newMemberSignature": { + "$ref": "#/definitions/identityassociationsSignature" + } + }, + "description": "Adds a new member for an XID - either an addressable member such as a\nwallet, or an installation acting on behalf of an address.\nA key-pair that has been associated with one role MUST not be permitted to be\nassociated with a different role." + }, + "associationsChangeRecoveryAddress": { + "type": "object", + "properties": { + "newRecoveryAddress": { + "type": "string" + }, + "existingRecoveryAddressSignature": { + "$ref": "#/definitions/identityassociationsSignature" + } + }, + "description": "Changes the recovery address for an XID. The recovery address is not required\nto be a member of the XID. In addition to being able to add members, the\nrecovery address can also revoke members." + }, + "associationsCreateInbox": { + "type": "object", + "properties": { + "initialAddress": { + "type": "string" + }, + "nonce": { + "type": "string", + "format": "uint64" + }, + "initialAddressSignature": { + "$ref": "#/definitions/identityassociationsSignature", + "title": "Must be an addressable member" + } + }, + "description": "The first entry of any XID log. The XID must be deterministically derivable\nfrom the address and nonce.\nThe recovery address defaults to the initial associated_address unless\nthere is a subsequent ChangeRecoveryAddress in the log." + }, + "associationsIdentityAction": { + "type": "object", + "properties": { + "createInbox": { + "$ref": "#/definitions/associationsCreateInbox" + }, + "add": { + "$ref": "#/definitions/associationsAddAssociation" + }, + "revoke": { + "$ref": "#/definitions/associationsRevokeAssociation" + }, + "changeRecoveryAddress": { + "$ref": "#/definitions/associationsChangeRecoveryAddress" + } + }, + "title": "A single identity operation" + }, + "associationsIdentityUpdate": { + "type": "object", + "properties": { + "actions": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/associationsIdentityAction" + } + }, + "clientTimestampNs": { + "type": "string", + "format": "uint64" + }, + "inboxId": { + "type": "string" + } + }, + "description": "One or more identity actions that were signed together.\nExample: [CreateXid, AddAssociation, ChangeRecoveryAddress]\n1. The batched signature text is created by concatenating the signature text\n of each association together with a separator, '\\n\\n\\n'.\n2. The user signs this concatenated result.\n3. The resulting signature is added to each association proto where relevant.\n The same signature may be used for multiple associations in the array." + }, + "associationsLegacyDelegatedSignature": { + "type": "object", + "properties": { + "delegatedKey": { + "$ref": "#/definitions/message_contentsSignedPublicKey" + }, + "signature": { + "$ref": "#/definitions/associationsRecoverableEcdsaSignature" + } + }, + "description": "An existing address on xmtpv2 may have already signed a legacy identity key\nof type SignedPublicKey via the 'Create Identity' signature.\nFor migration to xmtpv3, the legacy key is permitted to sign on behalf of the\naddress to create a matching xmtpv3 installation key.\nThis signature type can ONLY be used for CreateXid and AddAssociation\npayloads, and can only be used once in xmtpv3." + }, + "associationsMemberIdentifier": { + "type": "object", + "properties": { + "address": { + "type": "string" + }, + "installationPublicKey": { + "type": "string", + "format": "byte" + } + }, + "title": "The identifier for a member of an XID" + }, + "associationsRecoverableEcdsaSignature": { + "type": "object", + "properties": { + "bytes": { + "type": "string", + "format": "byte", + "title": "65-bytes [ R || S || V ], with recovery id as the last byte" + } + }, + "title": "RecoverableEcdsaSignature for EIP-191 and V2 signatures" + }, + "associationsRecoverableEd25519Signature": { + "type": "object", + "properties": { + "bytes": { + "type": "string", + "format": "byte", + "title": "64 bytes [R(32 bytes) || S(32 bytes)]" + }, + "publicKey": { + "type": "string", + "format": "byte", + "title": "32 bytes" + } + }, + "title": "EdDSA signature for 25519" + }, + "associationsRevokeAssociation": { + "type": "object", + "properties": { + "memberToRevoke": { + "$ref": "#/definitions/associationsMemberIdentifier" + }, + "recoveryAddressSignature": { + "$ref": "#/definitions/identityassociationsSignature" + } + }, + "description": "Revokes a member from an XID. The recovery address must sign the revocation." + }, + "associationsSmartContractWalletSignature": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "title": "CAIP-10 string\nhttps://github.com/ChainAgnostic/CAIPs/blob/main/CAIPs/caip-10.md" + }, + "blockNumber": { + "type": "string", + "format": "uint64", + "title": "Specify the block number to verify the signature against" + }, + "signature": { + "type": "string", + "format": "byte", + "title": "The actual signature bytes" + } + }, + "title": "Smart Contract Wallet signature" + }, + "envelopesAuthenticatedData": { + "type": "object", + "properties": { + "targetOriginator": { + "type": "integer", + "format": "int64" + }, + "targetTopic": { + "type": "string", + "format": "byte" + }, + "lastSeen": { + "$ref": "#/definitions/envelopesVectorClock" + } + }, + "description": "Data visible to the server that has been authenticated by the client." + }, + "envelopesBlockchainProof": { + "type": "object", + "properties": { + "transactionHash": { + "type": "string", + "format": "byte" + } + }, + "title": "An alternative to a signature for blockchain payloads" + }, + "envelopesClientEnvelope": { + "type": "object", + "properties": { + "aad": { + "$ref": "#/definitions/envelopesAuthenticatedData" + }, + "groupMessage": { + "$ref": "#/definitions/v1GroupMessageInput" + }, + "welcomeMessage": { + "$ref": "#/definitions/v1WelcomeMessageInput" + }, + "uploadKeyPackage": { + "$ref": "#/definitions/v1UploadKeyPackageRequest" + }, + "identityUpdate": { + "$ref": "#/definitions/associationsIdentityUpdate" + } + } + }, + "envelopesOriginatorEnvelope": { + "type": "object", + "properties": { + "unsignedOriginatorEnvelope": { + "type": "string", + "format": "byte", + "title": "Protobuf serialized" + }, + "originatorSignature": { + "$ref": "#/definitions/associationsRecoverableEcdsaSignature" + }, + "blockchainProof": { + "$ref": "#/definitions/envelopesBlockchainProof" + } + }, + "title": "Signed originator envelope" + }, + "envelopesVectorClock": { + "type": "object", + "properties": { + "nodeIdToSequenceId": { + "type": "object", + "additionalProperties": { + "type": "string", + "format": "uint64" + } + } + }, + "description": "The last seen entry per originator. Originators that have not been seen are omitted.\nEntries MUST be sorted in ascending order, so that smaller node ID's appear first." + }, + "identityassociationsSignature": { + "type": "object", + "properties": { + "erc191": { + "$ref": "#/definitions/associationsRecoverableEcdsaSignature" + }, + "erc6492": { + "$ref": "#/definitions/associationsSmartContractWalletSignature" + }, + "installationKey": { + "$ref": "#/definitions/associationsRecoverableEd25519Signature" + }, + "delegatedErc191": { + "$ref": "#/definitions/associationsLegacyDelegatedSignature" + } + }, + "title": "A wrapper for all possible signature types" + }, + "message_contentsSignedPublicKey": { + "type": "object", + "properties": { + "keyBytes": { + "type": "string", + "format": "byte", + "title": "embeds an UnsignedPublicKey" + }, + "signature": { + "$ref": "#/definitions/xmtpmessage_contentsSignature", + "title": "signs key_bytes" + } + }, + "title": "SignedPublicKey" + }, + "payer_apiPublishClientEnvelopesRequest": { + "type": "object", + "properties": { + "envelopes": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/envelopesClientEnvelope" + } + } + } + }, + "payer_apiPublishClientEnvelopesResponse": { + "type": "object", + "properties": { + "originatorEnvelopes": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/envelopesOriginatorEnvelope" + } + } + } + }, + "protobufAny": { + "type": "object", + "properties": { + "@type": { + "type": "string" + } + }, + "additionalProperties": {} + }, + "rpcStatus": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/definitions/protobufAny" + } + } + } + }, + "v1GroupMessageInput": { + "type": "object", + "properties": { + "v1": { + "$ref": "#/definitions/v1GroupMessageInputV1" + } + }, + "title": "Input type for a group message" + }, + "v1GroupMessageInputV1": { + "type": "object", + "properties": { + "data": { + "type": "string", + "format": "byte", + "title": "Serialized MlsProtocolMessage" + }, + "senderHmac": { + "type": "string", + "format": "byte" + } + }, + "title": "Version 1 of the GroupMessageInput payload format" + }, + "v1KeyPackageUpload": { + "type": "object", + "properties": { + "keyPackageTlsSerialized": { + "type": "string", + "format": "byte", + "description": "The owner's wallet address would be extracted from the identity\ncredential in the key package, and all signatures would be validated." + } + }, + "description": "This would be a serialized MLS key package that the node would\n parse, validate, and then store.", + "title": "A wrapper around the Key Package bytes" + }, + "v1UploadKeyPackageRequest": { + "type": "object", + "properties": { + "keyPackage": { + "$ref": "#/definitions/v1KeyPackageUpload", + "title": "An individual key package upload request" + }, + "isInboxIdCredential": { + "type": "boolean" + } + }, + "title": "Upload a new key packages" + }, + "v1WelcomeMessageInput": { + "type": "object", + "properties": { + "v1": { + "$ref": "#/definitions/v1WelcomeMessageInputV1" + } + }, + "title": "Input type for a welcome message" + }, + "v1WelcomeMessageInputV1": { + "type": "object", + "properties": { + "installationKey": { + "type": "string", + "format": "byte" + }, + "data": { + "type": "string", + "format": "byte" + }, + "hpkePublicKey": { + "type": "string", + "format": "byte" + } + }, + "title": "Version 1 of the WelcomeMessageInput format" + }, + "xmtpmessage_contentsSignature": { + "type": "object", + "properties": { + "ecdsaCompact": { + "$ref": "#/definitions/SignatureECDSACompact" + }, + "walletEcdsaCompact": { + "$ref": "#/definitions/SignatureWalletECDSACompact" + } + }, + "description": "Signature represents a generalized public key signature,\ndefined as a union to support cryptographic algorithm agility." + } + } +} diff --git a/pkg/proto/xmtpv4/envelopes/envelopes.pb.go b/pkg/proto/xmtpv4/envelopes/envelopes.pb.go new file mode 100644 index 00000000..1f09b060 --- /dev/null +++ b/pkg/proto/xmtpv4/envelopes/envelopes.pb.go @@ -0,0 +1,721 @@ +// Message API for XMTP V4 + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.1 +// protoc (unknown) +// source: xmtpv4/envelopes/envelopes.proto + +package envelopes + +import ( + associations "github.com/xmtp/xmtp-node-go/pkg/proto/identity/associations" + v1 "github.com/xmtp/xmtp-node-go/pkg/proto/mls/api/v1" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// The last seen entry per originator. Originators that have not been seen are omitted. +// Entries MUST be sorted in ascending order, so that smaller node ID's appear first. +type VectorClock struct { + state protoimpl.MessageState `protogen:"open.v1"` + NodeIdToSequenceId map[uint32]uint64 `protobuf:"bytes,1,rep,name=node_id_to_sequence_id,json=nodeIdToSequenceId,proto3" json:"node_id_to_sequence_id,omitempty" protobuf_key:"varint,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *VectorClock) Reset() { + *x = VectorClock{} + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *VectorClock) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VectorClock) ProtoMessage() {} + +func (x *VectorClock) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VectorClock.ProtoReflect.Descriptor instead. +func (*VectorClock) Descriptor() ([]byte, []int) { + return file_xmtpv4_envelopes_envelopes_proto_rawDescGZIP(), []int{0} +} + +func (x *VectorClock) GetNodeIdToSequenceId() map[uint32]uint64 { + if x != nil { + return x.NodeIdToSequenceId + } + return nil +} + +// Data visible to the server that has been authenticated by the client. +type AuthenticatedData struct { + state protoimpl.MessageState `protogen:"open.v1"` + TargetOriginator uint32 `protobuf:"varint,1,opt,name=target_originator,json=targetOriginator,proto3" json:"target_originator,omitempty"` + TargetTopic []byte `protobuf:"bytes,2,opt,name=target_topic,json=targetTopic,proto3" json:"target_topic,omitempty"` + LastSeen *VectorClock `protobuf:"bytes,3,opt,name=last_seen,json=lastSeen,proto3" json:"last_seen,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *AuthenticatedData) Reset() { + *x = AuthenticatedData{} + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *AuthenticatedData) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AuthenticatedData) ProtoMessage() {} + +func (x *AuthenticatedData) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AuthenticatedData.ProtoReflect.Descriptor instead. +func (*AuthenticatedData) Descriptor() ([]byte, []int) { + return file_xmtpv4_envelopes_envelopes_proto_rawDescGZIP(), []int{1} +} + +func (x *AuthenticatedData) GetTargetOriginator() uint32 { + if x != nil { + return x.TargetOriginator + } + return 0 +} + +func (x *AuthenticatedData) GetTargetTopic() []byte { + if x != nil { + return x.TargetTopic + } + return nil +} + +func (x *AuthenticatedData) GetLastSeen() *VectorClock { + if x != nil { + return x.LastSeen + } + return nil +} + +type ClientEnvelope struct { + state protoimpl.MessageState `protogen:"open.v1"` + Aad *AuthenticatedData `protobuf:"bytes,1,opt,name=aad,proto3" json:"aad,omitempty"` + // Types that are valid to be assigned to Payload: + // + // *ClientEnvelope_GroupMessage + // *ClientEnvelope_WelcomeMessage + // *ClientEnvelope_UploadKeyPackage + // *ClientEnvelope_IdentityUpdate + Payload isClientEnvelope_Payload `protobuf_oneof:"payload"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ClientEnvelope) Reset() { + *x = ClientEnvelope{} + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ClientEnvelope) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ClientEnvelope) ProtoMessage() {} + +func (x *ClientEnvelope) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[2] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ClientEnvelope.ProtoReflect.Descriptor instead. +func (*ClientEnvelope) Descriptor() ([]byte, []int) { + return file_xmtpv4_envelopes_envelopes_proto_rawDescGZIP(), []int{2} +} + +func (x *ClientEnvelope) GetAad() *AuthenticatedData { + if x != nil { + return x.Aad + } + return nil +} + +func (x *ClientEnvelope) GetPayload() isClientEnvelope_Payload { + if x != nil { + return x.Payload + } + return nil +} + +func (x *ClientEnvelope) GetGroupMessage() *v1.GroupMessageInput { + if x != nil { + if x, ok := x.Payload.(*ClientEnvelope_GroupMessage); ok { + return x.GroupMessage + } + } + return nil +} + +func (x *ClientEnvelope) GetWelcomeMessage() *v1.WelcomeMessageInput { + if x != nil { + if x, ok := x.Payload.(*ClientEnvelope_WelcomeMessage); ok { + return x.WelcomeMessage + } + } + return nil +} + +func (x *ClientEnvelope) GetUploadKeyPackage() *v1.UploadKeyPackageRequest { + if x != nil { + if x, ok := x.Payload.(*ClientEnvelope_UploadKeyPackage); ok { + return x.UploadKeyPackage + } + } + return nil +} + +func (x *ClientEnvelope) GetIdentityUpdate() *associations.IdentityUpdate { + if x != nil { + if x, ok := x.Payload.(*ClientEnvelope_IdentityUpdate); ok { + return x.IdentityUpdate + } + } + return nil +} + +type isClientEnvelope_Payload interface { + isClientEnvelope_Payload() +} + +type ClientEnvelope_GroupMessage struct { + GroupMessage *v1.GroupMessageInput `protobuf:"bytes,2,opt,name=group_message,json=groupMessage,proto3,oneof"` +} + +type ClientEnvelope_WelcomeMessage struct { + WelcomeMessage *v1.WelcomeMessageInput `protobuf:"bytes,3,opt,name=welcome_message,json=welcomeMessage,proto3,oneof"` +} + +type ClientEnvelope_UploadKeyPackage struct { + UploadKeyPackage *v1.UploadKeyPackageRequest `protobuf:"bytes,4,opt,name=upload_key_package,json=uploadKeyPackage,proto3,oneof"` +} + +type ClientEnvelope_IdentityUpdate struct { + IdentityUpdate *associations.IdentityUpdate `protobuf:"bytes,5,opt,name=identity_update,json=identityUpdate,proto3,oneof"` +} + +func (*ClientEnvelope_GroupMessage) isClientEnvelope_Payload() {} + +func (*ClientEnvelope_WelcomeMessage) isClientEnvelope_Payload() {} + +func (*ClientEnvelope_UploadKeyPackage) isClientEnvelope_Payload() {} + +func (*ClientEnvelope_IdentityUpdate) isClientEnvelope_Payload() {} + +// Wraps client envelope with payer signature +type PayerEnvelope struct { + state protoimpl.MessageState `protogen:"open.v1"` + UnsignedClientEnvelope []byte `protobuf:"bytes,1,opt,name=unsigned_client_envelope,json=unsignedClientEnvelope,proto3" json:"unsigned_client_envelope,omitempty"` // Protobuf serialized + PayerSignature *associations.RecoverableEcdsaSignature `protobuf:"bytes,2,opt,name=payer_signature,json=payerSignature,proto3" json:"payer_signature,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PayerEnvelope) Reset() { + *x = PayerEnvelope{} + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PayerEnvelope) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PayerEnvelope) ProtoMessage() {} + +func (x *PayerEnvelope) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[3] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PayerEnvelope.ProtoReflect.Descriptor instead. +func (*PayerEnvelope) Descriptor() ([]byte, []int) { + return file_xmtpv4_envelopes_envelopes_proto_rawDescGZIP(), []int{3} +} + +func (x *PayerEnvelope) GetUnsignedClientEnvelope() []byte { + if x != nil { + return x.UnsignedClientEnvelope + } + return nil +} + +func (x *PayerEnvelope) GetPayerSignature() *associations.RecoverableEcdsaSignature { + if x != nil { + return x.PayerSignature + } + return nil +} + +// For blockchain envelopes, these fields are set by the smart contract +type UnsignedOriginatorEnvelope struct { + state protoimpl.MessageState `protogen:"open.v1"` + OriginatorNodeId uint32 `protobuf:"varint,1,opt,name=originator_node_id,json=originatorNodeId,proto3" json:"originator_node_id,omitempty"` + OriginatorSequenceId uint64 `protobuf:"varint,2,opt,name=originator_sequence_id,json=originatorSequenceId,proto3" json:"originator_sequence_id,omitempty"` + OriginatorNs int64 `protobuf:"varint,3,opt,name=originator_ns,json=originatorNs,proto3" json:"originator_ns,omitempty"` + PayerEnvelope *PayerEnvelope `protobuf:"bytes,4,opt,name=payer_envelope,json=payerEnvelope,proto3" json:"payer_envelope,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *UnsignedOriginatorEnvelope) Reset() { + *x = UnsignedOriginatorEnvelope{} + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *UnsignedOriginatorEnvelope) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UnsignedOriginatorEnvelope) ProtoMessage() {} + +func (x *UnsignedOriginatorEnvelope) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[4] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UnsignedOriginatorEnvelope.ProtoReflect.Descriptor instead. +func (*UnsignedOriginatorEnvelope) Descriptor() ([]byte, []int) { + return file_xmtpv4_envelopes_envelopes_proto_rawDescGZIP(), []int{4} +} + +func (x *UnsignedOriginatorEnvelope) GetOriginatorNodeId() uint32 { + if x != nil { + return x.OriginatorNodeId + } + return 0 +} + +func (x *UnsignedOriginatorEnvelope) GetOriginatorSequenceId() uint64 { + if x != nil { + return x.OriginatorSequenceId + } + return 0 +} + +func (x *UnsignedOriginatorEnvelope) GetOriginatorNs() int64 { + if x != nil { + return x.OriginatorNs + } + return 0 +} + +func (x *UnsignedOriginatorEnvelope) GetPayerEnvelope() *PayerEnvelope { + if x != nil { + return x.PayerEnvelope + } + return nil +} + +// An alternative to a signature for blockchain payloads +type BlockchainProof struct { + state protoimpl.MessageState `protogen:"open.v1"` + TransactionHash []byte `protobuf:"bytes,1,opt,name=transaction_hash,json=transactionHash,proto3" json:"transaction_hash,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *BlockchainProof) Reset() { + *x = BlockchainProof{} + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *BlockchainProof) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BlockchainProof) ProtoMessage() {} + +func (x *BlockchainProof) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[5] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BlockchainProof.ProtoReflect.Descriptor instead. +func (*BlockchainProof) Descriptor() ([]byte, []int) { + return file_xmtpv4_envelopes_envelopes_proto_rawDescGZIP(), []int{5} +} + +func (x *BlockchainProof) GetTransactionHash() []byte { + if x != nil { + return x.TransactionHash + } + return nil +} + +// Signed originator envelope +type OriginatorEnvelope struct { + state protoimpl.MessageState `protogen:"open.v1"` + UnsignedOriginatorEnvelope []byte `protobuf:"bytes,1,opt,name=unsigned_originator_envelope,json=unsignedOriginatorEnvelope,proto3" json:"unsigned_originator_envelope,omitempty"` // Protobuf serialized + // Types that are valid to be assigned to Proof: + // + // *OriginatorEnvelope_OriginatorSignature + // *OriginatorEnvelope_BlockchainProof + Proof isOriginatorEnvelope_Proof `protobuf_oneof:"proof"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *OriginatorEnvelope) Reset() { + *x = OriginatorEnvelope{} + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *OriginatorEnvelope) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OriginatorEnvelope) ProtoMessage() {} + +func (x *OriginatorEnvelope) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_envelopes_envelopes_proto_msgTypes[6] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OriginatorEnvelope.ProtoReflect.Descriptor instead. +func (*OriginatorEnvelope) Descriptor() ([]byte, []int) { + return file_xmtpv4_envelopes_envelopes_proto_rawDescGZIP(), []int{6} +} + +func (x *OriginatorEnvelope) GetUnsignedOriginatorEnvelope() []byte { + if x != nil { + return x.UnsignedOriginatorEnvelope + } + return nil +} + +func (x *OriginatorEnvelope) GetProof() isOriginatorEnvelope_Proof { + if x != nil { + return x.Proof + } + return nil +} + +func (x *OriginatorEnvelope) GetOriginatorSignature() *associations.RecoverableEcdsaSignature { + if x != nil { + if x, ok := x.Proof.(*OriginatorEnvelope_OriginatorSignature); ok { + return x.OriginatorSignature + } + } + return nil +} + +func (x *OriginatorEnvelope) GetBlockchainProof() *BlockchainProof { + if x != nil { + if x, ok := x.Proof.(*OriginatorEnvelope_BlockchainProof); ok { + return x.BlockchainProof + } + } + return nil +} + +type isOriginatorEnvelope_Proof interface { + isOriginatorEnvelope_Proof() +} + +type OriginatorEnvelope_OriginatorSignature struct { + OriginatorSignature *associations.RecoverableEcdsaSignature `protobuf:"bytes,2,opt,name=originator_signature,json=originatorSignature,proto3,oneof"` +} + +type OriginatorEnvelope_BlockchainProof struct { + BlockchainProof *BlockchainProof `protobuf:"bytes,3,opt,name=blockchain_proof,json=blockchainProof,proto3,oneof"` +} + +func (*OriginatorEnvelope_OriginatorSignature) isOriginatorEnvelope_Proof() {} + +func (*OriginatorEnvelope_BlockchainProof) isOriginatorEnvelope_Proof() {} + +var File_xmtpv4_envelopes_envelopes_proto protoreflect.FileDescriptor + +var file_xmtpv4_envelopes_envelopes_proto_rawDesc = []byte{ + 0x0a, 0x20, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, + 0x65, 0x73, 0x2f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x15, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, + 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x1a, 0x27, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x2f, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x2f, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x1a, 0x25, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x61, 0x73, 0x73, + 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x6d, 0x6c, 0x73, 0x2f, 0x61, + 0x70, 0x69, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x6c, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, + 0xc4, 0x01, 0x0a, 0x0b, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x12, + 0x6e, 0x0a, 0x16, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, + 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x3a, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x65, 0x6e, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6c, + 0x6f, 0x63, 0x6b, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x54, 0x6f, 0x53, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x12, 0x6e, 0x6f, 0x64, + 0x65, 0x49, 0x64, 0x54, 0x6f, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x1a, + 0x45, 0x0a, 0x17, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x54, 0x6f, 0x53, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x65, 0x49, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa4, 0x01, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x68, 0x65, + 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x11, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4f, + 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x3f, 0x0a, 0x09, + 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x22, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x65, 0x6e, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6c, + 0x6f, 0x63, 0x6b, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x22, 0xa4, 0x03, + 0x0a, 0x0e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, + 0x12, 0x3a, 0x0a, 0x03, 0x61, 0x61, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x65, 0x6e, 0x76, 0x65, + 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, + 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x03, 0x61, 0x61, 0x64, 0x12, 0x49, 0x0a, 0x0d, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x4f, 0x0a, 0x0f, 0x77, 0x65, 0x6c, 0x63, 0x6f, + 0x6d, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x24, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x76, 0x31, 0x2e, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, + 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x58, 0x0a, 0x12, 0x75, 0x70, 0x6c, 0x6f, + 0x61, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4b, 0x65, 0x79, + 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, + 0x52, 0x10, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4b, 0x65, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x61, + 0x67, 0x65, 0x12, 0x55, 0x0a, 0x0f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x6d, + 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, + 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x70, 0x61, 0x79, + 0x6c, 0x6f, 0x61, 0x64, 0x22, 0xa9, 0x01, 0x0a, 0x0d, 0x50, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, + 0x65, 0x64, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, + 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x16, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, + 0x65, 0x64, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, + 0x12, 0x5e, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x78, 0x6d, 0x74, 0x70, + 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x62, + 0x6c, 0x65, 0x45, 0x63, 0x64, 0x73, 0x61, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x52, 0x0e, 0x70, 0x61, 0x79, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x22, 0xf2, 0x01, 0x0a, 0x1a, 0x55, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x4f, 0x72, 0x69, + 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, + 0x2c, 0x0a, 0x12, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x6e, 0x6f, + 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6f, 0x72, 0x69, + 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x34, 0x0a, + 0x16, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x71, 0x75, + 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x6f, + 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, + 0x72, 0x5f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x73, 0x12, 0x4b, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x24, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x65, + 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x50, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x76, + 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x22, 0x3c, 0x0a, 0x0f, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x68, + 0x61, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x72, 0x61, 0x6e, + 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0c, 0x52, 0x0f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, + 0x61, 0x73, 0x68, 0x22, 0xa0, 0x02, 0x0a, 0x12, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, + 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x40, 0x0a, 0x1c, 0x75, 0x6e, + 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, + 0x72, 0x5f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x1a, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, + 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x6a, 0x0a, 0x14, + 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x78, 0x6d, 0x74, + 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, + 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, + 0x62, 0x6c, 0x65, 0x45, 0x63, 0x64, 0x73, 0x61, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x48, 0x00, 0x52, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x53, + 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x53, 0x0a, 0x10, 0x62, 0x6c, 0x6f, 0x63, + 0x6b, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, + 0x2e, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x48, 0x00, 0x52, 0x0f, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x42, 0x07, 0x0a, + 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x42, 0xda, 0x01, 0x0a, 0x19, 0x63, 0x6f, 0x6d, 0x2e, 0x78, + 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x65, 0x6e, 0x76, 0x65, 0x6c, + 0x6f, 0x70, 0x65, 0x73, 0x42, 0x0e, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x37, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2d, 0x6e, 0x6f, 0x64, + 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x78, + 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0xa2, + 0x02, 0x03, 0x58, 0x58, 0x45, 0xaa, 0x02, 0x15, 0x58, 0x6d, 0x74, 0x70, 0x2e, 0x58, 0x6d, 0x74, + 0x70, 0x76, 0x34, 0x2e, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0xca, 0x02, 0x15, + 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x58, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x5c, 0x45, 0x6e, 0x76, 0x65, + 0x6c, 0x6f, 0x70, 0x65, 0x73, 0xe2, 0x02, 0x21, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x58, 0x6d, 0x74, + 0x70, 0x76, 0x34, 0x5c, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x5c, 0x47, 0x50, + 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x17, 0x58, 0x6d, 0x74, 0x70, + 0x3a, 0x3a, 0x58, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x3a, 0x3a, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, + 0x70, 0x65, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_xmtpv4_envelopes_envelopes_proto_rawDescOnce sync.Once + file_xmtpv4_envelopes_envelopes_proto_rawDescData = file_xmtpv4_envelopes_envelopes_proto_rawDesc +) + +func file_xmtpv4_envelopes_envelopes_proto_rawDescGZIP() []byte { + file_xmtpv4_envelopes_envelopes_proto_rawDescOnce.Do(func() { + file_xmtpv4_envelopes_envelopes_proto_rawDescData = protoimpl.X.CompressGZIP(file_xmtpv4_envelopes_envelopes_proto_rawDescData) + }) + return file_xmtpv4_envelopes_envelopes_proto_rawDescData +} + +var file_xmtpv4_envelopes_envelopes_proto_msgTypes = make([]protoimpl.MessageInfo, 8) +var file_xmtpv4_envelopes_envelopes_proto_goTypes = []any{ + (*VectorClock)(nil), // 0: xmtp.xmtpv4.envelopes.VectorClock + (*AuthenticatedData)(nil), // 1: xmtp.xmtpv4.envelopes.AuthenticatedData + (*ClientEnvelope)(nil), // 2: xmtp.xmtpv4.envelopes.ClientEnvelope + (*PayerEnvelope)(nil), // 3: xmtp.xmtpv4.envelopes.PayerEnvelope + (*UnsignedOriginatorEnvelope)(nil), // 4: xmtp.xmtpv4.envelopes.UnsignedOriginatorEnvelope + (*BlockchainProof)(nil), // 5: xmtp.xmtpv4.envelopes.BlockchainProof + (*OriginatorEnvelope)(nil), // 6: xmtp.xmtpv4.envelopes.OriginatorEnvelope + nil, // 7: xmtp.xmtpv4.envelopes.VectorClock.NodeIdToSequenceIdEntry + (*v1.GroupMessageInput)(nil), // 8: xmtp.mls.api.v1.GroupMessageInput + (*v1.WelcomeMessageInput)(nil), // 9: xmtp.mls.api.v1.WelcomeMessageInput + (*v1.UploadKeyPackageRequest)(nil), // 10: xmtp.mls.api.v1.UploadKeyPackageRequest + (*associations.IdentityUpdate)(nil), // 11: xmtp.identity.associations.IdentityUpdate + (*associations.RecoverableEcdsaSignature)(nil), // 12: xmtp.identity.associations.RecoverableEcdsaSignature +} +var file_xmtpv4_envelopes_envelopes_proto_depIdxs = []int32{ + 7, // 0: xmtp.xmtpv4.envelopes.VectorClock.node_id_to_sequence_id:type_name -> xmtp.xmtpv4.envelopes.VectorClock.NodeIdToSequenceIdEntry + 0, // 1: xmtp.xmtpv4.envelopes.AuthenticatedData.last_seen:type_name -> xmtp.xmtpv4.envelopes.VectorClock + 1, // 2: xmtp.xmtpv4.envelopes.ClientEnvelope.aad:type_name -> xmtp.xmtpv4.envelopes.AuthenticatedData + 8, // 3: xmtp.xmtpv4.envelopes.ClientEnvelope.group_message:type_name -> xmtp.mls.api.v1.GroupMessageInput + 9, // 4: xmtp.xmtpv4.envelopes.ClientEnvelope.welcome_message:type_name -> xmtp.mls.api.v1.WelcomeMessageInput + 10, // 5: xmtp.xmtpv4.envelopes.ClientEnvelope.upload_key_package:type_name -> xmtp.mls.api.v1.UploadKeyPackageRequest + 11, // 6: xmtp.xmtpv4.envelopes.ClientEnvelope.identity_update:type_name -> xmtp.identity.associations.IdentityUpdate + 12, // 7: xmtp.xmtpv4.envelopes.PayerEnvelope.payer_signature:type_name -> xmtp.identity.associations.RecoverableEcdsaSignature + 3, // 8: xmtp.xmtpv4.envelopes.UnsignedOriginatorEnvelope.payer_envelope:type_name -> xmtp.xmtpv4.envelopes.PayerEnvelope + 12, // 9: xmtp.xmtpv4.envelopes.OriginatorEnvelope.originator_signature:type_name -> xmtp.identity.associations.RecoverableEcdsaSignature + 5, // 10: xmtp.xmtpv4.envelopes.OriginatorEnvelope.blockchain_proof:type_name -> xmtp.xmtpv4.envelopes.BlockchainProof + 11, // [11:11] is the sub-list for method output_type + 11, // [11:11] is the sub-list for method input_type + 11, // [11:11] is the sub-list for extension type_name + 11, // [11:11] is the sub-list for extension extendee + 0, // [0:11] is the sub-list for field type_name +} + +func init() { file_xmtpv4_envelopes_envelopes_proto_init() } +func file_xmtpv4_envelopes_envelopes_proto_init() { + if File_xmtpv4_envelopes_envelopes_proto != nil { + return + } + file_xmtpv4_envelopes_envelopes_proto_msgTypes[2].OneofWrappers = []any{ + (*ClientEnvelope_GroupMessage)(nil), + (*ClientEnvelope_WelcomeMessage)(nil), + (*ClientEnvelope_UploadKeyPackage)(nil), + (*ClientEnvelope_IdentityUpdate)(nil), + } + file_xmtpv4_envelopes_envelopes_proto_msgTypes[6].OneofWrappers = []any{ + (*OriginatorEnvelope_OriginatorSignature)(nil), + (*OriginatorEnvelope_BlockchainProof)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_xmtpv4_envelopes_envelopes_proto_rawDesc, + NumEnums: 0, + NumMessages: 8, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_xmtpv4_envelopes_envelopes_proto_goTypes, + DependencyIndexes: file_xmtpv4_envelopes_envelopes_proto_depIdxs, + MessageInfos: file_xmtpv4_envelopes_envelopes_proto_msgTypes, + }.Build() + File_xmtpv4_envelopes_envelopes_proto = out.File + file_xmtpv4_envelopes_envelopes_proto_rawDesc = nil + file_xmtpv4_envelopes_envelopes_proto_goTypes = nil + file_xmtpv4_envelopes_envelopes_proto_depIdxs = nil +} diff --git a/pkg/proto/xmtpv4/message_api/message_api.pb.go b/pkg/proto/xmtpv4/message_api/message_api.pb.go index 8de036bc..2b0b08d1 100644 --- a/pkg/proto/xmtpv4/message_api/message_api.pb.go +++ b/pkg/proto/xmtpv4/message_api/message_api.pb.go @@ -2,15 +2,14 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.35.1 +// protoc-gen-go v1.36.1 // protoc (unknown) // source: xmtpv4/message_api/message_api.proto package message_api import ( - associations "github.com/xmtp/xmtp-node-go/pkg/proto/identity/associations" - v1 "github.com/xmtp/xmtp-node-go/pkg/proto/mls/api/v1" + envelopes "github.com/xmtp/xmtp-node-go/pkg/proto/xmtpv4/envelopes" _ "google.golang.org/genproto/googleapis/api/annotations" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" @@ -81,538 +80,18 @@ func (Misbehavior) EnumDescriptor() ([]byte, []int) { return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{0} } -// The last seen entry per originator. Originators that have not been seen are omitted. -// Entries MUST be sorted in ascending order, so that smaller node ID's appear first. -type VectorClock struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - NodeIdToSequenceId map[uint32]uint64 `protobuf:"bytes,1,rep,name=node_id_to_sequence_id,json=nodeIdToSequenceId,proto3" json:"node_id_to_sequence_id,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` -} - -func (x *VectorClock) Reset() { - *x = VectorClock{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *VectorClock) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*VectorClock) ProtoMessage() {} - -func (x *VectorClock) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[0] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use VectorClock.ProtoReflect.Descriptor instead. -func (*VectorClock) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{0} -} - -func (x *VectorClock) GetNodeIdToSequenceId() map[uint32]uint64 { - if x != nil { - return x.NodeIdToSequenceId - } - return nil -} - -// Data visible to the server that has been authenticated by the client. -type AuthenticatedData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TargetOriginator uint32 `protobuf:"varint,1,opt,name=target_originator,json=targetOriginator,proto3" json:"target_originator,omitempty"` - TargetTopic []byte `protobuf:"bytes,2,opt,name=target_topic,json=targetTopic,proto3" json:"target_topic,omitempty"` - LastSeen *VectorClock `protobuf:"bytes,3,opt,name=last_seen,json=lastSeen,proto3" json:"last_seen,omitempty"` -} - -func (x *AuthenticatedData) Reset() { - *x = AuthenticatedData{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *AuthenticatedData) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AuthenticatedData) ProtoMessage() {} - -func (x *AuthenticatedData) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[1] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use AuthenticatedData.ProtoReflect.Descriptor instead. -func (*AuthenticatedData) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{1} -} - -func (x *AuthenticatedData) GetTargetOriginator() uint32 { - if x != nil { - return x.TargetOriginator - } - return 0 -} - -func (x *AuthenticatedData) GetTargetTopic() []byte { - if x != nil { - return x.TargetTopic - } - return nil -} - -func (x *AuthenticatedData) GetLastSeen() *VectorClock { - if x != nil { - return x.LastSeen - } - return nil -} - -type ClientEnvelope struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Payload: - // - // *ClientEnvelope_GroupMessage - // *ClientEnvelope_WelcomeMessage - // *ClientEnvelope_RegisterInstallation - // *ClientEnvelope_UploadKeyPackage - // *ClientEnvelope_RevokeInstallation - // *ClientEnvelope_IdentityUpdate - Payload isClientEnvelope_Payload `protobuf_oneof:"payload"` - Aad *AuthenticatedData `protobuf:"bytes,6,opt,name=aad,proto3" json:"aad,omitempty"` -} - -func (x *ClientEnvelope) Reset() { - *x = ClientEnvelope{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *ClientEnvelope) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ClientEnvelope) ProtoMessage() {} - -func (x *ClientEnvelope) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[2] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ClientEnvelope.ProtoReflect.Descriptor instead. -func (*ClientEnvelope) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{2} -} - -func (m *ClientEnvelope) GetPayload() isClientEnvelope_Payload { - if m != nil { - return m.Payload - } - return nil -} - -func (x *ClientEnvelope) GetGroupMessage() *v1.GroupMessageInput { - if x, ok := x.GetPayload().(*ClientEnvelope_GroupMessage); ok { - return x.GroupMessage - } - return nil -} - -func (x *ClientEnvelope) GetWelcomeMessage() *v1.WelcomeMessageInput { - if x, ok := x.GetPayload().(*ClientEnvelope_WelcomeMessage); ok { - return x.WelcomeMessage - } - return nil -} - -func (x *ClientEnvelope) GetRegisterInstallation() *v1.RegisterInstallationRequest { - if x, ok := x.GetPayload().(*ClientEnvelope_RegisterInstallation); ok { - return x.RegisterInstallation - } - return nil -} - -func (x *ClientEnvelope) GetUploadKeyPackage() *v1.UploadKeyPackageRequest { - if x, ok := x.GetPayload().(*ClientEnvelope_UploadKeyPackage); ok { - return x.UploadKeyPackage - } - return nil -} - -func (x *ClientEnvelope) GetRevokeInstallation() *v1.RevokeInstallationRequest { - if x, ok := x.GetPayload().(*ClientEnvelope_RevokeInstallation); ok { - return x.RevokeInstallation - } - return nil -} - -func (x *ClientEnvelope) GetIdentityUpdate() *associations.IdentityUpdate { - if x, ok := x.GetPayload().(*ClientEnvelope_IdentityUpdate); ok { - return x.IdentityUpdate - } - return nil -} - -func (x *ClientEnvelope) GetAad() *AuthenticatedData { - if x != nil { - return x.Aad - } - return nil -} - -type isClientEnvelope_Payload interface { - isClientEnvelope_Payload() -} - -type ClientEnvelope_GroupMessage struct { - GroupMessage *v1.GroupMessageInput `protobuf:"bytes,1,opt,name=group_message,json=groupMessage,proto3,oneof"` -} - -type ClientEnvelope_WelcomeMessage struct { - WelcomeMessage *v1.WelcomeMessageInput `protobuf:"bytes,2,opt,name=welcome_message,json=welcomeMessage,proto3,oneof"` -} - -type ClientEnvelope_RegisterInstallation struct { - RegisterInstallation *v1.RegisterInstallationRequest `protobuf:"bytes,3,opt,name=register_installation,json=registerInstallation,proto3,oneof"` -} - -type ClientEnvelope_UploadKeyPackage struct { - UploadKeyPackage *v1.UploadKeyPackageRequest `protobuf:"bytes,4,opt,name=upload_key_package,json=uploadKeyPackage,proto3,oneof"` -} - -type ClientEnvelope_RevokeInstallation struct { - RevokeInstallation *v1.RevokeInstallationRequest `protobuf:"bytes,5,opt,name=revoke_installation,json=revokeInstallation,proto3,oneof"` -} - -type ClientEnvelope_IdentityUpdate struct { - IdentityUpdate *associations.IdentityUpdate `protobuf:"bytes,7,opt,name=identity_update,json=identityUpdate,proto3,oneof"` -} - -func (*ClientEnvelope_GroupMessage) isClientEnvelope_Payload() {} - -func (*ClientEnvelope_WelcomeMessage) isClientEnvelope_Payload() {} - -func (*ClientEnvelope_RegisterInstallation) isClientEnvelope_Payload() {} - -func (*ClientEnvelope_UploadKeyPackage) isClientEnvelope_Payload() {} - -func (*ClientEnvelope_RevokeInstallation) isClientEnvelope_Payload() {} - -func (*ClientEnvelope_IdentityUpdate) isClientEnvelope_Payload() {} - -// Wraps client envelope with payer signature -type PayerEnvelope struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UnsignedClientEnvelope []byte `protobuf:"bytes,1,opt,name=unsigned_client_envelope,json=unsignedClientEnvelope,proto3" json:"unsigned_client_envelope,omitempty"` // Protobuf serialized - PayerSignature *associations.RecoverableEcdsaSignature `protobuf:"bytes,2,opt,name=payer_signature,json=payerSignature,proto3" json:"payer_signature,omitempty"` -} - -func (x *PayerEnvelope) Reset() { - *x = PayerEnvelope{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *PayerEnvelope) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PayerEnvelope) ProtoMessage() {} - -func (x *PayerEnvelope) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[3] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PayerEnvelope.ProtoReflect.Descriptor instead. -func (*PayerEnvelope) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{3} -} - -func (x *PayerEnvelope) GetUnsignedClientEnvelope() []byte { - if x != nil { - return x.UnsignedClientEnvelope - } - return nil -} - -func (x *PayerEnvelope) GetPayerSignature() *associations.RecoverableEcdsaSignature { - if x != nil { - return x.PayerSignature - } - return nil -} - -// For blockchain envelopes, the originator_sid is set by the smart contract, -// but the originator_ns is set by the publishing node -type UnsignedOriginatorEnvelope struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OriginatorNodeId uint32 `protobuf:"varint,1,opt,name=originator_node_id,json=originatorNodeId,proto3" json:"originator_node_id,omitempty"` - OriginatorSequenceId uint64 `protobuf:"varint,2,opt,name=originator_sequence_id,json=originatorSequenceId,proto3" json:"originator_sequence_id,omitempty"` - OriginatorNs int64 `protobuf:"varint,3,opt,name=originator_ns,json=originatorNs,proto3" json:"originator_ns,omitempty"` - PayerEnvelope *PayerEnvelope `protobuf:"bytes,4,opt,name=payer_envelope,json=payerEnvelope,proto3" json:"payer_envelope,omitempty"` -} - -func (x *UnsignedOriginatorEnvelope) Reset() { - *x = UnsignedOriginatorEnvelope{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *UnsignedOriginatorEnvelope) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UnsignedOriginatorEnvelope) ProtoMessage() {} - -func (x *UnsignedOriginatorEnvelope) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[4] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UnsignedOriginatorEnvelope.ProtoReflect.Descriptor instead. -func (*UnsignedOriginatorEnvelope) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{4} -} - -func (x *UnsignedOriginatorEnvelope) GetOriginatorNodeId() uint32 { - if x != nil { - return x.OriginatorNodeId - } - return 0 -} - -func (x *UnsignedOriginatorEnvelope) GetOriginatorSequenceId() uint64 { - if x != nil { - return x.OriginatorSequenceId - } - return 0 -} - -func (x *UnsignedOriginatorEnvelope) GetOriginatorNs() int64 { - if x != nil { - return x.OriginatorNs - } - return 0 -} - -func (x *UnsignedOriginatorEnvelope) GetPayerEnvelope() *PayerEnvelope { - if x != nil { - return x.PayerEnvelope - } - return nil -} - -// An alternative to a signature for blockchain payloads -type BlockchainProof struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - BlockNumber uint64 `protobuf:"varint,1,opt,name=block_number,json=blockNumber,proto3" json:"block_number,omitempty"` - PublisherNodeId uint32 `protobuf:"varint,2,opt,name=publisher_node_id,json=publisherNodeId,proto3" json:"publisher_node_id,omitempty"` -} - -func (x *BlockchainProof) Reset() { - *x = BlockchainProof{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *BlockchainProof) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BlockchainProof) ProtoMessage() {} - -func (x *BlockchainProof) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[5] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use BlockchainProof.ProtoReflect.Descriptor instead. -func (*BlockchainProof) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{5} -} - -func (x *BlockchainProof) GetBlockNumber() uint64 { - if x != nil { - return x.BlockNumber - } - return 0 -} - -func (x *BlockchainProof) GetPublisherNodeId() uint32 { - if x != nil { - return x.PublisherNodeId - } - return 0 -} - -// Signed originator envelope -type OriginatorEnvelope struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UnsignedOriginatorEnvelope []byte `protobuf:"bytes,1,opt,name=unsigned_originator_envelope,json=unsignedOriginatorEnvelope,proto3" json:"unsigned_originator_envelope,omitempty"` // Protobuf serialized - // Types that are assignable to Proof: - // - // *OriginatorEnvelope_OriginatorSignature - // *OriginatorEnvelope_BlockchainProof - Proof isOriginatorEnvelope_Proof `protobuf_oneof:"proof"` -} - -func (x *OriginatorEnvelope) Reset() { - *x = OriginatorEnvelope{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *OriginatorEnvelope) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OriginatorEnvelope) ProtoMessage() {} - -func (x *OriginatorEnvelope) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[6] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use OriginatorEnvelope.ProtoReflect.Descriptor instead. -func (*OriginatorEnvelope) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{6} -} - -func (x *OriginatorEnvelope) GetUnsignedOriginatorEnvelope() []byte { - if x != nil { - return x.UnsignedOriginatorEnvelope - } - return nil -} - -func (m *OriginatorEnvelope) GetProof() isOriginatorEnvelope_Proof { - if m != nil { - return m.Proof - } - return nil -} - -func (x *OriginatorEnvelope) GetOriginatorSignature() *associations.RecoverableEcdsaSignature { - if x, ok := x.GetProof().(*OriginatorEnvelope_OriginatorSignature); ok { - return x.OriginatorSignature - } - return nil -} - -func (x *OriginatorEnvelope) GetBlockchainProof() *BlockchainProof { - if x, ok := x.GetProof().(*OriginatorEnvelope_BlockchainProof); ok { - return x.BlockchainProof - } - return nil -} - -type isOriginatorEnvelope_Proof interface { - isOriginatorEnvelope_Proof() -} - -type OriginatorEnvelope_OriginatorSignature struct { - OriginatorSignature *associations.RecoverableEcdsaSignature `protobuf:"bytes,2,opt,name=originator_signature,json=originatorSignature,proto3,oneof"` -} - -type OriginatorEnvelope_BlockchainProof struct { - BlockchainProof *BlockchainProof `protobuf:"bytes,3,opt,name=blockchain_proof,json=blockchainProof,proto3,oneof"` -} - -func (*OriginatorEnvelope_OriginatorSignature) isOriginatorEnvelope_Proof() {} - -func (*OriginatorEnvelope_BlockchainProof) isOriginatorEnvelope_Proof() {} - // Reports node misbehavior, submittable by nodes or by clients type MisbehaviorReport struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Type Misbehavior `protobuf:"varint,1,opt,name=type,proto3,enum=xmtp.xmtpv4.message_api.Misbehavior" json:"type,omitempty"` + Envelopes []*envelopes.OriginatorEnvelope `protobuf:"bytes,2,rep,name=envelopes,proto3" json:"envelopes,omitempty"` unknownFields protoimpl.UnknownFields - - Type Misbehavior `protobuf:"varint,1,opt,name=type,proto3,enum=xmtp.xmtpv4.Misbehavior" json:"type,omitempty"` - Envelopes []*OriginatorEnvelope `protobuf:"bytes,2,rep,name=envelopes,proto3" json:"envelopes,omitempty"` + sizeCache protoimpl.SizeCache } func (x *MisbehaviorReport) Reset() { *x = MisbehaviorReport{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[7] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -624,7 +103,7 @@ func (x *MisbehaviorReport) String() string { func (*MisbehaviorReport) ProtoMessage() {} func (x *MisbehaviorReport) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[7] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[0] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -637,7 +116,7 @@ func (x *MisbehaviorReport) ProtoReflect() protoreflect.Message { // Deprecated: Use MisbehaviorReport.ProtoReflect.Descriptor instead. func (*MisbehaviorReport) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{7} + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{0} } func (x *MisbehaviorReport) GetType() Misbehavior { @@ -647,7 +126,7 @@ func (x *MisbehaviorReport) GetType() Misbehavior { return Misbehavior_MISBEHAVIOR_UNSPECIFIED } -func (x *MisbehaviorReport) GetEnvelopes() []*OriginatorEnvelope { +func (x *MisbehaviorReport) GetEnvelopes() []*envelopes.OriginatorEnvelope { if x != nil { return x.Envelopes } @@ -655,22 +134,21 @@ func (x *MisbehaviorReport) GetEnvelopes() []*OriginatorEnvelope { } // Query for envelopes, shared by query and subscribe endpoints +// Either topics or originator_node_ids may be set, but not both type EnvelopesQuery struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Filter: - // - // *EnvelopesQuery_Topic - // *EnvelopesQuery_OriginatorNodeId - Filter isEnvelopesQuery_Filter `protobuf_oneof:"filter"` - LastSeen *VectorClock `protobuf:"bytes,3,opt,name=last_seen,json=lastSeen,proto3" json:"last_seen,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + // Client queries + Topics [][]byte `protobuf:"bytes,1,rep,name=topics,proto3" json:"topics,omitempty"` + // Node queries + OriginatorNodeIds []uint32 `protobuf:"varint,2,rep,packed,name=originator_node_ids,json=originatorNodeIds,proto3" json:"originator_node_ids,omitempty"` + LastSeen *envelopes.VectorClock `protobuf:"bytes,3,opt,name=last_seen,json=lastSeen,proto3" json:"last_seen,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *EnvelopesQuery) Reset() { *x = EnvelopesQuery{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[8] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -682,7 +160,7 @@ func (x *EnvelopesQuery) String() string { func (*EnvelopesQuery) ProtoMessage() {} func (x *EnvelopesQuery) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[8] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[1] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -695,79 +173,53 @@ func (x *EnvelopesQuery) ProtoReflect() protoreflect.Message { // Deprecated: Use EnvelopesQuery.ProtoReflect.Descriptor instead. func (*EnvelopesQuery) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{8} + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{1} } -func (m *EnvelopesQuery) GetFilter() isEnvelopesQuery_Filter { - if m != nil { - return m.Filter +func (x *EnvelopesQuery) GetTopics() [][]byte { + if x != nil { + return x.Topics } return nil } -func (x *EnvelopesQuery) GetTopic() []byte { - if x, ok := x.GetFilter().(*EnvelopesQuery_Topic); ok { - return x.Topic +func (x *EnvelopesQuery) GetOriginatorNodeIds() []uint32 { + if x != nil { + return x.OriginatorNodeIds } return nil } -func (x *EnvelopesQuery) GetOriginatorNodeId() uint32 { - if x, ok := x.GetFilter().(*EnvelopesQuery_OriginatorNodeId); ok { - return x.OriginatorNodeId - } - return 0 -} - -func (x *EnvelopesQuery) GetLastSeen() *VectorClock { +func (x *EnvelopesQuery) GetLastSeen() *envelopes.VectorClock { if x != nil { return x.LastSeen } return nil } -type isEnvelopesQuery_Filter interface { - isEnvelopesQuery_Filter() -} - -type EnvelopesQuery_Topic struct { - // Client queries - Topic []byte `protobuf:"bytes,1,opt,name=topic,proto3,oneof"` -} - -type EnvelopesQuery_OriginatorNodeId struct { - // Node queries - OriginatorNodeId uint32 `protobuf:"varint,2,opt,name=originator_node_id,json=originatorNodeId,proto3,oneof"` -} - -func (*EnvelopesQuery_Topic) isEnvelopesQuery_Filter() {} - -func (*EnvelopesQuery_OriginatorNodeId) isEnvelopesQuery_Filter() {} - // Batch subscribe to envelopes -type BatchSubscribeEnvelopesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache +type SubscribeEnvelopesRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + Query *EnvelopesQuery `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } -func (x *BatchSubscribeEnvelopesRequest) Reset() { - *x = BatchSubscribeEnvelopesRequest{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[9] +func (x *SubscribeEnvelopesRequest) Reset() { + *x = SubscribeEnvelopesRequest{} + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *BatchSubscribeEnvelopesRequest) String() string { +func (x *SubscribeEnvelopesRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*BatchSubscribeEnvelopesRequest) ProtoMessage() {} +func (*SubscribeEnvelopesRequest) ProtoMessage() {} -func (x *BatchSubscribeEnvelopesRequest) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[9] +func (x *SubscribeEnvelopesRequest) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[2] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -778,42 +230,41 @@ func (x *BatchSubscribeEnvelopesRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use BatchSubscribeEnvelopesRequest.ProtoReflect.Descriptor instead. -func (*BatchSubscribeEnvelopesRequest) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{9} +// Deprecated: Use SubscribeEnvelopesRequest.ProtoReflect.Descriptor instead. +func (*SubscribeEnvelopesRequest) Descriptor() ([]byte, []int) { + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{2} } -func (x *BatchSubscribeEnvelopesRequest) GetRequests() []*BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest { +func (x *SubscribeEnvelopesRequest) GetQuery() *EnvelopesQuery { if x != nil { - return x.Requests + return x.Query } return nil } // Streamed response for batch subscribe - can be multiple envelopes at once -type BatchSubscribeEnvelopesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache +type SubscribeEnvelopesResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Envelopes []*envelopes.OriginatorEnvelope `protobuf:"bytes,1,rep,name=envelopes,proto3" json:"envelopes,omitempty"` unknownFields protoimpl.UnknownFields - - Envelopes []*OriginatorEnvelope `protobuf:"bytes,1,rep,name=envelopes,proto3" json:"envelopes,omitempty"` + sizeCache protoimpl.SizeCache } -func (x *BatchSubscribeEnvelopesResponse) Reset() { - *x = BatchSubscribeEnvelopesResponse{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[10] +func (x *SubscribeEnvelopesResponse) Reset() { + *x = SubscribeEnvelopesResponse{} + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *BatchSubscribeEnvelopesResponse) String() string { +func (x *SubscribeEnvelopesResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*BatchSubscribeEnvelopesResponse) ProtoMessage() {} +func (*SubscribeEnvelopesResponse) ProtoMessage() {} -func (x *BatchSubscribeEnvelopesResponse) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[10] +func (x *SubscribeEnvelopesResponse) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[3] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -824,12 +275,12 @@ func (x *BatchSubscribeEnvelopesResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use BatchSubscribeEnvelopesResponse.ProtoReflect.Descriptor instead. -func (*BatchSubscribeEnvelopesResponse) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{10} +// Deprecated: Use SubscribeEnvelopesResponse.ProtoReflect.Descriptor instead. +func (*SubscribeEnvelopesResponse) Descriptor() ([]byte, []int) { + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{3} } -func (x *BatchSubscribeEnvelopesResponse) GetEnvelopes() []*OriginatorEnvelope { +func (x *SubscribeEnvelopesResponse) GetEnvelopes() []*envelopes.OriginatorEnvelope { if x != nil { return x.Envelopes } @@ -838,17 +289,16 @@ func (x *BatchSubscribeEnvelopesResponse) GetEnvelopes() []*OriginatorEnvelope { // Query envelopes request type QueryEnvelopesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Query *EnvelopesQuery `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` + Limit uint32 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"` unknownFields protoimpl.UnknownFields - - Query *EnvelopesQuery `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` - Limit uint32 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"` + sizeCache protoimpl.SizeCache } func (x *QueryEnvelopesRequest) Reset() { *x = QueryEnvelopesRequest{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[11] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -860,7 +310,7 @@ func (x *QueryEnvelopesRequest) String() string { func (*QueryEnvelopesRequest) ProtoMessage() {} func (x *QueryEnvelopesRequest) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[11] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -873,7 +323,7 @@ func (x *QueryEnvelopesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use QueryEnvelopesRequest.ProtoReflect.Descriptor instead. func (*QueryEnvelopesRequest) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{11} + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{4} } func (x *QueryEnvelopesRequest) GetQuery() *EnvelopesQuery { @@ -892,16 +342,15 @@ func (x *QueryEnvelopesRequest) GetLimit() uint32 { // Query envelopes response type QueryEnvelopesResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Envelopes []*envelopes.OriginatorEnvelope `protobuf:"bytes,1,rep,name=envelopes,proto3" json:"envelopes,omitempty"` unknownFields protoimpl.UnknownFields - - Envelopes []*OriginatorEnvelope `protobuf:"bytes,1,rep,name=envelopes,proto3" json:"envelopes,omitempty"` + sizeCache protoimpl.SizeCache } func (x *QueryEnvelopesResponse) Reset() { *x = QueryEnvelopesResponse{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[12] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -913,7 +362,7 @@ func (x *QueryEnvelopesResponse) String() string { func (*QueryEnvelopesResponse) ProtoMessage() {} func (x *QueryEnvelopesResponse) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[12] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -926,39 +375,38 @@ func (x *QueryEnvelopesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use QueryEnvelopesResponse.ProtoReflect.Descriptor instead. func (*QueryEnvelopesResponse) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{12} + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{5} } -func (x *QueryEnvelopesResponse) GetEnvelopes() []*OriginatorEnvelope { +func (x *QueryEnvelopesResponse) GetEnvelopes() []*envelopes.OriginatorEnvelope { if x != nil { return x.Envelopes } return nil } -type PublishEnvelopeRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PayerEnvelope *PayerEnvelope `protobuf:"bytes,1,opt,name=payer_envelope,json=payerEnvelope,proto3" json:"payer_envelope,omitempty"` +type PublishPayerEnvelopesRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + PayerEnvelopes []*envelopes.PayerEnvelope `protobuf:"bytes,1,rep,name=payer_envelopes,json=payerEnvelopes,proto3" json:"payer_envelopes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (x *PublishEnvelopeRequest) Reset() { - *x = PublishEnvelopeRequest{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[13] +func (x *PublishPayerEnvelopesRequest) Reset() { + *x = PublishPayerEnvelopesRequest{} + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *PublishEnvelopeRequest) String() string { +func (x *PublishPayerEnvelopesRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PublishEnvelopeRequest) ProtoMessage() {} +func (*PublishPayerEnvelopesRequest) ProtoMessage() {} -func (x *PublishEnvelopeRequest) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[13] +func (x *PublishPayerEnvelopesRequest) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -969,41 +417,40 @@ func (x *PublishEnvelopeRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PublishEnvelopeRequest.ProtoReflect.Descriptor instead. -func (*PublishEnvelopeRequest) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{13} +// Deprecated: Use PublishPayerEnvelopesRequest.ProtoReflect.Descriptor instead. +func (*PublishPayerEnvelopesRequest) Descriptor() ([]byte, []int) { + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{6} } -func (x *PublishEnvelopeRequest) GetPayerEnvelope() *PayerEnvelope { +func (x *PublishPayerEnvelopesRequest) GetPayerEnvelopes() []*envelopes.PayerEnvelope { if x != nil { - return x.PayerEnvelope + return x.PayerEnvelopes } return nil } -type PublishEnvelopeResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OriginatorEnvelope *OriginatorEnvelope `protobuf:"bytes,1,opt,name=originator_envelope,json=originatorEnvelope,proto3" json:"originator_envelope,omitempty"` +type PublishPayerEnvelopesResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + OriginatorEnvelopes []*envelopes.OriginatorEnvelope `protobuf:"bytes,1,rep,name=originator_envelopes,json=originatorEnvelopes,proto3" json:"originator_envelopes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (x *PublishEnvelopeResponse) Reset() { - *x = PublishEnvelopeResponse{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[14] +func (x *PublishPayerEnvelopesResponse) Reset() { + *x = PublishPayerEnvelopesResponse{} + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } -func (x *PublishEnvelopeResponse) String() string { +func (x *PublishPayerEnvelopesResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*PublishEnvelopeResponse) ProtoMessage() {} +func (*PublishPayerEnvelopesResponse) ProtoMessage() {} -func (x *PublishEnvelopeResponse) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[14] +func (x *PublishPayerEnvelopesResponse) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1014,30 +461,29 @@ func (x *PublishEnvelopeResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use PublishEnvelopeResponse.ProtoReflect.Descriptor instead. -func (*PublishEnvelopeResponse) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{14} +// Deprecated: Use PublishPayerEnvelopesResponse.ProtoReflect.Descriptor instead. +func (*PublishPayerEnvelopesResponse) Descriptor() ([]byte, []int) { + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{7} } -func (x *PublishEnvelopeResponse) GetOriginatorEnvelope() *OriginatorEnvelope { +func (x *PublishPayerEnvelopesResponse) GetOriginatorEnvelopes() []*envelopes.OriginatorEnvelope { if x != nil { - return x.OriginatorEnvelope + return x.OriginatorEnvelopes } return nil } // Request to retrieve the XIDs for the given addresses type GetInboxIdsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Requests []*GetInboxIdsRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` unknownFields protoimpl.UnknownFields - - Requests []*GetInboxIdsRequest_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetInboxIdsRequest) Reset() { *x = GetInboxIdsRequest{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[15] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1049,7 +495,7 @@ func (x *GetInboxIdsRequest) String() string { func (*GetInboxIdsRequest) ProtoMessage() {} func (x *GetInboxIdsRequest) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[15] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1062,7 +508,7 @@ func (x *GetInboxIdsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetInboxIdsRequest.ProtoReflect.Descriptor instead. func (*GetInboxIdsRequest) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{15} + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{8} } func (x *GetInboxIdsRequest) GetRequests() []*GetInboxIdsRequest_Request { @@ -1074,16 +520,15 @@ func (x *GetInboxIdsRequest) GetRequests() []*GetInboxIdsRequest_Request { // Response with the XIDs for the requested addresses type GetInboxIdsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*GetInboxIdsResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*GetInboxIdsResponse_Response `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetInboxIdsResponse) Reset() { *x = GetInboxIdsResponse{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[16] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1095,7 +540,7 @@ func (x *GetInboxIdsResponse) String() string { func (*GetInboxIdsResponse) ProtoMessage() {} func (x *GetInboxIdsResponse) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[16] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1108,7 +553,7 @@ func (x *GetInboxIdsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetInboxIdsResponse.ProtoReflect.Descriptor instead. func (*GetInboxIdsResponse) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{16} + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{9} } func (x *GetInboxIdsResponse) GetResponses() []*GetInboxIdsResponse_Response { @@ -1118,64 +563,17 @@ func (x *GetInboxIdsResponse) GetResponses() []*GetInboxIdsResponse_Response { return nil } -// Single subscription request for envelopes -type BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Query *EnvelopesQuery `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` -} - -func (x *BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest) Reset() { - *x = BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) -} - -func (x *BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest) ProtoMessage() {} - -func (x *BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[18] - if x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest.ProtoReflect.Descriptor instead. -func (*BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{9, 0} -} - -func (x *BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest) GetQuery() *EnvelopesQuery { - if x != nil { - return x.Query - } - return nil -} - // A single request for a given address type GetInboxIdsRequest_Request struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` unknownFields protoimpl.UnknownFields - - Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetInboxIdsRequest_Request) Reset() { *x = GetInboxIdsRequest_Request{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[19] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1187,7 +585,7 @@ func (x *GetInboxIdsRequest_Request) String() string { func (*GetInboxIdsRequest_Request) ProtoMessage() {} func (x *GetInboxIdsRequest_Request) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[19] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1200,7 +598,7 @@ func (x *GetInboxIdsRequest_Request) ProtoReflect() protoreflect.Message { // Deprecated: Use GetInboxIdsRequest_Request.ProtoReflect.Descriptor instead. func (*GetInboxIdsRequest_Request) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{15, 0} + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{8, 0} } func (x *GetInboxIdsRequest_Request) GetAddress() string { @@ -1212,17 +610,16 @@ func (x *GetInboxIdsRequest_Request) GetAddress() string { // A single response for a given address type GetInboxIdsResponse_Response struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` + InboxId *string `protobuf:"bytes,2,opt,name=inbox_id,json=inboxId,proto3,oneof" json:"inbox_id,omitempty"` unknownFields protoimpl.UnknownFields - - Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` - InboxId *string `protobuf:"bytes,2,opt,name=inbox_id,json=inboxId,proto3,oneof" json:"inbox_id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *GetInboxIdsResponse_Response) Reset() { *x = GetInboxIdsResponse_Response{} - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[20] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1234,7 +631,7 @@ func (x *GetInboxIdsResponse_Response) String() string { func (*GetInboxIdsResponse_Response) ProtoMessage() {} func (x *GetInboxIdsResponse_Response) ProtoReflect() protoreflect.Message { - mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[20] + mi := &file_xmtpv4_message_api_message_api_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1247,7 +644,7 @@ func (x *GetInboxIdsResponse_Response) ProtoReflect() protoreflect.Message { // Deprecated: Use GetInboxIdsResponse_Response.ProtoReflect.Descriptor instead. func (*GetInboxIdsResponse_Response) Descriptor() ([]byte, []int) { - return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{16, 0} + return file_xmtpv4_message_api_message_api_proto_rawDescGZIP(), []int{9, 0} } func (x *GetInboxIdsResponse_Response) GetAddress() string { @@ -1269,265 +666,162 @@ var File_xmtpv4_message_api_message_api_proto protoreflect.FileDescriptor var file_xmtpv4_message_api_message_api_proto_rawDesc = []byte{ 0x0a, 0x24, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0b, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, - 0x70, 0x76, 0x34, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, - 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x1a, 0x27, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x61, 0x73, 0x73, 0x6f, - 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x69, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x2f, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x1a, 0x14, 0x6d, 0x6c, 0x73, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x6c, - 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xba, 0x01, 0x0a, 0x0b, 0x56, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x64, 0x0a, 0x16, 0x6e, 0x6f, 0x64, 0x65, 0x5f, - 0x69, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, - 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6c, 0x6f, 0x63, - 0x6b, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x54, 0x6f, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x65, 0x49, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x12, 0x6e, 0x6f, 0x64, 0x65, 0x49, - 0x64, 0x54, 0x6f, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x1a, 0x45, 0x0a, - 0x17, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x54, 0x6f, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, - 0x65, 0x49, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x22, 0x9a, 0x01, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, - 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2b, 0x0a, 0x11, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4f, 0x72, 0x69, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x35, 0x0a, 0x09, 0x6c, 0x61, - 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, - 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x56, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, - 0x6e, 0x22, 0xde, 0x04, 0x0a, 0x0e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x76, 0x65, - 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x49, 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x78, 0x6d, - 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x48, - 0x00, 0x52, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, - 0x4f, 0x0a, 0x0f, 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, - 0x6d, 0x6c, 0x73, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x65, 0x6c, 0x63, 0x6f, - 0x6d, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x48, 0x00, - 0x52, 0x0e, 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x12, 0x63, 0x0a, 0x15, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, - 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, - 0x14, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x58, 0x0a, 0x12, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, - 0x6b, 0x65, 0x79, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x28, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x61, 0x70, 0x69, - 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4b, 0x65, 0x79, 0x50, 0x61, 0x63, - 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x10, 0x75, - 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4b, 0x65, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, - 0x5d, 0x0a, 0x13, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, - 0x6d, 0x74, 0x70, 0x2e, 0x6d, 0x6c, 0x73, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, - 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x12, 0x72, 0x65, 0x76, 0x6f, - 0x6b, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x55, - 0x0a, 0x0f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x30, 0x0a, 0x03, 0x61, 0x61, 0x64, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, - 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x03, 0x61, 0x61, 0x64, 0x42, 0x09, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, - 0x61, 0x64, 0x22, 0xa9, 0x01, 0x0a, 0x0d, 0x50, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x76, 0x65, - 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, - 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x16, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x5e, - 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x62, 0x6c, 0x65, - 0x45, 0x63, 0x64, 0x73, 0x61, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0e, - 0x70, 0x61, 0x79, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xe8, - 0x01, 0x0a, 0x1a, 0x55, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x4f, 0x72, 0x69, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x2c, 0x0a, - 0x12, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6f, 0x72, 0x69, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x6f, - 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x6f, 0x72, 0x69, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, - 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x5f, - 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x73, 0x12, 0x41, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, - 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x50, 0x61, 0x79, - 0x65, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x65, - 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x22, 0x60, 0x0a, 0x0f, 0x42, 0x6c, 0x6f, - 0x63, 0x6b, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x21, 0x0a, 0x0c, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0b, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, - 0x2a, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x64, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x75, 0x62, 0x6c, - 0x69, 0x73, 0x68, 0x65, 0x72, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x22, 0x96, 0x02, 0x0a, 0x12, - 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, - 0x70, 0x65, 0x12, 0x40, 0x0a, 0x1c, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x6f, - 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1a, 0x75, 0x6e, 0x73, 0x69, 0x67, 0x6e, - 0x65, 0x64, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, - 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x6a, 0x0a, 0x14, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, - 0x6f, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x2e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, - 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x63, 0x64, 0x73, 0x61, - 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x48, 0x00, 0x52, 0x13, 0x6f, 0x72, 0x69, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, - 0x12, 0x49, 0x0a, 0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x70, - 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x78, 0x6d, 0x74, - 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x68, - 0x61, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x48, 0x00, 0x52, 0x0f, 0x62, 0x6c, 0x6f, 0x63, - 0x6b, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x6f, 0x66, 0x42, 0x07, 0x0a, 0x05, 0x70, - 0x72, 0x6f, 0x6f, 0x66, 0x22, 0x80, 0x01, 0x0a, 0x11, 0x4d, 0x69, 0x73, 0x62, 0x65, 0x68, 0x61, - 0x76, 0x69, 0x6f, 0x72, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x2c, 0x0a, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, - 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x4d, 0x69, 0x73, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, - 0x6f, 0x72, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3d, 0x0a, 0x09, 0x65, 0x6e, 0x76, 0x65, - 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x6d, - 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x17, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, + 0x70, 0x76, 0x34, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x1a, + 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x78, + 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2f, + 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, + 0x96, 0x01, 0x0a, 0x11, 0x4d, 0x69, 0x73, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x38, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, + 0x34, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x4d, 0x69, + 0x73, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, + 0x47, 0x0a, 0x09, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, + 0x2e, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, + 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x09, 0x65, + 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x22, 0x99, 0x01, 0x0a, 0x0e, 0x45, 0x6e, 0x76, + 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x74, + 0x6f, 0x70, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x74, 0x6f, 0x70, + 0x69, 0x63, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, + 0x72, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x11, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x6f, 0x64, 0x65, + 0x49, 0x64, 0x73, 0x12, 0x3f, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, + 0x74, 0x70, 0x76, 0x34, 0x2e, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x56, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, + 0x53, 0x65, 0x65, 0x6e, 0x22, 0x5a, 0x0a, 0x19, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, + 0x65, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x3d, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x27, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x45, 0x6e, 0x76, 0x65, 0x6c, + 0x6f, 0x70, 0x65, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x22, 0x65, 0x0a, 0x1a, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x45, 0x6e, 0x76, + 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, + 0x0a, 0x09, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x29, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, + 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x09, 0x65, 0x6e, - 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x22, 0x99, 0x01, 0x0a, 0x0e, 0x45, 0x6e, 0x76, 0x65, - 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x05, 0x74, 0x6f, - 0x70, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x05, 0x74, 0x6f, 0x70, - 0x69, 0x63, 0x12, 0x2e, 0x0a, 0x12, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, - 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, - 0x52, 0x10, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x6f, 0x64, 0x65, - 0x49, 0x64, 0x12, 0x35, 0x0a, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x65, 0x6e, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, - 0x70, 0x76, 0x34, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x52, - 0x08, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x65, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x66, 0x69, 0x6c, - 0x74, 0x65, 0x72, 0x22, 0xd3, 0x01, 0x0a, 0x1e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x75, 0x62, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x22, 0x6c, 0x0a, 0x15, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x3d, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x27, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, + 0x70, 0x65, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x61, 0x0a, 0x16, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x6e, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x47, 0x0a, 0x09, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, + 0x2e, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, + 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x09, 0x65, + 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x22, 0x6d, 0x0a, 0x1c, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x50, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, + 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x50, 0x61, 0x79, 0x65, 0x72, 0x45, + 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x0e, 0x70, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x22, 0x7d, 0x0a, 0x1d, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x50, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x14, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, + 0x74, 0x70, 0x76, 0x34, 0x2e, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x4f, + 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, + 0x65, 0x52, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, + 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x22, 0x8a, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x49, 0x6e, + 0x62, 0x6f, 0x78, 0x49, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, + 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x33, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, + 0x6f, 0x78, 0x49, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x1a, 0x23, + 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x22, 0xbd, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, + 0x49, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x09, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, + 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, + 0x78, 0x49, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x09, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, + 0x1a, 0x51, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1e, 0x0a, 0x08, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x69, 0x6e, 0x62, 0x6f, + 0x78, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x69, 0x6e, 0x62, 0x6f, 0x78, + 0x5f, 0x69, 0x64, 0x2a, 0xce, 0x01, 0x0a, 0x0b, 0x4d, 0x69, 0x73, 0x62, 0x65, 0x68, 0x61, 0x76, + 0x69, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x49, 0x53, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, + 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, + 0x12, 0x20, 0x0a, 0x1c, 0x4d, 0x49, 0x53, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, + 0x55, 0x4e, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4e, 0x4f, 0x44, 0x45, + 0x10, 0x01, 0x12, 0x2b, 0x0a, 0x27, 0x4d, 0x49, 0x53, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, + 0x52, 0x5f, 0x4f, 0x55, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, 0x4f, + 0x52, 0x49, 0x47, 0x49, 0x4e, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x53, 0x49, 0x44, 0x10, 0x02, 0x12, + 0x28, 0x0a, 0x24, 0x4d, 0x49, 0x53, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x44, + 0x55, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x45, 0x5f, 0x4f, 0x52, 0x49, 0x47, 0x49, 0x4e, 0x41, + 0x54, 0x4f, 0x52, 0x5f, 0x53, 0x49, 0x44, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x4d, 0x49, 0x53, + 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x43, 0x59, 0x43, 0x4c, 0x49, 0x43, 0x41, + 0x4c, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x49, + 0x4e, 0x47, 0x10, 0x04, 0x32, 0x94, 0x05, 0x0a, 0x0e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x70, 0x69, 0x12, 0xa7, 0x01, 0x0a, 0x12, 0x53, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x65, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x32, + 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, + 0x62, 0x65, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, + 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x61, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, - 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x75, 0x62, 0x73, - 0x63, 0x72, 0x69, 0x62, 0x65, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x45, - 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, - 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x1a, 0x4e, 0x0a, 0x19, 0x53, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, - 0x70, 0x76, 0x34, 0x2e, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, 0x60, 0x0a, 0x1f, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x45, 0x6e, 0x76, 0x65, 0x6c, - 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x09, - 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1f, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x4f, 0x72, - 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, - 0x52, 0x09, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x22, 0x60, 0x0a, 0x15, 0x51, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x3a, + 0x01, 0x2a, 0x22, 0x1b, 0x2f, 0x6d, 0x6c, 0x73, 0x2f, 0x76, 0x32, 0x2f, 0x73, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x62, 0x65, 0x2d, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x30, + 0x01, 0x12, 0x95, 0x01, 0x0a, 0x0e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x6e, 0x76, 0x65, 0x6c, + 0x6f, 0x70, 0x65, 0x73, 0x12, 0x2e, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, + 0x76, 0x34, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, - 0x34, 0x2e, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x57, 0x0a, - 0x16, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x09, 0x65, 0x6e, 0x76, 0x65, 0x6c, - 0x6f, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x6d, 0x74, - 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, - 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x09, 0x65, 0x6e, 0x76, - 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x22, 0x5b, 0x0a, 0x16, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, - 0x68, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x41, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, - 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x50, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x76, 0x65, - 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x0d, 0x70, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, - 0x6f, 0x70, 0x65, 0x22, 0x6b, 0x0a, 0x17, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x45, 0x6e, - 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, - 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x65, 0x6e, 0x76, - 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x78, 0x6d, - 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x12, 0x6f, 0x72, - 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, - 0x22, 0x7e, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, - 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, - 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x1a, 0x23, 0x0a, 0x07, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x22, 0xb1, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x78, 0x6d, - 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, - 0x6f, 0x78, 0x49, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x09, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x73, 0x1a, 0x51, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1e, 0x0a, 0x08, 0x69, 0x6e, 0x62, 0x6f, 0x78, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x69, 0x6e, 0x62, - 0x6f, 0x78, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x69, 0x6e, 0x62, 0x6f, - 0x78, 0x5f, 0x69, 0x64, 0x2a, 0xce, 0x01, 0x0a, 0x0b, 0x4d, 0x69, 0x73, 0x62, 0x65, 0x68, 0x61, - 0x76, 0x69, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x49, 0x53, 0x42, 0x45, 0x48, 0x41, 0x56, - 0x49, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, - 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x4d, 0x49, 0x53, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, - 0x5f, 0x55, 0x4e, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x4e, 0x4f, 0x44, - 0x45, 0x10, 0x01, 0x12, 0x2b, 0x0a, 0x27, 0x4d, 0x49, 0x53, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, - 0x4f, 0x52, 0x5f, 0x4f, 0x55, 0x54, 0x5f, 0x4f, 0x46, 0x5f, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x5f, - 0x4f, 0x52, 0x49, 0x47, 0x49, 0x4e, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x53, 0x49, 0x44, 0x10, 0x02, - 0x12, 0x28, 0x0a, 0x24, 0x4d, 0x49, 0x53, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, - 0x44, 0x55, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x45, 0x5f, 0x4f, 0x52, 0x49, 0x47, 0x49, 0x4e, - 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x53, 0x49, 0x44, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x4d, 0x49, - 0x53, 0x42, 0x45, 0x48, 0x41, 0x56, 0x49, 0x4f, 0x52, 0x5f, 0x43, 0x59, 0x43, 0x4c, 0x49, 0x43, - 0x41, 0x4c, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x4f, 0x52, 0x44, 0x45, 0x52, - 0x49, 0x4e, 0x47, 0x10, 0x04, 0x32, 0xa8, 0x04, 0x0a, 0x0e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x70, 0x69, 0x12, 0x9e, 0x01, 0x0a, 0x17, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x45, 0x6e, 0x76, 0x65, 0x6c, - 0x6f, 0x70, 0x65, 0x73, 0x12, 0x2b, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, - 0x76, 0x34, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, - 0x65, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x2c, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, - 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x45, 0x6e, - 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x3a, 0x01, 0x2a, 0x22, 0x1b, 0x2f, 0x6d, 0x6c, 0x73, - 0x2f, 0x76, 0x32, 0x2f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x2d, 0x65, 0x6e, - 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x30, 0x01, 0x12, 0x7d, 0x0a, 0x0e, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x22, 0x2e, 0x78, 0x6d, - 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, - 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x23, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x3a, 0x01, 0x2a, 0x22, - 0x17, 0x2f, 0x6d, 0x6c, 0x73, 0x2f, 0x76, 0x32, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2d, 0x65, - 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x81, 0x01, 0x0a, 0x0f, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x23, 0x2e, 0x78, - 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, - 0x73, 0x68, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x24, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x3a, - 0x01, 0x2a, 0x22, 0x18, 0x2f, 0x6d, 0x6c, 0x73, 0x2f, 0x76, 0x32, 0x2f, 0x70, 0x75, 0x62, 0x6c, - 0x69, 0x73, 0x68, 0x2d, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x72, 0x0a, 0x0b, - 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x73, 0x12, 0x1f, 0x2e, 0x78, 0x6d, - 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, - 0x6f, 0x78, 0x49, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x78, - 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, - 0x62, 0x6f, 0x78, 0x49, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x3a, 0x01, 0x2a, 0x22, 0x15, 0x2f, 0x6d, 0x6c, 0x73, 0x2f, - 0x76, 0x32, 0x2f, 0x67, 0x65, 0x74, 0x2d, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x2d, 0x69, 0x64, 0x73, - 0x42, 0xaa, 0x01, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, - 0x74, 0x70, 0x76, 0x34, 0x42, 0x0f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x70, 0x69, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x39, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2d, 0x6e, 0x6f, - 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, - 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, - 0x70, 0x69, 0xa2, 0x02, 0x03, 0x58, 0x58, 0x58, 0xaa, 0x02, 0x0b, 0x58, 0x6d, 0x74, 0x70, 0x2e, - 0x58, 0x6d, 0x74, 0x70, 0x76, 0x34, 0xca, 0x02, 0x0b, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x58, 0x6d, - 0x74, 0x70, 0x76, 0x34, 0xe2, 0x02, 0x17, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x58, 0x6d, 0x74, 0x70, - 0x76, 0x34, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, - 0x0c, 0x58, 0x6d, 0x74, 0x70, 0x3a, 0x3a, 0x58, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x62, 0x06, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, + 0x76, 0x34, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x3a, 0x01, 0x2a, + 0x22, 0x17, 0x2f, 0x6d, 0x6c, 0x73, 0x2f, 0x76, 0x32, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2d, + 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x12, 0xb2, 0x01, 0x0a, 0x15, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x50, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, + 0x70, 0x65, 0x73, 0x12, 0x35, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, + 0x34, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x50, 0x61, 0x79, 0x65, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, + 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x78, 0x6d, 0x74, + 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x50, 0x61, 0x79, 0x65, + 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x2a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x3a, 0x01, 0x2a, 0x22, 0x1f, 0x2f, + 0x6d, 0x6c, 0x73, 0x2f, 0x76, 0x32, 0x2f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x2d, 0x70, + 0x61, 0x79, 0x65, 0x72, 0x2d, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x8a, + 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, 0x73, 0x12, 0x2b, + 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, + 0x78, 0x49, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x78, 0x6d, + 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x62, 0x6f, 0x78, 0x49, 0x64, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x1a, 0x3a, 0x01, 0x2a, 0x22, 0x15, 0x2f, 0x6d, 0x6c, 0x73, 0x2f, 0x76, 0x32, 0x2f, 0x67, 0x65, + 0x74, 0x2d, 0x69, 0x6e, 0x62, 0x6f, 0x78, 0x2d, 0x69, 0x64, 0x73, 0x42, 0xe3, 0x01, 0x0a, 0x1b, + 0x63, 0x6f, 0x6d, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0x42, 0x0f, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x41, 0x70, 0x69, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x39, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2f, + 0x78, 0x6d, 0x74, 0x70, 0x2d, 0x6e, 0x6f, 0x64, 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, + 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2f, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x70, 0x69, 0xa2, 0x02, 0x03, 0x58, 0x58, 0x4d, 0xaa, + 0x02, 0x16, 0x58, 0x6d, 0x74, 0x70, 0x2e, 0x58, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x70, 0x69, 0xca, 0x02, 0x16, 0x58, 0x6d, 0x74, 0x70, 0x5c, + 0x58, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x5c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x70, + 0x69, 0xe2, 0x02, 0x22, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x58, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x5c, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x70, 0x69, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x18, 0x58, 0x6d, 0x74, 0x70, 0x3a, 0x3a, 0x58, + 0x6d, 0x74, 0x70, 0x76, 0x34, 0x3a, 0x3a, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x70, + 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1543,77 +837,50 @@ func file_xmtpv4_message_api_message_api_proto_rawDescGZIP() []byte { } var file_xmtpv4_message_api_message_api_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_xmtpv4_message_api_message_api_proto_msgTypes = make([]protoimpl.MessageInfo, 21) +var file_xmtpv4_message_api_message_api_proto_msgTypes = make([]protoimpl.MessageInfo, 12) var file_xmtpv4_message_api_message_api_proto_goTypes = []any{ - (Misbehavior)(0), // 0: xmtp.xmtpv4.Misbehavior - (*VectorClock)(nil), // 1: xmtp.xmtpv4.VectorClock - (*AuthenticatedData)(nil), // 2: xmtp.xmtpv4.AuthenticatedData - (*ClientEnvelope)(nil), // 3: xmtp.xmtpv4.ClientEnvelope - (*PayerEnvelope)(nil), // 4: xmtp.xmtpv4.PayerEnvelope - (*UnsignedOriginatorEnvelope)(nil), // 5: xmtp.xmtpv4.UnsignedOriginatorEnvelope - (*BlockchainProof)(nil), // 6: xmtp.xmtpv4.BlockchainProof - (*OriginatorEnvelope)(nil), // 7: xmtp.xmtpv4.OriginatorEnvelope - (*MisbehaviorReport)(nil), // 8: xmtp.xmtpv4.MisbehaviorReport - (*EnvelopesQuery)(nil), // 9: xmtp.xmtpv4.EnvelopesQuery - (*BatchSubscribeEnvelopesRequest)(nil), // 10: xmtp.xmtpv4.BatchSubscribeEnvelopesRequest - (*BatchSubscribeEnvelopesResponse)(nil), // 11: xmtp.xmtpv4.BatchSubscribeEnvelopesResponse - (*QueryEnvelopesRequest)(nil), // 12: xmtp.xmtpv4.QueryEnvelopesRequest - (*QueryEnvelopesResponse)(nil), // 13: xmtp.xmtpv4.QueryEnvelopesResponse - (*PublishEnvelopeRequest)(nil), // 14: xmtp.xmtpv4.PublishEnvelopeRequest - (*PublishEnvelopeResponse)(nil), // 15: xmtp.xmtpv4.PublishEnvelopeResponse - (*GetInboxIdsRequest)(nil), // 16: xmtp.xmtpv4.GetInboxIdsRequest - (*GetInboxIdsResponse)(nil), // 17: xmtp.xmtpv4.GetInboxIdsResponse - nil, // 18: xmtp.xmtpv4.VectorClock.NodeIdToSequenceIdEntry - (*BatchSubscribeEnvelopesRequest_SubscribeEnvelopesRequest)(nil), // 19: xmtp.xmtpv4.BatchSubscribeEnvelopesRequest.SubscribeEnvelopesRequest - (*GetInboxIdsRequest_Request)(nil), // 20: xmtp.xmtpv4.GetInboxIdsRequest.Request - (*GetInboxIdsResponse_Response)(nil), // 21: xmtp.xmtpv4.GetInboxIdsResponse.Response - (*v1.GroupMessageInput)(nil), // 22: xmtp.mls.api.v1.GroupMessageInput - (*v1.WelcomeMessageInput)(nil), // 23: xmtp.mls.api.v1.WelcomeMessageInput - (*v1.RegisterInstallationRequest)(nil), // 24: xmtp.mls.api.v1.RegisterInstallationRequest - (*v1.UploadKeyPackageRequest)(nil), // 25: xmtp.mls.api.v1.UploadKeyPackageRequest - (*v1.RevokeInstallationRequest)(nil), // 26: xmtp.mls.api.v1.RevokeInstallationRequest - (*associations.IdentityUpdate)(nil), // 27: xmtp.identity.associations.IdentityUpdate - (*associations.RecoverableEcdsaSignature)(nil), // 28: xmtp.identity.associations.RecoverableEcdsaSignature + (Misbehavior)(0), // 0: xmtp.xmtpv4.message_api.Misbehavior + (*MisbehaviorReport)(nil), // 1: xmtp.xmtpv4.message_api.MisbehaviorReport + (*EnvelopesQuery)(nil), // 2: xmtp.xmtpv4.message_api.EnvelopesQuery + (*SubscribeEnvelopesRequest)(nil), // 3: xmtp.xmtpv4.message_api.SubscribeEnvelopesRequest + (*SubscribeEnvelopesResponse)(nil), // 4: xmtp.xmtpv4.message_api.SubscribeEnvelopesResponse + (*QueryEnvelopesRequest)(nil), // 5: xmtp.xmtpv4.message_api.QueryEnvelopesRequest + (*QueryEnvelopesResponse)(nil), // 6: xmtp.xmtpv4.message_api.QueryEnvelopesResponse + (*PublishPayerEnvelopesRequest)(nil), // 7: xmtp.xmtpv4.message_api.PublishPayerEnvelopesRequest + (*PublishPayerEnvelopesResponse)(nil), // 8: xmtp.xmtpv4.message_api.PublishPayerEnvelopesResponse + (*GetInboxIdsRequest)(nil), // 9: xmtp.xmtpv4.message_api.GetInboxIdsRequest + (*GetInboxIdsResponse)(nil), // 10: xmtp.xmtpv4.message_api.GetInboxIdsResponse + (*GetInboxIdsRequest_Request)(nil), // 11: xmtp.xmtpv4.message_api.GetInboxIdsRequest.Request + (*GetInboxIdsResponse_Response)(nil), // 12: xmtp.xmtpv4.message_api.GetInboxIdsResponse.Response + (*envelopes.OriginatorEnvelope)(nil), // 13: xmtp.xmtpv4.envelopes.OriginatorEnvelope + (*envelopes.VectorClock)(nil), // 14: xmtp.xmtpv4.envelopes.VectorClock + (*envelopes.PayerEnvelope)(nil), // 15: xmtp.xmtpv4.envelopes.PayerEnvelope } var file_xmtpv4_message_api_message_api_proto_depIdxs = []int32{ - 18, // 0: xmtp.xmtpv4.VectorClock.node_id_to_sequence_id:type_name -> xmtp.xmtpv4.VectorClock.NodeIdToSequenceIdEntry - 1, // 1: xmtp.xmtpv4.AuthenticatedData.last_seen:type_name -> xmtp.xmtpv4.VectorClock - 22, // 2: xmtp.xmtpv4.ClientEnvelope.group_message:type_name -> xmtp.mls.api.v1.GroupMessageInput - 23, // 3: xmtp.xmtpv4.ClientEnvelope.welcome_message:type_name -> xmtp.mls.api.v1.WelcomeMessageInput - 24, // 4: xmtp.xmtpv4.ClientEnvelope.register_installation:type_name -> xmtp.mls.api.v1.RegisterInstallationRequest - 25, // 5: xmtp.xmtpv4.ClientEnvelope.upload_key_package:type_name -> xmtp.mls.api.v1.UploadKeyPackageRequest - 26, // 6: xmtp.xmtpv4.ClientEnvelope.revoke_installation:type_name -> xmtp.mls.api.v1.RevokeInstallationRequest - 27, // 7: xmtp.xmtpv4.ClientEnvelope.identity_update:type_name -> xmtp.identity.associations.IdentityUpdate - 2, // 8: xmtp.xmtpv4.ClientEnvelope.aad:type_name -> xmtp.xmtpv4.AuthenticatedData - 28, // 9: xmtp.xmtpv4.PayerEnvelope.payer_signature:type_name -> xmtp.identity.associations.RecoverableEcdsaSignature - 4, // 10: xmtp.xmtpv4.UnsignedOriginatorEnvelope.payer_envelope:type_name -> xmtp.xmtpv4.PayerEnvelope - 28, // 11: xmtp.xmtpv4.OriginatorEnvelope.originator_signature:type_name -> xmtp.identity.associations.RecoverableEcdsaSignature - 6, // 12: xmtp.xmtpv4.OriginatorEnvelope.blockchain_proof:type_name -> xmtp.xmtpv4.BlockchainProof - 0, // 13: xmtp.xmtpv4.MisbehaviorReport.type:type_name -> xmtp.xmtpv4.Misbehavior - 7, // 14: xmtp.xmtpv4.MisbehaviorReport.envelopes:type_name -> xmtp.xmtpv4.OriginatorEnvelope - 1, // 15: xmtp.xmtpv4.EnvelopesQuery.last_seen:type_name -> xmtp.xmtpv4.VectorClock - 19, // 16: xmtp.xmtpv4.BatchSubscribeEnvelopesRequest.requests:type_name -> xmtp.xmtpv4.BatchSubscribeEnvelopesRequest.SubscribeEnvelopesRequest - 7, // 17: xmtp.xmtpv4.BatchSubscribeEnvelopesResponse.envelopes:type_name -> xmtp.xmtpv4.OriginatorEnvelope - 9, // 18: xmtp.xmtpv4.QueryEnvelopesRequest.query:type_name -> xmtp.xmtpv4.EnvelopesQuery - 7, // 19: xmtp.xmtpv4.QueryEnvelopesResponse.envelopes:type_name -> xmtp.xmtpv4.OriginatorEnvelope - 4, // 20: xmtp.xmtpv4.PublishEnvelopeRequest.payer_envelope:type_name -> xmtp.xmtpv4.PayerEnvelope - 7, // 21: xmtp.xmtpv4.PublishEnvelopeResponse.originator_envelope:type_name -> xmtp.xmtpv4.OriginatorEnvelope - 20, // 22: xmtp.xmtpv4.GetInboxIdsRequest.requests:type_name -> xmtp.xmtpv4.GetInboxIdsRequest.Request - 21, // 23: xmtp.xmtpv4.GetInboxIdsResponse.responses:type_name -> xmtp.xmtpv4.GetInboxIdsResponse.Response - 9, // 24: xmtp.xmtpv4.BatchSubscribeEnvelopesRequest.SubscribeEnvelopesRequest.query:type_name -> xmtp.xmtpv4.EnvelopesQuery - 10, // 25: xmtp.xmtpv4.ReplicationApi.BatchSubscribeEnvelopes:input_type -> xmtp.xmtpv4.BatchSubscribeEnvelopesRequest - 12, // 26: xmtp.xmtpv4.ReplicationApi.QueryEnvelopes:input_type -> xmtp.xmtpv4.QueryEnvelopesRequest - 14, // 27: xmtp.xmtpv4.ReplicationApi.PublishEnvelope:input_type -> xmtp.xmtpv4.PublishEnvelopeRequest - 16, // 28: xmtp.xmtpv4.ReplicationApi.GetInboxIds:input_type -> xmtp.xmtpv4.GetInboxIdsRequest - 11, // 29: xmtp.xmtpv4.ReplicationApi.BatchSubscribeEnvelopes:output_type -> xmtp.xmtpv4.BatchSubscribeEnvelopesResponse - 13, // 30: xmtp.xmtpv4.ReplicationApi.QueryEnvelopes:output_type -> xmtp.xmtpv4.QueryEnvelopesResponse - 15, // 31: xmtp.xmtpv4.ReplicationApi.PublishEnvelope:output_type -> xmtp.xmtpv4.PublishEnvelopeResponse - 17, // 32: xmtp.xmtpv4.ReplicationApi.GetInboxIds:output_type -> xmtp.xmtpv4.GetInboxIdsResponse - 29, // [29:33] is the sub-list for method output_type - 25, // [25:29] is the sub-list for method input_type - 25, // [25:25] is the sub-list for extension type_name - 25, // [25:25] is the sub-list for extension extendee - 0, // [0:25] is the sub-list for field type_name + 0, // 0: xmtp.xmtpv4.message_api.MisbehaviorReport.type:type_name -> xmtp.xmtpv4.message_api.Misbehavior + 13, // 1: xmtp.xmtpv4.message_api.MisbehaviorReport.envelopes:type_name -> xmtp.xmtpv4.envelopes.OriginatorEnvelope + 14, // 2: xmtp.xmtpv4.message_api.EnvelopesQuery.last_seen:type_name -> xmtp.xmtpv4.envelopes.VectorClock + 2, // 3: xmtp.xmtpv4.message_api.SubscribeEnvelopesRequest.query:type_name -> xmtp.xmtpv4.message_api.EnvelopesQuery + 13, // 4: xmtp.xmtpv4.message_api.SubscribeEnvelopesResponse.envelopes:type_name -> xmtp.xmtpv4.envelopes.OriginatorEnvelope + 2, // 5: xmtp.xmtpv4.message_api.QueryEnvelopesRequest.query:type_name -> xmtp.xmtpv4.message_api.EnvelopesQuery + 13, // 6: xmtp.xmtpv4.message_api.QueryEnvelopesResponse.envelopes:type_name -> xmtp.xmtpv4.envelopes.OriginatorEnvelope + 15, // 7: xmtp.xmtpv4.message_api.PublishPayerEnvelopesRequest.payer_envelopes:type_name -> xmtp.xmtpv4.envelopes.PayerEnvelope + 13, // 8: xmtp.xmtpv4.message_api.PublishPayerEnvelopesResponse.originator_envelopes:type_name -> xmtp.xmtpv4.envelopes.OriginatorEnvelope + 11, // 9: xmtp.xmtpv4.message_api.GetInboxIdsRequest.requests:type_name -> xmtp.xmtpv4.message_api.GetInboxIdsRequest.Request + 12, // 10: xmtp.xmtpv4.message_api.GetInboxIdsResponse.responses:type_name -> xmtp.xmtpv4.message_api.GetInboxIdsResponse.Response + 3, // 11: xmtp.xmtpv4.message_api.ReplicationApi.SubscribeEnvelopes:input_type -> xmtp.xmtpv4.message_api.SubscribeEnvelopesRequest + 5, // 12: xmtp.xmtpv4.message_api.ReplicationApi.QueryEnvelopes:input_type -> xmtp.xmtpv4.message_api.QueryEnvelopesRequest + 7, // 13: xmtp.xmtpv4.message_api.ReplicationApi.PublishPayerEnvelopes:input_type -> xmtp.xmtpv4.message_api.PublishPayerEnvelopesRequest + 9, // 14: xmtp.xmtpv4.message_api.ReplicationApi.GetInboxIds:input_type -> xmtp.xmtpv4.message_api.GetInboxIdsRequest + 4, // 15: xmtp.xmtpv4.message_api.ReplicationApi.SubscribeEnvelopes:output_type -> xmtp.xmtpv4.message_api.SubscribeEnvelopesResponse + 6, // 16: xmtp.xmtpv4.message_api.ReplicationApi.QueryEnvelopes:output_type -> xmtp.xmtpv4.message_api.QueryEnvelopesResponse + 8, // 17: xmtp.xmtpv4.message_api.ReplicationApi.PublishPayerEnvelopes:output_type -> xmtp.xmtpv4.message_api.PublishPayerEnvelopesResponse + 10, // 18: xmtp.xmtpv4.message_api.ReplicationApi.GetInboxIds:output_type -> xmtp.xmtpv4.message_api.GetInboxIdsResponse + 15, // [15:19] is the sub-list for method output_type + 11, // [11:15] is the sub-list for method input_type + 11, // [11:11] is the sub-list for extension type_name + 11, // [11:11] is the sub-list for extension extendee + 0, // [0:11] is the sub-list for field type_name } func init() { file_xmtpv4_message_api_message_api_proto_init() } @@ -1621,30 +888,14 @@ func file_xmtpv4_message_api_message_api_proto_init() { if File_xmtpv4_message_api_message_api_proto != nil { return } - file_xmtpv4_message_api_message_api_proto_msgTypes[2].OneofWrappers = []any{ - (*ClientEnvelope_GroupMessage)(nil), - (*ClientEnvelope_WelcomeMessage)(nil), - (*ClientEnvelope_RegisterInstallation)(nil), - (*ClientEnvelope_UploadKeyPackage)(nil), - (*ClientEnvelope_RevokeInstallation)(nil), - (*ClientEnvelope_IdentityUpdate)(nil), - } - file_xmtpv4_message_api_message_api_proto_msgTypes[6].OneofWrappers = []any{ - (*OriginatorEnvelope_OriginatorSignature)(nil), - (*OriginatorEnvelope_BlockchainProof)(nil), - } - file_xmtpv4_message_api_message_api_proto_msgTypes[8].OneofWrappers = []any{ - (*EnvelopesQuery_Topic)(nil), - (*EnvelopesQuery_OriginatorNodeId)(nil), - } - file_xmtpv4_message_api_message_api_proto_msgTypes[20].OneofWrappers = []any{} + file_xmtpv4_message_api_message_api_proto_msgTypes[11].OneofWrappers = []any{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_xmtpv4_message_api_message_api_proto_rawDesc, NumEnums: 1, - NumMessages: 21, + NumMessages: 12, NumExtensions: 0, NumServices: 1, }, diff --git a/pkg/proto/xmtpv4/message_api/message_api.pb.gw.go b/pkg/proto/xmtpv4/message_api/message_api.pb.gw.go index 83467689..4fecd3bc 100644 --- a/pkg/proto/xmtpv4/message_api/message_api.pb.gw.go +++ b/pkg/proto/xmtpv4/message_api/message_api.pb.gw.go @@ -31,15 +31,15 @@ var _ = runtime.String var _ = utilities.NewDoubleArray var _ = metadata.Join -func request_ReplicationApi_BatchSubscribeEnvelopes_0(ctx context.Context, marshaler runtime.Marshaler, client ReplicationApiClient, req *http.Request, pathParams map[string]string) (ReplicationApi_BatchSubscribeEnvelopesClient, runtime.ServerMetadata, error) { - var protoReq BatchSubscribeEnvelopesRequest +func request_ReplicationApi_SubscribeEnvelopes_0(ctx context.Context, marshaler runtime.Marshaler, client ReplicationApiClient, req *http.Request, pathParams map[string]string) (ReplicationApi_SubscribeEnvelopesClient, runtime.ServerMetadata, error) { + var protoReq SubscribeEnvelopesRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - stream, err := client.BatchSubscribeEnvelopes(ctx, &protoReq) + stream, err := client.SubscribeEnvelopes(ctx, &protoReq) if err != nil { return nil, metadata, err } @@ -78,28 +78,28 @@ func local_request_ReplicationApi_QueryEnvelopes_0(ctx context.Context, marshale } -func request_ReplicationApi_PublishEnvelope_0(ctx context.Context, marshaler runtime.Marshaler, client ReplicationApiClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PublishEnvelopeRequest +func request_ReplicationApi_PublishPayerEnvelopes_0(ctx context.Context, marshaler runtime.Marshaler, client ReplicationApiClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq PublishPayerEnvelopesRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.PublishEnvelope(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.PublishPayerEnvelopes(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func local_request_ReplicationApi_PublishEnvelope_0(ctx context.Context, marshaler runtime.Marshaler, server ReplicationApiServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq PublishEnvelopeRequest +func local_request_ReplicationApi_PublishPayerEnvelopes_0(ctx context.Context, marshaler runtime.Marshaler, server ReplicationApiServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq PublishPayerEnvelopesRequest var metadata runtime.ServerMetadata if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.PublishEnvelope(ctx, &protoReq) + msg, err := server.PublishPayerEnvelopes(ctx, &protoReq) return msg, metadata, err } @@ -136,7 +136,7 @@ func local_request_ReplicationApi_GetInboxIds_0(ctx context.Context, marshaler r // Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterReplicationApiHandlerFromEndpoint instead. func RegisterReplicationApiHandlerServer(ctx context.Context, mux *runtime.ServeMux, server ReplicationApiServer) error { - mux.Handle("POST", pattern_ReplicationApi_BatchSubscribeEnvelopes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_ReplicationApi_SubscribeEnvelopes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) @@ -151,7 +151,7 @@ func RegisterReplicationApiHandlerServer(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/xmtp.xmtpv4.ReplicationApi/QueryEnvelopes", runtime.WithHTTPPathPattern("/mls/v2/query-envelopes")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/xmtp.xmtpv4.message_api.ReplicationApi/QueryEnvelopes", runtime.WithHTTPPathPattern("/mls/v2/query-envelopes")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return @@ -168,7 +168,7 @@ func RegisterReplicationApiHandlerServer(ctx context.Context, mux *runtime.Serve }) - mux.Handle("POST", pattern_ReplicationApi_PublishEnvelope_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_ReplicationApi_PublishPayerEnvelopes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -176,12 +176,12 @@ func RegisterReplicationApiHandlerServer(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/xmtp.xmtpv4.ReplicationApi/PublishEnvelope", runtime.WithHTTPPathPattern("/mls/v2/publish-envelope")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/xmtp.xmtpv4.message_api.ReplicationApi/PublishPayerEnvelopes", runtime.WithHTTPPathPattern("/mls/v2/publish-payer-envelopes")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_ReplicationApi_PublishEnvelope_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_ReplicationApi_PublishPayerEnvelopes_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -189,7 +189,7 @@ func RegisterReplicationApiHandlerServer(ctx context.Context, mux *runtime.Serve return } - forward_ReplicationApi_PublishEnvelope_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_ReplicationApi_PublishPayerEnvelopes_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -201,7 +201,7 @@ func RegisterReplicationApiHandlerServer(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/xmtp.xmtpv4.ReplicationApi/GetInboxIds", runtime.WithHTTPPathPattern("/mls/v2/get-inbox-ids")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/xmtp.xmtpv4.message_api.ReplicationApi/GetInboxIds", runtime.WithHTTPPathPattern("/mls/v2/get-inbox-ids")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return @@ -259,25 +259,25 @@ func RegisterReplicationApiHandler(ctx context.Context, mux *runtime.ServeMux, c // "ReplicationApiClient" to call the correct interceptors. func RegisterReplicationApiHandlerClient(ctx context.Context, mux *runtime.ServeMux, client ReplicationApiClient) error { - mux.Handle("POST", pattern_ReplicationApi_BatchSubscribeEnvelopes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_ReplicationApi_SubscribeEnvelopes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/xmtp.xmtpv4.ReplicationApi/BatchSubscribeEnvelopes", runtime.WithHTTPPathPattern("/mls/v2/subscribe-envelopes")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/xmtp.xmtpv4.message_api.ReplicationApi/SubscribeEnvelopes", runtime.WithHTTPPathPattern("/mls/v2/subscribe-envelopes")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_ReplicationApi_BatchSubscribeEnvelopes_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_ReplicationApi_SubscribeEnvelopes_0(annotatedContext, inboundMarshaler, client, req, pathParams) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - forward_ReplicationApi_BatchSubscribeEnvelopes_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) + forward_ReplicationApi_SubscribeEnvelopes_0(annotatedContext, mux, outboundMarshaler, w, req, func() (proto.Message, error) { return resp.Recv() }, mux.GetForwardResponseOptions()...) }) @@ -287,7 +287,7 @@ func RegisterReplicationApiHandlerClient(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/xmtp.xmtpv4.ReplicationApi/QueryEnvelopes", runtime.WithHTTPPathPattern("/mls/v2/query-envelopes")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/xmtp.xmtpv4.message_api.ReplicationApi/QueryEnvelopes", runtime.WithHTTPPathPattern("/mls/v2/query-envelopes")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return @@ -303,25 +303,25 @@ func RegisterReplicationApiHandlerClient(ctx context.Context, mux *runtime.Serve }) - mux.Handle("POST", pattern_ReplicationApi_PublishEnvelope_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_ReplicationApi_PublishPayerEnvelopes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/xmtp.xmtpv4.ReplicationApi/PublishEnvelope", runtime.WithHTTPPathPattern("/mls/v2/publish-envelope")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/xmtp.xmtpv4.message_api.ReplicationApi/PublishPayerEnvelopes", runtime.WithHTTPPathPattern("/mls/v2/publish-payer-envelopes")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_ReplicationApi_PublishEnvelope_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_ReplicationApi_PublishPayerEnvelopes_0(annotatedContext, inboundMarshaler, client, req, pathParams) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - forward_ReplicationApi_PublishEnvelope_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_ReplicationApi_PublishPayerEnvelopes_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) @@ -331,7 +331,7 @@ func RegisterReplicationApiHandlerClient(ctx context.Context, mux *runtime.Serve inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/xmtp.xmtpv4.ReplicationApi/GetInboxIds", runtime.WithHTTPPathPattern("/mls/v2/get-inbox-ids")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/xmtp.xmtpv4.message_api.ReplicationApi/GetInboxIds", runtime.WithHTTPPathPattern("/mls/v2/get-inbox-ids")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return @@ -351,21 +351,21 @@ func RegisterReplicationApiHandlerClient(ctx context.Context, mux *runtime.Serve } var ( - pattern_ReplicationApi_BatchSubscribeEnvelopes_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"mls", "v2", "subscribe-envelopes"}, "")) + pattern_ReplicationApi_SubscribeEnvelopes_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"mls", "v2", "subscribe-envelopes"}, "")) pattern_ReplicationApi_QueryEnvelopes_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"mls", "v2", "query-envelopes"}, "")) - pattern_ReplicationApi_PublishEnvelope_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"mls", "v2", "publish-envelope"}, "")) + pattern_ReplicationApi_PublishPayerEnvelopes_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"mls", "v2", "publish-payer-envelopes"}, "")) pattern_ReplicationApi_GetInboxIds_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"mls", "v2", "get-inbox-ids"}, "")) ) var ( - forward_ReplicationApi_BatchSubscribeEnvelopes_0 = runtime.ForwardResponseStream + forward_ReplicationApi_SubscribeEnvelopes_0 = runtime.ForwardResponseStream forward_ReplicationApi_QueryEnvelopes_0 = runtime.ForwardResponseMessage - forward_ReplicationApi_PublishEnvelope_0 = runtime.ForwardResponseMessage + forward_ReplicationApi_PublishPayerEnvelopes_0 = runtime.ForwardResponseMessage forward_ReplicationApi_GetInboxIds_0 = runtime.ForwardResponseMessage ) diff --git a/pkg/proto/xmtpv4/message_api/message_api_grpc.pb.go b/pkg/proto/xmtpv4/message_api/message_api_grpc.pb.go index 4b0de312..5b4e3316 100644 --- a/pkg/proto/xmtpv4/message_api/message_api_grpc.pb.go +++ b/pkg/proto/xmtpv4/message_api/message_api_grpc.pb.go @@ -21,10 +21,10 @@ import ( const _ = grpc.SupportPackageIsVersion7 const ( - ReplicationApi_BatchSubscribeEnvelopes_FullMethodName = "/xmtp.xmtpv4.ReplicationApi/BatchSubscribeEnvelopes" - ReplicationApi_QueryEnvelopes_FullMethodName = "/xmtp.xmtpv4.ReplicationApi/QueryEnvelopes" - ReplicationApi_PublishEnvelope_FullMethodName = "/xmtp.xmtpv4.ReplicationApi/PublishEnvelope" - ReplicationApi_GetInboxIds_FullMethodName = "/xmtp.xmtpv4.ReplicationApi/GetInboxIds" + ReplicationApi_SubscribeEnvelopes_FullMethodName = "/xmtp.xmtpv4.message_api.ReplicationApi/SubscribeEnvelopes" + ReplicationApi_QueryEnvelopes_FullMethodName = "/xmtp.xmtpv4.message_api.ReplicationApi/QueryEnvelopes" + ReplicationApi_PublishPayerEnvelopes_FullMethodName = "/xmtp.xmtpv4.message_api.ReplicationApi/PublishPayerEnvelopes" + ReplicationApi_GetInboxIds_FullMethodName = "/xmtp.xmtpv4.message_api.ReplicationApi/GetInboxIds" ) // ReplicationApiClient is the client API for ReplicationApi service. @@ -32,11 +32,11 @@ const ( // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type ReplicationApiClient interface { // Subscribe to envelopes - BatchSubscribeEnvelopes(ctx context.Context, in *BatchSubscribeEnvelopesRequest, opts ...grpc.CallOption) (ReplicationApi_BatchSubscribeEnvelopesClient, error) + SubscribeEnvelopes(ctx context.Context, in *SubscribeEnvelopesRequest, opts ...grpc.CallOption) (ReplicationApi_SubscribeEnvelopesClient, error) // Query envelopes QueryEnvelopes(ctx context.Context, in *QueryEnvelopesRequest, opts ...grpc.CallOption) (*QueryEnvelopesResponse, error) // Publish envelope - PublishEnvelope(ctx context.Context, in *PublishEnvelopeRequest, opts ...grpc.CallOption) (*PublishEnvelopeResponse, error) + PublishPayerEnvelopes(ctx context.Context, in *PublishPayerEnvelopesRequest, opts ...grpc.CallOption) (*PublishPayerEnvelopesResponse, error) // Get inbox ids GetInboxIds(ctx context.Context, in *GetInboxIdsRequest, opts ...grpc.CallOption) (*GetInboxIdsResponse, error) } @@ -49,12 +49,12 @@ func NewReplicationApiClient(cc grpc.ClientConnInterface) ReplicationApiClient { return &replicationApiClient{cc} } -func (c *replicationApiClient) BatchSubscribeEnvelopes(ctx context.Context, in *BatchSubscribeEnvelopesRequest, opts ...grpc.CallOption) (ReplicationApi_BatchSubscribeEnvelopesClient, error) { - stream, err := c.cc.NewStream(ctx, &ReplicationApi_ServiceDesc.Streams[0], ReplicationApi_BatchSubscribeEnvelopes_FullMethodName, opts...) +func (c *replicationApiClient) SubscribeEnvelopes(ctx context.Context, in *SubscribeEnvelopesRequest, opts ...grpc.CallOption) (ReplicationApi_SubscribeEnvelopesClient, error) { + stream, err := c.cc.NewStream(ctx, &ReplicationApi_ServiceDesc.Streams[0], ReplicationApi_SubscribeEnvelopes_FullMethodName, opts...) if err != nil { return nil, err } - x := &replicationApiBatchSubscribeEnvelopesClient{stream} + x := &replicationApiSubscribeEnvelopesClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } @@ -64,17 +64,17 @@ func (c *replicationApiClient) BatchSubscribeEnvelopes(ctx context.Context, in * return x, nil } -type ReplicationApi_BatchSubscribeEnvelopesClient interface { - Recv() (*BatchSubscribeEnvelopesResponse, error) +type ReplicationApi_SubscribeEnvelopesClient interface { + Recv() (*SubscribeEnvelopesResponse, error) grpc.ClientStream } -type replicationApiBatchSubscribeEnvelopesClient struct { +type replicationApiSubscribeEnvelopesClient struct { grpc.ClientStream } -func (x *replicationApiBatchSubscribeEnvelopesClient) Recv() (*BatchSubscribeEnvelopesResponse, error) { - m := new(BatchSubscribeEnvelopesResponse) +func (x *replicationApiSubscribeEnvelopesClient) Recv() (*SubscribeEnvelopesResponse, error) { + m := new(SubscribeEnvelopesResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } @@ -90,9 +90,9 @@ func (c *replicationApiClient) QueryEnvelopes(ctx context.Context, in *QueryEnve return out, nil } -func (c *replicationApiClient) PublishEnvelope(ctx context.Context, in *PublishEnvelopeRequest, opts ...grpc.CallOption) (*PublishEnvelopeResponse, error) { - out := new(PublishEnvelopeResponse) - err := c.cc.Invoke(ctx, ReplicationApi_PublishEnvelope_FullMethodName, in, out, opts...) +func (c *replicationApiClient) PublishPayerEnvelopes(ctx context.Context, in *PublishPayerEnvelopesRequest, opts ...grpc.CallOption) (*PublishPayerEnvelopesResponse, error) { + out := new(PublishPayerEnvelopesResponse) + err := c.cc.Invoke(ctx, ReplicationApi_PublishPayerEnvelopes_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -113,11 +113,11 @@ func (c *replicationApiClient) GetInboxIds(ctx context.Context, in *GetInboxIdsR // for forward compatibility type ReplicationApiServer interface { // Subscribe to envelopes - BatchSubscribeEnvelopes(*BatchSubscribeEnvelopesRequest, ReplicationApi_BatchSubscribeEnvelopesServer) error + SubscribeEnvelopes(*SubscribeEnvelopesRequest, ReplicationApi_SubscribeEnvelopesServer) error // Query envelopes QueryEnvelopes(context.Context, *QueryEnvelopesRequest) (*QueryEnvelopesResponse, error) // Publish envelope - PublishEnvelope(context.Context, *PublishEnvelopeRequest) (*PublishEnvelopeResponse, error) + PublishPayerEnvelopes(context.Context, *PublishPayerEnvelopesRequest) (*PublishPayerEnvelopesResponse, error) // Get inbox ids GetInboxIds(context.Context, *GetInboxIdsRequest) (*GetInboxIdsResponse, error) mustEmbedUnimplementedReplicationApiServer() @@ -127,14 +127,14 @@ type ReplicationApiServer interface { type UnimplementedReplicationApiServer struct { } -func (UnimplementedReplicationApiServer) BatchSubscribeEnvelopes(*BatchSubscribeEnvelopesRequest, ReplicationApi_BatchSubscribeEnvelopesServer) error { - return status.Errorf(codes.Unimplemented, "method BatchSubscribeEnvelopes not implemented") +func (UnimplementedReplicationApiServer) SubscribeEnvelopes(*SubscribeEnvelopesRequest, ReplicationApi_SubscribeEnvelopesServer) error { + return status.Errorf(codes.Unimplemented, "method SubscribeEnvelopes not implemented") } func (UnimplementedReplicationApiServer) QueryEnvelopes(context.Context, *QueryEnvelopesRequest) (*QueryEnvelopesResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method QueryEnvelopes not implemented") } -func (UnimplementedReplicationApiServer) PublishEnvelope(context.Context, *PublishEnvelopeRequest) (*PublishEnvelopeResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method PublishEnvelope not implemented") +func (UnimplementedReplicationApiServer) PublishPayerEnvelopes(context.Context, *PublishPayerEnvelopesRequest) (*PublishPayerEnvelopesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PublishPayerEnvelopes not implemented") } func (UnimplementedReplicationApiServer) GetInboxIds(context.Context, *GetInboxIdsRequest) (*GetInboxIdsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetInboxIds not implemented") @@ -152,24 +152,24 @@ func RegisterReplicationApiServer(s grpc.ServiceRegistrar, srv ReplicationApiSer s.RegisterService(&ReplicationApi_ServiceDesc, srv) } -func _ReplicationApi_BatchSubscribeEnvelopes_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(BatchSubscribeEnvelopesRequest) +func _ReplicationApi_SubscribeEnvelopes_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(SubscribeEnvelopesRequest) if err := stream.RecvMsg(m); err != nil { return err } - return srv.(ReplicationApiServer).BatchSubscribeEnvelopes(m, &replicationApiBatchSubscribeEnvelopesServer{stream}) + return srv.(ReplicationApiServer).SubscribeEnvelopes(m, &replicationApiSubscribeEnvelopesServer{stream}) } -type ReplicationApi_BatchSubscribeEnvelopesServer interface { - Send(*BatchSubscribeEnvelopesResponse) error +type ReplicationApi_SubscribeEnvelopesServer interface { + Send(*SubscribeEnvelopesResponse) error grpc.ServerStream } -type replicationApiBatchSubscribeEnvelopesServer struct { +type replicationApiSubscribeEnvelopesServer struct { grpc.ServerStream } -func (x *replicationApiBatchSubscribeEnvelopesServer) Send(m *BatchSubscribeEnvelopesResponse) error { +func (x *replicationApiSubscribeEnvelopesServer) Send(m *SubscribeEnvelopesResponse) error { return x.ServerStream.SendMsg(m) } @@ -191,20 +191,20 @@ func _ReplicationApi_QueryEnvelopes_Handler(srv interface{}, ctx context.Context return interceptor(ctx, in, info, handler) } -func _ReplicationApi_PublishEnvelope_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PublishEnvelopeRequest) +func _ReplicationApi_PublishPayerEnvelopes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(PublishPayerEnvelopesRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(ReplicationApiServer).PublishEnvelope(ctx, in) + return srv.(ReplicationApiServer).PublishPayerEnvelopes(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: ReplicationApi_PublishEnvelope_FullMethodName, + FullMethod: ReplicationApi_PublishPayerEnvelopes_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ReplicationApiServer).PublishEnvelope(ctx, req.(*PublishEnvelopeRequest)) + return srv.(ReplicationApiServer).PublishPayerEnvelopes(ctx, req.(*PublishPayerEnvelopesRequest)) } return interceptor(ctx, in, info, handler) } @@ -231,7 +231,7 @@ func _ReplicationApi_GetInboxIds_Handler(srv interface{}, ctx context.Context, d // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) var ReplicationApi_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "xmtp.xmtpv4.ReplicationApi", + ServiceName: "xmtp.xmtpv4.message_api.ReplicationApi", HandlerType: (*ReplicationApiServer)(nil), Methods: []grpc.MethodDesc{ { @@ -239,8 +239,8 @@ var ReplicationApi_ServiceDesc = grpc.ServiceDesc{ Handler: _ReplicationApi_QueryEnvelopes_Handler, }, { - MethodName: "PublishEnvelope", - Handler: _ReplicationApi_PublishEnvelope_Handler, + MethodName: "PublishPayerEnvelopes", + Handler: _ReplicationApi_PublishPayerEnvelopes_Handler, }, { MethodName: "GetInboxIds", @@ -249,8 +249,8 @@ var ReplicationApi_ServiceDesc = grpc.ServiceDesc{ }, Streams: []grpc.StreamDesc{ { - StreamName: "BatchSubscribeEnvelopes", - Handler: _ReplicationApi_BatchSubscribeEnvelopes_Handler, + StreamName: "SubscribeEnvelopes", + Handler: _ReplicationApi_SubscribeEnvelopes_Handler, ServerStreams: true, }, }, diff --git a/pkg/proto/xmtpv4/payer_api/payer_api.pb.go b/pkg/proto/xmtpv4/payer_api/payer_api.pb.go new file mode 100644 index 00000000..d18be842 --- /dev/null +++ b/pkg/proto/xmtpv4/payer_api/payer_api.pb.go @@ -0,0 +1,223 @@ +// Payer API + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.1 +// protoc (unknown) +// source: xmtpv4/payer_api/payer_api.proto + +package payer_api + +import ( + envelopes "github.com/xmtp/xmtp-node-go/pkg/proto/xmtpv4/envelopes" + _ "google.golang.org/genproto/googleapis/api/annotations" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type PublishClientEnvelopesRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + Envelopes []*envelopes.ClientEnvelope `protobuf:"bytes,1,rep,name=envelopes,proto3" json:"envelopes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PublishClientEnvelopesRequest) Reset() { + *x = PublishClientEnvelopesRequest{} + mi := &file_xmtpv4_payer_api_payer_api_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PublishClientEnvelopesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PublishClientEnvelopesRequest) ProtoMessage() {} + +func (x *PublishClientEnvelopesRequest) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_payer_api_payer_api_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PublishClientEnvelopesRequest.ProtoReflect.Descriptor instead. +func (*PublishClientEnvelopesRequest) Descriptor() ([]byte, []int) { + return file_xmtpv4_payer_api_payer_api_proto_rawDescGZIP(), []int{0} +} + +func (x *PublishClientEnvelopesRequest) GetEnvelopes() []*envelopes.ClientEnvelope { + if x != nil { + return x.Envelopes + } + return nil +} + +type PublishClientEnvelopesResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + OriginatorEnvelopes []*envelopes.OriginatorEnvelope `protobuf:"bytes,1,rep,name=originator_envelopes,json=originatorEnvelopes,proto3" json:"originator_envelopes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *PublishClientEnvelopesResponse) Reset() { + *x = PublishClientEnvelopesResponse{} + mi := &file_xmtpv4_payer_api_payer_api_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *PublishClientEnvelopesResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PublishClientEnvelopesResponse) ProtoMessage() {} + +func (x *PublishClientEnvelopesResponse) ProtoReflect() protoreflect.Message { + mi := &file_xmtpv4_payer_api_payer_api_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PublishClientEnvelopesResponse.ProtoReflect.Descriptor instead. +func (*PublishClientEnvelopesResponse) Descriptor() ([]byte, []int) { + return file_xmtpv4_payer_api_payer_api_proto_rawDescGZIP(), []int{1} +} + +func (x *PublishClientEnvelopesResponse) GetOriginatorEnvelopes() []*envelopes.OriginatorEnvelope { + if x != nil { + return x.OriginatorEnvelopes + } + return nil +} + +var File_xmtpv4_payer_api_payer_api_proto protoreflect.FileDescriptor + +var file_xmtpv4_payer_api_payer_api_proto_rawDesc = []byte{ + 0x0a, 0x20, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, + 0x70, 0x69, 0x2f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x15, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, + 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2f, + 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2f, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, + 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x64, 0x0a, 0x1d, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, + 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x09, 0x65, 0x6e, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, + 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x65, 0x6e, 0x76, 0x65, + 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x76, 0x65, + 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x09, 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x22, + 0x7e, 0x0a, 0x1e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x5c, 0x0a, 0x14, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x5f, + 0x65, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x29, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x65, 0x6e, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, + 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x13, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x32, + 0xc5, 0x01, 0x0a, 0x08, 0x50, 0x61, 0x79, 0x65, 0x72, 0x41, 0x70, 0x69, 0x12, 0xb8, 0x01, 0x0a, + 0x16, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x34, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, + 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x76, + 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, + 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x70, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x3a, 0x01, 0x2a, 0x22, + 0x26, 0x2f, 0x6d, 0x6c, 0x73, 0x2f, 0x76, 0x32, 0x2f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x2f, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x2d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2d, 0x65, 0x6e, + 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x42, 0xd5, 0x01, 0x0a, 0x19, 0x63, 0x6f, 0x6d, 0x2e, + 0x78, 0x6d, 0x74, 0x70, 0x2e, 0x78, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2e, 0x70, 0x61, 0x79, 0x65, + 0x72, 0x5f, 0x61, 0x70, 0x69, 0x42, 0x0d, 0x50, 0x61, 0x79, 0x65, 0x72, 0x41, 0x70, 0x69, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x37, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2f, 0x78, 0x6d, 0x74, 0x70, 0x2d, 0x6e, 0x6f, 0x64, + 0x65, 0x2d, 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x78, + 0x6d, 0x74, 0x70, 0x76, 0x34, 0x2f, 0x70, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0xa2, + 0x02, 0x03, 0x58, 0x58, 0x50, 0xaa, 0x02, 0x14, 0x58, 0x6d, 0x74, 0x70, 0x2e, 0x58, 0x6d, 0x74, + 0x70, 0x76, 0x34, 0x2e, 0x50, 0x61, 0x79, 0x65, 0x72, 0x41, 0x70, 0x69, 0xca, 0x02, 0x14, 0x58, + 0x6d, 0x74, 0x70, 0x5c, 0x58, 0x6d, 0x74, 0x70, 0x76, 0x34, 0x5c, 0x50, 0x61, 0x79, 0x65, 0x72, + 0x41, 0x70, 0x69, 0xe2, 0x02, 0x20, 0x58, 0x6d, 0x74, 0x70, 0x5c, 0x58, 0x6d, 0x74, 0x70, 0x76, + 0x34, 0x5c, 0x50, 0x61, 0x79, 0x65, 0x72, 0x41, 0x70, 0x69, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x16, 0x58, 0x6d, 0x74, 0x70, 0x3a, 0x3a, 0x58, + 0x6d, 0x74, 0x70, 0x76, 0x34, 0x3a, 0x3a, 0x50, 0x61, 0x79, 0x65, 0x72, 0x41, 0x70, 0x69, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_xmtpv4_payer_api_payer_api_proto_rawDescOnce sync.Once + file_xmtpv4_payer_api_payer_api_proto_rawDescData = file_xmtpv4_payer_api_payer_api_proto_rawDesc +) + +func file_xmtpv4_payer_api_payer_api_proto_rawDescGZIP() []byte { + file_xmtpv4_payer_api_payer_api_proto_rawDescOnce.Do(func() { + file_xmtpv4_payer_api_payer_api_proto_rawDescData = protoimpl.X.CompressGZIP(file_xmtpv4_payer_api_payer_api_proto_rawDescData) + }) + return file_xmtpv4_payer_api_payer_api_proto_rawDescData +} + +var file_xmtpv4_payer_api_payer_api_proto_msgTypes = make([]protoimpl.MessageInfo, 2) +var file_xmtpv4_payer_api_payer_api_proto_goTypes = []any{ + (*PublishClientEnvelopesRequest)(nil), // 0: xmtp.xmtpv4.payer_api.PublishClientEnvelopesRequest + (*PublishClientEnvelopesResponse)(nil), // 1: xmtp.xmtpv4.payer_api.PublishClientEnvelopesResponse + (*envelopes.ClientEnvelope)(nil), // 2: xmtp.xmtpv4.envelopes.ClientEnvelope + (*envelopes.OriginatorEnvelope)(nil), // 3: xmtp.xmtpv4.envelopes.OriginatorEnvelope +} +var file_xmtpv4_payer_api_payer_api_proto_depIdxs = []int32{ + 2, // 0: xmtp.xmtpv4.payer_api.PublishClientEnvelopesRequest.envelopes:type_name -> xmtp.xmtpv4.envelopes.ClientEnvelope + 3, // 1: xmtp.xmtpv4.payer_api.PublishClientEnvelopesResponse.originator_envelopes:type_name -> xmtp.xmtpv4.envelopes.OriginatorEnvelope + 0, // 2: xmtp.xmtpv4.payer_api.PayerApi.PublishClientEnvelopes:input_type -> xmtp.xmtpv4.payer_api.PublishClientEnvelopesRequest + 1, // 3: xmtp.xmtpv4.payer_api.PayerApi.PublishClientEnvelopes:output_type -> xmtp.xmtpv4.payer_api.PublishClientEnvelopesResponse + 3, // [3:4] is the sub-list for method output_type + 2, // [2:3] is the sub-list for method input_type + 2, // [2:2] is the sub-list for extension type_name + 2, // [2:2] is the sub-list for extension extendee + 0, // [0:2] is the sub-list for field type_name +} + +func init() { file_xmtpv4_payer_api_payer_api_proto_init() } +func file_xmtpv4_payer_api_payer_api_proto_init() { + if File_xmtpv4_payer_api_payer_api_proto != nil { + return + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_xmtpv4_payer_api_payer_api_proto_rawDesc, + NumEnums: 0, + NumMessages: 2, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_xmtpv4_payer_api_payer_api_proto_goTypes, + DependencyIndexes: file_xmtpv4_payer_api_payer_api_proto_depIdxs, + MessageInfos: file_xmtpv4_payer_api_payer_api_proto_msgTypes, + }.Build() + File_xmtpv4_payer_api_payer_api_proto = out.File + file_xmtpv4_payer_api_payer_api_proto_rawDesc = nil + file_xmtpv4_payer_api_payer_api_proto_goTypes = nil + file_xmtpv4_payer_api_payer_api_proto_depIdxs = nil +} diff --git a/pkg/proto/xmtpv4/payer_api/payer_api.pb.gw.go b/pkg/proto/xmtpv4/payer_api/payer_api.pb.gw.go new file mode 100644 index 00000000..cc4f2add --- /dev/null +++ b/pkg/proto/xmtpv4/payer_api/payer_api.pb.gw.go @@ -0,0 +1,163 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: xmtpv4/payer_api/payer_api.proto + +/* +Package payer_api is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package payer_api + +import ( + "context" + "io" + "net/http" + + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/metadata" + "google.golang.org/grpc/status" + "google.golang.org/protobuf/proto" +) + +// Suppress "imported and not used" errors +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray +var _ = metadata.Join + +func request_PayerApi_PublishClientEnvelopes_0(ctx context.Context, marshaler runtime.Marshaler, client PayerApiClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq PublishClientEnvelopesRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.PublishClientEnvelopes(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_PayerApi_PublishClientEnvelopes_0(ctx context.Context, marshaler runtime.Marshaler, server PayerApiServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq PublishClientEnvelopesRequest + var metadata runtime.ServerMetadata + + if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.PublishClientEnvelopes(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterPayerApiHandlerServer registers the http handlers for service PayerApi to "mux". +// UnaryRPC :call PayerApiServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterPayerApiHandlerFromEndpoint instead. +func RegisterPayerApiHandlerServer(ctx context.Context, mux *runtime.ServeMux, server PayerApiServer) error { + + mux.Handle("POST", pattern_PayerApi_PublishClientEnvelopes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/xmtp.xmtpv4.payer_api.PayerApi/PublishClientEnvelopes", runtime.WithHTTPPathPattern("/mls/v2/payer/publish-client-envelopes")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_PayerApi_PublishClientEnvelopes_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_PayerApi_PublishClientEnvelopes_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterPayerApiHandlerFromEndpoint is same as RegisterPayerApiHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterPayerApiHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.DialContext(ctx, endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterPayerApiHandler(ctx, mux, conn) +} + +// RegisterPayerApiHandler registers the http handlers for service PayerApi to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterPayerApiHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterPayerApiHandlerClient(ctx, mux, NewPayerApiClient(conn)) +} + +// RegisterPayerApiHandlerClient registers the http handlers for service PayerApi +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "PayerApiClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "PayerApiClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "PayerApiClient" to call the correct interceptors. +func RegisterPayerApiHandlerClient(ctx context.Context, mux *runtime.ServeMux, client PayerApiClient) error { + + mux.Handle("POST", pattern_PayerApi_PublishClientEnvelopes_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/xmtp.xmtpv4.payer_api.PayerApi/PublishClientEnvelopes", runtime.WithHTTPPathPattern("/mls/v2/payer/publish-client-envelopes")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_PayerApi_PublishClientEnvelopes_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_PayerApi_PublishClientEnvelopes_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_PayerApi_PublishClientEnvelopes_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"mls", "v2", "payer", "publish-client-envelopes"}, "")) +) + +var ( + forward_PayerApi_PublishClientEnvelopes_0 = runtime.ForwardResponseMessage +) diff --git a/pkg/proto/xmtpv4/payer_api/payer_api_grpc.pb.go b/pkg/proto/xmtpv4/payer_api/payer_api_grpc.pb.go new file mode 100644 index 00000000..dbc2c76f --- /dev/null +++ b/pkg/proto/xmtpv4/payer_api/payer_api_grpc.pb.go @@ -0,0 +1,113 @@ +// Payer API + +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.3.0 +// - protoc (unknown) +// source: xmtpv4/payer_api/payer_api.proto + +package payer_api + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +const ( + PayerApi_PublishClientEnvelopes_FullMethodName = "/xmtp.xmtpv4.payer_api.PayerApi/PublishClientEnvelopes" +) + +// PayerApiClient is the client API for PayerApi service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type PayerApiClient interface { + // Publish envelope + PublishClientEnvelopes(ctx context.Context, in *PublishClientEnvelopesRequest, opts ...grpc.CallOption) (*PublishClientEnvelopesResponse, error) +} + +type payerApiClient struct { + cc grpc.ClientConnInterface +} + +func NewPayerApiClient(cc grpc.ClientConnInterface) PayerApiClient { + return &payerApiClient{cc} +} + +func (c *payerApiClient) PublishClientEnvelopes(ctx context.Context, in *PublishClientEnvelopesRequest, opts ...grpc.CallOption) (*PublishClientEnvelopesResponse, error) { + out := new(PublishClientEnvelopesResponse) + err := c.cc.Invoke(ctx, PayerApi_PublishClientEnvelopes_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// PayerApiServer is the server API for PayerApi service. +// All implementations must embed UnimplementedPayerApiServer +// for forward compatibility +type PayerApiServer interface { + // Publish envelope + PublishClientEnvelopes(context.Context, *PublishClientEnvelopesRequest) (*PublishClientEnvelopesResponse, error) + mustEmbedUnimplementedPayerApiServer() +} + +// UnimplementedPayerApiServer must be embedded to have forward compatible implementations. +type UnimplementedPayerApiServer struct { +} + +func (UnimplementedPayerApiServer) PublishClientEnvelopes(context.Context, *PublishClientEnvelopesRequest) (*PublishClientEnvelopesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PublishClientEnvelopes not implemented") +} +func (UnimplementedPayerApiServer) mustEmbedUnimplementedPayerApiServer() {} + +// UnsafePayerApiServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to PayerApiServer will +// result in compilation errors. +type UnsafePayerApiServer interface { + mustEmbedUnimplementedPayerApiServer() +} + +func RegisterPayerApiServer(s grpc.ServiceRegistrar, srv PayerApiServer) { + s.RegisterService(&PayerApi_ServiceDesc, srv) +} + +func _PayerApi_PublishClientEnvelopes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(PublishClientEnvelopesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(PayerApiServer).PublishClientEnvelopes(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: PayerApi_PublishClientEnvelopes_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(PayerApiServer).PublishClientEnvelopes(ctx, req.(*PublishClientEnvelopesRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// PayerApi_ServiceDesc is the grpc.ServiceDesc for PayerApi service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var PayerApi_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "xmtp.xmtpv4.payer_api.PayerApi", + HandlerType: (*PayerApiServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "PublishClientEnvelopes", + Handler: _PayerApi_PublishClientEnvelopes_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "xmtpv4/payer_api/payer_api.proto", +}