(fix/status-go) fix profile picture update/removal (#4570)

This PR fixes [9947](status-im/status-desktop#9947) and contains :

    - Commit to fix the changing of custom picture and having the change
      reflected on contact's side
    - Commit to fix the deleting of picture and having the change reflected
      on contact's side
    - Rename confusing `ImageType` to `ImageFormat`
This commit is contained in:
Godfrain Jacques 2024-01-24 12:09:28 -08:00 committed by GitHub
parent 026194d97a
commit 5f6f7e502d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
29 changed files with 6905 additions and 11315 deletions

View File

@ -6,18 +6,18 @@ import (
"github.com/status-im/status-go/protocol/protobuf"
)
func GetProtobufImageType(buf []byte) protobuf.ImageType {
func GetProtobufImageFormat(buf []byte) protobuf.ImageFormat {
switch GetType(buf) {
case JPEG:
return protobuf.ImageType_JPEG
return protobuf.ImageFormat_JPEG
case PNG:
return protobuf.ImageType_PNG
return protobuf.ImageFormat_PNG
case GIF:
return protobuf.ImageType_GIF
return protobuf.ImageFormat_GIF
case WEBP:
return protobuf.ImageType_WEBP
return protobuf.ImageFormat_WEBP
default:
return protobuf.ImageType_UNKNOWN_IMAGE_TYPE
return protobuf.ImageFormat_UNKNOWN_IMAGE_FORMAT
}
}

View File

@ -451,6 +451,15 @@ func (db *Database) publishOnIdentityImageSubscriptions(change *IdentityImageSub
func (db *Database) DeleteIdentityImage(keyUID string) error {
_, err := db.db.Exec(`DELETE FROM identity_images WHERE key_uid = ?`, keyUID)
if err != nil {
return err
}
db.publishOnIdentityImageSubscriptions(&IdentityImageSubscriptionChange{
PublishExpected: true,
})
return err
}

View File

@ -740,7 +740,7 @@ func (m *Message) LoadImage() error {
}
imageMessage := m.GetImage()
imageMessage.Payload = payload
imageMessage.Type = images.GetProtobufImageType(payload)
imageMessage.Format = images.GetProtobufImageFormat(payload)
m.Payload = &protobuf.ChatMessage_Image{Image: imageMessage}
return nil

View File

@ -29,7 +29,7 @@ func TestPrepareContentImage(t *testing.T) {
message.ContentType = protobuf.ChatMessage_IMAGE
image := protobuf.ImageMessage{
Payload: payload,
Type: protobuf.ImageType_JPEG,
Format: protobuf.ImageFormat_JPEG,
}
message.Payload = &protobuf.ChatMessage_Image{Image: &image}

View File

@ -268,7 +268,7 @@ func (db sqlitePersistence) tableUserMessagesScanAllFields(row scanner, message
&sticker.Pack,
&sticker.Hash,
&image.Payload,
&image.Type,
&image.Format,
&image.AlbumId,
&image.AlbumImagesCount,
&image.Width,
@ -555,7 +555,7 @@ func (db sqlitePersistence) tableUserMessagesAllValues(message *common.Message)
sticker.Pack,
sticker.Hash,
image.Payload,
image.Type,
image.Format,
image.AlbumId,
albumImages,
image.AlbumImagesCount,

View File

@ -291,7 +291,7 @@ func ValidateReceivedChatMessage(message *protobuf.ChatMessage, whisperTimestamp
if len(image.Payload) == 0 {
return errors.New("image payload empty")
}
if image.Type == protobuf.ImageType_UNKNOWN_IMAGE_TYPE {
if image.Format == protobuf.ImageFormat_UNKNOWN_IMAGE_FORMAT {
return errors.New("image type unknown")
}
}

View File

@ -369,7 +369,7 @@ func (s *MessageValidatorSuite) TestValidatePlainTextMessage() {
EnsName: "",
Payload: &protobuf.ChatMessage_Image{
Image: &protobuf.ImageMessage{
Type: 1,
Format: 1,
Payload: []byte("some-payload"),
},
},
@ -390,7 +390,7 @@ func (s *MessageValidatorSuite) TestValidatePlainTextMessage() {
EnsName: "",
Payload: &protobuf.ChatMessage_Image{
Image: &protobuf.ImageMessage{
Type: protobuf.ImageType_UNKNOWN_IMAGE_TYPE,
Format: protobuf.ImageFormat_UNKNOWN_IMAGE_FORMAT,
Payload: []byte("some-payload"),
},
},
@ -411,7 +411,7 @@ func (s *MessageValidatorSuite) TestValidatePlainTextMessage() {
EnsName: "",
Payload: &protobuf.ChatMessage_Image{
Image: &protobuf.ImageMessage{
Type: 1,
Format: 1,
},
},
MessageType: protobuf.MessageType_ONE_TO_ONE,

View File

@ -1296,7 +1296,7 @@ func (m *Messenger) adaptIdentityImageToProtobuf(img *images.IdentityImage) *pro
return &protobuf.IdentityImage{
Payload: img.Payload,
SourceType: protobuf.IdentityImage_RAW_PAYLOAD, // TODO add ENS avatar handling to dedicated PR
ImageType: images.GetProtobufImageType(img.Payload),
ImageFormat: images.GetProtobufImageFormat(img.Payload),
}
}

View File

@ -2945,7 +2945,11 @@ func (m *Messenger) HandleChatIdentity(state *ReceivedMessageState, ci *protobuf
}
}
clockChanged, imagesChanged, err := m.persistence.SaveContactChatIdentity(contact.ID, ci)
if len(ci.Images) == 0 {
contact.Images = nil
}
clockChanged, imagesChanged, err := m.persistence.UpdateContactChatIdentity(contact.ID, ci)
if err != nil {
return err
}

View File

@ -44,7 +44,7 @@ func buildImageMessage(s *MessengerShareMessageSuite, chat Chat) *common.Message
image := protobuf.ImageMessage{
Payload: payload,
Type: protobuf.ImageType_JPEG,
Format: protobuf.ImageFormat_JPEG,
AlbumId: "some-album-id",
Width: 1200,
Height: 1000,

View File

@ -2498,7 +2498,7 @@ func buildImageWithAlbumIDMessage(chat Chat, albumID string) (*common.Message, e
image := protobuf.ImageMessage{
Payload: payload,
Type: protobuf.ImageType_JPEG,
Format: protobuf.ImageFormat_JPEG,
Width: 1200,
Height: 1000,
AlbumId: albumID,

View File

@ -6,6 +6,7 @@ import (
"database/sql"
"encoding/gob"
"encoding/json"
"strings"
"time"
"github.com/pkg/errors"
@ -737,7 +738,29 @@ func (db sqlitePersistence) Contacts() ([]*Contact, error) {
return response, nil
}
func (db sqlitePersistence) SaveContactChatIdentity(contactID string, chatIdentity *protobuf.ChatIdentity) (clockUpdated, imagesUpdated bool, err error) {
func extractImageTypes(images map[string]*protobuf.IdentityImage) []string {
uniqueImageTypesMap := make(map[string]struct{})
for key := range images {
uniqueImageTypesMap[key] = struct{}{}
}
var uniqueImageTypes []string
for key := range uniqueImageTypesMap {
uniqueImageTypes = append(uniqueImageTypes, key)
}
return uniqueImageTypes
}
func generatePlaceholders(count int) string {
placeholders := make([]string, count)
for i := 0; i < count; i++ {
placeholders[i] = "?"
}
return strings.Join(placeholders, ", ")
}
func (db sqlitePersistence) UpdateContactChatIdentity(contactID string, chatIdentity *protobuf.ChatIdentity) (clockUpdated, imagesUpdated bool, err error) {
if chatIdentity.Clock == 0 {
return false, false, errors.New("clock value unset")
}
@ -755,6 +778,35 @@ func (db sqlitePersistence) SaveContactChatIdentity(contactID string, chatIdenti
_ = tx.Rollback()
}()
extractedImageTypes := extractImageTypes(chatIdentity.Images)
query := "DELETE FROM chat_identity_contacts WHERE contact_id = ?"
if len(extractedImageTypes) > 0 {
query += " AND image_type NOT IN (" + generatePlaceholders(len(extractedImageTypes)) + ")"
}
stmt, err := tx.Prepare(query)
if err != nil {
return false, false, err
}
defer stmt.Close()
args := make([]interface{}, len(extractedImageTypes)+1)
args[0] = contactID
for i, v := range extractedImageTypes {
args[i+1] = v
}
result, err := stmt.Exec(args...)
if err != nil {
return false, false, err
}
imagesUpdated = false
if rowsAffected, err := result.RowsAffected(); err == nil && rowsAffected > 0 {
imagesUpdated = true
}
updateClock := func() (updated bool, err error) {
var newerClockEntryExists bool
err = tx.QueryRow(`SELECT EXISTS(SELECT 1 FROM chat_identity_last_received WHERE chat_id = ? AND clock_value >= ?)`, contactID, chatIdentity.Clock).Scan(&newerClockEntryExists)

View File

@ -32,7 +32,7 @@ func (s *MessengerSuite) Test_WHEN_MessageContainsImage_Then_preparedMessageAdds
ContentType: protobuf.ChatMessage_IMAGE,
Payload: &protobuf.ChatMessage_Image{
Image: &protobuf.ImageMessage{
Type: 1,
Format: 1,
Payload: []byte("some-payload"),
},
},

View File

@ -1090,7 +1090,7 @@ func TestSqlitePersistence_GetWhenChatIdentityLastPublished(t *testing.T) {
require.Nil(t, actualHash2)
}
func TestSaveContactChatIdentity(t *testing.T) {
func TestUpdateContactChatIdentity(t *testing.T) {
db, err := openTestDB()
require.NoError(t, err)
p := newSQLitePersistence(db)
@ -1108,13 +1108,13 @@ func TestSaveContactChatIdentity(t *testing.T) {
identityImages["large"] = &protobuf.IdentityImage{
Payload: jpegType,
SourceType: protobuf.IdentityImage_RAW_PAYLOAD,
ImageType: protobuf.ImageType_PNG,
ImageFormat: protobuf.ImageFormat_PNG,
}
identityImages["small"] = &protobuf.IdentityImage{
Payload: jpegType,
SourceType: protobuf.IdentityImage_RAW_PAYLOAD,
ImageType: protobuf.ImageType_PNG,
ImageFormat: protobuf.ImageFormat_PNG,
}
toArrayOfPointers := func(array []protobuf.SocialLink) (result []*protobuf.SocialLink) {
@ -1140,13 +1140,13 @@ func TestSaveContactChatIdentity(t *testing.T) {
}),
}
clockUpdated, imagesUpdated, err := p.SaveContactChatIdentity(contactID, chatIdentity)
clockUpdated, imagesUpdated, err := p.UpdateContactChatIdentity(contactID, chatIdentity)
require.NoError(t, err)
require.True(t, clockUpdated)
require.True(t, imagesUpdated)
// Save again same clock and data
clockUpdated, imagesUpdated, err = p.SaveContactChatIdentity(contactID, chatIdentity)
clockUpdated, imagesUpdated, err = p.UpdateContactChatIdentity(contactID, chatIdentity)
require.NoError(t, err)
require.False(t, clockUpdated)
require.False(t, imagesUpdated)
@ -1154,16 +1154,16 @@ func TestSaveContactChatIdentity(t *testing.T) {
// Save again newer clock and no images
chatIdentity.Clock = 2
chatIdentity.Images = make(map[string]*protobuf.IdentityImage)
clockUpdated, imagesUpdated, err = p.SaveContactChatIdentity(contactID, chatIdentity)
clockUpdated, imagesUpdated, err = p.UpdateContactChatIdentity(contactID, chatIdentity)
require.NoError(t, err)
require.True(t, clockUpdated)
require.False(t, imagesUpdated)
require.True(t, imagesUpdated)
contacts, err := p.Contacts()
require.NoError(t, err)
require.Len(t, contacts, 1)
require.Len(t, contacts[0].Images, 2)
require.Len(t, contacts[0].Images, 0)
require.Len(t, contacts[0].SocialLinks, 2)
require.Equal(t, "Personal Site", contacts[0].SocialLinks[0].Text)
require.Equal(t, "status.im", contacts[0].SocialLinks[0].URL)
@ -1171,6 +1171,64 @@ func TestSaveContactChatIdentity(t *testing.T) {
require.Equal(t, "Status_ico", contacts[0].SocialLinks[1].URL)
}
func TestRemovedProfileImage(t *testing.T) {
db, err := openTestDB()
require.NoError(t, err)
p := newSQLitePersistence(db)
key, err := crypto.GenerateKey()
require.NoError(t, err)
contactID := types.EncodeHex(crypto.FromECDSAPub(&key.PublicKey))
err = p.SaveContact(&Contact{ID: contactID}, nil)
require.NoError(t, err)
jpegType := []byte{0xff, 0xd8, 0xff, 0x1}
identityImages := make(map[string]*protobuf.IdentityImage)
identityImages["large"] = &protobuf.IdentityImage{
Payload: jpegType,
SourceType: protobuf.IdentityImage_RAW_PAYLOAD,
ImageFormat: protobuf.ImageFormat_PNG,
}
identityImages["small"] = &protobuf.IdentityImage{
Payload: jpegType,
SourceType: protobuf.IdentityImage_RAW_PAYLOAD,
ImageFormat: protobuf.ImageFormat_PNG,
}
chatIdentity := &protobuf.ChatIdentity{
Clock: 1,
Images: identityImages,
}
clockUpdated, imagesUpdated, err := p.UpdateContactChatIdentity(contactID, chatIdentity)
require.NoError(t, err)
require.True(t, clockUpdated)
require.True(t, imagesUpdated)
contacts, err := p.Contacts()
require.NoError(t, err)
require.Len(t, contacts, 1)
require.Len(t, contacts[0].Images, 2)
emptyChatIdentity := &protobuf.ChatIdentity{
Clock: 1,
Images: nil,
}
clockUpdated, imagesUpdated, err = p.UpdateContactChatIdentity(contactID, emptyChatIdentity)
require.NoError(t, err)
require.False(t, clockUpdated)
require.True(t, imagesUpdated)
contacts, err = p.Contacts()
require.NoError(t, err)
require.Len(t, contacts, 1)
require.Len(t, contacts[0].Images, 0)
}
func TestSaveLinks(t *testing.T) {
chatID := testPublicChatID
db, err := openTestDB()

View File

@ -1,24 +1,24 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.29.1
// protoc v3.20.3
// source: chat_identity.proto
package protobuf
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
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)
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
// SourceType are the predefined types of image source allowed
type IdentityImage_SourceType int32
@ -34,53 +34,28 @@ const (
IdentityImage_ENS_AVATAR IdentityImage_SourceType = 2
)
// Enum value maps for IdentityImage_SourceType.
var (
IdentityImage_SourceType_name = map[int32]string{
var IdentityImage_SourceType_name = map[int32]string{
0: "UNKNOWN_SOURCE_TYPE",
1: "RAW_PAYLOAD",
2: "ENS_AVATAR",
}
IdentityImage_SourceType_value = map[string]int32{
var IdentityImage_SourceType_value = map[string]int32{
"UNKNOWN_SOURCE_TYPE": 0,
"RAW_PAYLOAD": 1,
"ENS_AVATAR": 2,
}
)
func (x IdentityImage_SourceType) Enum() *IdentityImage_SourceType {
p := new(IdentityImage_SourceType)
*p = x
return p
}
func (x IdentityImage_SourceType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
return proto.EnumName(IdentityImage_SourceType_name, int32(x))
}
func (IdentityImage_SourceType) Descriptor() protoreflect.EnumDescriptor {
return file_chat_identity_proto_enumTypes[0].Descriptor()
}
func (IdentityImage_SourceType) Type() protoreflect.EnumType {
return &file_chat_identity_proto_enumTypes[0]
}
func (x IdentityImage_SourceType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use IdentityImage_SourceType.Descriptor instead.
func (IdentityImage_SourceType) EnumDescriptor() ([]byte, []int) {
return file_chat_identity_proto_rawDescGZIP(), []int{1, 0}
return fileDescriptor_7a652489000a5879, []int{1, 0}
}
// ChatIdentity represents the user defined identity associated with their public chat key
type ChatIdentity struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Lamport timestamp of the message
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
// ens_name is the valid ENS name associated with the chat key
@ -99,416 +74,280 @@ type ChatIdentity struct {
// 1 - no messages
FirstMessageTimestamp uint32 `protobuf:"varint,9,opt,name=first_message_timestamp,json=firstMessageTimestamp,proto3" json:"first_message_timestamp,omitempty"`
ProfileShowcase *ProfileShowcase `protobuf:"bytes,10,opt,name=profile_showcase,json=profileShowcase,proto3" json:"profile_showcase,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (x *ChatIdentity) Reset() {
*x = ChatIdentity{}
if protoimpl.UnsafeEnabled {
mi := &file_chat_identity_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ChatIdentity) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *ChatIdentity) Reset() { *m = ChatIdentity{} }
func (m *ChatIdentity) String() string { return proto.CompactTextString(m) }
func (*ChatIdentity) ProtoMessage() {}
func (x *ChatIdentity) ProtoReflect() protoreflect.Message {
mi := &file_chat_identity_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ChatIdentity.ProtoReflect.Descriptor instead.
func (*ChatIdentity) Descriptor() ([]byte, []int) {
return file_chat_identity_proto_rawDescGZIP(), []int{0}
return fileDescriptor_7a652489000a5879, []int{0}
}
func (x *ChatIdentity) GetClock() uint64 {
if x != nil {
return x.Clock
func (m *ChatIdentity) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChatIdentity.Unmarshal(m, b)
}
func (m *ChatIdentity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ChatIdentity.Marshal(b, m, deterministic)
}
func (m *ChatIdentity) XXX_Merge(src proto.Message) {
xxx_messageInfo_ChatIdentity.Merge(m, src)
}
func (m *ChatIdentity) XXX_Size() int {
return xxx_messageInfo_ChatIdentity.Size(m)
}
func (m *ChatIdentity) XXX_DiscardUnknown() {
xxx_messageInfo_ChatIdentity.DiscardUnknown(m)
}
var xxx_messageInfo_ChatIdentity proto.InternalMessageInfo
func (m *ChatIdentity) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (x *ChatIdentity) GetEnsName() string {
if x != nil {
return x.EnsName
func (m *ChatIdentity) GetEnsName() string {
if m != nil {
return m.EnsName
}
return ""
}
func (x *ChatIdentity) GetImages() map[string]*IdentityImage {
if x != nil {
return x.Images
func (m *ChatIdentity) GetImages() map[string]*IdentityImage {
if m != nil {
return m.Images
}
return nil
}
func (x *ChatIdentity) GetDisplayName() string {
if x != nil {
return x.DisplayName
func (m *ChatIdentity) GetDisplayName() string {
if m != nil {
return m.DisplayName
}
return ""
}
func (x *ChatIdentity) GetDescription() string {
if x != nil {
return x.Description
func (m *ChatIdentity) GetDescription() string {
if m != nil {
return m.Description
}
return ""
}
func (x *ChatIdentity) GetColor() string {
if x != nil {
return x.Color
func (m *ChatIdentity) GetColor() string {
if m != nil {
return m.Color
}
return ""
}
func (x *ChatIdentity) GetEmoji() string {
if x != nil {
return x.Emoji
func (m *ChatIdentity) GetEmoji() string {
if m != nil {
return m.Emoji
}
return ""
}
func (x *ChatIdentity) GetSocialLinks() []*SocialLink {
if x != nil {
return x.SocialLinks
func (m *ChatIdentity) GetSocialLinks() []*SocialLink {
if m != nil {
return m.SocialLinks
}
return nil
}
func (x *ChatIdentity) GetFirstMessageTimestamp() uint32 {
if x != nil {
return x.FirstMessageTimestamp
func (m *ChatIdentity) GetFirstMessageTimestamp() uint32 {
if m != nil {
return m.FirstMessageTimestamp
}
return 0
}
func (x *ChatIdentity) GetProfileShowcase() *ProfileShowcase {
if x != nil {
return x.ProfileShowcase
func (m *ChatIdentity) GetProfileShowcase() *ProfileShowcase {
if m != nil {
return m.ProfileShowcase
}
return nil
}
// ProfileImage represents data associated with a user's profile image
type IdentityImage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// payload is a context based payload for the profile image data,
// context is determined by the `source_type`
Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"`
// source_type signals the image payload source
SourceType IdentityImage_SourceType `protobuf:"varint,2,opt,name=source_type,json=sourceType,proto3,enum=protobuf.IdentityImage_SourceType" json:"source_type,omitempty"`
// image_type signals the image type and method of parsing the payload
ImageType ImageType `protobuf:"varint,3,opt,name=image_type,json=imageType,proto3,enum=protobuf.ImageType" json:"image_type,omitempty"`
// image_format signals the image format and method of parsing the payload
ImageFormat ImageFormat `protobuf:"varint,3,opt,name=image_format,json=imageFormat,proto3,enum=protobuf.ImageFormat" json:"image_format,omitempty"`
// encryption_keys is a list of encrypted keys that can be used to decrypted an encrypted payload
EncryptionKeys [][]byte `protobuf:"bytes,4,rep,name=encryption_keys,json=encryptionKeys,proto3" json:"encryption_keys,omitempty"`
// encrypted signals the encryption state of the payload, default is false.
Encrypted bool `protobuf:"varint,5,opt,name=encrypted,proto3" json:"encrypted,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (x *IdentityImage) Reset() {
*x = IdentityImage{}
if protoimpl.UnsafeEnabled {
mi := &file_chat_identity_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *IdentityImage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *IdentityImage) Reset() { *m = IdentityImage{} }
func (m *IdentityImage) String() string { return proto.CompactTextString(m) }
func (*IdentityImage) ProtoMessage() {}
func (x *IdentityImage) ProtoReflect() protoreflect.Message {
mi := &file_chat_identity_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use IdentityImage.ProtoReflect.Descriptor instead.
func (*IdentityImage) Descriptor() ([]byte, []int) {
return file_chat_identity_proto_rawDescGZIP(), []int{1}
return fileDescriptor_7a652489000a5879, []int{1}
}
func (x *IdentityImage) GetPayload() []byte {
if x != nil {
return x.Payload
func (m *IdentityImage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_IdentityImage.Unmarshal(m, b)
}
func (m *IdentityImage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_IdentityImage.Marshal(b, m, deterministic)
}
func (m *IdentityImage) XXX_Merge(src proto.Message) {
xxx_messageInfo_IdentityImage.Merge(m, src)
}
func (m *IdentityImage) XXX_Size() int {
return xxx_messageInfo_IdentityImage.Size(m)
}
func (m *IdentityImage) XXX_DiscardUnknown() {
xxx_messageInfo_IdentityImage.DiscardUnknown(m)
}
var xxx_messageInfo_IdentityImage proto.InternalMessageInfo
func (m *IdentityImage) GetPayload() []byte {
if m != nil {
return m.Payload
}
return nil
}
func (x *IdentityImage) GetSourceType() IdentityImage_SourceType {
if x != nil {
return x.SourceType
func (m *IdentityImage) GetSourceType() IdentityImage_SourceType {
if m != nil {
return m.SourceType
}
return IdentityImage_UNKNOWN_SOURCE_TYPE
}
func (x *IdentityImage) GetImageType() ImageType {
if x != nil {
return x.ImageType
func (m *IdentityImage) GetImageFormat() ImageFormat {
if m != nil {
return m.ImageFormat
}
return ImageType_UNKNOWN_IMAGE_TYPE
return ImageFormat_UNKNOWN_IMAGE_FORMAT
}
func (x *IdentityImage) GetEncryptionKeys() [][]byte {
if x != nil {
return x.EncryptionKeys
func (m *IdentityImage) GetEncryptionKeys() [][]byte {
if m != nil {
return m.EncryptionKeys
}
return nil
}
func (x *IdentityImage) GetEncrypted() bool {
if x != nil {
return x.Encrypted
func (m *IdentityImage) GetEncrypted() bool {
if m != nil {
return m.Encrypted
}
return false
}
// SocialLinks represents social link assosiated with given chat identity (personal/community)
type SocialLink struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (x *SocialLink) Reset() {
*x = SocialLink{}
if protoimpl.UnsafeEnabled {
mi := &file_chat_identity_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SocialLink) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *SocialLink) Reset() { *m = SocialLink{} }
func (m *SocialLink) String() string { return proto.CompactTextString(m) }
func (*SocialLink) ProtoMessage() {}
func (x *SocialLink) ProtoReflect() protoreflect.Message {
mi := &file_chat_identity_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SocialLink.ProtoReflect.Descriptor instead.
func (*SocialLink) Descriptor() ([]byte, []int) {
return file_chat_identity_proto_rawDescGZIP(), []int{2}
return fileDescriptor_7a652489000a5879, []int{2}
}
func (x *SocialLink) GetText() string {
if x != nil {
return x.Text
func (m *SocialLink) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SocialLink.Unmarshal(m, b)
}
func (m *SocialLink) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SocialLink.Marshal(b, m, deterministic)
}
func (m *SocialLink) XXX_Merge(src proto.Message) {
xxx_messageInfo_SocialLink.Merge(m, src)
}
func (m *SocialLink) XXX_Size() int {
return xxx_messageInfo_SocialLink.Size(m)
}
func (m *SocialLink) XXX_DiscardUnknown() {
xxx_messageInfo_SocialLink.DiscardUnknown(m)
}
var xxx_messageInfo_SocialLink proto.InternalMessageInfo
func (m *SocialLink) GetText() string {
if m != nil {
return m.Text
}
return ""
}
func (x *SocialLink) GetUrl() string {
if x != nil {
return x.Url
func (m *SocialLink) GetUrl() string {
if m != nil {
return m.Url
}
return ""
}
var File_chat_identity_proto protoreflect.FileDescriptor
var file_chat_identity_proto_rawDesc = []byte{
0x0a, 0x13, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x1a,
0x0b, 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x70, 0x72,
0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf7, 0x03, 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x74, 0x49, 0x64, 0x65,
0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01,
0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x19, 0x0a, 0x08, 0x65,
0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65,
0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73,
0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x49,
0x6d, 0x61, 0x67, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67,
0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61,
0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61,
0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72,
0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x14, 0x0a,
0x05, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d,
0x6f, 0x6a, 0x69, 0x12, 0x37, 0x0a, 0x0c, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x6c, 0x69,
0x6e, 0x6b, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x4c, 0x69, 0x6e, 0x6b, 0x52,
0x0b, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x36, 0x0a, 0x17,
0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x69,
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x66,
0x69, 0x72, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x73,
0x74, 0x61, 0x6d, 0x70, 0x12, 0x44, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f,
0x73, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69,
0x6c, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x63, 0x61, 0x73, 0x65, 0x1a, 0x52, 0x0a, 0x0b, 0x49, 0x6d,
0x61, 0x67, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2d, 0x0a, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6d,
0x61, 0x67, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb1,
0x02, 0x0a, 0x0d, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6d, 0x61, 0x67, 0x65,
0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0c, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x43, 0x0a, 0x0b, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74,
0x69, 0x74, 0x79, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54,
0x79, 0x70, 0x65, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12,
0x32, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49,
0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x54,
0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0e, 0x65, 0x6e,
0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x1c, 0x0a, 0x09,
0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52,
0x09, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x22, 0x46, 0x0a, 0x0a, 0x53, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x55, 0x4e, 0x4b, 0x4e,
0x4f, 0x57, 0x4e, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10,
0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x41, 0x57, 0x5f, 0x50, 0x41, 0x59, 0x4c, 0x4f, 0x41, 0x44,
0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x45, 0x4e, 0x53, 0x5f, 0x41, 0x56, 0x41, 0x54, 0x41, 0x52,
0x10, 0x02, 0x22, 0x32, 0x0a, 0x0a, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x4c, 0x69, 0x6e, 0x6b,
0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x74, 0x65, 0x78, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x3b, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
func init() {
proto.RegisterEnum("protobuf.IdentityImage_SourceType", IdentityImage_SourceType_name, IdentityImage_SourceType_value)
proto.RegisterType((*ChatIdentity)(nil), "protobuf.ChatIdentity")
proto.RegisterMapType((map[string]*IdentityImage)(nil), "protobuf.ChatIdentity.ImagesEntry")
proto.RegisterType((*IdentityImage)(nil), "protobuf.IdentityImage")
proto.RegisterType((*SocialLink)(nil), "protobuf.SocialLink")
}
var (
file_chat_identity_proto_rawDescOnce sync.Once
file_chat_identity_proto_rawDescData = file_chat_identity_proto_rawDesc
)
func file_chat_identity_proto_rawDescGZIP() []byte {
file_chat_identity_proto_rawDescOnce.Do(func() {
file_chat_identity_proto_rawDescData = protoimpl.X.CompressGZIP(file_chat_identity_proto_rawDescData)
})
return file_chat_identity_proto_rawDescData
func init() {
proto.RegisterFile("chat_identity.proto", fileDescriptor_7a652489000a5879)
}
var file_chat_identity_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_chat_identity_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
var file_chat_identity_proto_goTypes = []interface{}{
(IdentityImage_SourceType)(0), // 0: protobuf.IdentityImage.SourceType
(*ChatIdentity)(nil), // 1: protobuf.ChatIdentity
(*IdentityImage)(nil), // 2: protobuf.IdentityImage
(*SocialLink)(nil), // 3: protobuf.SocialLink
nil, // 4: protobuf.ChatIdentity.ImagesEntry
(*ProfileShowcase)(nil), // 5: protobuf.ProfileShowcase
(ImageType)(0), // 6: protobuf.ImageType
}
var file_chat_identity_proto_depIdxs = []int32{
4, // 0: protobuf.ChatIdentity.images:type_name -> protobuf.ChatIdentity.ImagesEntry
3, // 1: protobuf.ChatIdentity.social_links:type_name -> protobuf.SocialLink
5, // 2: protobuf.ChatIdentity.profile_showcase:type_name -> protobuf.ProfileShowcase
0, // 3: protobuf.IdentityImage.source_type:type_name -> protobuf.IdentityImage.SourceType
6, // 4: protobuf.IdentityImage.image_type:type_name -> protobuf.ImageType
2, // 5: protobuf.ChatIdentity.ImagesEntry.value:type_name -> protobuf.IdentityImage
6, // [6:6] is the sub-list for method output_type
6, // [6:6] is the sub-list for method input_type
6, // [6:6] is the sub-list for extension type_name
6, // [6:6] is the sub-list for extension extendee
0, // [0:6] is the sub-list for field type_name
}
func init() { file_chat_identity_proto_init() }
func file_chat_identity_proto_init() {
if File_chat_identity_proto != nil {
return
}
file_enums_proto_init()
file_profile_showcase_proto_init()
if !protoimpl.UnsafeEnabled {
file_chat_identity_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ChatIdentity); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_chat_identity_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*IdentityImage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_chat_identity_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SocialLink); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_chat_identity_proto_rawDesc,
NumEnums: 1,
NumMessages: 4,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_chat_identity_proto_goTypes,
DependencyIndexes: file_chat_identity_proto_depIdxs,
EnumInfos: file_chat_identity_proto_enumTypes,
MessageInfos: file_chat_identity_proto_msgTypes,
}.Build()
File_chat_identity_proto = out.File
file_chat_identity_proto_rawDesc = nil
file_chat_identity_proto_goTypes = nil
file_chat_identity_proto_depIdxs = nil
var fileDescriptor_7a652489000a5879 = []byte{
// 568 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x53, 0x51, 0x4f, 0xdb, 0x3c,
0x14, 0xfd, 0xd2, 0x16, 0x68, 0xaf, 0x0b, 0x54, 0x06, 0x3e, 0x0c, 0xda, 0x43, 0xd6, 0x97, 0xf5,
0x65, 0x99, 0xd4, 0x49, 0x1b, 0x62, 0x4f, 0x19, 0x14, 0x09, 0xc1, 0x0a, 0x72, 0xcb, 0x10, 0x7b,
0xb1, 0x4c, 0xea, 0x82, 0xd7, 0x24, 0x8e, 0x62, 0x77, 0x5b, 0x7e, 0xd9, 0x7e, 0xda, 0x5e, 0xa7,
0x38, 0x09, 0x69, 0xf7, 0xd4, 0x7b, 0xcf, 0x39, 0x3e, 0xbe, 0xbd, 0xc7, 0x81, 0xbd, 0xe0, 0x99,
0x1b, 0x26, 0x67, 0x22, 0x36, 0xd2, 0x64, 0x5e, 0x92, 0x2a, 0xa3, 0x70, 0xdb, 0xfe, 0x3c, 0x2e,
0xe7, 0xc7, 0x48, 0xc4, 0xcb, 0x48, 0x17, 0xf0, 0xf1, 0xff, 0x49, 0xaa, 0xe6, 0x32, 0x14, 0x4c,
0x3f, 0xab, 0x9f, 0x01, 0xd7, 0xa2, 0xc0, 0xfb, 0x7f, 0x9a, 0xd0, 0x3d, 0x7b, 0xe6, 0xe6, 0xb2,
0x74, 0xc1, 0xfb, 0xb0, 0x11, 0x84, 0x2a, 0x58, 0x10, 0xc7, 0x75, 0x06, 0x2d, 0x5a, 0x34, 0xf8,
0x08, 0xda, 0x22, 0xd6, 0x2c, 0xe6, 0x91, 0x20, 0x0d, 0xd7, 0x19, 0x74, 0xe8, 0x96, 0x88, 0xf5,
0x98, 0x47, 0x02, 0x9f, 0xc2, 0xa6, 0x8c, 0xf8, 0x93, 0xd0, 0xa4, 0xe9, 0x36, 0x07, 0x68, 0xd8,
0xf7, 0xaa, 0x09, 0xbc, 0x55, 0x63, 0xef, 0xd2, 0x8a, 0x46, 0xb1, 0x49, 0x33, 0x5a, 0x9e, 0xc0,
0xaf, 0xa1, 0x3b, 0x93, 0x3a, 0x09, 0x79, 0x56, 0x58, 0xb7, 0xac, 0x35, 0x2a, 0x31, 0x6b, 0xef,
0x02, 0x9a, 0x09, 0x1d, 0xa4, 0x32, 0x31, 0x52, 0xc5, 0x64, 0xa3, 0x54, 0xd4, 0x90, 0x9d, 0x58,
0x85, 0x2a, 0x25, 0x9b, 0x96, 0x2b, 0x9a, 0x1c, 0x15, 0x91, 0xfa, 0x2e, 0xc9, 0x56, 0x81, 0xda,
0x06, 0x7f, 0x84, 0xae, 0x56, 0x81, 0xe4, 0x21, 0x0b, 0x65, 0xbc, 0xd0, 0xa4, 0x6d, 0x47, 0xde,
0xaf, 0x47, 0x9e, 0x58, 0xf6, 0x5a, 0xc6, 0x0b, 0x8a, 0xf4, 0x4b, 0xad, 0xf1, 0x07, 0x38, 0x9c,
0xcb, 0x54, 0x1b, 0x16, 0x09, 0xad, 0xf9, 0x93, 0x60, 0x46, 0x46, 0x42, 0x1b, 0x1e, 0x25, 0xa4,
0xe3, 0x3a, 0x83, 0x6d, 0x7a, 0x60, 0xe9, 0x2f, 0x05, 0x3b, 0xad, 0x48, 0x7c, 0x0e, 0xbd, 0x7f,
0x37, 0x4f, 0xc0, 0x75, 0x06, 0x68, 0x78, 0x54, 0x5f, 0x7a, 0x5b, 0x28, 0x26, 0xa5, 0x80, 0xee,
0x26, 0xeb, 0xc0, 0x31, 0x05, 0xb4, 0xb2, 0x3e, 0xdc, 0x83, 0xe6, 0x42, 0x64, 0x36, 0xa1, 0x0e,
0xcd, 0x4b, 0xfc, 0x16, 0x36, 0x7e, 0xf0, 0x70, 0x59, 0x84, 0x83, 0x86, 0x87, 0xb5, 0x77, 0xb5,
0x7f, 0x7b, 0x9e, 0x16, 0xaa, 0xd3, 0xc6, 0x89, 0xd3, 0xff, 0xdd, 0x80, 0xed, 0x35, 0x12, 0x13,
0xd8, 0x4a, 0x78, 0x16, 0x2a, 0x3e, 0xb3, 0xd6, 0x5d, 0x5a, 0xb5, 0xf8, 0x0c, 0x90, 0x56, 0xcb,
0x34, 0x10, 0xcc, 0x64, 0x49, 0x71, 0xc9, 0xce, 0x6a, 0xd0, 0x6b, 0x3e, 0xde, 0xc4, 0x4a, 0xa7,
0x59, 0x22, 0x28, 0xe8, 0x97, 0x1a, 0x9f, 0x40, 0xd7, 0xc6, 0xce, 0xe6, 0x2a, 0x8d, 0xb8, 0x21,
0x4d, 0xeb, 0x72, 0xb0, 0xe2, 0x92, 0xb3, 0x17, 0x96, 0xa4, 0x48, 0xd6, 0x0d, 0x7e, 0x03, 0xbb,
0x22, 0x0e, 0xd2, 0xcc, 0xe6, 0xcd, 0x16, 0x22, 0xd3, 0xa4, 0xe5, 0x36, 0x07, 0x5d, 0xba, 0x53,
0xc3, 0x57, 0x22, 0xd3, 0xf8, 0x15, 0x74, 0x4a, 0x44, 0xcc, 0xec, 0x53, 0x69, 0xd3, 0x1a, 0xe8,
0x5f, 0x00, 0xd4, 0xa3, 0xe1, 0x43, 0xd8, 0xbb, 0x1b, 0x5f, 0x8d, 0x6f, 0xee, 0xc7, 0x6c, 0x72,
0x73, 0x47, 0xcf, 0x46, 0x6c, 0xfa, 0x70, 0x3b, 0xea, 0xfd, 0x87, 0x77, 0x01, 0x51, 0xff, 0x9e,
0xdd, 0xfa, 0x0f, 0xd7, 0x37, 0xfe, 0x79, 0xcf, 0xc1, 0x3b, 0x00, 0xa3, 0xf1, 0x84, 0xf9, 0x5f,
0xfd, 0xa9, 0x4f, 0x7b, 0x8d, 0xfe, 0x30, 0xf7, 0xa9, 0x9e, 0x06, 0xc6, 0xd0, 0x32, 0xe2, 0x97,
0x29, 0xd3, 0xb0, 0x75, 0x1e, 0xd0, 0x32, 0x0d, 0xcb, 0x2f, 0x25, 0x2f, 0x3f, 0x6f, 0x7f, 0x43,
0xde, 0xbb, 0x4f, 0xd5, 0x5f, 0x7d, 0xdc, 0xb4, 0xd5, 0xfb, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff,
0xf2, 0x9d, 0x33, 0x90, 0xc3, 0x03, 0x00, 0x00,
}

View File

@ -47,8 +47,8 @@ message IdentityImage {
// source_type signals the image payload source
SourceType source_type = 2;
// image_type signals the image type and method of parsing the payload
ImageType image_type = 3;
// image_format signals the image format and method of parsing the payload
ImageFormat image_format = 3;
// encryption_keys is a list of encrypted keys that can be used to decrypted an encrypted payload
repeated bytes encryption_keys = 4;

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@ message StickerMessage {
message ImageMessage {
bytes payload = 1;
ImageType type = 2;
ImageFormat format = 2;
string album_id = 3;
uint32 width = 4;
uint32 height = 5;

File diff suppressed because it is too large Load Diff

View File

@ -1,24 +1,24 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.29.1
// protoc v3.20.3
// source: community_privileged_user_sync_message.proto
package protobuf
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
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)
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type CommunityPrivilegedUserSyncMessage_EventType int32
@ -29,250 +29,135 @@ const (
CommunityPrivilegedUserSyncMessage_CONTROL_NODE_ALL_SYNC_REQUESTS_TO_JOIN CommunityPrivilegedUserSyncMessage_EventType = 3
)
// Enum value maps for CommunityPrivilegedUserSyncMessage_EventType.
var (
CommunityPrivilegedUserSyncMessage_EventType_name = map[int32]string{
var CommunityPrivilegedUserSyncMessage_EventType_name = map[int32]string{
0: "UNKNOWN",
1: "CONTROL_NODE_ACCEPT_REQUEST_TO_JOIN",
2: "CONTROL_NODE_REJECT_REQUEST_TO_JOIN",
3: "CONTROL_NODE_ALL_SYNC_REQUESTS_TO_JOIN",
}
CommunityPrivilegedUserSyncMessage_EventType_value = map[string]int32{
var CommunityPrivilegedUserSyncMessage_EventType_value = map[string]int32{
"UNKNOWN": 0,
"CONTROL_NODE_ACCEPT_REQUEST_TO_JOIN": 1,
"CONTROL_NODE_REJECT_REQUEST_TO_JOIN": 2,
"CONTROL_NODE_ALL_SYNC_REQUESTS_TO_JOIN": 3,
}
)
func (x CommunityPrivilegedUserSyncMessage_EventType) Enum() *CommunityPrivilegedUserSyncMessage_EventType {
p := new(CommunityPrivilegedUserSyncMessage_EventType)
*p = x
return p
}
func (x CommunityPrivilegedUserSyncMessage_EventType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
return proto.EnumName(CommunityPrivilegedUserSyncMessage_EventType_name, int32(x))
}
func (CommunityPrivilegedUserSyncMessage_EventType) Descriptor() protoreflect.EnumDescriptor {
return file_community_privileged_user_sync_message_proto_enumTypes[0].Descriptor()
}
func (CommunityPrivilegedUserSyncMessage_EventType) Type() protoreflect.EnumType {
return &file_community_privileged_user_sync_message_proto_enumTypes[0]
}
func (x CommunityPrivilegedUserSyncMessage_EventType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use CommunityPrivilegedUserSyncMessage_EventType.Descriptor instead.
func (CommunityPrivilegedUserSyncMessage_EventType) EnumDescriptor() ([]byte, []int) {
return file_community_privileged_user_sync_message_proto_rawDescGZIP(), []int{0, 0}
return fileDescriptor_158595055b4cfee2, []int{0, 0}
}
type CommunityPrivilegedUserSyncMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
Type CommunityPrivilegedUserSyncMessage_EventType `protobuf:"varint,2,opt,name=type,proto3,enum=protobuf.CommunityPrivilegedUserSyncMessage_EventType" json:"type,omitempty"`
CommunityId []byte `protobuf:"bytes,3,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"`
RequestToJoin map[string]*CommunityRequestToJoin `protobuf:"bytes,4,rep,name=request_to_join,json=requestToJoin,proto3" json:"request_to_join,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
SyncRequestsToJoin []*SyncCommunityRequestsToJoin `protobuf:"bytes,5,rep,name=sync_requests_to_join,json=syncRequestsToJoin,proto3" json:"sync_requests_to_join,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (x *CommunityPrivilegedUserSyncMessage) Reset() {
*x = CommunityPrivilegedUserSyncMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_community_privileged_user_sync_message_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CommunityPrivilegedUserSyncMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *CommunityPrivilegedUserSyncMessage) Reset() { *m = CommunityPrivilegedUserSyncMessage{} }
func (m *CommunityPrivilegedUserSyncMessage) String() string { return proto.CompactTextString(m) }
func (*CommunityPrivilegedUserSyncMessage) ProtoMessage() {}
func (x *CommunityPrivilegedUserSyncMessage) ProtoReflect() protoreflect.Message {
mi := &file_community_privileged_user_sync_message_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CommunityPrivilegedUserSyncMessage.ProtoReflect.Descriptor instead.
func (*CommunityPrivilegedUserSyncMessage) Descriptor() ([]byte, []int) {
return file_community_privileged_user_sync_message_proto_rawDescGZIP(), []int{0}
return fileDescriptor_158595055b4cfee2, []int{0}
}
func (x *CommunityPrivilegedUserSyncMessage) GetClock() uint64 {
if x != nil {
return x.Clock
func (m *CommunityPrivilegedUserSyncMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommunityPrivilegedUserSyncMessage.Unmarshal(m, b)
}
func (m *CommunityPrivilegedUserSyncMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CommunityPrivilegedUserSyncMessage.Marshal(b, m, deterministic)
}
func (m *CommunityPrivilegedUserSyncMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_CommunityPrivilegedUserSyncMessage.Merge(m, src)
}
func (m *CommunityPrivilegedUserSyncMessage) XXX_Size() int {
return xxx_messageInfo_CommunityPrivilegedUserSyncMessage.Size(m)
}
func (m *CommunityPrivilegedUserSyncMessage) XXX_DiscardUnknown() {
xxx_messageInfo_CommunityPrivilegedUserSyncMessage.DiscardUnknown(m)
}
var xxx_messageInfo_CommunityPrivilegedUserSyncMessage proto.InternalMessageInfo
func (m *CommunityPrivilegedUserSyncMessage) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (x *CommunityPrivilegedUserSyncMessage) GetType() CommunityPrivilegedUserSyncMessage_EventType {
if x != nil {
return x.Type
func (m *CommunityPrivilegedUserSyncMessage) GetType() CommunityPrivilegedUserSyncMessage_EventType {
if m != nil {
return m.Type
}
return CommunityPrivilegedUserSyncMessage_UNKNOWN
}
func (x *CommunityPrivilegedUserSyncMessage) GetCommunityId() []byte {
if x != nil {
return x.CommunityId
func (m *CommunityPrivilegedUserSyncMessage) GetCommunityId() []byte {
if m != nil {
return m.CommunityId
}
return nil
}
func (x *CommunityPrivilegedUserSyncMessage) GetRequestToJoin() map[string]*CommunityRequestToJoin {
if x != nil {
return x.RequestToJoin
func (m *CommunityPrivilegedUserSyncMessage) GetRequestToJoin() map[string]*CommunityRequestToJoin {
if m != nil {
return m.RequestToJoin
}
return nil
}
func (x *CommunityPrivilegedUserSyncMessage) GetSyncRequestsToJoin() []*SyncCommunityRequestsToJoin {
if x != nil {
return x.SyncRequestsToJoin
func (m *CommunityPrivilegedUserSyncMessage) GetSyncRequestsToJoin() []*SyncCommunityRequestsToJoin {
if m != nil {
return m.SyncRequestsToJoin
}
return nil
}
var File_community_privileged_user_sync_message_proto protoreflect.FileDescriptor
var file_community_privileged_user_sync_message_proto_rawDesc = []byte{
0x0a, 0x2c, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x70, 0x72, 0x69, 0x76,
0x69, 0x6c, 0x65, 0x67, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x79, 0x6e, 0x63,
0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x1a, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e,
0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0d, 0x70, 0x61, 0x69,
0x72, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xe9, 0x04, 0x0a, 0x22, 0x43,
0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67,
0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x53, 0x79, 0x6e, 0x63, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
0x52, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x4a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c,
0x65, 0x67, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x53, 0x79, 0x6e, 0x63, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74,
0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79,
0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x75,
0x6e, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x67, 0x0a, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x6a, 0x6f, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x3f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75,
0x6e, 0x69, 0x74, 0x79, 0x50, 0x72, 0x69, 0x76, 0x69, 0x6c, 0x65, 0x67, 0x65, 0x64, 0x55, 0x73,
0x65, 0x72, 0x53, 0x79, 0x6e, 0x63, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79,
0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x12,
0x58, 0x0a, 0x15, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
0x5f, 0x74, 0x6f, 0x5f, 0x6a, 0x6f, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x43, 0x6f,
0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x54,
0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x52, 0x12, 0x73, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x73, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x1a, 0x62, 0x0a, 0x12, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
0x79, 0x12, 0x36, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d,
0x75, 0x6e, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x4a, 0x6f,
0x69, 0x6e, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x96, 0x01,
0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55,
0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x27, 0x0a, 0x23, 0x43, 0x4f, 0x4e, 0x54,
0x52, 0x4f, 0x4c, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x5f,
0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x54, 0x4f, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x10,
0x01, 0x12, 0x27, 0x0a, 0x23, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x4e, 0x4f, 0x44,
0x45, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54,
0x5f, 0x54, 0x4f, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x10, 0x02, 0x12, 0x2a, 0x0a, 0x26, 0x43, 0x4f,
0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x5f, 0x53,
0x59, 0x4e, 0x43, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x53, 0x5f, 0x54, 0x4f, 0x5f,
0x4a, 0x4f, 0x49, 0x4e, 0x10, 0x03, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x3b, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
func init() {
proto.RegisterEnum("protobuf.CommunityPrivilegedUserSyncMessage_EventType", CommunityPrivilegedUserSyncMessage_EventType_name, CommunityPrivilegedUserSyncMessage_EventType_value)
proto.RegisterType((*CommunityPrivilegedUserSyncMessage)(nil), "protobuf.CommunityPrivilegedUserSyncMessage")
proto.RegisterMapType((map[string]*CommunityRequestToJoin)(nil), "protobuf.CommunityPrivilegedUserSyncMessage.RequestToJoinEntry")
}
var (
file_community_privileged_user_sync_message_proto_rawDescOnce sync.Once
file_community_privileged_user_sync_message_proto_rawDescData = file_community_privileged_user_sync_message_proto_rawDesc
)
func file_community_privileged_user_sync_message_proto_rawDescGZIP() []byte {
file_community_privileged_user_sync_message_proto_rawDescOnce.Do(func() {
file_community_privileged_user_sync_message_proto_rawDescData = protoimpl.X.CompressGZIP(file_community_privileged_user_sync_message_proto_rawDescData)
})
return file_community_privileged_user_sync_message_proto_rawDescData
func init() {
proto.RegisterFile("community_privileged_user_sync_message.proto", fileDescriptor_158595055b4cfee2)
}
var file_community_privileged_user_sync_message_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_community_privileged_user_sync_message_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_community_privileged_user_sync_message_proto_goTypes = []interface{}{
(CommunityPrivilegedUserSyncMessage_EventType)(0), // 0: protobuf.CommunityPrivilegedUserSyncMessage.EventType
(*CommunityPrivilegedUserSyncMessage)(nil), // 1: protobuf.CommunityPrivilegedUserSyncMessage
nil, // 2: protobuf.CommunityPrivilegedUserSyncMessage.RequestToJoinEntry
(*SyncCommunityRequestsToJoin)(nil), // 3: protobuf.SyncCommunityRequestsToJoin
(*CommunityRequestToJoin)(nil), // 4: protobuf.CommunityRequestToJoin
}
var file_community_privileged_user_sync_message_proto_depIdxs = []int32{
0, // 0: protobuf.CommunityPrivilegedUserSyncMessage.type:type_name -> protobuf.CommunityPrivilegedUserSyncMessage.EventType
2, // 1: protobuf.CommunityPrivilegedUserSyncMessage.request_to_join:type_name -> protobuf.CommunityPrivilegedUserSyncMessage.RequestToJoinEntry
3, // 2: protobuf.CommunityPrivilegedUserSyncMessage.sync_requests_to_join:type_name -> protobuf.SyncCommunityRequestsToJoin
4, // 3: protobuf.CommunityPrivilegedUserSyncMessage.RequestToJoinEntry.value:type_name -> protobuf.CommunityRequestToJoin
4, // [4:4] is the sub-list for method output_type
4, // [4:4] is the sub-list for method input_type
4, // [4:4] is the sub-list for extension type_name
4, // [4:4] is the sub-list for extension extendee
0, // [0:4] is the sub-list for field type_name
}
func init() { file_community_privileged_user_sync_message_proto_init() }
func file_community_privileged_user_sync_message_proto_init() {
if File_community_privileged_user_sync_message_proto != nil {
return
}
file_communities_proto_init()
file_pairing_proto_init()
if !protoimpl.UnsafeEnabled {
file_community_privileged_user_sync_message_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CommunityPrivilegedUserSyncMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_community_privileged_user_sync_message_proto_rawDesc,
NumEnums: 1,
NumMessages: 2,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_community_privileged_user_sync_message_proto_goTypes,
DependencyIndexes: file_community_privileged_user_sync_message_proto_depIdxs,
EnumInfos: file_community_privileged_user_sync_message_proto_enumTypes,
MessageInfos: file_community_privileged_user_sync_message_proto_msgTypes,
}.Build()
File_community_privileged_user_sync_message_proto = out.File
file_community_privileged_user_sync_message_proto_rawDesc = nil
file_community_privileged_user_sync_message_proto_goTypes = nil
file_community_privileged_user_sync_message_proto_depIdxs = nil
var fileDescriptor_158595055b4cfee2 = []byte{
// 407 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x90, 0x5f, 0xab, 0xd3, 0x30,
0x18, 0xc6, 0xed, 0xda, 0xa9, 0x27, 0x3d, 0xd3, 0x19, 0x14, 0xca, 0xae, 0xea, 0x44, 0x2d, 0x22,
0x15, 0x26, 0x1c, 0x44, 0x2f, 0x44, 0x6b, 0x2e, 0x4e, 0x9d, 0xed, 0x31, 0xed, 0xf0, 0xcf, 0x4d,
0xd8, 0xba, 0x58, 0xe2, 0xb6, 0xa4, 0x26, 0xed, 0xa0, 0x5f, 0xc4, 0xef, 0xe8, 0xb7, 0x90, 0x35,
0x6b, 0xe7, 0x98, 0x20, 0x5e, 0xf5, 0x7d, 0x9f, 0x3e, 0xf9, 0x3d, 0xbc, 0x0f, 0x78, 0x9a, 0x89,
0xcd, 0xa6, 0xe2, 0xac, 0xac, 0x49, 0x21, 0xd9, 0x96, 0xad, 0x69, 0x4e, 0x97, 0xa4, 0x52, 0x54,
0x12, 0x55, 0xf3, 0x8c, 0x6c, 0xa8, 0x52, 0xf3, 0x9c, 0xfa, 0x85, 0x14, 0xa5, 0x80, 0x37, 0x9b,
0xcf, 0xa2, 0xfa, 0x36, 0xba, 0xd3, 0xbe, 0x63, 0x54, 0xe9, 0x9f, 0xa3, 0x41, 0x31, 0x67, 0x92,
0xf1, 0x5c, 0xaf, 0xe3, 0x5f, 0x16, 0x18, 0x07, 0x2d, 0xfc, 0xaa, 0x63, 0xcf, 0x14, 0x95, 0x49,
0xcd, 0xb3, 0x0f, 0x1a, 0x0c, 0xef, 0x82, 0x7e, 0xb6, 0x16, 0xd9, 0xca, 0x31, 0x5c, 0xc3, 0xb3,
0xb0, 0x5e, 0x60, 0x08, 0xac, 0xb2, 0x2e, 0xa8, 0xd3, 0x73, 0x0d, 0xef, 0xd6, 0xe4, 0xc2, 0x6f,
0x73, 0xfd, 0x7f, 0x13, 0x7d, 0xb4, 0xa5, 0xbc, 0x4c, 0xeb, 0x82, 0xe2, 0x86, 0x01, 0xef, 0x83,
0xf3, 0xc3, 0x91, 0x6c, 0xe9, 0x98, 0xae, 0xe1, 0x9d, 0x63, 0xbb, 0xd3, 0x2e, 0x97, 0x30, 0x07,
0xb7, 0x25, 0xfd, 0x51, 0x51, 0x55, 0x92, 0x52, 0x90, 0xef, 0x82, 0x71, 0xc7, 0x72, 0x4d, 0xcf,
0x9e, 0xbc, 0xfe, 0xaf, 0x64, 0xac, 0x19, 0xa9, 0x08, 0x05, 0xe3, 0x88, 0x97, 0xb2, 0xc6, 0x03,
0xf9, 0xa7, 0x06, 0x3f, 0x83, 0x7b, 0x4d, 0xad, 0x7b, 0x55, 0x75, 0x71, 0xfd, 0x26, 0xee, 0xe1,
0x21, 0x6e, 0xc7, 0xed, 0x22, 0xf7, 0x60, 0xa5, 0x29, 0x18, 0xee, 0x18, 0xc7, 0xda, 0x68, 0x01,
0xe0, 0x69, 0x3c, 0x1c, 0x02, 0x73, 0x45, 0xeb, 0xa6, 0xdb, 0x33, 0xbc, 0x1b, 0xe1, 0x05, 0xe8,
0x6f, 0xe7, 0xeb, 0x4a, 0x57, 0x6b, 0x4f, 0xdc, 0xbf, 0x1c, 0x78, 0xc4, 0xc1, 0xda, 0xfe, 0xb2,
0xf7, 0xc2, 0x18, 0xff, 0x34, 0xc0, 0x59, 0xd7, 0x2e, 0xb4, 0xc1, 0x8d, 0x59, 0xf4, 0x3e, 0x8a,
0x3f, 0x45, 0xc3, 0x6b, 0xf0, 0x31, 0x78, 0x10, 0xc4, 0x51, 0x8a, 0xe3, 0x29, 0x89, 0xe2, 0x77,
0x88, 0xbc, 0x09, 0x02, 0x74, 0x95, 0x12, 0x8c, 0x3e, 0xce, 0x50, 0x92, 0x92, 0x34, 0x26, 0x61,
0x7c, 0x19, 0x0d, 0x8d, 0x13, 0x23, 0x46, 0x21, 0x0a, 0x4e, 0x8d, 0x3d, 0xf8, 0x04, 0x3c, 0x3a,
0x26, 0x4e, 0xa7, 0x24, 0xf9, 0x12, 0x05, 0xad, 0x35, 0xe9, 0xbc, 0xe6, 0xdb, 0xc1, 0x57, 0xdb,
0x7f, 0xf6, 0xaa, 0xbd, 0x64, 0x71, 0xbd, 0x99, 0x9e, 0xff, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x83,
0x24, 0x18, 0xbe, 0xdd, 0x02, 0x00, 0x00,
}

File diff suppressed because it is too large Load Diff

View File

@ -1,24 +1,24 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.29.1
// protoc v3.20.3
// source: emoji_reaction.proto
package protobuf
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
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)
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type EmojiReaction_Type int32
@ -32,9 +32,7 @@ const (
EmojiReaction_ANGRY EmojiReaction_Type = 6
)
// Enum value maps for EmojiReaction_Type.
var (
EmojiReaction_Type_name = map[int32]string{
var EmojiReaction_Type_name = map[int32]string{
0: "UNKNOWN_EMOJI_REACTION_TYPE",
1: "LOVE",
2: "THUMBS_UP",
@ -43,7 +41,8 @@ var (
5: "SAD",
6: "ANGRY",
}
EmojiReaction_Type_value = map[string]int32{
var EmojiReaction_Type_value = map[string]int32{
"UNKNOWN_EMOJI_REACTION_TYPE": 0,
"LOVE": 1,
"THUMBS_UP": 2,
@ -52,40 +51,16 @@ var (
"SAD": 5,
"ANGRY": 6,
}
)
func (x EmojiReaction_Type) Enum() *EmojiReaction_Type {
p := new(EmojiReaction_Type)
*p = x
return p
}
func (x EmojiReaction_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
return proto.EnumName(EmojiReaction_Type_name, int32(x))
}
func (EmojiReaction_Type) Descriptor() protoreflect.EnumDescriptor {
return file_emoji_reaction_proto_enumTypes[0].Descriptor()
}
func (EmojiReaction_Type) Type() protoreflect.EnumType {
return &file_emoji_reaction_proto_enumTypes[0]
}
func (x EmojiReaction_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use EmojiReaction_Type.Descriptor instead.
func (EmojiReaction_Type) EnumDescriptor() ([]byte, []int) {
return file_emoji_reaction_proto_rawDescGZIP(), []int{0, 0}
return fileDescriptor_0a088c907bbc7ed6, []int{0, 0}
}
type EmojiReaction struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// clock Lamport timestamp of the chat message
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
// chat_id the ID of the chat the message belongs to, for query efficiency the chat_id is stored in the db even though the
@ -101,188 +76,115 @@ type EmojiReaction struct {
Retracted bool `protobuf:"varint,6,opt,name=retracted,proto3" json:"retracted,omitempty"`
// Grant for organisation chat messages
Grant []byte `protobuf:"bytes,7,opt,name=grant,proto3" json:"grant,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (x *EmojiReaction) Reset() {
*x = EmojiReaction{}
if protoimpl.UnsafeEnabled {
mi := &file_emoji_reaction_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EmojiReaction) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *EmojiReaction) Reset() { *m = EmojiReaction{} }
func (m *EmojiReaction) String() string { return proto.CompactTextString(m) }
func (*EmojiReaction) ProtoMessage() {}
func (x *EmojiReaction) ProtoReflect() protoreflect.Message {
mi := &file_emoji_reaction_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use EmojiReaction.ProtoReflect.Descriptor instead.
func (*EmojiReaction) Descriptor() ([]byte, []int) {
return file_emoji_reaction_proto_rawDescGZIP(), []int{0}
return fileDescriptor_0a088c907bbc7ed6, []int{0}
}
func (x *EmojiReaction) GetClock() uint64 {
if x != nil {
return x.Clock
func (m *EmojiReaction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_EmojiReaction.Unmarshal(m, b)
}
func (m *EmojiReaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_EmojiReaction.Marshal(b, m, deterministic)
}
func (m *EmojiReaction) XXX_Merge(src proto.Message) {
xxx_messageInfo_EmojiReaction.Merge(m, src)
}
func (m *EmojiReaction) XXX_Size() int {
return xxx_messageInfo_EmojiReaction.Size(m)
}
func (m *EmojiReaction) XXX_DiscardUnknown() {
xxx_messageInfo_EmojiReaction.DiscardUnknown(m)
}
var xxx_messageInfo_EmojiReaction proto.InternalMessageInfo
func (m *EmojiReaction) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (x *EmojiReaction) GetChatId() string {
if x != nil {
return x.ChatId
func (m *EmojiReaction) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
func (x *EmojiReaction) GetMessageId() string {
if x != nil {
return x.MessageId
func (m *EmojiReaction) GetMessageId() string {
if m != nil {
return m.MessageId
}
return ""
}
func (x *EmojiReaction) GetMessageType() MessageType {
if x != nil {
return x.MessageType
func (m *EmojiReaction) GetMessageType() MessageType {
if m != nil {
return m.MessageType
}
return MessageType_UNKNOWN_MESSAGE_TYPE
}
func (x *EmojiReaction) GetType() EmojiReaction_Type {
if x != nil {
return x.Type
func (m *EmojiReaction) GetType() EmojiReaction_Type {
if m != nil {
return m.Type
}
return EmojiReaction_UNKNOWN_EMOJI_REACTION_TYPE
}
func (x *EmojiReaction) GetRetracted() bool {
if x != nil {
return x.Retracted
func (m *EmojiReaction) GetRetracted() bool {
if m != nil {
return m.Retracted
}
return false
}
func (x *EmojiReaction) GetGrant() []byte {
if x != nil {
return x.Grant
func (m *EmojiReaction) GetGrant() []byte {
if m != nil {
return m.Grant
}
return nil
}
var File_emoji_reaction_proto protoreflect.FileDescriptor
var file_emoji_reaction_proto_rawDesc = []byte{
0x0a, 0x14, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x5f, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x1a, 0x0b, 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xef, 0x02,
0x0a, 0x0d, 0x45, 0x6d, 0x6f, 0x6a, 0x69, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
0x14, 0x0a, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05,
0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x69, 0x64,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x68, 0x61, 0x74, 0x49, 0x64, 0x12, 0x1d,
0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x38, 0x0a,
0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x45, 0x6d, 0x6f, 0x6a, 0x69, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54,
0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x74,
0x72, 0x61, 0x63, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65,
0x74, 0x72, 0x61, 0x63, 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x61, 0x6e, 0x74,
0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x22, 0x70, 0x0a,
0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e,
0x5f, 0x45, 0x4d, 0x4f, 0x4a, 0x49, 0x5f, 0x52, 0x45, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
0x54, 0x59, 0x50, 0x45, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x4f, 0x56, 0x45, 0x10, 0x01,
0x12, 0x0d, 0x0a, 0x09, 0x54, 0x48, 0x55, 0x4d, 0x42, 0x53, 0x5f, 0x55, 0x50, 0x10, 0x02, 0x12,
0x0f, 0x0a, 0x0b, 0x54, 0x48, 0x55, 0x4d, 0x42, 0x53, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x03,
0x12, 0x09, 0x0a, 0x05, 0x4c, 0x41, 0x55, 0x47, 0x48, 0x10, 0x04, 0x12, 0x07, 0x0a, 0x03, 0x53,
0x41, 0x44, 0x10, 0x05, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x4e, 0x47, 0x52, 0x59, 0x10, 0x06, 0x42,
0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x3b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
func init() {
proto.RegisterEnum("protobuf.EmojiReaction_Type", EmojiReaction_Type_name, EmojiReaction_Type_value)
proto.RegisterType((*EmojiReaction)(nil), "protobuf.EmojiReaction")
}
var (
file_emoji_reaction_proto_rawDescOnce sync.Once
file_emoji_reaction_proto_rawDescData = file_emoji_reaction_proto_rawDesc
)
func file_emoji_reaction_proto_rawDescGZIP() []byte {
file_emoji_reaction_proto_rawDescOnce.Do(func() {
file_emoji_reaction_proto_rawDescData = protoimpl.X.CompressGZIP(file_emoji_reaction_proto_rawDescData)
})
return file_emoji_reaction_proto_rawDescData
func init() {
proto.RegisterFile("emoji_reaction.proto", fileDescriptor_0a088c907bbc7ed6)
}
var file_emoji_reaction_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_emoji_reaction_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_emoji_reaction_proto_goTypes = []interface{}{
(EmojiReaction_Type)(0), // 0: protobuf.EmojiReaction.Type
(*EmojiReaction)(nil), // 1: protobuf.EmojiReaction
(MessageType)(0), // 2: protobuf.MessageType
}
var file_emoji_reaction_proto_depIdxs = []int32{
2, // 0: protobuf.EmojiReaction.message_type:type_name -> protobuf.MessageType
0, // 1: protobuf.EmojiReaction.type:type_name -> protobuf.EmojiReaction.Type
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_emoji_reaction_proto_init() }
func file_emoji_reaction_proto_init() {
if File_emoji_reaction_proto != nil {
return
}
file_enums_proto_init()
if !protoimpl.UnsafeEnabled {
file_emoji_reaction_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*EmojiReaction); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_emoji_reaction_proto_rawDesc,
NumEnums: 1,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_emoji_reaction_proto_goTypes,
DependencyIndexes: file_emoji_reaction_proto_depIdxs,
EnumInfos: file_emoji_reaction_proto_enumTypes,
MessageInfos: file_emoji_reaction_proto_msgTypes,
}.Build()
File_emoji_reaction_proto = out.File
file_emoji_reaction_proto_rawDesc = nil
file_emoji_reaction_proto_goTypes = nil
file_emoji_reaction_proto_depIdxs = nil
var fileDescriptor_0a088c907bbc7ed6 = []byte{
// 330 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x54, 0x8f, 0xcd, 0x6e, 0xaa, 0x40,
0x14, 0xc7, 0x2f, 0x0a, 0x28, 0x07, 0xbd, 0x77, 0x32, 0xf1, 0xa6, 0xa4, 0xb5, 0x29, 0x71, 0xc5,
0x8a, 0x36, 0xed, 0xa6, 0x49, 0x57, 0x58, 0x89, 0xd2, 0x2a, 0x98, 0x11, 0x6a, 0xec, 0x86, 0x20,
0x4c, 0xad, 0x6d, 0x11, 0x82, 0xe3, 0xc2, 0xa7, 0xee, 0x2b, 0x34, 0x0c, 0x1a, 0xd3, 0xd5, 0xcc,
0xef, 0xff, 0x91, 0x73, 0x0e, 0x74, 0x68, 0x9a, 0x7d, 0xac, 0xc3, 0x82, 0x46, 0x31, 0x5b, 0x67,
0x1b, 0x33, 0x2f, 0x32, 0x96, 0xe1, 0x26, 0x7f, 0x96, 0xbb, 0xb7, 0x73, 0x95, 0x6e, 0x76, 0xe9,
0xb6, 0x92, 0x7b, 0xdf, 0x35, 0x68, 0xdb, 0x65, 0x9e, 0x1c, 0xe2, 0xb8, 0x03, 0x52, 0xfc, 0x95,
0xc5, 0x9f, 0x9a, 0xa0, 0x0b, 0x86, 0x48, 0x2a, 0xc0, 0x67, 0xd0, 0x88, 0xdf, 0x23, 0x16, 0xae,
0x13, 0xad, 0xa6, 0x0b, 0x86, 0x42, 0xe4, 0x12, 0x9d, 0x04, 0x5f, 0x02, 0xa4, 0x74, 0xbb, 0x8d,
0x56, 0xb4, 0xf4, 0xea, 0xdc, 0x53, 0x0e, 0x8a, 0x93, 0xe0, 0x7b, 0x68, 0x1d, 0x6d, 0xb6, 0xcf,
0xa9, 0x26, 0xea, 0x82, 0xf1, 0xf7, 0xf6, 0xbf, 0x79, 0xdc, 0xc6, 0x9c, 0x54, 0xae, 0xbf, 0xcf,
0x29, 0x51, 0xd3, 0x13, 0xe0, 0x1b, 0x10, 0x79, 0x43, 0xe2, 0x8d, 0xee, 0xa9, 0xf1, 0x6b, 0x5d,
0x93, 0x17, 0x79, 0x12, 0x77, 0x41, 0x29, 0x28, 0x2b, 0xa2, 0x98, 0xd1, 0x44, 0x93, 0x75, 0xc1,
0x68, 0x92, 0x93, 0x50, 0xde, 0xb5, 0x2a, 0xa2, 0x0d, 0xd3, 0x1a, 0xba, 0x60, 0xb4, 0x48, 0x05,
0xbd, 0x1c, 0x44, 0x3e, 0xed, 0x0a, 0x2e, 0x02, 0xf7, 0xd9, 0xf5, 0xe6, 0x6e, 0x68, 0x4f, 0xbc,
0x27, 0x27, 0x24, 0xb6, 0xf5, 0xe8, 0x3b, 0x9e, 0x1b, 0xfa, 0x8b, 0xa9, 0x8d, 0xfe, 0xe0, 0x26,
0x88, 0x63, 0xef, 0xc5, 0x46, 0x02, 0x6e, 0x83, 0xe2, 0x8f, 0x82, 0x49, 0x7f, 0x16, 0x06, 0x53,
0x54, 0xc3, 0xff, 0x40, 0x3d, 0xe0, 0xc0, 0x9b, 0xbb, 0xa8, 0x8e, 0x15, 0x90, 0xc6, 0x56, 0x30,
0x1c, 0x21, 0x11, 0x37, 0xa0, 0x3e, 0xb3, 0x06, 0x48, 0x2a, 0x35, 0xcb, 0x1d, 0x92, 0x05, 0x92,
0xfb, 0xed, 0x57, 0xd5, 0xbc, 0x7e, 0x38, 0x5e, 0xb3, 0x94, 0xf9, 0xef, 0xee, 0x27, 0x00, 0x00,
0xff, 0xff, 0x7e, 0x57, 0x12, 0xd9, 0xb6, 0x01, 0x00, 0x00,
}

View File

@ -1,24 +1,24 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.29.1
// protoc v3.20.3
// source: enums.proto
package protobuf
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
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)
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type MessageType int32
@ -34,9 +34,7 @@ const (
MessageType_SYSTEM_MESSAGE_GAP MessageType = 6
)
// Enum value maps for MessageType.
var (
MessageType_name = map[int32]string{
var MessageType_name = map[int32]string{
0: "UNKNOWN_MESSAGE_TYPE",
1: "ONE_TO_ONE",
2: "PUBLIC_GROUP",
@ -45,7 +43,8 @@ var (
5: "COMMUNITY_CHAT",
6: "SYSTEM_MESSAGE_GAP",
}
MessageType_value = map[string]int32{
var MessageType_value = map[string]int32{
"UNKNOWN_MESSAGE_TYPE": 0,
"ONE_TO_ONE": 1,
"PUBLIC_GROUP": 2,
@ -54,89 +53,48 @@ var (
"COMMUNITY_CHAT": 5,
"SYSTEM_MESSAGE_GAP": 6,
}
)
func (x MessageType) Enum() *MessageType {
p := new(MessageType)
*p = x
return p
}
func (x MessageType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
return proto.EnumName(MessageType_name, int32(x))
}
func (MessageType) Descriptor() protoreflect.EnumDescriptor {
return file_enums_proto_enumTypes[0].Descriptor()
}
func (MessageType) Type() protoreflect.EnumType {
return &file_enums_proto_enumTypes[0]
}
func (x MessageType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use MessageType.Descriptor instead.
func (MessageType) EnumDescriptor() ([]byte, []int) {
return file_enums_proto_rawDescGZIP(), []int{0}
return fileDescriptor_888b6bd9597961ff, []int{0}
}
type ImageType int32
type ImageFormat int32
const (
ImageType_UNKNOWN_IMAGE_TYPE ImageType = 0
ImageFormat_UNKNOWN_IMAGE_FORMAT ImageFormat = 0
// Raster image files is payload data that can be read as a raster image
ImageType_PNG ImageType = 1
ImageType_JPEG ImageType = 2
ImageType_WEBP ImageType = 3
ImageType_GIF ImageType = 4
ImageFormat_PNG ImageFormat = 1
ImageFormat_JPEG ImageFormat = 2
ImageFormat_WEBP ImageFormat = 3
ImageFormat_GIF ImageFormat = 4
)
// Enum value maps for ImageType.
var (
ImageType_name = map[int32]string{
0: "UNKNOWN_IMAGE_TYPE",
var ImageFormat_name = map[int32]string{
0: "UNKNOWN_IMAGE_FORMAT",
1: "PNG",
2: "JPEG",
3: "WEBP",
4: "GIF",
}
ImageType_value = map[string]int32{
"UNKNOWN_IMAGE_TYPE": 0,
var ImageFormat_value = map[string]int32{
"UNKNOWN_IMAGE_FORMAT": 0,
"PNG": 1,
"JPEG": 2,
"WEBP": 3,
"GIF": 4,
}
)
func (x ImageType) Enum() *ImageType {
p := new(ImageType)
*p = x
return p
func (x ImageFormat) String() string {
return proto.EnumName(ImageFormat_name, int32(x))
}
func (x ImageType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (ImageType) Descriptor() protoreflect.EnumDescriptor {
return file_enums_proto_enumTypes[1].Descriptor()
}
func (ImageType) Type() protoreflect.EnumType {
return &file_enums_proto_enumTypes[1]
}
func (x ImageType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use ImageType.Descriptor instead.
func (ImageType) EnumDescriptor() ([]byte, []int) {
return file_enums_proto_rawDescGZIP(), []int{1}
func (ImageFormat) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_888b6bd9597961ff, []int{1}
}
type CommunityTokenType int32
@ -148,125 +106,57 @@ const (
CommunityTokenType_ENS CommunityTokenType = 3
)
// Enum value maps for CommunityTokenType.
var (
CommunityTokenType_name = map[int32]string{
var CommunityTokenType_name = map[int32]string{
0: "UNKNOWN_TOKEN_TYPE",
1: "ERC20",
2: "ERC721",
3: "ENS",
}
CommunityTokenType_value = map[string]int32{
var CommunityTokenType_value = map[string]int32{
"UNKNOWN_TOKEN_TYPE": 0,
"ERC20": 1,
"ERC721": 2,
"ENS": 3,
}
)
func (x CommunityTokenType) Enum() *CommunityTokenType {
p := new(CommunityTokenType)
*p = x
return p
}
func (x CommunityTokenType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
return proto.EnumName(CommunityTokenType_name, int32(x))
}
func (CommunityTokenType) Descriptor() protoreflect.EnumDescriptor {
return file_enums_proto_enumTypes[2].Descriptor()
}
func (CommunityTokenType) Type() protoreflect.EnumType {
return &file_enums_proto_enumTypes[2]
}
func (x CommunityTokenType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use CommunityTokenType.Descriptor instead.
func (CommunityTokenType) EnumDescriptor() ([]byte, []int) {
return file_enums_proto_rawDescGZIP(), []int{2}
return fileDescriptor_888b6bd9597961ff, []int{2}
}
var File_enums_proto protoreflect.FileDescriptor
var file_enums_proto_rawDesc = []byte{
0x0a, 0x0b, 0x65, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2a, 0xaa, 0x01, 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x55, 0x4e, 0x4b, 0x4e, 0x4f,
0x57, 0x4e, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10,
0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x4e, 0x45, 0x5f, 0x54, 0x4f, 0x5f, 0x4f, 0x4e, 0x45, 0x10,
0x01, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x5f, 0x47, 0x52, 0x4f, 0x55,
0x50, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x47,
0x52, 0x4f, 0x55, 0x50, 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d,
0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45,
0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x4f, 0x4d, 0x4d,
0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x48, 0x41, 0x54, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12,
0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x47,
0x41, 0x50, 0x10, 0x06, 0x2a, 0x49, 0x0a, 0x09, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70,
0x65, 0x12, 0x16, 0x0a, 0x12, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x49, 0x4d, 0x41,
0x47, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x50, 0x4e, 0x47,
0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4a, 0x50, 0x45, 0x47, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04,
0x57, 0x45, 0x42, 0x50, 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x47, 0x49, 0x46, 0x10, 0x04, 0x2a,
0x4c, 0x0a, 0x12, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65,
0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e,
0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x00, 0x12, 0x09, 0x0a,
0x05, 0x45, 0x52, 0x43, 0x32, 0x30, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x52, 0x43, 0x37,
0x32, 0x31, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x45, 0x4e, 0x53, 0x10, 0x03, 0x42, 0x0d, 0x5a,
0x0b, 0x2e, 0x2f, 0x3b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x62, 0x06, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x33,
func init() {
proto.RegisterEnum("protobuf.MessageType", MessageType_name, MessageType_value)
proto.RegisterEnum("protobuf.ImageFormat", ImageFormat_name, ImageFormat_value)
proto.RegisterEnum("protobuf.CommunityTokenType", CommunityTokenType_name, CommunityTokenType_value)
}
var (
file_enums_proto_rawDescOnce sync.Once
file_enums_proto_rawDescData = file_enums_proto_rawDesc
)
func file_enums_proto_rawDescGZIP() []byte {
file_enums_proto_rawDescOnce.Do(func() {
file_enums_proto_rawDescData = protoimpl.X.CompressGZIP(file_enums_proto_rawDescData)
})
return file_enums_proto_rawDescData
func init() {
proto.RegisterFile("enums.proto", fileDescriptor_888b6bd9597961ff)
}
var file_enums_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
var file_enums_proto_goTypes = []interface{}{
(MessageType)(0), // 0: protobuf.MessageType
(ImageType)(0), // 1: protobuf.ImageType
(CommunityTokenType)(0), // 2: protobuf.CommunityTokenType
}
var file_enums_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
0, // [0:0] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
}
func init() { file_enums_proto_init() }
func file_enums_proto_init() {
if File_enums_proto != nil {
return
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_enums_proto_rawDesc,
NumEnums: 3,
NumMessages: 0,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_enums_proto_goTypes,
DependencyIndexes: file_enums_proto_depIdxs,
EnumInfos: file_enums_proto_enumTypes,
}.Build()
File_enums_proto = out.File
file_enums_proto_rawDesc = nil
file_enums_proto_goTypes = nil
file_enums_proto_depIdxs = nil
var fileDescriptor_888b6bd9597961ff = []byte{
// 302 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x90, 0x4b, 0x4f, 0xfa, 0x50,
0x10, 0xc5, 0x29, 0xe5, 0xf5, 0x9f, 0xfe, 0x21, 0xe3, 0xc4, 0x10, 0x17, 0x2e, 0x5c, 0xb3, 0x40,
0xc5, 0x85, 0x0b, 0x57, 0xa5, 0x19, 0x6a, 0x85, 0xfb, 0x48, 0x7b, 0x2b, 0xc1, 0x4d, 0x03, 0xc9,
0x95, 0x18, 0x53, 0x4a, 0x78, 0x2c, 0xf8, 0x4a, 0x7e, 0x4a, 0x53, 0x22, 0x46, 0x5d, 0xcd, 0xc9,
0xe4, 0xcc, 0x2f, 0x67, 0x0e, 0x78, 0x76, 0xb5, 0xcf, 0xb7, 0xfd, 0xf5, 0xa6, 0xd8, 0x15, 0xd4,
0x3a, 0x8e, 0xc5, 0xfe, 0xb5, 0xf7, 0xe1, 0x80, 0x27, 0xec, 0x76, 0x3b, 0x5f, 0x5a, 0x73, 0x58,
0x5b, 0xba, 0x80, 0xf3, 0x54, 0x8e, 0xa5, 0x9a, 0xca, 0x4c, 0x70, 0x92, 0xf8, 0x21, 0x67, 0x66,
0xa6, 0x19, 0x2b, 0xd4, 0x01, 0x50, 0x92, 0x33, 0xa3, 0x32, 0x25, 0x19, 0x1d, 0x42, 0xf8, 0xaf,
0xd3, 0xe1, 0x24, 0x0a, 0xb2, 0x30, 0x56, 0xa9, 0xc6, 0x2a, 0x9d, 0x41, 0x5b, 0xc7, 0xd1, 0xb3,
0x6f, 0xf8, 0x6b, 0xe5, 0xd2, 0x15, 0x5c, 0x26, 0xb3, 0xc4, 0xb0, 0xf8, 0xa6, 0xfd, 0x76, 0xd4,
0x88, 0xa0, 0x13, 0x28, 0x21, 0x52, 0x19, 0x99, 0x59, 0x16, 0x3c, 0xfa, 0x06, 0xeb, 0xd4, 0x05,
0xfa, 0x73, 0x15, 0xfa, 0x1a, 0x1b, 0x3d, 0x01, 0x5e, 0x94, 0xcf, 0x97, 0x76, 0x54, 0x6c, 0xf2,
0xf9, 0xee, 0x67, 0xd6, 0x48, 0x94, 0xae, 0x91, 0x8a, 0x85, 0x6f, 0xb0, 0x42, 0x4d, 0x70, 0xb5,
0x0c, 0xd1, 0xa1, 0x16, 0xd4, 0x9e, 0x34, 0x87, 0x58, 0x2d, 0xd5, 0x94, 0x87, 0x65, 0xa6, 0x26,
0xb8, 0x61, 0x34, 0xc2, 0x5a, 0x6f, 0x02, 0x14, 0x14, 0x79, 0xbe, 0x5f, 0xbd, 0xed, 0x0e, 0xa6,
0x78, 0xb7, 0xab, 0x63, 0x03, 0x5d, 0xa0, 0x13, 0xd5, 0xa8, 0x31, 0xcb, 0xd3, 0xff, 0xff, 0xa0,
0xce, 0x71, 0x30, 0xb8, 0x41, 0x87, 0x00, 0x1a, 0x1c, 0x07, 0xf7, 0x83, 0x5b, 0xac, 0x96, 0x34,
0x96, 0x09, 0xba, 0xc3, 0xf6, 0x8b, 0xd7, 0xbf, 0x7e, 0x38, 0x15, 0xbb, 0x68, 0x1c, 0xd5, 0xdd,
0x67, 0x00, 0x00, 0x00, 0xff, 0xff, 0xa8, 0x34, 0x70, 0xdb, 0x78, 0x01, 0x00, 0x00,
}

View File

@ -15,8 +15,8 @@ enum MessageType {
SYSTEM_MESSAGE_GAP = 6;
}
enum ImageType {
UNKNOWN_IMAGE_TYPE = 0;
enum ImageFormat {
UNKNOWN_IMAGE_FORMAT = 0;
// Raster image files is payload data that can be read as a raster image
PNG = 1;

View File

@ -1,24 +1,24 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.29.1
// protoc v3.20.3
// source: membership_update_message.proto
package protobuf
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
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)
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type MembershipUpdateEvent_EventType int32
@ -35,9 +35,7 @@ const (
MembershipUpdateEvent_IMAGE_CHANGED MembershipUpdateEvent_EventType = 9
)
// Enum value maps for MembershipUpdateEvent_EventType.
var (
MembershipUpdateEvent_EventType_name = map[int32]string{
var MembershipUpdateEvent_EventType_name = map[int32]string{
0: "UNKNOWN",
1: "CHAT_CREATED",
2: "NAME_CHANGED",
@ -49,7 +47,8 @@ var (
8: "COLOR_CHANGED",
9: "IMAGE_CHANGED",
}
MembershipUpdateEvent_EventType_value = map[string]int32{
var MembershipUpdateEvent_EventType_value = map[string]int32{
"UNKNOWN": 0,
"CHAT_CREATED": 1,
"NAME_CHANGED": 2,
@ -61,40 +60,16 @@ var (
"COLOR_CHANGED": 8,
"IMAGE_CHANGED": 9,
}
)
func (x MembershipUpdateEvent_EventType) Enum() *MembershipUpdateEvent_EventType {
p := new(MembershipUpdateEvent_EventType)
*p = x
return p
}
func (x MembershipUpdateEvent_EventType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
return proto.EnumName(MembershipUpdateEvent_EventType_name, int32(x))
}
func (MembershipUpdateEvent_EventType) Descriptor() protoreflect.EnumDescriptor {
return file_membership_update_message_proto_enumTypes[0].Descriptor()
}
func (MembershipUpdateEvent_EventType) Type() protoreflect.EnumType {
return &file_membership_update_message_proto_enumTypes[0]
}
func (x MembershipUpdateEvent_EventType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use MembershipUpdateEvent_EventType.Descriptor instead.
func (MembershipUpdateEvent_EventType) EnumDescriptor() ([]byte, []int) {
return file_membership_update_message_proto_rawDescGZIP(), []int{0, 0}
return fileDescriptor_8d37dd0dc857a6be, []int{0, 0}
}
type MembershipUpdateEvent struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Lamport timestamp of the event
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
// List of public keys of objects of the action
@ -107,78 +82,74 @@ type MembershipUpdateEvent struct {
Color string `protobuf:"bytes,5,opt,name=color,proto3" json:"color,omitempty"`
// Chat image
Image []byte `protobuf:"bytes,6,opt,name=image,proto3" json:"image,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (x *MembershipUpdateEvent) Reset() {
*x = MembershipUpdateEvent{}
if protoimpl.UnsafeEnabled {
mi := &file_membership_update_message_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MembershipUpdateEvent) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *MembershipUpdateEvent) Reset() { *m = MembershipUpdateEvent{} }
func (m *MembershipUpdateEvent) String() string { return proto.CompactTextString(m) }
func (*MembershipUpdateEvent) ProtoMessage() {}
func (x *MembershipUpdateEvent) ProtoReflect() protoreflect.Message {
mi := &file_membership_update_message_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MembershipUpdateEvent.ProtoReflect.Descriptor instead.
func (*MembershipUpdateEvent) Descriptor() ([]byte, []int) {
return file_membership_update_message_proto_rawDescGZIP(), []int{0}
return fileDescriptor_8d37dd0dc857a6be, []int{0}
}
func (x *MembershipUpdateEvent) GetClock() uint64 {
if x != nil {
return x.Clock
func (m *MembershipUpdateEvent) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MembershipUpdateEvent.Unmarshal(m, b)
}
func (m *MembershipUpdateEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_MembershipUpdateEvent.Marshal(b, m, deterministic)
}
func (m *MembershipUpdateEvent) XXX_Merge(src proto.Message) {
xxx_messageInfo_MembershipUpdateEvent.Merge(m, src)
}
func (m *MembershipUpdateEvent) XXX_Size() int {
return xxx_messageInfo_MembershipUpdateEvent.Size(m)
}
func (m *MembershipUpdateEvent) XXX_DiscardUnknown() {
xxx_messageInfo_MembershipUpdateEvent.DiscardUnknown(m)
}
var xxx_messageInfo_MembershipUpdateEvent proto.InternalMessageInfo
func (m *MembershipUpdateEvent) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (x *MembershipUpdateEvent) GetMembers() []string {
if x != nil {
return x.Members
func (m *MembershipUpdateEvent) GetMembers() []string {
if m != nil {
return m.Members
}
return nil
}
func (x *MembershipUpdateEvent) GetName() string {
if x != nil {
return x.Name
func (m *MembershipUpdateEvent) GetName() string {
if m != nil {
return m.Name
}
return ""
}
func (x *MembershipUpdateEvent) GetType() MembershipUpdateEvent_EventType {
if x != nil {
return x.Type
func (m *MembershipUpdateEvent) GetType() MembershipUpdateEvent_EventType {
if m != nil {
return m.Type
}
return MembershipUpdateEvent_UNKNOWN
}
func (x *MembershipUpdateEvent) GetColor() string {
if x != nil {
return x.Color
func (m *MembershipUpdateEvent) GetColor() string {
if m != nil {
return m.Color
}
return ""
}
func (x *MembershipUpdateEvent) GetImage() []byte {
if x != nil {
return x.Image
func (m *MembershipUpdateEvent) GetImage() []byte {
if m != nil {
return m.Image
}
return nil
}
@ -187,10 +158,6 @@ func (x *MembershipUpdateEvent) GetImage() []byte {
// about group membership changes.
// For more information, see https://github.com/status-im/specs/blob/master/status-group-chats-spec.md.
type MembershipUpdateMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The chat id of the private group chat
ChatId string `protobuf:"bytes,1,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
// A list of events for this group chat, first x bytes are the signature, then is a
@ -198,76 +165,51 @@ type MembershipUpdateMessage struct {
Events [][]byte `protobuf:"bytes,2,rep,name=events,proto3" json:"events,omitempty"`
// An optional chat message
//
// Types that are assignable to ChatEntity:
// Types that are valid to be assigned to ChatEntity:
//
// *MembershipUpdateMessage_Message
// *MembershipUpdateMessage_EmojiReaction
ChatEntity isMembershipUpdateMessage_ChatEntity `protobuf_oneof:"chat_entity"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (x *MembershipUpdateMessage) Reset() {
*x = MembershipUpdateMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_membership_update_message_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *MembershipUpdateMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *MembershipUpdateMessage) Reset() { *m = MembershipUpdateMessage{} }
func (m *MembershipUpdateMessage) String() string { return proto.CompactTextString(m) }
func (*MembershipUpdateMessage) ProtoMessage() {}
func (x *MembershipUpdateMessage) ProtoReflect() protoreflect.Message {
mi := &file_membership_update_message_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use MembershipUpdateMessage.ProtoReflect.Descriptor instead.
func (*MembershipUpdateMessage) Descriptor() ([]byte, []int) {
return file_membership_update_message_proto_rawDescGZIP(), []int{1}
return fileDescriptor_8d37dd0dc857a6be, []int{1}
}
func (x *MembershipUpdateMessage) GetChatId() string {
if x != nil {
return x.ChatId
func (m *MembershipUpdateMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MembershipUpdateMessage.Unmarshal(m, b)
}
func (m *MembershipUpdateMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_MembershipUpdateMessage.Marshal(b, m, deterministic)
}
func (m *MembershipUpdateMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_MembershipUpdateMessage.Merge(m, src)
}
func (m *MembershipUpdateMessage) XXX_Size() int {
return xxx_messageInfo_MembershipUpdateMessage.Size(m)
}
func (m *MembershipUpdateMessage) XXX_DiscardUnknown() {
xxx_messageInfo_MembershipUpdateMessage.DiscardUnknown(m)
}
var xxx_messageInfo_MembershipUpdateMessage proto.InternalMessageInfo
func (m *MembershipUpdateMessage) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
func (x *MembershipUpdateMessage) GetEvents() [][]byte {
if x != nil {
return x.Events
}
return nil
}
func (m *MembershipUpdateMessage) GetChatEntity() isMembershipUpdateMessage_ChatEntity {
func (m *MembershipUpdateMessage) GetEvents() [][]byte {
if m != nil {
return m.ChatEntity
}
return nil
}
func (x *MembershipUpdateMessage) GetMessage() *ChatMessage {
if x, ok := x.GetChatEntity().(*MembershipUpdateMessage_Message); ok {
return x.Message
}
return nil
}
func (x *MembershipUpdateMessage) GetEmojiReaction() *EmojiReaction {
if x, ok := x.GetChatEntity().(*MembershipUpdateMessage_EmojiReaction); ok {
return x.EmojiReaction
return m.Events
}
return nil
}
@ -288,142 +230,73 @@ func (*MembershipUpdateMessage_Message) isMembershipUpdateMessage_ChatEntity() {
func (*MembershipUpdateMessage_EmojiReaction) isMembershipUpdateMessage_ChatEntity() {}
var File_membership_update_message_proto protoreflect.FileDescriptor
var file_membership_update_message_proto_rawDesc = []byte{
0x0a, 0x1f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x5f, 0x75, 0x70, 0x64,
0x61, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x1a, 0x12, 0x63, 0x68, 0x61,
0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
0x14, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x5f, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8a, 0x03, 0x0a, 0x15, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72,
0x73, 0x68, 0x69, 0x70, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12,
0x14, 0x0a, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05,
0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73,
0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12,
0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
0x0e, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x6d,
0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65,
0x6e, 0x74, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79,
0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28,
0x09, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67,
0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xc1,
0x01, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07,
0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x48, 0x41,
0x54, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4e,
0x41, 0x4d, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x44, 0x10, 0x02, 0x12, 0x11, 0x0a,
0x0d, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x53, 0x5f, 0x41, 0x44, 0x44, 0x45, 0x44, 0x10, 0x03,
0x12, 0x11, 0x0a, 0x0d, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x45,
0x44, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x52, 0x45,
0x4d, 0x4f, 0x56, 0x45, 0x44, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x44, 0x4d, 0x49, 0x4e,
0x53, 0x5f, 0x41, 0x44, 0x44, 0x45, 0x44, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x44, 0x4d,
0x49, 0x4e, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x44, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d,
0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x44, 0x10, 0x08, 0x12,
0x11, 0x0a, 0x0d, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x44,
0x10, 0x09, 0x22, 0xce, 0x01, 0x0a, 0x17, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69,
0x70, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x17,
0x0a, 0x07, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x63, 0x68, 0x61, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74,
0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12,
0x31, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x68, 0x61, 0x74,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x12, 0x40, 0x0a, 0x0e, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x5f, 0x72, 0x65, 0x61, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x6f, 0x6a, 0x69, 0x52, 0x65, 0x61, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0d, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x52, 0x65, 0x61, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0d, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x65, 0x6e, 0x74,
0x69, 0x74, 0x79, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x3b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
func (m *MembershipUpdateMessage) GetChatEntity() isMembershipUpdateMessage_ChatEntity {
if m != nil {
return m.ChatEntity
}
var (
file_membership_update_message_proto_rawDescOnce sync.Once
file_membership_update_message_proto_rawDescData = file_membership_update_message_proto_rawDesc
)
func file_membership_update_message_proto_rawDescGZIP() []byte {
file_membership_update_message_proto_rawDescOnce.Do(func() {
file_membership_update_message_proto_rawDescData = protoimpl.X.CompressGZIP(file_membership_update_message_proto_rawDescData)
})
return file_membership_update_message_proto_rawDescData
}
var file_membership_update_message_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_membership_update_message_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_membership_update_message_proto_goTypes = []interface{}{
(MembershipUpdateEvent_EventType)(0), // 0: protobuf.MembershipUpdateEvent.EventType
(*MembershipUpdateEvent)(nil), // 1: protobuf.MembershipUpdateEvent
(*MembershipUpdateMessage)(nil), // 2: protobuf.MembershipUpdateMessage
(*ChatMessage)(nil), // 3: protobuf.ChatMessage
(*EmojiReaction)(nil), // 4: protobuf.EmojiReaction
}
var file_membership_update_message_proto_depIdxs = []int32{
0, // 0: protobuf.MembershipUpdateEvent.type:type_name -> protobuf.MembershipUpdateEvent.EventType
3, // 1: protobuf.MembershipUpdateMessage.message:type_name -> protobuf.ChatMessage
4, // 2: protobuf.MembershipUpdateMessage.emoji_reaction:type_name -> protobuf.EmojiReaction
3, // [3:3] is the sub-list for method output_type
3, // [3:3] is the sub-list for method input_type
3, // [3:3] is the sub-list for extension type_name
3, // [3:3] is the sub-list for extension extendee
0, // [0:3] is the sub-list for field type_name
}
func init() { file_membership_update_message_proto_init() }
func file_membership_update_message_proto_init() {
if File_membership_update_message_proto != nil {
return
}
file_chat_message_proto_init()
file_emoji_reaction_proto_init()
if !protoimpl.UnsafeEnabled {
file_membership_update_message_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MembershipUpdateEvent); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
func (m *MembershipUpdateMessage) GetMessage() *ChatMessage {
if x, ok := m.GetChatEntity().(*MembershipUpdateMessage_Message); ok {
return x.Message
}
file_membership_update_message_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*MembershipUpdateMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
func (m *MembershipUpdateMessage) GetEmojiReaction() *EmojiReaction {
if x, ok := m.GetChatEntity().(*MembershipUpdateMessage_EmojiReaction); ok {
return x.EmojiReaction
}
return nil
}
file_membership_update_message_proto_msgTypes[1].OneofWrappers = []interface{}{
// XXX_OneofWrappers is for the internal use of the proto package.
func (*MembershipUpdateMessage) XXX_OneofWrappers() []interface{} {
return []interface{}{
(*MembershipUpdateMessage_Message)(nil),
(*MembershipUpdateMessage_EmojiReaction)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_membership_update_message_proto_rawDesc,
NumEnums: 1,
NumMessages: 2,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_membership_update_message_proto_goTypes,
DependencyIndexes: file_membership_update_message_proto_depIdxs,
EnumInfos: file_membership_update_message_proto_enumTypes,
MessageInfos: file_membership_update_message_proto_msgTypes,
}.Build()
File_membership_update_message_proto = out.File
file_membership_update_message_proto_rawDesc = nil
file_membership_update_message_proto_goTypes = nil
file_membership_update_message_proto_depIdxs = nil
}
func init() {
proto.RegisterEnum("protobuf.MembershipUpdateEvent_EventType", MembershipUpdateEvent_EventType_name, MembershipUpdateEvent_EventType_value)
proto.RegisterType((*MembershipUpdateEvent)(nil), "protobuf.MembershipUpdateEvent")
proto.RegisterType((*MembershipUpdateMessage)(nil), "protobuf.MembershipUpdateMessage")
}
func init() {
proto.RegisterFile("membership_update_message.proto", fileDescriptor_8d37dd0dc857a6be)
}
var fileDescriptor_8d37dd0dc857a6be = []byte{
// 443 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x52, 0xd1, 0x8e, 0x93, 0x40,
0x14, 0x2d, 0x5b, 0x4a, 0x97, 0x4b, 0xdb, 0xe0, 0xcd, 0xae, 0x25, 0xfb, 0x22, 0xe9, 0x13, 0xbe,
0x60, 0xac, 0x8f, 0xc6, 0x44, 0x0a, 0x93, 0x6d, 0x55, 0x20, 0x19, 0xbb, 0x9a, 0xf8, 0x42, 0x68,
0x3b, 0x6e, 0xd1, 0xa5, 0x90, 0x76, 0xd6, 0xa4, 0xbf, 0xe0, 0x5f, 0xf9, 0x03, 0x7e, 0x93, 0x99,
0x01, 0x8a, 0x35, 0xbe, 0xc0, 0x9c, 0x73, 0xe7, 0x9c, 0x39, 0xcc, 0x01, 0x9e, 0xe5, 0x2c, 0x5f,
0xb1, 0xfd, 0x61, 0x9b, 0x95, 0xc9, 0x63, 0xb9, 0x49, 0x39, 0x4b, 0x72, 0x76, 0x38, 0xa4, 0xf7,
0xcc, 0x2d, 0xf7, 0x05, 0x2f, 0xf0, 0x52, 0xbe, 0x56, 0x8f, 0x5f, 0x6f, 0x70, 0xbd, 0x4d, 0xf9,
0xf9, 0xf4, 0xe6, 0x8a, 0xe5, 0xc5, 0xb7, 0x2c, 0xd9, 0xb3, 0x74, 0xcd, 0xb3, 0x62, 0x57, 0xb1,
0x93, 0x9f, 0x5d, 0xb8, 0x0e, 0x4f, 0xbe, 0x77, 0xd2, 0x96, 0xfc, 0x60, 0x3b, 0x8e, 0x57, 0xd0,
0x5b, 0x3f, 0x14, 0xeb, 0xef, 0x96, 0x62, 0x2b, 0x8e, 0x4a, 0x2b, 0x80, 0x16, 0xf4, 0xeb, 0x18,
0xd6, 0x85, 0xdd, 0x75, 0x74, 0xda, 0x40, 0x44, 0x50, 0x77, 0x69, 0xce, 0xac, 0xae, 0xad, 0x38,
0x3a, 0x95, 0x6b, 0x7c, 0x03, 0x2a, 0x3f, 0x96, 0xcc, 0x52, 0x6d, 0xc5, 0x19, 0x4d, 0x9f, 0xbb,
0x4d, 0x40, 0xf7, 0xbf, 0x47, 0xba, 0xf2, 0xb9, 0x3c, 0x96, 0x8c, 0x4a, 0x99, 0x8c, 0x50, 0x3c,
0x14, 0x7b, 0xab, 0x27, 0x3d, 0x2b, 0x20, 0xd8, 0x2c, 0x4f, 0xef, 0x99, 0xa5, 0xd9, 0x8a, 0x33,
0xa0, 0x15, 0x98, 0xfc, 0x52, 0x40, 0x3f, 0xe9, 0xd1, 0x80, 0xfe, 0x5d, 0xf4, 0x3e, 0x8a, 0x3f,
0x47, 0x66, 0x07, 0x4d, 0x18, 0xf8, 0x73, 0x6f, 0x99, 0xf8, 0x94, 0x78, 0x4b, 0x12, 0x98, 0x8a,
0x60, 0x22, 0x2f, 0x24, 0x89, 0x3f, 0xf7, 0xa2, 0x5b, 0x12, 0x98, 0x17, 0xf8, 0x04, 0x86, 0x21,
0x09, 0x67, 0x84, 0x7e, 0x4c, 0xbc, 0x20, 0x20, 0x81, 0xd9, 0x6d, 0xa9, 0xe4, 0x5d, 0xbc, 0x88,
0x48, 0x60, 0xaa, 0x88, 0x30, 0xaa, 0x29, 0x4a, 0xc2, 0xf8, 0x13, 0x09, 0xcc, 0x9e, 0xf0, 0xf2,
0x82, 0x70, 0x11, 0x35, 0x42, 0x4d, 0x08, 0x25, 0x73, 0xda, 0xd4, 0x17, 0x94, 0x1f, 0x7f, 0x88,
0xe9, 0xe9, 0xc4, 0x4b, 0x41, 0x2d, 0x42, 0xef, 0xb6, 0x0d, 0xa1, 0x4f, 0x7e, 0x2b, 0x30, 0xfe,
0xf7, 0x66, 0xc2, 0xaa, 0x44, 0x1c, 0x43, 0x5f, 0x96, 0x9a, 0x6d, 0x64, 0x21, 0x3a, 0xd5, 0x04,
0x5c, 0x6c, 0xf0, 0x29, 0x68, 0x4c, 0x7c, 0x77, 0x55, 0xc8, 0x80, 0xd6, 0x08, 0x5f, 0x8a, 0xa6,
0xa4, 0x56, 0x56, 0x62, 0x4c, 0xaf, 0xdb, 0xeb, 0xf7, 0xb7, 0x29, 0xaf, 0x8d, 0xe7, 0x1d, 0xda,
0xec, 0xc3, 0xb7, 0x30, 0x3a, 0xff, 0x49, 0x64, 0x71, 0xc6, 0x74, 0xdc, 0x2a, 0x89, 0x98, 0xd3,
0x7a, 0x3c, 0xef, 0xd0, 0x21, 0xfb, 0x9b, 0x98, 0x0d, 0xc1, 0x90, 0x29, 0xd9, 0x8e, 0x67, 0xfc,
0x38, 0x1b, 0x7e, 0x31, 0xdc, 0x17, 0xaf, 0x1b, 0xf1, 0x4a, 0x93, 0xab, 0x57, 0x7f, 0x02, 0x00,
0x00, 0xff, 0xff, 0x1e, 0xc9, 0x99, 0x52, 0xca, 0x02, 0x00, 0x00,
}

File diff suppressed because it is too large Load Diff

View File

@ -1,187 +1,117 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.29.1
// protoc v3.20.3
// source: pin_message.proto
package protobuf
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
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)
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type PinMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
MessageId string `protobuf:"bytes,2,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
ChatId string `protobuf:"bytes,3,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
Pinned bool `protobuf:"varint,4,opt,name=pinned,proto3" json:"pinned,omitempty"`
// The type of message (public/one-to-one/private-group-chat)
MessageType MessageType `protobuf:"varint,5,opt,name=message_type,json=messageType,proto3,enum=protobuf.MessageType" json:"message_type,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (x *PinMessage) Reset() {
*x = PinMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_pin_message_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PinMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *PinMessage) Reset() { *m = PinMessage{} }
func (m *PinMessage) String() string { return proto.CompactTextString(m) }
func (*PinMessage) ProtoMessage() {}
func (x *PinMessage) ProtoReflect() protoreflect.Message {
mi := &file_pin_message_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PinMessage.ProtoReflect.Descriptor instead.
func (*PinMessage) Descriptor() ([]byte, []int) {
return file_pin_message_proto_rawDescGZIP(), []int{0}
return fileDescriptor_b3c2ad1be7128a0a, []int{0}
}
func (x *PinMessage) GetClock() uint64 {
if x != nil {
return x.Clock
func (m *PinMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PinMessage.Unmarshal(m, b)
}
func (m *PinMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_PinMessage.Marshal(b, m, deterministic)
}
func (m *PinMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_PinMessage.Merge(m, src)
}
func (m *PinMessage) XXX_Size() int {
return xxx_messageInfo_PinMessage.Size(m)
}
func (m *PinMessage) XXX_DiscardUnknown() {
xxx_messageInfo_PinMessage.DiscardUnknown(m)
}
var xxx_messageInfo_PinMessage proto.InternalMessageInfo
func (m *PinMessage) GetClock() uint64 {
if m != nil {
return m.Clock
}
return 0
}
func (x *PinMessage) GetMessageId() string {
if x != nil {
return x.MessageId
func (m *PinMessage) GetMessageId() string {
if m != nil {
return m.MessageId
}
return ""
}
func (x *PinMessage) GetChatId() string {
if x != nil {
return x.ChatId
func (m *PinMessage) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
func (x *PinMessage) GetPinned() bool {
if x != nil {
return x.Pinned
func (m *PinMessage) GetPinned() bool {
if m != nil {
return m.Pinned
}
return false
}
func (x *PinMessage) GetMessageType() MessageType {
if x != nil {
return x.MessageType
func (m *PinMessage) GetMessageType() MessageType {
if m != nil {
return m.MessageType
}
return MessageType_UNKNOWN_MESSAGE_TYPE
}
var File_pin_message_proto protoreflect.FileDescriptor
var file_pin_message_proto_rawDesc = []byte{
0x0a, 0x11, 0x70, 0x69, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x12, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x1a, 0x0b, 0x65,
0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xac, 0x01, 0x0a, 0x0a, 0x50,
0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6c, 0x6f,
0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x12,
0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x17,
0x0a, 0x07, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x63, 0x68, 0x61, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x69, 0x6e, 0x6e, 0x65,
0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x12,
0x38, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x3b,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
func init() {
proto.RegisterType((*PinMessage)(nil), "protobuf.PinMessage")
}
var (
file_pin_message_proto_rawDescOnce sync.Once
file_pin_message_proto_rawDescData = file_pin_message_proto_rawDesc
)
func file_pin_message_proto_rawDescGZIP() []byte {
file_pin_message_proto_rawDescOnce.Do(func() {
file_pin_message_proto_rawDescData = protoimpl.X.CompressGZIP(file_pin_message_proto_rawDescData)
})
return file_pin_message_proto_rawDescData
func init() {
proto.RegisterFile("pin_message.proto", fileDescriptor_b3c2ad1be7128a0a)
}
var file_pin_message_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_pin_message_proto_goTypes = []interface{}{
(*PinMessage)(nil), // 0: protobuf.PinMessage
(MessageType)(0), // 1: protobuf.MessageType
}
var file_pin_message_proto_depIdxs = []int32{
1, // 0: protobuf.PinMessage.message_type:type_name -> protobuf.MessageType
1, // [1:1] is the sub-list for method output_type
1, // [1:1] is the sub-list for method input_type
1, // [1:1] is the sub-list for extension type_name
1, // [1:1] is the sub-list for extension extendee
0, // [0:1] is the sub-list for field type_name
}
func init() { file_pin_message_proto_init() }
func file_pin_message_proto_init() {
if File_pin_message_proto != nil {
return
}
file_enums_proto_init()
if !protoimpl.UnsafeEnabled {
file_pin_message_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PinMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_pin_message_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_pin_message_proto_goTypes,
DependencyIndexes: file_pin_message_proto_depIdxs,
MessageInfos: file_pin_message_proto_msgTypes,
}.Build()
File_pin_message_proto = out.File
file_pin_message_proto_rawDesc = nil
file_pin_message_proto_goTypes = nil
file_pin_message_proto_depIdxs = nil
var fileDescriptor_b3c2ad1be7128a0a = []byte{
// 192 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0x2c, 0xc8, 0xcc, 0x8b,
0xcf, 0x4d, 0x2d, 0x2e, 0x4e, 0x4c, 0x4f, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x00,
0x53, 0x49, 0xa5, 0x69, 0x52, 0xdc, 0xa9, 0x79, 0xa5, 0xb9, 0xc5, 0x10, 0x61, 0xa5, 0x35, 0x8c,
0x5c, 0x5c, 0x01, 0x99, 0x79, 0xbe, 0x10, 0xb5, 0x42, 0x22, 0x5c, 0xac, 0xc9, 0x39, 0xf9, 0xc9,
0xd9, 0x12, 0x8c, 0x0a, 0x8c, 0x1a, 0x2c, 0x41, 0x10, 0x8e, 0x90, 0x2c, 0x17, 0x17, 0xd4, 0xb0,
0xf8, 0xcc, 0x14, 0x09, 0x26, 0x05, 0x46, 0x0d, 0xce, 0x20, 0x4e, 0xa8, 0x88, 0x67, 0x8a, 0x90,
0x38, 0x17, 0x7b, 0x72, 0x46, 0x62, 0x09, 0x48, 0x8e, 0x19, 0x2c, 0xc7, 0x06, 0xe2, 0x7a, 0xa6,
0x08, 0x89, 0x71, 0xb1, 0x15, 0x64, 0xe6, 0xe5, 0xa5, 0xa6, 0x48, 0xb0, 0x28, 0x30, 0x6a, 0x70,
0x04, 0x41, 0x79, 0x42, 0x16, 0x5c, 0x3c, 0x30, 0xf3, 0x4a, 0x2a, 0x0b, 0x52, 0x25, 0x58, 0x15,
0x18, 0x35, 0xf8, 0x8c, 0x44, 0xf5, 0x60, 0x4e, 0xd4, 0x83, 0x3a, 0x27, 0xa4, 0xb2, 0x20, 0x35,
0x88, 0x3b, 0x17, 0xc1, 0x71, 0xe2, 0x8d, 0xe2, 0xd6, 0xd3, 0xb7, 0x86, 0xa9, 0x4b, 0x62, 0x03,
0xb3, 0x8c, 0x01, 0x01, 0x00, 0x00, 0xff, 0xff, 0x78, 0x7a, 0xb9, 0x5d, 0xf0, 0x00, 0x00, 0x00,
}

File diff suppressed because it is too large Load Diff

View File

@ -49,7 +49,7 @@ func adaptIdentityImageToProtobuf(img images.IdentityImage) *protobuf.IdentityIm
return &protobuf.IdentityImage{
Payload: img.Payload,
SourceType: protobuf.IdentityImage_RAW_PAYLOAD,
ImageType: images.GetProtobufImageType(img.Payload),
ImageFormat: images.GetProtobufImageFormat(img.Payload),
}
}