Feat/sync local deleted message (#3476)

* sync local deleted messages

* rebase

* add REPLACE

* fix lint

* defer rows.Close() / rename function

* add local pair test

* replace unused clock with _
This commit is contained in:
frank 2023-05-12 16:31:34 +08:00 committed by GitHub
parent ac837365be
commit 0197e6c484
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 377 additions and 274 deletions

View File

@ -1 +1 @@
0.151.2
0.151.3

View File

@ -1,41 +0,0 @@
package protocol
import (
"crypto/ecdsa"
"github.com/golang/protobuf/proto"
"github.com/status-im/status-go/protocol/protobuf"
)
// DeleteForMeMessage represents a delete of a message from a user in the
// application layer, used for persistence, querying and signaling
type DeleteForMeMessage struct {
protobuf.DeleteForMeMessage
// ID is the ID of the message that has been edited
ID string `json:"id,omitempty"`
// From is a public key of the author of the edit reaction.
From string `json:"from,omitempty"`
// SigPubKey is the ecdsa encoded public key of the edit author
SigPubKey *ecdsa.PublicKey `json:"-"`
}
// GetSigPubKey returns an ecdsa encoded public key
// this function is required to implement the ChatEntity interface
func (e DeleteForMeMessage) GetSigPubKey() *ecdsa.PublicKey {
return e.SigPubKey
}
// GetProtoBuf returns the struct's embedded protobuf struct
// this function is required to implement the ChatEntity interface
func (e DeleteForMeMessage) GetProtobuf() proto.Message {
return &e.DeleteForMeMessage
}
// WrapGroupMessage indicates whether we should wrap this in membership information
func (e DeleteForMeMessage) WrapGroupMessage() bool {
return false
}

View File

@ -2381,9 +2381,9 @@ func (db sqlitePersistence) GetDeletes(messageID string, from string) ([]*Delete
if err != nil {
return nil, err
}
defer rows.Close()
var messages []*DeleteMessage
for rows.Next() {
d := &DeleteMessage{}
err := rows.Scan(&d.Clock, &d.ChatId, &d.MessageId, &d.From, &d.ID)
@ -2391,32 +2391,51 @@ func (db sqlitePersistence) GetDeletes(messageID string, from string) ([]*Delete
return nil, err
}
messages = append(messages, d)
}
return messages, nil
}
func (db sqlitePersistence) SaveDeleteForMe(deleteForMeMessage DeleteForMeMessage) error {
_, err := db.db.Exec(`INSERT INTO user_messages_deleted_for_mes (clock, message_id, source, id) VALUES(?,?,?,?)`, deleteForMeMessage.Clock, deleteForMeMessage.MessageId, deleteForMeMessage.From, deleteForMeMessage.ID)
func (db sqlitePersistence) SaveOrUpdateDeleteForMeMessage(deleteForMeMessage *protobuf.DeleteForMeMessage) error {
_, err := db.db.Exec(`INSERT OR REPLACE INTO user_messages_deleted_for_mes (clock, message_id)
SELECT ?,? WHERE NOT EXISTS (SELECT 1 FROM user_messages_deleted_for_mes WHERE message_id = ? AND clock >= ?)`,
deleteForMeMessage.Clock, deleteForMeMessage.MessageId, deleteForMeMessage.MessageId, deleteForMeMessage.Clock)
return err
}
func (db sqlitePersistence) GetDeleteForMes(messageID string, from string) ([]*DeleteForMeMessage, error) {
rows, err := db.db.Query(`SELECT clock, message_id, source, id FROM user_messages_deleted_for_mes WHERE message_id = ? AND source = ? ORDER BY CLOCK DESC`, messageID, from)
func (db sqlitePersistence) GetDeleteForMeMessagesByMessageID(messageID string) ([]*protobuf.DeleteForMeMessage, error) {
rows, err := db.db.Query(`SELECT clock, message_id FROM user_messages_deleted_for_mes WHERE message_id = ?`, messageID)
if err != nil {
return nil, err
}
defer rows.Close()
var messages []*DeleteForMeMessage
var messages []*protobuf.DeleteForMeMessage
for rows.Next() {
d := &DeleteForMeMessage{}
err := rows.Scan(&d.Clock, &d.MessageId, &d.From, &d.ID)
d := &protobuf.DeleteForMeMessage{}
err := rows.Scan(&d.Clock, &d.MessageId)
if err != nil {
return nil, err
}
messages = append(messages, d)
}
return messages, nil
}
func (db sqlitePersistence) GetDeleteForMeMessages() ([]*protobuf.DeleteForMeMessage, error) {
rows, err := db.db.Query(`SELECT clock, message_id FROM user_messages_deleted_for_mes`)
if err != nil {
return nil, err
}
defer rows.Close()
var messages []*protobuf.DeleteForMeMessage
for rows.Next() {
d := &protobuf.DeleteForMeMessage{}
err := rows.Scan(&d.Clock, &d.MessageId)
if err != nil {
return nil, err
}
messages = append(messages, d)
}
return messages, nil
}
@ -2431,9 +2450,9 @@ func (db sqlitePersistence) GetEdits(messageID string, from string) ([]*EditMess
if err != nil {
return nil, err
}
defer rows.Close()
var messages []*EditMessage
for rows.Next() {
e := &EditMessage{}
err := rows.Scan(&e.Clock, &e.ChatId, &e.MessageId, &e.From, &e.Text, &e.ID)

View File

@ -2481,6 +2481,10 @@ func (m *Messenger) SyncDevices(ctx context.Context, ensName, photoPath string,
return err
}
if err = m.syncDeleteForMeMessage(ctx, rawMessageHandler); err != nil {
return err
}
return m.syncSocialSettings(ctx, rawMessageHandler)
}
@ -3606,14 +3610,8 @@ func (m *Messenger) handleRetrievedMessages(chatWithMessages map[transport.Filte
}
m.outputToCSV(msg.TransportMessage.Timestamp, msg.ID, senderID, filter.Topic, filter.ChatID, msg.Type, deleteForMeProto)
deleteForMeMessage := DeleteForMeMessage{
DeleteForMeMessage: deleteForMeProto,
From: contact.ID,
ID: messageID,
SigPubKey: publicKey,
}
err = m.HandleDeleteForMeMessage(messageState, deleteForMeMessage)
err = m.HandleDeleteForMeMessage(messageState, deleteForMeProto)
if err != nil {
logger.Warn("failed to handle DeleteForMeMessage", zap.Error(err))
allMessagesProcessed = false
@ -6415,6 +6413,33 @@ func (m *Messenger) withChatClock(callback func(string, uint64) error) error {
return m.saveChat(chat)
}
func (m *Messenger) syncDeleteForMeMessage(ctx context.Context, rawMessageDispatcher RawMessageHandler) error {
deleteForMes, err := m.persistence.GetDeleteForMeMessages()
if err != nil {
return err
}
return m.withChatClock(func(chatID string, _ uint64) error {
for _, deleteForMe := range deleteForMes {
encodedMessage, err2 := proto.Marshal(deleteForMe)
if err2 != nil {
return err2
}
rawMessage := common.RawMessage{
LocalChatID: chatID,
Payload: encodedMessage,
MessageType: protobuf.ApplicationMetadataMessage_SYNC_DELETE_FOR_ME_MESSAGE,
ResendAutomatically: true,
}
_, err2 = rawMessageDispatcher(ctx, rawMessage)
if err2 != nil {
return err2
}
}
return nil
})
}
func (m *Messenger) syncSocialSettings(ctx context.Context, rawMessageDispatcher RawMessageHandler) error {
if !m.hasPairedDevices() {
return nil
@ -6473,3 +6498,7 @@ func (m *Messenger) handleSyncSocialLinkSetting(message protobuf.SyncSocialLinkS
callback(link)
return nil
}
func (m *Messenger) GetDeleteForMeMessages() ([]*protobuf.DeleteForMeMessage, error) {
return m.persistence.GetDeleteForMeMessages()
}

View File

@ -1691,8 +1691,8 @@ func (m *Messenger) getMessageFromResponseOrDatabase(response *MessengerResponse
return m.persistence.MessageByID(messageID)
}
func (m *Messenger) HandleDeleteForMeMessage(state *ReceivedMessageState, deleteForMeMessage DeleteForMeMessage) error {
if err := ValidateDeleteForMeMessage(deleteForMeMessage.DeleteForMeMessage); err != nil {
func (m *Messenger) HandleDeleteForMeMessage(state *ReceivedMessageState, deleteForMeMessage protobuf.DeleteForMeMessage) error {
if err := ValidateDeleteForMeMessage(deleteForMeMessage); err != nil {
return err
}
@ -1701,7 +1701,7 @@ func (m *Messenger) HandleDeleteForMeMessage(state *ReceivedMessageState, delete
originalMessage, err := m.getMessageFromResponseOrDatabase(state.Response, messageID)
if err == common.ErrRecordNotFound {
return m.persistence.SaveDeleteForMe(deleteForMeMessage)
return m.persistence.SaveOrUpdateDeleteForMeMessage(&deleteForMeMessage)
} else if err != nil {
return err
}
@ -1711,7 +1711,7 @@ func (m *Messenger) HandleDeleteForMeMessage(state *ReceivedMessageState, delete
return errors.New("chat not found")
}
messagesToDelete, err := m.getConnectedMessages(originalMessage, deleteForMeMessage.ChatId)
messagesToDelete, err := m.getConnectedMessages(originalMessage, originalMessage.LocalChatID)
if err != nil {
return err
}
@ -2733,13 +2733,13 @@ func (m *Messenger) checkForDeleteForMes(message *common.Message) error {
return err
}
var messageDeleteForMes []*DeleteForMeMessage
var messageDeleteForMes []*protobuf.DeleteForMeMessage
applyDelete := false
for _, messageToCheck := range messagesToCheck {
if !applyDelete {
// Check for any pending delete for mes
// If any pending deletes are available and valid, apply them
messageDeleteForMes, err = m.persistence.GetDeleteForMes(messageToCheck.ID, messageToCheck.From)
messageDeleteForMes, err = m.persistence.GetDeleteForMeMessagesByMessageID(messageToCheck.ID)
if err != nil {
return err
}
@ -2751,7 +2751,7 @@ func (m *Messenger) checkForDeleteForMes(message *common.Message) error {
// Once one messageDeleteForMes has been found, we apply it to all the images in the album
applyDelete = true
err := m.applyDeleteForMeMessage(messageDeleteForMes, messageToCheck)
err := m.applyDeleteForMeMessage(messageToCheck)
if err != nil {
return err
}

View File

@ -291,14 +291,13 @@ func (m *Messenger) DeleteMessageForMeAndSync(ctx context.Context, chatID string
}
response.AddChat(chat)
if m.hasPairedDevices() {
err = m.withChatClock(func(chatID string, clock uint64) error {
deletedForMeMessage := &protobuf.DeleteForMeMessage{
MessageId: messageID,
Clock: clock,
ChatId: message.LocalChatID,
}
if m.hasPairedDevices() {
encodedMessage, err2 := proto.Marshal(deletedForMeMessage)
if err2 != nil {
@ -313,12 +312,14 @@ func (m *Messenger) DeleteMessageForMeAndSync(ctx context.Context, chatID string
}
_, err2 = m.dispatchMessage(ctx, rawMessage)
return err2
}
return m.persistence.SaveOrUpdateDeleteForMeMessage(deletedForMeMessage)
})
if err != nil {
return response, err
}
}
return response, nil
}
@ -377,10 +378,10 @@ func (m *Messenger) applyDeleteMessage(messageDeletes []*DeleteMessage, message
return nil
}
func (m *Messenger) applyDeleteForMeMessage(messageDeletes []*DeleteForMeMessage, message *common.Message) error {
func (m *Messenger) applyDeleteForMeMessage(message *common.Message) error {
message.DeletedForMe = true
err := message.PrepareContent(common.PubkeyToHex(&m.identity.PublicKey))
err := message.PrepareContent(m.myHexIdentity())
if err != nil {
return err
}

View File

@ -247,6 +247,17 @@ func (m *Messenger) HandleSyncRawMessages(rawMessages []*protobuf.RawMessage) er
m.logger.Error("failed to handleSyncEnsUsernameDetail when HandleSyncRawMessages", zap.Error(err))
continue
}
case protobuf.ApplicationMetadataMessage_SYNC_DELETE_FOR_ME_MESSAGE:
var message protobuf.DeleteForMeMessage
err := proto.Unmarshal(rawMessage.GetPayload(), &message)
if err != nil {
return err
}
err = m.HandleDeleteForMeMessage(state, message)
if err != nil {
m.logger.Error("failed to HandleDeleteForMeMessage when HandleSyncRawMessages", zap.Error(err))
continue
}
case protobuf.ApplicationMetadataMessage_PAIR_INSTALLATION:
var message protobuf.PairInstallation
err := proto.Unmarshal(rawMessage.GetPayload(), &message)

View File

@ -86,6 +86,7 @@
// 1681655289_add_mute_till.up.sql (51B)
// 1681934966_add_index_response_to.up.sql (70B)
// 1682528339_add_index_user_messages_unseen.up.sql (104B)
// 1683707289_recreate_deleted_for_mes.up.sql (408B)
// 1683725607_mark_discord_messages_as_seen.up.sql (108B)
// README.md (554B)
// doc.go (850B)
@ -172,7 +173,7 @@ func _000001_initDownDbSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "000001_init.down.db.sql", size: 65, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "000001_init.down.db.sql", size: 65, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x5e, 0xbb, 0x3f, 0x1, 0x75, 0x19, 0x70, 0x86, 0xa7, 0x34, 0x40, 0x17, 0x34, 0x3e, 0x18, 0x51, 0x79, 0xd4, 0x22, 0xad, 0x8f, 0x80, 0xcc, 0xa6, 0xcc, 0x6, 0x2b, 0x62, 0x2, 0x47, 0xba, 0xf9}}
return a, nil
}
@ -192,7 +193,7 @@ func _000001_initUpDbSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "000001_init.up.db.sql", size: 2719, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "000001_init.up.db.sql", size: 2719, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x60, 0xdc, 0xeb, 0xe, 0xc2, 0x4f, 0x75, 0xa, 0xf6, 0x3e, 0xc7, 0xc4, 0x4, 0xe2, 0xe1, 0xa4, 0x73, 0x2f, 0x4a, 0xad, 0x1a, 0x0, 0xc3, 0x93, 0x9d, 0x77, 0x3e, 0x31, 0x91, 0x77, 0x2e, 0xc8}}
return a, nil
}
@ -212,7 +213,7 @@ func _000002_add_last_ens_clock_valueUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "000002_add_last_ens_clock_value.up.sql", size: 77, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "000002_add_last_ens_clock_value.up.sql", size: 77, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x4d, 0x3, 0x8f, 0xd5, 0x85, 0x83, 0x47, 0xbe, 0xf9, 0x82, 0x7e, 0x81, 0xa4, 0xbd, 0xaa, 0xd5, 0x98, 0x18, 0x5, 0x2d, 0x82, 0x42, 0x3b, 0x3, 0x50, 0xc3, 0x1e, 0x84, 0x35, 0xf, 0xb6, 0x2b}}
return a, nil
}
@ -232,7 +233,7 @@ func _1586358095_add_replaceUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1586358095_add_replace.up.sql", size: 224, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1586358095_add_replace.up.sql", size: 224, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd2, 0xb3, 0xa9, 0xc7, 0x7f, 0x9d, 0x8f, 0x43, 0x8c, 0x9e, 0x58, 0x8d, 0x44, 0xbc, 0xfa, 0x6b, 0x5f, 0x3f, 0x5a, 0xbe, 0xe8, 0xb1, 0x16, 0xf, 0x91, 0x2a, 0xa0, 0x71, 0xbb, 0x8d, 0x6b, 0xcb}}
return a, nil
}
@ -252,7 +253,7 @@ func _1588665364_add_image_dataUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1588665364_add_image_data.up.sql", size: 186, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1588665364_add_image_data.up.sql", size: 186, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd6, 0xc6, 0x35, 0xb4, 0x4c, 0x39, 0x96, 0x29, 0x30, 0xda, 0xf4, 0x8f, 0xcb, 0xf1, 0x9f, 0x84, 0xdc, 0x88, 0xd4, 0xd5, 0xbc, 0xb6, 0x5b, 0x46, 0x78, 0x67, 0x76, 0x1a, 0x5, 0x36, 0xdc, 0xe5}}
return a, nil
}
@ -272,7 +273,7 @@ func _1589365189_add_pow_targetUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1589365189_add_pow_target.up.sql", size: 66, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1589365189_add_pow_target.up.sql", size: 66, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x4e, 0x3a, 0xe2, 0x2e, 0x7d, 0xaf, 0xbb, 0xcc, 0x21, 0xa1, 0x7a, 0x41, 0x9a, 0xd0, 0xbb, 0xa9, 0xc8, 0x35, 0xf9, 0x32, 0x34, 0x46, 0x44, 0x9a, 0x86, 0x40, 0x7c, 0xb9, 0x23, 0xc7, 0x3, 0x3f}}
return a, nil
}
@ -292,7 +293,7 @@ func _1591277220_add_index_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1591277220_add_index_messages.up.sql", size: 240, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1591277220_add_index_messages.up.sql", size: 240, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x9c, 0xfe, 0xbe, 0xd5, 0xb8, 0x8f, 0xdd, 0xef, 0xbb, 0xa8, 0xad, 0x7f, 0xed, 0x5b, 0x5b, 0x2f, 0xe6, 0x82, 0x27, 0x78, 0x1f, 0xb9, 0x57, 0xdc, 0x8, 0xc2, 0xb2, 0xa9, 0x9a, 0x4, 0xe1, 0x7a}}
return a, nil
}
@ -312,7 +313,7 @@ func _1593087212_add_mute_chat_and_raw_message_fieldsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1593087212_add_mute_chat_and_raw_message_fields.up.sql", size: 215, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1593087212_add_mute_chat_and_raw_message_fields.up.sql", size: 215, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x73, 0x99, 0x61, 0xd1, 0xaa, 0xb4, 0xbf, 0xaf, 0xd7, 0x20, 0x17, 0x40, 0xf9, 0x2, 0xfb, 0xcc, 0x40, 0x2a, 0xd, 0x86, 0x36, 0x30, 0x88, 0x89, 0x25, 0x80, 0x42, 0xb0, 0x5b, 0xe9, 0x73, 0x78}}
return a, nil
}
@ -332,7 +333,7 @@ func _1595862781_add_audio_dataUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1595862781_add_audio_data.up.sql", size: 246, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1595862781_add_audio_data.up.sql", size: 246, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xae, 0xd2, 0xee, 0x55, 0xfb, 0x36, 0xa4, 0x92, 0x66, 0xe, 0x81, 0x62, 0x1e, 0x7a, 0x69, 0xa, 0xd5, 0x4b, 0xa5, 0x6a, 0x8d, 0x1d, 0xce, 0xf3, 0x3e, 0xc0, 0x5f, 0x9c, 0x66, 0x1b, 0xb4, 0xed}}
return a, nil
}
@ -352,7 +353,7 @@ func _1595865249_create_emoji_reactions_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1595865249_create_emoji_reactions_table.up.sql", size: 300, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1595865249_create_emoji_reactions_table.up.sql", size: 300, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3e, 0xc5, 0x43, 0x5c, 0x3d, 0x53, 0x43, 0x2c, 0x1a, 0xa5, 0xb6, 0xbf, 0x7, 0x4, 0x5a, 0x3e, 0x40, 0x8b, 0xa4, 0x57, 0x12, 0x58, 0xbc, 0x42, 0xe2, 0xc3, 0xde, 0x76, 0x98, 0x80, 0xe2, 0xbe}}
return a, nil
}
@ -372,7 +373,7 @@ func _1596805115_create_group_chat_invitations_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1596805115_create_group_chat_invitations_table.up.sql", size: 231, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1596805115_create_group_chat_invitations_table.up.sql", size: 231, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x6d, 0xb1, 0x14, 0x6d, 0x54, 0x28, 0x67, 0xc3, 0x23, 0x6a, 0xfc, 0x80, 0xdf, 0x9e, 0x4c, 0x35, 0x36, 0xf, 0xf8, 0xf3, 0x5f, 0xae, 0xad, 0xb, 0xc1, 0x51, 0x8e, 0x17, 0x7, 0xe5, 0x7f, 0x91}}
return a, nil
}
@ -392,7 +393,7 @@ func _1597322655_add_invitation_admin_chat_fieldUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1597322655_add_invitation_admin_chat_field.up.sql", size: 54, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1597322655_add_invitation_admin_chat_field.up.sql", size: 54, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa9, 0x7a, 0xa0, 0xf2, 0xdb, 0x13, 0x91, 0x91, 0xa8, 0x34, 0x1a, 0xa1, 0x49, 0x68, 0xd5, 0xae, 0x2c, 0xd8, 0xd5, 0xea, 0x8f, 0x8c, 0xc7, 0x2, 0x4e, 0x58, 0x2c, 0x3a, 0x14, 0xd4, 0x4f, 0x2c}}
return a, nil
}
@ -412,7 +413,7 @@ func _1597757544_add_nicknameUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1597757544_add_nickname.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1597757544_add_nickname.up.sql", size: 52, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf4, 0xa2, 0x64, 0x50, 0xc5, 0x4, 0xb9, 0x8b, 0xd1, 0x18, 0x9b, 0xc3, 0x91, 0x36, 0x2a, 0x1f, 0xc3, 0x6c, 0x2d, 0x92, 0xf8, 0x5e, 0xff, 0xb1, 0x59, 0x61, 0x2, 0x1c, 0xe1, 0x85, 0x90, 0xa4}}
return a, nil
}
@ -432,7 +433,7 @@ func _1598955122_add_mentionsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1598955122_add_mentions.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1598955122_add_mentions.up.sql", size: 52, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8d, 0x22, 0x17, 0x92, 0xd2, 0x11, 0x4e, 0x7, 0x93, 0x9a, 0x55, 0xfd, 0xb, 0x97, 0xc4, 0x63, 0x6a, 0x81, 0x97, 0xcd, 0xb2, 0xf8, 0x4b, 0x5f, 0x3c, 0xfa, 0x3a, 0x38, 0x53, 0x10, 0xed, 0x9d}}
return a, nil
}
@ -452,7 +453,7 @@ func _1599641390_add_emoji_reactions_indexUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1599641390_add_emoji_reactions_index.up.sql", size: 126, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1599641390_add_emoji_reactions_index.up.sql", size: 126, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf9, 0xd8, 0xdc, 0xa7, 0xb, 0x92, 0x7a, 0x61, 0x37, 0x24, 0x1c, 0x77, 0x5e, 0xe, 0x7e, 0xfc, 0x9f, 0x98, 0x7b, 0x65, 0xe7, 0xf9, 0x71, 0x57, 0x89, 0x2d, 0x90, 0x1b, 0xf6, 0x5e, 0x37, 0xe8}}
return a, nil
}
@ -472,7 +473,7 @@ func _1599720851_add_seen_index_remove_long_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1599720851_add_seen_index_remove_long_messages.up.sql", size: 150, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1599720851_add_seen_index_remove_long_messages.up.sql", size: 150, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x24, 0x1c, 0xc4, 0x78, 0x91, 0xc7, 0xeb, 0xfe, 0xc8, 0xa0, 0xd8, 0x13, 0x27, 0x97, 0xc8, 0x96, 0x56, 0x97, 0x33, 0x2c, 0x1e, 0x16, 0x8a, 0xd3, 0x49, 0x99, 0x3, 0xe9, 0xbb, 0xc4, 0x5, 0x3c}}
return a, nil
}
@ -492,7 +493,7 @@ func _1603198582_add_profile_chat_fieldUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1603198582_add_profile_chat_field.up.sql", size: 45, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1603198582_add_profile_chat_field.up.sql", size: 45, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xaa, 0xca, 0xe, 0x46, 0xa0, 0x9, 0x9d, 0x47, 0x57, 0xe9, 0xfb, 0x17, 0xeb, 0x9c, 0xf6, 0xb8, 0x1d, 0xe9, 0xd, 0x0, 0xd5, 0xe5, 0xd8, 0x9e, 0x60, 0xa, 0xbf, 0x32, 0x2c, 0x52, 0x7f, 0x6a}}
return a, nil
}
@ -512,7 +513,7 @@ func _1603816533_add_linksUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1603816533_add_links.up.sql", size: 48, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1603816533_add_links.up.sql", size: 48, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc9, 0x24, 0xd6, 0x1d, 0xa, 0x83, 0x1e, 0x4d, 0xf, 0xae, 0x4d, 0x8c, 0x51, 0x32, 0xa8, 0x37, 0xb0, 0x14, 0xfb, 0x32, 0x34, 0xc8, 0xc, 0x4e, 0x5b, 0xc5, 0x15, 0x65, 0x73, 0x0, 0x0, 0x1d}}
return a, nil
}
@ -532,7 +533,7 @@ func _1603888149_create_chat_identity_last_published_tableUpSql() (*asset, error
return nil, err
}
info := bindataFileInfo{name: "1603888149_create_chat_identity_last_published_table.up.sql", size: 407, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1603888149_create_chat_identity_last_published_table.up.sql", size: 407, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7f, 0x9, 0xf, 0xfb, 0xdb, 0x3c, 0x86, 0x70, 0x82, 0xda, 0x10, 0x25, 0xe2, 0x4e, 0x40, 0x45, 0xab, 0x8b, 0x1c, 0x91, 0x7c, 0xf1, 0x70, 0x2e, 0x81, 0xf3, 0x71, 0x45, 0xda, 0xe2, 0xa4, 0x57}}
return a, nil
}
@ -552,7 +553,7 @@ func _1605075346_add_communitiesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1605075346_add_communities.up.sql", size: 6971, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1605075346_add_communities.up.sql", size: 6971, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1f, 0x64, 0xea, 0xb4, 0xae, 0x9e, 0xdb, 0x9, 0x58, 0xb6, 0x5c, 0x7a, 0x50, 0xc5, 0xfe, 0x93, 0x5d, 0x36, 0x85, 0x5d, 0x6a, 0xba, 0xc9, 0x7e, 0x84, 0xd7, 0xbf, 0x2a, 0x53, 0xf3, 0x97, 0xf1}}
return a, nil
}
@ -572,7 +573,7 @@ func _1610117927_add_message_cacheUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1610117927_add_message_cache.up.sql", size: 142, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1610117927_add_message_cache.up.sql", size: 142, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x34, 0xf1, 0xf0, 0x82, 0x79, 0x28, 0x19, 0xc2, 0x39, 0x6a, 0xa5, 0x96, 0x59, 0x23, 0xa0, 0xed, 0x60, 0x58, 0x86, 0x9, 0xb9, 0xad, 0xfb, 0xa, 0xe3, 0x47, 0x6e, 0xa1, 0x18, 0xe8, 0x39, 0x2c}}
return a, nil
}
@ -592,7 +593,7 @@ func _1610959908_add_dont_wrap_to_raw_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1610959908_add_dont_wrap_to_raw_messages.up.sql", size: 83, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1610959908_add_dont_wrap_to_raw_messages.up.sql", size: 83, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x71, 0x2, 0x9a, 0xca, 0xd4, 0x38, 0x44, 0x30, 0x2b, 0xa8, 0x27, 0x32, 0x63, 0x53, 0x22, 0x60, 0x59, 0x84, 0x23, 0x96, 0x77, 0xf0, 0x56, 0xd7, 0x94, 0xe0, 0x95, 0x28, 0x6, 0x1d, 0x4e, 0xb1}}
return a, nil
}
@ -612,7 +613,7 @@ func _1610960912_add_send_on_personal_topicUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1610960912_add_send_on_personal_topic.up.sql", size: 82, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1610960912_add_send_on_personal_topic.up.sql", size: 82, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x77, 0xac, 0x2f, 0xc4, 0xd, 0xa7, 0x1b, 0x37, 0x30, 0xc2, 0x68, 0xee, 0xde, 0x54, 0x5e, 0xbf, 0x3f, 0xa0, 0xd6, 0xc6, 0x9f, 0xd4, 0x34, 0x12, 0x76, 0x1e, 0x66, 0x4a, 0xfc, 0xf, 0xee, 0xc9}}
return a, nil
}
@ -632,7 +633,7 @@ func _1612870480_add_datasync_idUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1612870480_add_datasync_id.up.sql", size: 111, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1612870480_add_datasync_id.up.sql", size: 111, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x34, 0x9a, 0xbc, 0xfa, 0xaa, 0x8c, 0x9c, 0x37, 0x67, 0x15, 0x9c, 0x7e, 0x78, 0x75, 0x66, 0x82, 0x18, 0x72, 0x10, 0xbc, 0xd4, 0xab, 0x44, 0xfe, 0x57, 0x85, 0x6d, 0x19, 0xf5, 0x96, 0x8a, 0xbe}}
return a, nil
}
@ -652,7 +653,7 @@ func _1614152139_add_communities_request_to_joinUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1614152139_add_communities_request_to_join.up.sql", size: 831, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1614152139_add_communities_request_to_join.up.sql", size: 831, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x11, 0x3, 0x26, 0xf9, 0x29, 0x50, 0x4f, 0xcd, 0x46, 0xe5, 0xb1, 0x6b, 0xb9, 0x2, 0x40, 0xb1, 0xdf, 0x4a, 0x4c, 0x7a, 0xda, 0x3, 0x35, 0xcd, 0x2d, 0xcc, 0x80, 0x7d, 0x57, 0x5f, 0x3, 0x5c}}
return a, nil
}
@ -672,7 +673,7 @@ func _1615374373_add_confirmationsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1615374373_add_confirmations.up.sql", size: 227, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1615374373_add_confirmations.up.sql", size: 227, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xdd, 0xa6, 0x65, 0xc5, 0x1d, 0xb2, 0x77, 0x36, 0xe3, 0x79, 0xda, 0xe8, 0x7a, 0xa4, 0xdf, 0x45, 0xae, 0xd8, 0xb4, 0xba, 0x90, 0xfd, 0x74, 0x71, 0x14, 0x75, 0x73, 0x72, 0xb9, 0x9e, 0x1, 0x81}}
return a, nil
}
@ -692,7 +693,7 @@ func _1617694931_add_notification_centerUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1617694931_add_notification_center.up.sql", size: 572, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1617694931_add_notification_center.up.sql", size: 572, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x10, 0x45, 0xc6, 0xc9, 0x73, 0xbb, 0x1f, 0xda, 0xa3, 0x4d, 0x19, 0x98, 0x85, 0x2d, 0xca, 0xda, 0xcc, 0x3b, 0x32, 0xff, 0xc7, 0x7b, 0xe3, 0x9f, 0x9b, 0x2a, 0x93, 0xf5, 0xdf, 0x65, 0x38, 0x91}}
return a, nil
}
@ -712,7 +713,7 @@ func _1618923660_create_pin_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1618923660_create_pin_messages.up.sql", size: 265, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1618923660_create_pin_messages.up.sql", size: 265, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x61, 0x44, 0x3a, 0xbe, 0x30, 0xd2, 0x7e, 0xc0, 0xe2, 0x8e, 0x65, 0x53, 0x54, 0xbb, 0x7a, 0x1c, 0xb3, 0x5d, 0xd2, 0xa6, 0xa9, 0x28, 0xb7, 0xa4, 0x5f, 0x8b, 0x9, 0x5f, 0x17, 0xc1, 0x85, 0x21}}
return a, nil
}
@ -732,7 +733,7 @@ func _1619094007_add_joined_chat_fieldUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1619094007_add_joined_chat_field.up.sql", size: 101, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1619094007_add_joined_chat_field.up.sql", size: 101, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xfa, 0x30, 0x81, 0x3a, 0x2f, 0x9f, 0xb3, 0x0, 0x55, 0x8e, 0x1d, 0xa8, 0xb0, 0x68, 0xf0, 0x40, 0x1a, 0x6c, 0xaa, 0xfc, 0x33, 0xd1, 0xd1, 0x55, 0x3f, 0xf2, 0xbd, 0x54, 0xa1, 0x2b, 0x40, 0x95}}
return a, nil
}
@ -752,7 +753,7 @@ func _1619099821_add_last_synced_fieldUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1619099821_add_last_synced_field.up.sql", size: 226, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1619099821_add_last_synced_field.up.sql", size: 226, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf, 0x52, 0x22, 0xe, 0x2f, 0xd7, 0x93, 0x5f, 0x42, 0xc2, 0x93, 0x4, 0x35, 0x6f, 0xc9, 0x19, 0xed, 0x6b, 0x52, 0x6f, 0xae, 0x99, 0xe2, 0x68, 0x3d, 0x4f, 0x40, 0xe, 0xe1, 0xa, 0x47, 0x21}}
return a, nil
}
@ -772,7 +773,7 @@ func _1621933219_add_mentionedUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1621933219_add_mentioned.up.sql", size: 70, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1621933219_add_mentioned.up.sql", size: 70, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x36, 0x76, 0x8a, 0xc9, 0x7, 0x8f, 0xa5, 0xcb, 0x12, 0x21, 0x4e, 0xfe, 0x96, 0x77, 0xcf, 0x7f, 0x76, 0x75, 0x36, 0x2c, 0xf8, 0x1d, 0x13, 0xcb, 0xcd, 0x6e, 0x70, 0xbf, 0xf5, 0x93, 0x67, 0xd1}}
return a, nil
}
@ -792,7 +793,7 @@ func _1622010048_add_unviewed_mentions_countUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1622010048_add_unviewed_mentions_count.up.sql", size: 114, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1622010048_add_unviewed_mentions_count.up.sql", size: 114, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7c, 0x16, 0x85, 0xa6, 0x5b, 0xe1, 0x66, 0xb9, 0x84, 0xbe, 0x7f, 0xa, 0x77, 0x23, 0xb9, 0xef, 0x8e, 0x2, 0x8, 0xfc, 0x61, 0xb2, 0x43, 0xa9, 0x63, 0xae, 0xb4, 0xdf, 0x30, 0xb1, 0x61, 0x4b}}
return a, nil
}
@ -812,7 +813,7 @@ func _1622061278_add_message_activity_center_notification_fieldUpSql() (*asset,
return nil, err
}
info := bindataFileInfo{name: "1622061278_add_message_activity_center_notification_field.up.sql", size: 80, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1622061278_add_message_activity_center_notification_field.up.sql", size: 80, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8, 0xc, 0xa6, 0x1f, 0xa5, 0xc6, 0x7c, 0x6f, 0xab, 0x2c, 0x2d, 0xb5, 0xa4, 0xdd, 0xc1, 0xd6, 0x44, 0x83, 0xf9, 0xb1, 0xa5, 0xce, 0x34, 0x3d, 0x2, 0xa9, 0x35, 0xcf, 0xc6, 0xb2, 0x43, 0x37}}
return a, nil
}
@ -832,7 +833,7 @@ func _1622464518_set_synced_to_fromUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1622464518_set_synced_to_from.up.sql", size: 105, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1622464518_set_synced_to_from.up.sql", size: 105, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x33, 0x3e, 0x2b, 0xa, 0x1e, 0xc7, 0x6d, 0x6f, 0xd1, 0x1d, 0xe8, 0x4b, 0xdd, 0x92, 0x76, 0xea, 0xf2, 0x3e, 0x15, 0x85, 0xc4, 0xc3, 0x31, 0xf1, 0xc0, 0xa2, 0xd7, 0x47, 0xde, 0x4e, 0xfd, 0xc6}}
return a, nil
}
@ -852,7 +853,7 @@ func _1622464519_add_chat_descriptionUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1622464519_add_chat_description.up.sql", size: 93, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1622464519_add_chat_description.up.sql", size: 93, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x36, 0x2e, 0x89, 0x31, 0xec, 0xef, 0xeb, 0x43, 0xf5, 0x96, 0x6d, 0xce, 0x91, 0x8a, 0x37, 0x2a, 0x11, 0x7a, 0x3f, 0xd9, 0x10, 0xbb, 0xa1, 0xbc, 0x7, 0xe0, 0x3b, 0xa5, 0xf4, 0xa6, 0xf4, 0xa1}}
return a, nil
}
@ -872,7 +873,7 @@ func _1622622253_add_pinned_by_to_pin_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1622622253_add_pinned_by_to_pin_messages.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1622622253_add_pinned_by_to_pin_messages.up.sql", size: 52, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x9b, 0x94, 0xa3, 0x45, 0x91, 0x1e, 0x66, 0xd1, 0x96, 0x5a, 0xaf, 0xfa, 0x29, 0x39, 0xa8, 0x3a, 0x97, 0x4c, 0x65, 0x6, 0x96, 0x90, 0x4c, 0xfe, 0xce, 0x7d, 0x5d, 0xd4, 0xb3, 0x8, 0x6d, 0x5f}}
return a, nil
}
@ -892,7 +893,7 @@ func _1623938329_add_author_activity_center_notification_fieldUpSql() (*asset, e
return nil, err
}
info := bindataFileInfo{name: "1623938329_add_author_activity_center_notification_field.up.sql", size: 66, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1623938329_add_author_activity_center_notification_field.up.sql", size: 66, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x36, 0xe6, 0xa7, 0xd5, 0x26, 0xff, 0xab, 0x92, 0x88, 0xf0, 0xd3, 0x34, 0xd9, 0x2f, 0xe7, 0x18, 0x1a, 0x40, 0xf9, 0xbe, 0x8e, 0xfc, 0xd0, 0x4f, 0x1f, 0x4a, 0xb9, 0x83, 0x3f, 0xa9, 0xde, 0xb}}
return a, nil
}
@ -912,7 +913,7 @@ func _1623938330_add_edit_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1623938330_add_edit_messages.up.sql", size: 369, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1623938330_add_edit_messages.up.sql", size: 369, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7e, 0xd2, 0xce, 0xe, 0x5c, 0x19, 0xbe, 0x5e, 0x29, 0xbe, 0x9b, 0x31, 0x53, 0x76, 0xb2, 0xc8, 0x56, 0xf0, 0x82, 0xfe, 0x7d, 0x6c, 0xe8, 0x5c, 0xe9, 0x7a, 0x5d, 0x5, 0xc4, 0x92, 0x38, 0xe3}}
return a, nil
}
@ -932,7 +933,7 @@ func _1624978434_add_muted_communityUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1624978434_add_muted_community.up.sql", size: 82, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1624978434_add_muted_community.up.sql", size: 82, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x6, 0xdc, 0x6e, 0x6f, 0x97, 0xc7, 0x3d, 0x50, 0xab, 0x80, 0x87, 0x44, 0x43, 0x38, 0xe6, 0xc5, 0xc1, 0x91, 0x26, 0xf, 0x16, 0xe, 0xd9, 0x32, 0x37, 0x25, 0x96, 0x25, 0x6, 0xc8, 0xb5, 0x4a}}
return a, nil
}
@ -952,7 +953,7 @@ func _1625018910_add_repply_message_activity_center_notification_fieldUpSql() (*
return nil, err
}
info := bindataFileInfo{name: "1625018910_add_repply_message_activity_center_notification_field.up.sql", size: 86, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1625018910_add_repply_message_activity_center_notification_field.up.sql", size: 86, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf2, 0x52, 0x12, 0x40, 0xd8, 0x6f, 0x71, 0x97, 0x46, 0x39, 0xaa, 0x74, 0x41, 0xcd, 0x45, 0x4c, 0xe8, 0xd9, 0xe2, 0x56, 0x8e, 0x78, 0x18, 0x62, 0xf6, 0xa8, 0x36, 0xe9, 0x9a, 0x1f, 0xc, 0xb1}}
return a, nil
}
@ -972,7 +973,7 @@ func _1625762506_add_deleted_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1625762506_add_deleted_messages.up.sql", size: 357, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1625762506_add_deleted_messages.up.sql", size: 357, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd5, 0x61, 0x42, 0xb6, 0x8c, 0x7f, 0x2d, 0xec, 0xa9, 0x6d, 0x3d, 0x0, 0xa3, 0x32, 0xd8, 0x4a, 0x38, 0x5c, 0x97, 0xfc, 0x68, 0xde, 0xa9, 0xb7, 0xd8, 0xde, 0xb, 0x29, 0x93, 0xdc, 0x81, 0xf8}}
return a, nil
}
@ -992,7 +993,7 @@ func _1627388946_add_communities_synced_atUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1627388946_add_communities_synced_at.up.sql", size: 87, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1627388946_add_communities_synced_at.up.sql", size: 87, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc1, 0xbd, 0x9b, 0x6a, 0xc9, 0x1a, 0x7a, 0x34, 0xcf, 0x5f, 0x80, 0x9e, 0x8c, 0x1c, 0xc0, 0xec, 0x4e, 0x78, 0xb0, 0x2d, 0x15, 0x77, 0x38, 0x4a, 0x6a, 0x5, 0x84, 0xf5, 0x8d, 0x8b, 0xbe, 0x9}}
return a, nil
}
@ -1012,7 +1013,7 @@ func _1628280060_createUsermessagesIndexSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1628280060_create-usermessages-index.sql", size: 80, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1628280060_create-usermessages-index.sql", size: 80, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x10, 0x6f, 0x70, 0x47, 0x40, 0xab, 0xa8, 0x60, 0xe0, 0xf9, 0x8, 0x7e, 0x19, 0x9d, 0xba, 0x33, 0x16, 0xfc, 0x3c, 0xdc, 0xa8, 0xa6, 0x53, 0x61, 0x39, 0x82, 0x91, 0xcf, 0x69, 0xd8, 0xf2, 0xcf}}
return a, nil
}
@ -1032,7 +1033,7 @@ func _1632303896_modify_contacts_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1632303896_modify_contacts_table.up.sql", size: 1574, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1632303896_modify_contacts_table.up.sql", size: 1574, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x81, 0x1e, 0x6c, 0x3c, 0xd, 0xd7, 0x7d, 0xbb, 0x19, 0xbc, 0xe4, 0x7, 0xfd, 0xf8, 0x66, 0x6d, 0x78, 0xf6, 0x4, 0xe6, 0x51, 0xe4, 0xe6, 0xdc, 0xe, 0x5a, 0x2e, 0xac, 0xe6, 0xe7, 0x24, 0x69}}
return a, nil
}
@ -1052,7 +1053,7 @@ func _1633349838_add_emoji_column_in_chatsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1633349838_add_emoji_column_in_chats.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1633349838_add_emoji_column_in_chats.up.sql", size: 52, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xcb, 0x33, 0xcb, 0x3b, 0xa9, 0x99, 0x77, 0x6a, 0xea, 0xc4, 0x39, 0xd7, 0xa1, 0x49, 0xa7, 0xdf, 0xff, 0x72, 0xda, 0x34, 0x21, 0x67, 0x66, 0xca, 0x65, 0x46, 0x1, 0xa6, 0x4e, 0xf9, 0x38, 0x86}}
return a, nil
}
@ -1072,7 +1073,7 @@ func _1634831235_add_highlight_column_in_chatsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1634831235_add_highlight_column_in_chats.up.sql", size: 62, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1634831235_add_highlight_column_in_chats.up.sql", size: 62, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xaa, 0x63, 0x5c, 0x73, 0x19, 0x83, 0xbd, 0x35, 0x80, 0x9f, 0x66, 0xec, 0x4c, 0xbc, 0x9d, 0x2d, 0x52, 0x91, 0x6d, 0xb3, 0x2b, 0x87, 0xde, 0x24, 0x46, 0x5c, 0xd, 0xfd, 0x78, 0xf5, 0xe3, 0xe9}}
return a, nil
}
@ -1092,7 +1093,7 @@ func _1634896007_add_last_updated_locally_and_removedUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1634896007_add_last_updated_locally_and_removed.up.sql", size: 131, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1634896007_add_last_updated_locally_and_removed.up.sql", size: 131, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x2e, 0xa8, 0x34, 0xe2, 0xc0, 0x62, 0xc8, 0xd6, 0x5a, 0x87, 0xe3, 0x70, 0xe1, 0xc4, 0x16, 0x9c, 0x60, 0x2e, 0x98, 0xf0, 0x91, 0x84, 0xbe, 0xe0, 0xdf, 0x3e, 0x4d, 0x24, 0xc4, 0x6c, 0x40, 0x17}}
return a, nil
}
@ -1112,7 +1113,7 @@ func _1635840039_add_clock_read_at_column_in_chatsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1635840039_add_clock_read_at_column_in_chats.up.sql", size: 245, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1635840039_add_clock_read_at_column_in_chats.up.sql", size: 245, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x6c, 0xba, 0x3f, 0xba, 0x1a, 0x71, 0xa8, 0x9, 0x19, 0xbe, 0x1e, 0x38, 0x50, 0x30, 0x3a, 0x52, 0x15, 0x29, 0xee, 0x49, 0x19, 0x6f, 0x53, 0xc2, 0xc6, 0x6c, 0xd9, 0x80, 0x7e, 0xb9, 0x58, 0x7a}}
return a, nil
}
@ -1132,7 +1133,7 @@ func _1637852321_add_received_invitation_admin_column_in_chatsUpSql() (*asset, e
return nil, err
}
info := bindataFileInfo{name: "1637852321_add_received_invitation_admin_column_in_chats.up.sql", size: 72, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "1637852321_add_received_invitation_admin_column_in_chats.up.sql", size: 72, mode: os.FileMode(0644), modTime: time.Unix(1645666387, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x70, 0x8b, 0x92, 0x56, 0x83, 0x70, 0x7f, 0x6, 0xb2, 0xd, 0x1c, 0x2f, 0xcc, 0x93, 0xc3, 0x85, 0x8c, 0xc2, 0x38, 0x94, 0x7e, 0x88, 0x3f, 0x39, 0x34, 0xf8, 0x90, 0xcf, 0x83, 0x68, 0x3d, 0xe5}}
return a, nil
}
@ -1152,7 +1153,7 @@ func _1645034601_display_nameUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1645034601_display_name.up.sql", size: 110, mode: os.FileMode(0664), modTime: time.Unix(1647514829, 0)}
info := bindataFileInfo{name: "1645034601_display_name.up.sql", size: 110, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x15, 0xfc, 0xda, 0x70, 0x53, 0x19, 0x90, 0x20, 0x4, 0x1c, 0x99, 0x42, 0x53, 0x1a, 0xd6, 0xb8, 0xbb, 0x8a, 0xe8, 0xbe, 0xcc, 0xb7, 0xc, 0x7f, 0x73, 0x50, 0x18, 0xf1, 0x8b, 0x18, 0x54, 0x64}}
return a, nil
}
@ -1172,7 +1173,7 @@ func _1645034602_add_mutual_contact_requestUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1645034602_add_mutual_contact_request.up.sql", size: 454, mode: os.FileMode(0664), modTime: time.Unix(1657187476, 0)}
info := bindataFileInfo{name: "1645034602_add_mutual_contact_request.up.sql", size: 454, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1a, 0xe0, 0x5d, 0x68, 0xb8, 0x50, 0xa4, 0xbb, 0x3e, 0x4f, 0x2, 0x87, 0xad, 0x87, 0x6e, 0x38, 0xdf, 0xc8, 0x4c, 0xe2, 0x5f, 0xd1, 0x6, 0xdc, 0xe7, 0xbd, 0x4a, 0x9c, 0xf3, 0x91, 0xa1, 0x51}}
return a, nil
}
@ -1192,7 +1193,7 @@ func _1650373957_add_contact_request_stateUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1650373957_add_contact_request_state.up.sql", size: 59, mode: os.FileMode(0664), modTime: time.Unix(1657187476, 0)}
info := bindataFileInfo{name: "1650373957_add_contact_request_state.up.sql", size: 59, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x5e, 0xc1, 0x3f, 0x29, 0xe, 0x19, 0x86, 0x1a, 0x4c, 0x6c, 0x2a, 0x90, 0x9d, 0xdf, 0xb1, 0xb, 0x72, 0x25, 0xcd, 0x6c, 0x5f, 0xd, 0x51, 0x9e, 0x85, 0xc0, 0x9, 0xb7, 0xbc, 0x87, 0x23, 0xec}}
return a, nil
}
@ -1212,7 +1213,7 @@ func _1656958989_contact_verificationUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1656958989_contact_verification.up.sql", size: 624, mode: os.FileMode(0664), modTime: time.Unix(1657187476, 0)}
info := bindataFileInfo{name: "1656958989_contact_verification.up.sql", size: 624, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3a, 0x3f, 0x28, 0x38, 0x33, 0xdb, 0xe9, 0x4d, 0xc0, 0x54, 0x8c, 0x2a, 0x73, 0xc4, 0xdd, 0x5c, 0xc5, 0x1a, 0x93, 0x4b, 0x6, 0x13, 0xbe, 0x42, 0xd2, 0x7f, 0xd4, 0xc, 0xc5, 0x4e, 0x6d, 0xce}}
return a, nil
}
@ -1232,7 +1233,7 @@ func _1658236268_add_discord_message_authors_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1658236268_add_discord_message_authors_table.up.sql", size: 191, mode: os.FileMode(0664), modTime: time.Unix(1661976396, 0)}
info := bindataFileInfo{name: "1658236268_add_discord_message_authors_table.up.sql", size: 191, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3d, 0xb7, 0xdb, 0x79, 0x1, 0x15, 0xe7, 0x76, 0x5d, 0x22, 0x54, 0x82, 0x9a, 0xbe, 0x24, 0xc1, 0x82, 0xcf, 0x67, 0x91, 0x53, 0xcc, 0xac, 0x74, 0x18, 0x61, 0x69, 0x68, 0x19, 0xca, 0x2b, 0xa8}}
return a, nil
}
@ -1252,7 +1253,7 @@ func _1659619997_add_discord_messages_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1659619997_add_discord_messages_table.up.sql", size: 371, mode: os.FileMode(0664), modTime: time.Unix(1661976396, 0)}
info := bindataFileInfo{name: "1659619997_add_discord_messages_table.up.sql", size: 371, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xde, 0x12, 0x9c, 0x96, 0xe2, 0x42, 0x3f, 0x94, 0x62, 0xc2, 0x76, 0xab, 0x3b, 0x4c, 0x85, 0x36, 0x48, 0xcc, 0x73, 0x60, 0x93, 0x5a, 0xd6, 0x7, 0xd6, 0x0, 0xee, 0x1b, 0x1e, 0x34, 0x58, 0x99}}
return a, nil
}
@ -1272,7 +1273,7 @@ func _1660226788_create_chat_identity_social_linksUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1660226788_create_chat_identity_social_links.up.sql", size: 318, mode: os.FileMode(0664), modTime: time.Unix(1661976396, 0)}
info := bindataFileInfo{name: "1660226788_create_chat_identity_social_links.up.sql", size: 318, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3c, 0x76, 0x40, 0xe9, 0x85, 0xc4, 0x38, 0xf8, 0xe5, 0x5d, 0xe8, 0x13, 0x46, 0x1b, 0xc, 0x1, 0xe9, 0x2f, 0x74, 0xd1, 0x79, 0x59, 0xa4, 0xdb, 0x4a, 0x4a, 0xf4, 0x98, 0x58, 0x3c, 0x57, 0xd3}}
return a, nil
}
@ -1292,7 +1293,7 @@ func _1660226789_add_walletconnectsessions_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1660226789_add_walletconnectsessions_table.up.sql", size: 215, mode: os.FileMode(0664), modTime: time.Unix(1661976396, 0)}
info := bindataFileInfo{name: "1660226789_add_walletconnectsessions_table.up.sql", size: 215, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf8, 0x5c, 0x72, 0x2, 0xed, 0x36, 0x19, 0x91, 0x4d, 0x1a, 0xc1, 0xab, 0x84, 0xfa, 0x41, 0xb1, 0x46, 0xa5, 0xdb, 0x3f, 0x76, 0x47, 0xd3, 0x75, 0x3c, 0x6a, 0x8e, 0x78, 0xe6, 0x41, 0xdc, 0x7f}}
return a, nil
}
@ -1312,7 +1313,7 @@ func _1661242854_add_communities_requests_to_leaveUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1661242854_add_communities_requests_to_leave.up.sql", size: 204, mode: os.FileMode(0664), modTime: time.Unix(1661976396, 0)}
info := bindataFileInfo{name: "1661242854_add_communities_requests_to_leave.up.sql", size: 204, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x49, 0x2e, 0x7d, 0x14, 0xef, 0x6e, 0x95, 0x4b, 0x6, 0x70, 0x2e, 0xd1, 0xf6, 0x59, 0xf9, 0xe, 0x56, 0xa, 0x9c, 0x80, 0x18, 0xca, 0xb9, 0x49, 0x19, 0xf, 0x89, 0x94, 0x36, 0x6d, 0x93, 0x9a}}
return a, nil
}
@ -1332,7 +1333,7 @@ func _1662044232_add_chat_imageUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1662044232_add_chat_image.up.sql", size: 49, mode: os.FileMode(0664), modTime: time.Unix(1663702301, 0)}
info := bindataFileInfo{name: "1662044232_add_chat_image.up.sql", size: 49, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xb3, 0x74, 0xdf, 0x50, 0x79, 0x73, 0x9e, 0xd0, 0xff, 0xa4, 0xd3, 0x87, 0xc3, 0x48, 0x31, 0x6c, 0xdf, 0xa6, 0x20, 0x85, 0xe6, 0x4e, 0x19, 0x9d, 0xef, 0xcc, 0x84, 0x2b, 0x5d, 0x44, 0x34, 0x6}}
return a, nil
}
@ -1352,7 +1353,7 @@ func _1662106895_add_chat_first_message_timestampUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1662106895_add_chat_first_message_timestamp.up.sql", size: 113, mode: os.FileMode(0664), modTime: time.Unix(1663702301, 0)}
info := bindataFileInfo{name: "1662106895_add_chat_first_message_timestamp.up.sql", size: 113, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8b, 0x55, 0x74, 0xfa, 0xf5, 0x51, 0x85, 0x19, 0xfd, 0xfb, 0x6, 0x79, 0x4d, 0x1d, 0xd, 0x3, 0x46, 0x66, 0x34, 0x1e, 0xce, 0x91, 0x21, 0x29, 0xf6, 0x71, 0xe7, 0x31, 0x39, 0x8f, 0x9d, 0x5}}
return a, nil
}
@ -1372,7 +1373,7 @@ func _1662723928_add_discord_author_image_fieldsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1662723928_add_discord_author_image_fields.up.sql", size: 75, mode: os.FileMode(0664), modTime: time.Unix(1663702301, 0)}
info := bindataFileInfo{name: "1662723928_add_discord_author_image_fields.up.sql", size: 75, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1e, 0x5b, 0x48, 0x57, 0x98, 0x55, 0x9a, 0xf1, 0x75, 0xf7, 0xb5, 0x41, 0x5e, 0x96, 0xc5, 0xce, 0xfc, 0x30, 0x5c, 0x15, 0x35, 0x9e, 0x4e, 0x4a, 0x3b, 0x38, 0x42, 0xc4, 0x27, 0x3c, 0x87, 0xbf}}
return a, nil
}
@ -1392,7 +1393,7 @@ func _1664195977_add_deleted_for_mesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1664195977_add_deleted_for_mes.up.sql", size: 352, mode: os.FileMode(0664), modTime: time.Unix(1665079602, 0)}
info := bindataFileInfo{name: "1664195977_add_deleted_for_mes.up.sql", size: 352, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7d, 0x9d, 0x13, 0x9, 0xaa, 0x44, 0x14, 0x93, 0xe2, 0xf5, 0x53, 0xb7, 0x79, 0xa8, 0x18, 0xf0, 0x6c, 0xa4, 0x9c, 0x73, 0xc1, 0xaa, 0xc5, 0x2e, 0xc5, 0x41, 0xd7, 0x24, 0xb0, 0xd7, 0xb8, 0xdf}}
return a, nil
}
@ -1412,7 +1413,7 @@ func _1664367420_add_discord_attachments_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1664367420_add_discord_attachments_table.up.sql", size: 350, mode: os.FileMode(0664), modTime: time.Unix(1665079602, 0)}
info := bindataFileInfo{name: "1664367420_add_discord_attachments_table.up.sql", size: 350, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x48, 0xe1, 0xb6, 0x4f, 0x6f, 0x92, 0x0, 0xb4, 0xf, 0x55, 0x12, 0x1c, 0x98, 0x6d, 0xbc, 0x1e, 0xfd, 0xae, 0x1c, 0xce, 0xd1, 0x3d, 0x2, 0x21, 0x2e, 0xc0, 0x13, 0xa, 0xb2, 0xec, 0x81, 0x13}}
return a, nil
}
@ -1432,7 +1433,7 @@ func _1665079662_add_spectated_column_in_communitiesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1665079662_add_spectated_column_in_communities.up.sql", size: 86, mode: os.FileMode(0664), modTime: time.Unix(1666202970, 0)}
info := bindataFileInfo{name: "1665079662_add_spectated_column_in_communities.up.sql", size: 86, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa0, 0x5d, 0xfe, 0xe2, 0xbe, 0xdf, 0xba, 0x45, 0xe9, 0xfc, 0xa7, 0x5f, 0xda, 0x19, 0xdb, 0x40, 0x96, 0x59, 0x78, 0xa, 0xd7, 0x4a, 0xca, 0x1a, 0x93, 0xfb, 0xae, 0x6d, 0x74, 0x7, 0x36, 0xdd}}
return a, nil
}
@ -1452,7 +1453,7 @@ func _1665479047_add_community_id_in_notificationsUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1665479047_add_community_id_in_notifications.up.sql", size: 169, mode: os.FileMode(0664), modTime: time.Unix(1668629936, 0)}
info := bindataFileInfo{name: "1665479047_add_community_id_in_notifications.up.sql", size: 169, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd9, 0x8f, 0x8b, 0x1c, 0xaa, 0x6a, 0x56, 0xd6, 0xa5, 0x88, 0x57, 0x13, 0x8f, 0xea, 0xb9, 0x23, 0x82, 0x50, 0xb7, 0x65, 0x1f, 0xab, 0xfa, 0x23, 0x6f, 0x0, 0x7, 0xb6, 0x6e, 0xb5, 0x85, 0x44}}
return a, nil
}
@ -1472,7 +1473,7 @@ func _1665484435_add_encrypted_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1665484435_add_encrypted_messages.up.sql", size: 402, mode: os.FileMode(0664), modTime: time.Unix(1668629936, 0)}
info := bindataFileInfo{name: "1665484435_add_encrypted_messages.up.sql", size: 402, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8f, 0x5c, 0x1e, 0x1c, 0x7f, 0xae, 0x5f, 0xeb, 0x3c, 0x6c, 0xcd, 0xc2, 0x99, 0x48, 0x5c, 0x83, 0xa0, 0xa2, 0x97, 0x5, 0x39, 0x82, 0x71, 0x90, 0x47, 0x21, 0x84, 0x29, 0x19, 0xa4, 0x7a, 0x90}}
return a, nil
}
@ -1492,7 +1493,7 @@ func _1665560200_add_contact_verification_individualUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1665560200_add_contact_verification_individual.up.sql", size: 509, mode: os.FileMode(0664), modTime: time.Unix(1668629936, 0)}
info := bindataFileInfo{name: "1665560200_add_contact_verification_individual.up.sql", size: 509, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc5, 0xbb, 0x61, 0xfd, 0xbf, 0x33, 0x1d, 0x4e, 0x5f, 0xbd, 0x86, 0x42, 0xb0, 0x6c, 0xf7, 0x39, 0x19, 0x6e, 0x72, 0x35, 0xfd, 0x1b, 0xd6, 0xbd, 0xf6, 0x81, 0x21, 0xc4, 0xaa, 0x6, 0x62, 0x40}}
return a, nil
}
@ -1512,7 +1513,7 @@ func _1670921937_add_album_idUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1670921937_add_album_id.up.sql", size: 55, mode: os.FileMode(0664), modTime: time.Unix(1672913782, 0)}
info := bindataFileInfo{name: "1670921937_add_album_id.up.sql", size: 55, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7e, 0xae, 0x83, 0x58, 0xb7, 0x77, 0x5, 0xca, 0xe3, 0xda, 0x32, 0x8f, 0x7b, 0xa4, 0x2f, 0x4c, 0xaf, 0x5f, 0xfa, 0x94, 0x36, 0xe4, 0xf9, 0x7, 0xc6, 0xd6, 0xb7, 0x90, 0xf3, 0xe5, 0xb5, 0x3}}
return a, nil
}
@ -1532,7 +1533,7 @@ func _1673373000_add_repliedUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1673373000_add_replied.up.sql", size: 67, mode: os.FileMode(0664), modTime: time.Unix(1676625650, 0)}
info := bindataFileInfo{name: "1673373000_add_replied.up.sql", size: 67, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd5, 0x1c, 0xae, 0xf2, 0xf, 0xb4, 0xc2, 0xba, 0x3c, 0xfe, 0x7b, 0xb0, 0xf, 0xf, 0xd5, 0xbc, 0xe2, 0xa7, 0xad, 0x50, 0xd9, 0x5a, 0xe8, 0x96, 0x22, 0x65, 0x89, 0xcf, 0x4a, 0x9a, 0x1b, 0x94}}
return a, nil
}
@ -1552,7 +1553,7 @@ func _1673428910_add_image_width_heightUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1673428910_add_image_width_height.up.sql", size: 117, mode: os.FileMode(0664), modTime: time.Unix(1676625650, 0)}
info := bindataFileInfo{name: "1673428910_add_image_width_height.up.sql", size: 117, mode: os.FileMode(0644), modTime: time.Unix(1675323803, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x74, 0xda, 0x93, 0x2a, 0x9b, 0x6b, 0xb7, 0x96, 0xcd, 0xac, 0xf, 0xaf, 0x54, 0x89, 0x9e, 0x91, 0x5b, 0xd0, 0x4a, 0xa, 0x8d, 0x9e, 0x80, 0x66, 0x26, 0x9e, 0xb5, 0xa9, 0x8, 0xec, 0x2d, 0x6c}}
return a, nil
}
@ -1572,7 +1573,7 @@ func _1674210659_add_contact_request_local_clockUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1674210659_add_contact_request_local_clock.up.sql", size: 691, mode: os.FileMode(0664), modTime: time.Unix(1676625650, 0)}
info := bindataFileInfo{name: "1674210659_add_contact_request_local_clock.up.sql", size: 691, mode: os.FileMode(0644), modTime: time.Unix(1675323904, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x92, 0x72, 0x39, 0xfe, 0x72, 0x98, 0xfc, 0x91, 0x20, 0x10, 0xe8, 0xf5, 0xac, 0x79, 0xa8, 0x1c, 0xca, 0x7b, 0x35, 0xa, 0xc1, 0x56, 0x49, 0x9a, 0xfc, 0xbd, 0x64, 0x9d, 0xdf, 0xd2, 0x60, 0x70}}
return a, nil
}
@ -1592,7 +1593,7 @@ func _1675212323_add_deleted_byUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1675212323_add_deleted_by.up.sql", size: 57, mode: os.FileMode(0664), modTime: time.Unix(1676625650, 0)}
info := bindataFileInfo{name: "1675212323_add_deleted_by.up.sql", size: 57, mode: os.FileMode(0644), modTime: time.Unix(1675323904, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x85, 0x37, 0x29, 0x2f, 0xd, 0x5a, 0xb6, 0xdb, 0xa7, 0x8, 0x86, 0xfc, 0x7a, 0x70, 0xd8, 0x4d, 0xe6, 0xf0, 0x57, 0xe7, 0xd1, 0x95, 0xd5, 0x4, 0x40, 0x2f, 0x7a, 0x5, 0x4f, 0xc2, 0x97, 0xbc}}
return a, nil
}
@ -1612,7 +1613,7 @@ func _1675247084_add_activity_center_statesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1675247084_add_activity_center_states.up.sql", size: 136, mode: os.FileMode(0664), modTime: time.Unix(1677246534, 0)}
info := bindataFileInfo{name: "1675247084_add_activity_center_states.up.sql", size: 136, mode: os.FileMode(0644), modTime: time.Unix(1677122376, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xba, 0x90, 0x7d, 0x55, 0xc7, 0x40, 0x29, 0x26, 0x97, 0x45, 0x5c, 0xdf, 0xba, 0x61, 0xb, 0xfc, 0x3d, 0x7a, 0x6c, 0x42, 0xe4, 0x95, 0x78, 0xb0, 0xc5, 0x1f, 0x73, 0xe9, 0x33, 0x51, 0xc8, 0x81}}
return a, nil
}
@ -1632,7 +1633,7 @@ func _1675272329_fix_protocol_migrationUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1675272329_fix_protocol_migration.up.sql", size: 183, mode: os.FileMode(0664), modTime: time.Unix(1676625650, 0)}
info := bindataFileInfo{name: "1675272329_fix_protocol_migration.up.sql", size: 183, mode: os.FileMode(0644), modTime: time.Unix(1675323904, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xb6, 0xe0, 0x11, 0x4c, 0x66, 0x55, 0x72, 0xd3, 0xe6, 0x98, 0xa4, 0xe7, 0x44, 0xf9, 0x3b, 0x3a, 0x3f, 0xd9, 0x91, 0x1e, 0x4f, 0xfc, 0x56, 0x63, 0xe5, 0xa4, 0x83, 0xfc, 0x7c, 0xcf, 0x18, 0x99}}
return a, nil
}
@ -1652,7 +1653,7 @@ func _1676998418_fix_activity_center_migrationUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1676998418_fix_activity_center_migration.up.sql", size: 178, mode: os.FileMode(0664), modTime: time.Unix(1677246534, 0)}
info := bindataFileInfo{name: "1676998418_fix_activity_center_migration.up.sql", size: 178, mode: os.FileMode(0644), modTime: time.Unix(1677468108, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8a, 0xdc, 0x64, 0xb1, 0x47, 0x67, 0xda, 0x2c, 0x26, 0x29, 0x6b, 0x6f, 0xb, 0xfa, 0x45, 0xf3, 0xad, 0x8b, 0x1a, 0x5f, 0x1c, 0xed, 0xd7, 0xea, 0x54, 0xf5, 0x3f, 0xb8, 0xf6, 0xf9, 0x44, 0x53}}
return a, nil
}
@ -1672,7 +1673,7 @@ func _1677278861_add_deleted_column_to_activity_center_notifications_tableUpSql(
return nil, err
}
info := bindataFileInfo{name: "1677278861_add_deleted_column_to_activity_center_notifications_table.up.sql", size: 381, mode: os.FileMode(0664), modTime: time.Unix(1679600860, 0)}
info := bindataFileInfo{name: "1677278861_add_deleted_column_to_activity_center_notifications_table.up.sql", size: 381, mode: os.FileMode(0644), modTime: time.Unix(1677468108, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x38, 0x3a, 0x95, 0xaf, 0x81, 0xb0, 0x85, 0x8d, 0x73, 0xda, 0x7b, 0x2a, 0x35, 0xa6, 0xaa, 0xcc, 0x4c, 0x35, 0xa3, 0xa8, 0xbd, 0xd1, 0x37, 0xe8, 0x5d, 0x83, 0xa4, 0x33, 0x1f, 0x10, 0xe4, 0xe6}}
return a, nil
}
@ -1692,7 +1693,7 @@ func _1677486338_add_community_tokens_tableUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1677486338_add_community_tokens_table.up.sql", size: 527, mode: os.FileMode(0664), modTime: time.Unix(1679600860, 0)}
info := bindataFileInfo{name: "1677486338_add_community_tokens_table.up.sql", size: 527, mode: os.FileMode(0644), modTime: time.Unix(1677564198, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xfb, 0x7b, 0x3d, 0x7e, 0x79, 0xc4, 0x3a, 0xf1, 0xda, 0x4b, 0xc6, 0xd1, 0xd, 0xfb, 0xb2, 0xb9, 0x7f, 0x81, 0x29, 0xab, 0xd8, 0x1, 0x20, 0xd7, 0xe1, 0xaf, 0x3e, 0x67, 0x1b, 0xdb, 0xf9, 0xd5}}
return a, nil
}
@ -1712,7 +1713,7 @@ func _1678292329_add_collapsed_categoriesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1678292329_add_collapsed_categories.up.sql", size: 170, mode: os.FileMode(0664), modTime: time.Unix(1679600860, 0)}
info := bindataFileInfo{name: "1678292329_add_collapsed_categories.up.sql", size: 170, mode: os.FileMode(0644), modTime: time.Unix(1679051421, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x46, 0x63, 0x86, 0xd5, 0x7, 0xe2, 0x25, 0x15, 0x1b, 0xfe, 0xf3, 0xe, 0x50, 0x48, 0x11, 0x3c, 0x7c, 0xc6, 0xe5, 0xab, 0x8d, 0x1f, 0xe8, 0x3c, 0xcb, 0xf0, 0x8d, 0xa7, 0x49, 0x4c, 0x16, 0x4f}}
return a, nil
}
@ -1732,7 +1733,7 @@ func _1678800760_add_index_to_raw_messagesUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1678800760_add_index_to_raw_messages.up.sql", size: 88, mode: os.FileMode(0664), modTime: time.Unix(1679600860, 0)}
info := bindataFileInfo{name: "1678800760_add_index_to_raw_messages.up.sql", size: 88, mode: os.FileMode(0644), modTime: time.Unix(1679302848, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x9d, 0xd9, 0x8d, 0x22, 0x46, 0xae, 0x7b, 0x53, 0x3e, 0x51, 0x39, 0xad, 0xad, 0x38, 0x50, 0x6, 0xfa, 0xb9, 0xc4, 0x9f, 0x8d, 0xd2, 0x67, 0x0, 0xef, 0x58, 0x13, 0xab, 0x6a, 0x67, 0xf3, 0x7e}}
return a, nil
}
@ -1752,7 +1753,7 @@ func _1678877478_add_communities_requests_to_join_revealed_addresses_tableUpSql(
return nil, err
}
info := bindataFileInfo{name: "1678877478_add_communities_requests_to_join_revealed_addresses_table.up.sql", size: 168, mode: os.FileMode(0664), modTime: time.Unix(1679600860, 0)}
info := bindataFileInfo{name: "1678877478_add_communities_requests_to_join_revealed_addresses_table.up.sql", size: 168, mode: os.FileMode(0644), modTime: time.Unix(1679652393, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x82, 0x1, 0xb4, 0xb2, 0x94, 0x25, 0xd5, 0x2e, 0x45, 0xc3, 0xb1, 0x2c, 0xeb, 0x1a, 0x52, 0xe0, 0x4b, 0x9b, 0x46, 0xf4, 0xc, 0xac, 0x1, 0x1e, 0x90, 0xbc, 0x64, 0x38, 0x10, 0xf1, 0xaf, 0xac}}
return a, nil
}
@ -1772,7 +1773,7 @@ func _1679326850_add_community_token_ownersUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1679326850_add_community_token_owners.up.sql", size: 206, mode: os.FileMode(0664), modTime: time.Unix(1680014431, 0)}
info := bindataFileInfo{name: "1679326850_add_community_token_owners.up.sql", size: 206, mode: os.FileMode(0644), modTime: time.Unix(1680000580, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe9, 0xe6, 0x25, 0x67, 0xd1, 0xd6, 0x54, 0x88, 0xb1, 0x80, 0x1e, 0x2d, 0x9c, 0xfa, 0x1c, 0xc7, 0x63, 0x6e, 0xf9, 0x66, 0xb1, 0x68, 0xc6, 0xf8, 0x51, 0xb6, 0xd5, 0x4e, 0x93, 0x39, 0x5e, 0xc0}}
return a, nil
}
@ -1792,7 +1793,7 @@ func _1680011500_add_album_images_countUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1680011500_add_album_images_count.up.sql", size: 71, mode: os.FileMode(0664), modTime: time.Unix(1680186700, 0)}
info := bindataFileInfo{name: "1680011500_add_album_images_count.up.sql", size: 71, mode: os.FileMode(0644), modTime: time.Unix(1680260624, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x2e, 0x55, 0x99, 0x31, 0xcc, 0x80, 0x78, 0xc3, 0x51, 0x13, 0x63, 0x6f, 0x1a, 0xfd, 0x53, 0xd2, 0xf4, 0x13, 0x4b, 0xb2, 0x4f, 0x99, 0xb8, 0x7b, 0x7, 0x99, 0xb6, 0xab, 0x88, 0x2e, 0x7, 0x8}}
return a, nil
}
@ -1812,7 +1813,7 @@ func _1680114896_add_index_on_album_idUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1680114896_add_index_on_album_id.up.sql", size: 83, mode: os.FileMode(0664), modTime: time.Unix(1681311476, 0)}
info := bindataFileInfo{name: "1680114896_add_index_on_album_id.up.sql", size: 83, mode: os.FileMode(0644), modTime: time.Unix(1680260624, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xb3, 0x7e, 0xd5, 0xcd, 0x2d, 0xab, 0xd4, 0x32, 0x26, 0x50, 0x3a, 0x5b, 0x8e, 0x1c, 0xcc, 0x35, 0xf8, 0xa1, 0x2a, 0xc1, 0x23, 0xf6, 0x90, 0xfe, 0x84, 0x3, 0xde, 0x5a, 0xee, 0xc6, 0xfc, 0x2a}}
return a, nil
}
@ -1832,7 +1833,7 @@ func _1681655289_add_mute_tillUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1681655289_add_mute_till.up.sql", size: 51, mode: os.FileMode(0664), modTime: time.Unix(1682528241, 0)}
info := bindataFileInfo{name: "1681655289_add_mute_till.up.sql", size: 51, mode: os.FileMode(0644), modTime: time.Unix(1681955252, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd1, 0xbe, 0xce, 0xb8, 0xe1, 0x30, 0xe7, 0xa7, 0xe0, 0x7d, 0x97, 0xf4, 0x26, 0xb8, 0x57, 0x1d, 0x2a, 0xed, 0x18, 0xf2, 0xa, 0xe3, 0x77, 0x29, 0x18, 0x55, 0x9, 0x74, 0x2c, 0x24, 0x5a, 0x19}}
return a, nil
}
@ -1852,7 +1853,7 @@ func _1681934966_add_index_response_toUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1681934966_add_index_response_to.up.sql", size: 70, mode: os.FileMode(0664), modTime: time.Unix(1682528241, 0)}
info := bindataFileInfo{name: "1681934966_add_index_response_to.up.sql", size: 70, mode: os.FileMode(0644), modTime: time.Unix(1682560340, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3b, 0xed, 0xa6, 0x7e, 0x51, 0xf2, 0xa1, 0x3c, 0x78, 0x9a, 0xa7, 0x7a, 0x51, 0x25, 0x7d, 0xdd, 0x4b, 0xf3, 0x45, 0xeb, 0x3f, 0xad, 0x23, 0x3e, 0xac, 0x16, 0x28, 0x62, 0x7, 0x8c, 0xe0, 0xa0}}
return a, nil
}
@ -1872,11 +1873,31 @@ func _1682528339_add_index_user_messages_unseenUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1682528339_add_index_user_messages_unseen.up.sql", size: 104, mode: os.FileMode(0664), modTime: time.Unix(1683274138, 0)}
info := bindataFileInfo{name: "1682528339_add_index_user_messages_unseen.up.sql", size: 104, mode: os.FileMode(0644), modTime: time.Unix(1683172161, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x35, 0xfa, 0x98, 0xdd, 0x74, 0x5e, 0x21, 0x1f, 0xf2, 0x56, 0x17, 0x96, 0xfe, 0xbb, 0x44, 0x4c, 0xa1, 0xd8, 0x9f, 0x2e, 0x6, 0x2f, 0xd8, 0x23, 0xec, 0x94, 0x8c, 0x53, 0xf3, 0xf0, 0x40, 0xe7}}
return a, nil
}
var __1683707289_recreate_deleted_for_mesUpSql = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x90\xc1\x4a\x04\x31\x0c\x86\xef\x7d\x8a\xff\xb8\x0b\xfb\x06\x73\x8a\x35\xab\xc5\x4e\x3b\xa4\x51\xdc\x53\xd1\x9d\x2a\xb2\x2b\x03\x56\xdf\x5f\xa6\x0e\x28\x1e\x1c\x73\x0c\x5f\xfe\x7c\x89\x15\x26\x65\x28\x5d\x78\x86\xdb\x23\x44\x05\xdf\xbb\xa4\x09\x1f\xb5\xbc\xe5\xd7\x52\xeb\xc3\x73\xa9\x79\x2c\xe7\xf2\x5e\xc6\xfc\x34\xb5\x66\x7e\x3c\x61\x63\x00\xe0\x78\x9e\x8e\x27\xb4\x72\x41\xf9\x8a\xa5\x85\x84\x5b\xef\x77\x0d\x58\x22\xf2\xcb\x88\x3b\x12\x7b\x4d\xbf\x81\x41\x5c\x4f\x72\xc0\x0d\x1f\xb0\xf9\xa6\xb7\x66\xdb\x19\xe3\x42\x62\x51\x44\x81\xf0\xe0\xc9\xf2\xbc\x25\xae\xcb\x25\xf6\x6c\xf5\xcb\x6e\xf7\xd3\x61\x2f\xb1\xff\x7b\xbc\x33\xe6\x52\xe2\xb0\x3c\x65\x0d\x25\xaf\x2c\xff\x61\x67\x2b\xe1\x40\x3d\x63\xed\x80\xce\x7c\x06\x00\x00\xff\xff\x81\x0b\x39\x59\x98\x01\x00\x00")
func _1683707289_recreate_deleted_for_mesUpSqlBytes() ([]byte, error) {
return bindataRead(
__1683707289_recreate_deleted_for_mesUpSql,
"1683707289_recreate_deleted_for_mes.up.sql",
)
}
func _1683707289_recreate_deleted_for_mesUpSql() (*asset, error) {
bytes, err := _1683707289_recreate_deleted_for_mesUpSqlBytes()
if err != nil {
return nil, err
}
info := bindataFileInfo{name: "1683707289_recreate_deleted_for_mes.up.sql", size: 408, mode: os.FileMode(0644), modTime: time.Unix(1683811675, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x5b, 0x9d, 0xd6, 0x45, 0x41, 0x29, 0x44, 0xf6, 0x14, 0x38, 0xeb, 0xdf, 0x6b, 0x5d, 0x9c, 0x45, 0x4b, 0xc3, 0xa8, 0xbd, 0x38, 0x14, 0xd9, 0x73, 0xf1, 0x51, 0xbb, 0x9f, 0x14, 0x36, 0xf2, 0x11}}
return a, nil
}
var __1683725607_mark_discord_messages_as_seenUpSql = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x0a\x0d\x70\x71\x0c\x71\x55\x28\x2d\x4e\x2d\x8a\xcf\x4d\x2d\x2e\x4e\x4c\x4f\x2d\xe6\x0a\x76\x0d\x51\x28\x4e\x4d\xcd\x53\xb0\x55\x30\xe4\x0a\xf7\x70\x0d\x72\xe5\x52\x50\x50\x50\x48\xc9\x2c\x4e\xce\x2f\x4a\x81\xa9\x8b\xcf\x4c\x51\xf0\x0c\x56\xf0\xf3\x0f\x51\xf0\x0b\xf5\xf1\x01\x2b\x71\xf4\x73\xc1\xa6\x4c\xd1\x56\x41\x5d\x9d\x0b\x10\x00\x00\xff\xff\x6a\xdb\x6b\x54\x6c\x00\x00\x00")
func _1683725607_mark_discord_messages_as_seenUpSqlBytes() ([]byte, error) {
@ -1892,7 +1913,7 @@ func _1683725607_mark_discord_messages_as_seenUpSql() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "1683725607_mark_discord_messages_as_seen.up.sql", size: 108, mode: os.FileMode(0664), modTime: time.Unix(1683725691, 0)}
info := bindataFileInfo{name: "1683725607_mark_discord_messages_as_seen.up.sql", size: 108, mode: os.FileMode(0644), modTime: time.Unix(1683810836, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd7, 0x2a, 0xc3, 0x43, 0xea, 0x5e, 0x3, 0x2e, 0xce, 0x79, 0xea, 0xa5, 0x67, 0x61, 0x8c, 0xe4, 0xb9, 0xb7, 0x4d, 0xd5, 0xd5, 0xb0, 0x35, 0xc8, 0x2b, 0xa0, 0x3f, 0xd8, 0xde, 0xea, 0x4e, 0x16}}
return a, nil
}
@ -1912,7 +1933,7 @@ func readmeMd() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "README.md", size: 554, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "README.md", size: 554, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1c, 0x6e, 0xfb, 0xcc, 0x81, 0x94, 0x4d, 0x8c, 0xa0, 0x3b, 0x5, 0xb0, 0x18, 0xd6, 0xbb, 0xb3, 0x79, 0xc8, 0x8f, 0xff, 0xc1, 0x10, 0xf9, 0xf, 0x20, 0x1b, 0x4a, 0x74, 0x96, 0x42, 0xd7, 0xa8}}
return a, nil
}
@ -1932,7 +1953,7 @@ func docGo() (*asset, error) {
return nil, err
}
info := bindataFileInfo{name: "doc.go", size: 850, mode: os.FileMode(0664), modTime: time.Unix(1645777807, 0)}
info := bindataFileInfo{name: "doc.go", size: 850, mode: os.FileMode(0644), modTime: time.Unix(1645429416, 0)}
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa0, 0xcc, 0x41, 0xe1, 0x61, 0x12, 0x97, 0xe, 0x36, 0x8c, 0xa7, 0x9e, 0xe0, 0x6e, 0x59, 0x9e, 0xee, 0xd5, 0x4a, 0xcf, 0x1e, 0x60, 0xd6, 0xc3, 0x3a, 0xc9, 0x6c, 0xf2, 0x86, 0x5a, 0xb4, 0x1e}}
return a, nil
}
@ -2200,6 +2221,8 @@ var _bindata = map[string]func() (*asset, error){
"1682528339_add_index_user_messages_unseen.up.sql": _1682528339_add_index_user_messages_unseenUpSql,
"1683707289_recreate_deleted_for_mes.up.sql": _1683707289_recreate_deleted_for_mesUpSql,
"1683725607_mark_discord_messages_as_seen.up.sql": _1683725607_mark_discord_messages_as_seenUpSql,
"README.md": readmeMd,
@ -2334,6 +2357,7 @@ var _bintree = &bintree{nil, map[string]*bintree{
"1681655289_add_mute_till.up.sql": &bintree{_1681655289_add_mute_tillUpSql, map[string]*bintree{}},
"1681934966_add_index_response_to.up.sql": &bintree{_1681934966_add_index_response_toUpSql, map[string]*bintree{}},
"1682528339_add_index_user_messages_unseen.up.sql": &bintree{_1682528339_add_index_user_messages_unseenUpSql, map[string]*bintree{}},
"1683707289_recreate_deleted_for_mes.up.sql": &bintree{_1683707289_recreate_deleted_for_mesUpSql, map[string]*bintree{}},
"1683725607_mark_discord_messages_as_seen.up.sql": &bintree{_1683725607_mark_discord_messages_as_seenUpSql, map[string]*bintree{}},
"README.md": &bintree{readmeMd, map[string]*bintree{}},
"doc.go": &bintree{docGo, map[string]*bintree{}},

View File

@ -0,0 +1,11 @@
CREATE TABLE IF NOT EXISTS user_messages_deleted_for_mes_bk (
clock INTEGER NOT NULL,
message_id VARCHAR NOT NULL,
PRIMARY KEY (message_id)
);
INSERT OR REPLACE INTO user_messages_deleted_for_mes_bk SELECT clock, message_id FROM user_messages_deleted_for_mes;
DROP TABLE user_messages_deleted_for_mes;
ALTER TABLE user_messages_deleted_for_mes_bk RENAME TO user_messages_deleted_for_mes;

View File

@ -470,7 +470,6 @@ func (m *DeleteMessage) GetDeletedBy() string {
type DeleteForMeMessage struct {
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"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -515,13 +514,6 @@ func (m *DeleteForMeMessage) GetMessageId() string {
return ""
}
func (m *DeleteForMeMessage) GetChatId() string {
if m != nil {
return m.ChatId
}
return ""
}
type DiscordMessage struct {
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
@ -1104,86 +1096,86 @@ func init() {
}
var fileDescriptor_263952f55fd35689 = []byte{
// 1296 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x56, 0xcd, 0x6e, 0xdb, 0xc6,
0x13, 0xb7, 0xbe, 0xc5, 0xa1, 0x24, 0x13, 0x1b, 0x27, 0x61, 0x82, 0x38, 0x51, 0x84, 0x00, 0xf1,
0xe1, 0x0f, 0xfd, 0x81, 0x34, 0x2d, 0x02, 0xf4, 0x50, 0xd0, 0x12, 0xe3, 0xb0, 0xa9, 0x3e, 0xba,
0xa4, 0xd2, 0xba, 0x17, 0x62, 0x4d, 0x6e, 0x2c, 0xc2, 0x22, 0xa9, 0x92, 0xab, 0xb6, 0xea, 0xbd,
0x0f, 0xd2, 0x97, 0xe8, 0x0b, 0xf4, 0xd2, 0x43, 0xaf, 0x7d, 0x85, 0x3e, 0x41, 0x1f, 0xa0, 0xd8,
0xe5, 0x87, 0x48, 0x25, 0x76, 0x8a, 0x9c, 0xb8, 0x33, 0x9c, 0x99, 0x9d, 0xf9, 0xcd, 0xec, 0xcc,
0x00, 0x72, 0x96, 0x84, 0xd9, 0x3e, 0x8d, 0x63, 0x72, 0x49, 0x87, 0xeb, 0x28, 0x64, 0x21, 0x6a,
0x8b, 0xcf, 0xc5, 0xe6, 0xed, 0x7d, 0x99, 0x06, 0x1b, 0x3f, 0x4e, 0xd8, 0xf7, 0xbb, 0x4e, 0x18,
0x30, 0xe2, 0xb0, 0x84, 0x1c, 0xbc, 0x80, 0x9e, 0xc9, 0x3c, 0xe7, 0x8a, 0x46, 0x93, 0x44, 0x1b,
0x21, 0xa8, 0x2f, 0x49, 0xbc, 0x54, 0x2b, 0xfd, 0xca, 0x89, 0x84, 0xc5, 0x99, 0xf3, 0xd6, 0xc4,
0xb9, 0x52, 0xab, 0xfd, 0xca, 0x49, 0x03, 0x8b, 0xf3, 0xe0, 0x8f, 0x0a, 0x74, 0x0c, 0x9f, 0x5c,
0xd2, 0x4c, 0x51, 0x85, 0xd6, 0x9a, 0x6c, 0x57, 0x21, 0x71, 0x85, 0x6e, 0x07, 0x67, 0x24, 0x7a,
0x0a, 0x75, 0xb6, 0x5d, 0x53, 0xa1, 0xde, 0x7b, 0x76, 0x6b, 0x98, 0x79, 0x36, 0x14, 0xfa, 0xd6,
0x76, 0x4d, 0xb1, 0x10, 0x40, 0xf7, 0xa0, 0x4d, 0x56, 0x17, 0x1b, 0xdf, 0xf6, 0x5c, 0xb5, 0x26,
0xee, 0x6f, 0x09, 0xda, 0x70, 0xd1, 0x11, 0x34, 0x7e, 0xf4, 0x5c, 0xb6, 0x54, 0xeb, 0xfd, 0xca,
0x49, 0x17, 0x27, 0x04, 0xba, 0x03, 0xcd, 0x25, 0xf5, 0x2e, 0x97, 0x4c, 0x6d, 0x08, 0x76, 0x4a,
0xa1, 0xff, 0x01, 0x4a, 0x0d, 0xf1, 0x1b, 0x62, 0xdb, 0x09, 0x37, 0x01, 0x53, 0x9b, 0x42, 0x46,
0x49, 0x4c, 0x8a, 0x1f, 0x23, 0xce, 0x1f, 0xfc, 0x56, 0x81, 0x8e, 0xb6, 0x71, 0xbd, 0xf0, 0xc3,
0xa1, 0x3c, 0x2f, 0x85, 0xd2, 0xdf, 0x85, 0x52, 0xd4, 0x4f, 0x88, 0x42, 0x5c, 0x8f, 0x40, 0x76,
0x37, 0x11, 0x61, 0x5e, 0x18, 0xd8, 0x7e, 0x2c, 0x42, 0xab, 0x63, 0xc8, 0x58, 0x93, 0x78, 0xf0,
0x29, 0x48, 0xb9, 0x0e, 0xba, 0x03, 0x68, 0x31, 0x7d, 0x3d, 0x9d, 0x7d, 0x33, 0xb5, 0xb5, 0xc5,
0xd8, 0x98, 0xd9, 0xd6, 0xf9, 0x5c, 0x57, 0x0e, 0x50, 0x0b, 0x6a, 0x9a, 0x36, 0x52, 0x2a, 0xe2,
0x30, 0xc1, 0x4a, 0x75, 0xf0, 0x4b, 0x15, 0x64, 0xdd, 0xf5, 0x58, 0xe6, 0xf7, 0x11, 0x34, 0x9c,
0x55, 0xe8, 0x5c, 0x09, 0xaf, 0xeb, 0x38, 0x21, 0x78, 0xf6, 0x18, 0xfd, 0x89, 0x09, 0x9f, 0x25,
0x2c, 0xce, 0xe8, 0x2e, 0xb4, 0x44, 0xcd, 0xe4, 0x40, 0x37, 0x39, 0x69, 0xb8, 0xe8, 0x18, 0x20,
0xad, 0x23, 0xfe, 0xaf, 0x2e, 0xfe, 0x49, 0x29, 0x27, 0x49, 0xc3, 0x65, 0x44, 0x82, 0x04, 0xef,
0x0e, 0x4e, 0x08, 0xf4, 0x02, 0x3a, 0x99, 0x92, 0x40, 0xa7, 0x29, 0xd0, 0xb9, 0xbd, 0x43, 0x27,
0x75, 0x50, 0x40, 0x22, 0xfb, 0x3b, 0x02, 0x8d, 0xa1, 0xc3, 0x0b, 0x92, 0x06, 0x2c, 0xd1, 0x6c,
0x09, 0xcd, 0xc7, 0x3b, 0xcd, 0xd1, 0x92, 0x64, 0xe1, 0x0d, 0x47, 0x89, 0x64, 0x62, 0xc5, 0xd9,
0x11, 0x83, 0x3f, 0x2b, 0xd0, 0x1d, 0xd3, 0x15, 0x65, 0xf4, 0x66, 0x24, 0x0a, 0x51, 0x57, 0x6f,
0x88, 0xba, 0x76, 0x6d, 0xd4, 0xf5, 0x9b, 0xa2, 0x6e, 0xfc, 0xe7, 0xa8, 0x8f, 0x01, 0x5c, 0xe1,
0xae, 0x6b, 0x5f, 0x6c, 0x05, 0x5a, 0x12, 0x96, 0x52, 0xce, 0xe9, 0x76, 0x70, 0x01, 0x28, 0x89,
0xe6, 0x65, 0x18, 0x4d, 0x3e, 0x10, 0x52, 0xd9, 0xf3, 0xea, 0xbe, 0xe7, 0xd7, 0xe5, 0x79, 0xf0,
0x57, 0x15, 0x7a, 0x63, 0x2f, 0x76, 0xc2, 0xc8, 0xcd, 0x2e, 0xe8, 0x41, 0xd5, 0x73, 0xd3, 0x77,
0x5f, 0xf5, 0x5c, 0x51, 0x37, 0x59, 0xad, 0x4b, 0x69, 0x25, 0x3f, 0x00, 0x89, 0x79, 0x3e, 0x8d,
0x19, 0xf1, 0xd7, 0x19, 0x4e, 0x39, 0x03, 0x9d, 0xc0, 0x61, 0x4e, 0xf0, 0xba, 0xa4, 0x59, 0x05,
0xed, 0xb3, 0xf9, 0x0b, 0x4b, 0x13, 0x28, 0x60, 0x93, 0x70, 0x46, 0xa2, 0xcf, 0xa0, 0x49, 0x36,
0x6c, 0x19, 0x46, 0x02, 0x17, 0xf9, 0xd9, 0xc3, 0x1d, 0x9e, 0x65, 0x7f, 0x35, 0x21, 0x85, 0x53,
0x69, 0xf4, 0x05, 0x48, 0x11, 0x7d, 0x4b, 0x23, 0x1a, 0x38, 0x49, 0x19, 0xc9, 0xc5, 0x32, 0x2a,
0xab, 0xe2, 0x4c, 0x10, 0xef, 0x74, 0xd0, 0x18, 0x64, 0xc2, 0x18, 0x71, 0x96, 0x3e, 0x0d, 0x58,
0xac, 0xb6, 0xfb, 0xb5, 0x13, 0xf9, 0xd9, 0xe0, 0xda, 0xdb, 0x73, 0x51, 0x5c, 0x54, 0x1b, 0xfc,
0x5d, 0x81, 0xa3, 0xf7, 0xf9, 0xf9, 0x3e, 0x74, 0x03, 0xe2, 0xe7, 0xe8, 0xf2, 0x33, 0x7a, 0x02,
0x5d, 0xd7, 0x8b, 0x9d, 0xc8, 0xf3, 0xbd, 0x80, 0xb0, 0x30, 0x4a, 0x11, 0x2e, 0x33, 0xd1, 0x7d,
0x68, 0x07, 0x9e, 0x73, 0x25, 0xb4, 0x13, 0x78, 0x73, 0x9a, 0xe7, 0x87, 0xfc, 0x40, 0x18, 0x89,
0x16, 0xd1, 0x2a, 0x45, 0x76, 0xc7, 0x40, 0x43, 0x40, 0x09, 0x21, 0xba, 0xdf, 0x3c, 0x6d, 0x71,
0x4d, 0x51, 0xd4, 0xef, 0xf9, 0xc3, 0x6f, 0x5a, 0x85, 0x0e, 0x59, 0x71, 0x63, 0xad, 0xe4, 0xa6,
0x8c, 0x1e, 0x84, 0x70, 0xf7, 0x1a, 0x50, 0xb9, 0x13, 0x79, 0x05, 0xa6, 0x11, 0x17, 0x4a, 0xf2,
0x01, 0x48, 0xce, 0x92, 0x04, 0x01, 0x5d, 0x19, 0x79, 0xc1, 0xe6, 0x0c, 0x5e, 0x18, 0x97, 0x1b,
0x6f, 0xe5, 0x1a, 0xf9, 0x04, 0x48, 0xc9, 0xc1, 0x3f, 0x15, 0x50, 0xaf, 0xcb, 0xc1, 0x3b, 0xe8,
0x96, 0x5c, 0x78, 0xe7, 0x55, 0x28, 0x50, 0xdb, 0x44, 0xab, 0xf4, 0x02, 0x7e, 0xe4, 0x91, 0xbe,
0xf5, 0x56, 0x74, 0x5a, 0xc0, 0x34, 0xa3, 0x79, 0x56, 0xf8, 0xd9, 0xf4, 0x7e, 0xa6, 0xa7, 0x5b,
0x46, 0x63, 0x81, 0x6b, 0x1d, 0x97, 0x99, 0xa8, 0x0f, 0xc5, 0x96, 0x94, 0x3e, 0xea, 0x22, 0xab,
0x38, 0x55, 0x5a, 0xe5, 0xa9, 0x52, 0xc4, 0xb9, 0xbd, 0x87, 0xf3, 0xaf, 0x6d, 0x90, 0x0b, 0x4d,
0xf0, 0x9a, 0x36, 0x50, 0x7a, 0x97, 0x55, 0xf1, 0xa7, 0xf0, 0x2e, 0xb3, 0x09, 0x50, 0x2b, 0x4c,
0x80, 0x47, 0x20, 0x47, 0x34, 0x5e, 0x87, 0x41, 0x4c, 0x6d, 0x16, 0xa6, 0x41, 0x43, 0xc6, 0xb2,
0x42, 0x3e, 0x8c, 0x69, 0x10, 0xdb, 0xa2, 0xcc, 0xd2, 0x37, 0x4a, 0x83, 0x58, 0x20, 0x52, 0xe8,
0x2a, 0xcd, 0x52, 0x1f, 0xdd, 0x6f, 0x89, 0xad, 0x8f, 0x1e, 0x04, 0xed, 0x8f, 0x19, 0x04, 0xe8,
0x39, 0xb4, 0xe2, 0x64, 0x9d, 0x51, 0x25, 0xd1, 0x02, 0xd4, 0x9d, 0x81, 0xf2, 0x9e, 0xf3, 0xea,
0x00, 0x67, 0xa2, 0x68, 0x08, 0x0d, 0xb1, 0x27, 0xa8, 0x20, 0x74, 0xee, 0xec, 0x2d, 0x28, 0x3b,
0x8d, 0x44, 0x8c, 0xcb, 0x13, 0x3e, 0xad, 0x55, 0x79, 0x5f, 0xbe, 0xb8, 0x05, 0x70, 0x79, 0x21,
0x86, 0x1e, 0x82, 0xe4, 0x84, 0xbe, 0xbf, 0x09, 0x3c, 0xb6, 0x55, 0x3b, 0x3c, 0xf5, 0xaf, 0x0e,
0xf0, 0x8e, 0x85, 0x46, 0x70, 0xe8, 0x26, 0x85, 0x9d, 0xed, 0x70, 0xaa, 0xb3, 0xef, 0x7d, 0xb9,
0xf2, 0x5f, 0x1d, 0xe0, 0x9e, 0x5b, 0xee, 0xde, 0xf9, 0x8c, 0xea, 0x16, 0x67, 0xd4, 0x63, 0xe8,
0xb8, 0x5e, 0xbc, 0x5e, 0x91, 0x6d, 0x92, 0xc8, 0x5e, 0x52, 0x96, 0x29, 0x4f, 0x24, 0x73, 0x0d,
0xfd, 0x74, 0x27, 0xb4, 0x23, 0xfa, 0xfd, 0x86, 0xc6, 0xcc, 0x5e, 0x47, 0xe1, 0x9a, 0x5c, 0x12,
0x3e, 0x9f, 0x62, 0x46, 0x18, 0x55, 0x0f, 0x85, 0x3b, 0x4f, 0x0b, 0xd9, 0x48, 0x34, 0x70, 0xa2,
0x30, 0xcf, 0xe5, 0x4d, 0x2e, 0x8e, 0x8f, 0x9d, 0x9b, 0x7e, 0x0f, 0x7e, 0xaf, 0x82, 0x3c, 0x2a,
0x3d, 0x8c, 0xa3, 0x6c, 0xe1, 0x19, 0xcd, 0xa6, 0x96, 0x3e, 0xb5, 0xb2, 0x95, 0xa7, 0x07, 0x60,
0xe9, 0xdf, 0x5a, 0xf6, 0xfc, 0x2b, 0xcd, 0x98, 0x2a, 0x15, 0x24, 0x43, 0xcb, 0xb4, 0x8c, 0xd1,
0x6b, 0x1d, 0x2b, 0x55, 0x04, 0xd0, 0x34, 0x2d, 0xcd, 0x5a, 0x98, 0x4a, 0x0d, 0x49, 0xd0, 0xd0,
0x27, 0xb3, 0x2f, 0x0d, 0xa5, 0x8e, 0xee, 0xc2, 0x2d, 0x0b, 0x6b, 0x53, 0x53, 0x1b, 0x59, 0xc6,
0x8c, 0x5b, 0x9c, 0x4c, 0xb4, 0xe9, 0x58, 0x69, 0xa0, 0x13, 0x78, 0x62, 0x9e, 0x9b, 0x96, 0x3e,
0xb1, 0x27, 0xba, 0x69, 0x6a, 0x67, 0x7a, 0x7e, 0xdb, 0x1c, 0x1b, 0x6f, 0x34, 0x4b, 0xb7, 0xcf,
0xf0, 0x6c, 0x31, 0x57, 0x9a, 0xdc, 0x9a, 0x31, 0xd1, 0xce, 0x74, 0xa5, 0xc5, 0x8f, 0x62, 0x09,
0x53, 0xda, 0xa8, 0x0b, 0x12, 0x37, 0xb6, 0x98, 0x1a, 0xd6, 0xb9, 0x22, 0xf1, 0x35, 0x6d, 0xcf,
0xdc, 0x99, 0x36, 0x57, 0x00, 0xdd, 0x82, 0x43, 0x6e, 0x57, 0x1b, 0x59, 0x36, 0xd6, 0xbf, 0x5e,
0xe8, 0xa6, 0xa5, 0xc8, 0x9c, 0x39, 0x36, 0xcc, 0xd1, 0x0c, 0x8f, 0x33, 0x69, 0xa5, 0x83, 0xee,
0xc1, 0x6d, 0x63, 0xac, 0x4f, 0x2d, 0xc3, 0x3a, 0xb7, 0xdf, 0xe8, 0xd8, 0x78, 0x69, 0x8c, 0x34,
0xee, 0xb3, 0xd2, 0x45, 0x8f, 0xe1, 0x78, 0xcf, 0xf8, 0xdc, 0x98, 0x4e, 0xf5, 0x9d, 0x76, 0xef,
0x54, 0xca, 0xdb, 0xc9, 0x69, 0xf7, 0x3b, 0x79, 0xf8, 0xff, 0xcf, 0xb3, 0xe4, 0x5c, 0x34, 0xc5,
0xe9, 0x93, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xd8, 0x4c, 0x1a, 0x6e, 0x17, 0x0c, 0x00, 0x00,
// 1292 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x56, 0xcd, 0x92, 0xdb, 0x44,
0x10, 0x5e, 0xff, 0x5b, 0x2d, 0xdb, 0xab, 0x9a, 0x6c, 0x12, 0x25, 0x95, 0x4d, 0x1c, 0x57, 0xaa,
0xb2, 0x07, 0xca, 0x54, 0x85, 0x40, 0xa5, 0x8a, 0x03, 0xa5, 0xb5, 0x95, 0x8d, 0x08, 0xfe, 0x61,
0x24, 0x07, 0x96, 0x8b, 0x6a, 0x56, 0x9a, 0xac, 0x55, 0x6b, 0x49, 0x46, 0x1a, 0x03, 0xe6, 0xce,
0x83, 0xf0, 0x12, 0xbc, 0x00, 0x17, 0x0e, 0x5c, 0x79, 0x05, 0x9e, 0x80, 0x07, 0xa0, 0x66, 0xf4,
0x63, 0xc9, 0x64, 0x37, 0x54, 0x4e, 0x9a, 0x6e, 0xf5, 0xd7, 0xd3, 0xfd, 0x75, 0x4f, 0xcf, 0x00,
0x72, 0x96, 0x84, 0xd9, 0x3e, 0x8d, 0x63, 0x72, 0x49, 0x87, 0xeb, 0x28, 0x64, 0x21, 0x6a, 0x8b,
0xcf, 0xc5, 0xe6, 0xed, 0x7d, 0x99, 0x06, 0x1b, 0x3f, 0x4e, 0xd4, 0xf7, 0xbb, 0x4e, 0x18, 0x30,
0xe2, 0xb0, 0x44, 0x1c, 0xbc, 0x80, 0x9e, 0xc9, 0x3c, 0xe7, 0x8a, 0x46, 0x93, 0x04, 0x8d, 0x10,
0xd4, 0x97, 0x24, 0x5e, 0xaa, 0x95, 0x7e, 0xe5, 0x44, 0xc2, 0x62, 0xcd, 0x75, 0x6b, 0xe2, 0x5c,
0xa9, 0xd5, 0x7e, 0xe5, 0xa4, 0x81, 0xc5, 0x7a, 0xf0, 0x47, 0x05, 0x3a, 0x86, 0x4f, 0x2e, 0x69,
0x06, 0x54, 0xa1, 0xb5, 0x26, 0xdb, 0x55, 0x48, 0x5c, 0x81, 0xed, 0xe0, 0x4c, 0x44, 0x4f, 0xa1,
0xce, 0xb6, 0x6b, 0x2a, 0xe0, 0xbd, 0x67, 0xb7, 0x86, 0x59, 0x64, 0x43, 0x81, 0xb7, 0xb6, 0x6b,
0x8a, 0x85, 0x01, 0xba, 0x07, 0x6d, 0xb2, 0xba, 0xd8, 0xf8, 0xb6, 0xe7, 0xaa, 0x35, 0xb1, 0x7f,
0x4b, 0xc8, 0x86, 0x8b, 0x8e, 0xa0, 0xf1, 0xa3, 0xe7, 0xb2, 0xa5, 0x5a, 0xef, 0x57, 0x4e, 0xba,
0x38, 0x11, 0xd0, 0x1d, 0x68, 0x2e, 0xa9, 0x77, 0xb9, 0x64, 0x6a, 0x43, 0xa8, 0x53, 0x09, 0x7d,
0x04, 0x28, 0x75, 0xc4, 0x77, 0x88, 0x6d, 0x27, 0xdc, 0x04, 0x4c, 0x6d, 0x0a, 0x1b, 0x25, 0x71,
0x29, 0x7e, 0x8c, 0xb8, 0x7e, 0xf0, 0x5b, 0x05, 0x3a, 0xda, 0xc6, 0xf5, 0xc2, 0xf7, 0xa7, 0xf2,
0xbc, 0x94, 0x4a, 0x7f, 0x97, 0x4a, 0x11, 0x9f, 0x08, 0x85, 0xbc, 0x1e, 0x81, 0xec, 0x6e, 0x22,
0xc2, 0xbc, 0x30, 0xb0, 0xfd, 0x58, 0xa4, 0x56, 0xc7, 0x90, 0xa9, 0x26, 0xf1, 0xe0, 0x53, 0x90,
0x72, 0x0c, 0xba, 0x03, 0x68, 0x31, 0x7d, 0x3d, 0x9d, 0x7d, 0x33, 0xb5, 0xb5, 0xc5, 0xd8, 0x98,
0xd9, 0xd6, 0xf9, 0x5c, 0x57, 0x0e, 0x50, 0x0b, 0x6a, 0x9a, 0x36, 0x52, 0x2a, 0x62, 0x31, 0xc1,
0x4a, 0x75, 0xf0, 0x4b, 0x15, 0x64, 0xdd, 0xf5, 0x58, 0x16, 0xf7, 0x11, 0x34, 0x9c, 0x55, 0xe8,
0x5c, 0x89, 0xa8, 0xeb, 0x38, 0x11, 0x78, 0xf5, 0x18, 0xfd, 0x89, 0x89, 0x98, 0x25, 0x2c, 0xd6,
0xe8, 0x2e, 0xb4, 0x44, 0xcf, 0xe4, 0x44, 0x37, 0xb9, 0x68, 0xb8, 0xe8, 0x18, 0x20, 0xed, 0x23,
0xfe, 0xaf, 0x2e, 0xfe, 0x49, 0xa9, 0x26, 0x29, 0xc3, 0x65, 0x44, 0x82, 0x84, 0xef, 0x0e, 0x4e,
0x04, 0xf4, 0x02, 0x3a, 0x19, 0x48, 0xb0, 0xd3, 0x14, 0xec, 0xdc, 0xde, 0xb1, 0x93, 0x06, 0x28,
0x28, 0x91, 0xfd, 0x9d, 0x80, 0xc6, 0xd0, 0xe1, 0x0d, 0x49, 0x03, 0x96, 0x20, 0x5b, 0x02, 0xf9,
0x78, 0x87, 0x1c, 0x2d, 0x49, 0x96, 0xde, 0x70, 0x94, 0x58, 0x26, 0x5e, 0x9c, 0x9d, 0x30, 0xf8,
0xb3, 0x02, 0xdd, 0x31, 0x5d, 0x51, 0x46, 0x6f, 0x66, 0xa2, 0x90, 0x75, 0xf5, 0x86, 0xac, 0x6b,
0xd7, 0x66, 0x5d, 0xbf, 0x29, 0xeb, 0xc6, 0xff, 0xce, 0xfa, 0x18, 0xc0, 0x15, 0xe1, 0xba, 0xf6,
0xc5, 0x56, 0xb0, 0x25, 0x61, 0x29, 0xd5, 0x9c, 0x6e, 0x07, 0x06, 0xa0, 0x24, 0x9b, 0x97, 0x61,
0x34, 0x79, 0x4f, 0x4a, 0xe5, 0xc8, 0xab, 0x7b, 0x91, 0x0f, 0xfe, 0xaa, 0x42, 0x6f, 0xec, 0xc5,
0x4e, 0x18, 0xb9, 0x99, 0x9f, 0x1e, 0x54, 0x3d, 0x37, 0x3d, 0xde, 0x55, 0xcf, 0x15, 0xed, 0x91,
0xb5, 0xb4, 0x94, 0x36, 0xec, 0x03, 0x90, 0x98, 0xe7, 0xd3, 0x98, 0x11, 0x7f, 0x9d, 0xd1, 0x91,
0x2b, 0xd0, 0x09, 0x1c, 0xe6, 0x02, 0x6f, 0x3f, 0x9a, 0x35, 0xca, 0xbe, 0x9a, 0x1f, 0xa4, 0xb4,
0x4e, 0x82, 0x1d, 0x09, 0x67, 0x22, 0xfa, 0x0c, 0x9a, 0x64, 0xc3, 0x96, 0x61, 0x24, 0xd2, 0x97,
0x9f, 0x3d, 0xdc, 0xd1, 0x56, 0x8e, 0x57, 0x13, 0x56, 0x38, 0xb5, 0x46, 0x5f, 0x80, 0x14, 0xd1,
0xb7, 0x34, 0xa2, 0x81, 0x93, 0x74, 0x8b, 0x5c, 0xec, 0x96, 0x32, 0x14, 0x67, 0x86, 0x78, 0x87,
0x41, 0x63, 0x90, 0x09, 0x63, 0xc4, 0x59, 0xfa, 0x34, 0x60, 0xb1, 0xda, 0xee, 0xd7, 0x4e, 0xe4,
0x67, 0x83, 0x6b, 0x77, 0xcf, 0x4d, 0x71, 0x11, 0x36, 0xf8, 0xbb, 0x02, 0x47, 0xef, 0x8a, 0xf3,
0x5d, 0xec, 0x06, 0xc4, 0xcf, 0xd9, 0xe5, 0x6b, 0xf4, 0x04, 0xba, 0xae, 0x17, 0x3b, 0x91, 0xe7,
0x7b, 0x01, 0x61, 0x61, 0x94, 0x32, 0x5c, 0x56, 0xa2, 0xfb, 0xd0, 0x0e, 0x3c, 0xe7, 0x4a, 0xa0,
0x13, 0x7a, 0x73, 0x99, 0xd7, 0x87, 0xfc, 0x40, 0x18, 0x89, 0x16, 0xd1, 0x2a, 0x65, 0x76, 0xa7,
0x40, 0x43, 0x40, 0x89, 0x20, 0x86, 0xdc, 0x3c, 0x9d, 0x64, 0x4d, 0xd1, 0xbb, 0xef, 0xf8, 0xc3,
0x77, 0x5a, 0x85, 0x0e, 0x59, 0x71, 0x67, 0xad, 0x64, 0xa7, 0x4c, 0x1e, 0x84, 0x70, 0xf7, 0x1a,
0x52, 0x79, 0x10, 0x79, 0xa3, 0xa5, 0x19, 0x17, 0xce, 0xcc, 0x03, 0x90, 0x9c, 0x25, 0x09, 0x02,
0xba, 0x32, 0xf2, 0xbe, 0xcc, 0x15, 0xbc, 0x31, 0x2e, 0x37, 0xde, 0xca, 0x35, 0xf2, 0x41, 0x9f,
0x8a, 0x83, 0x7f, 0x2a, 0xa0, 0x5e, 0x57, 0x83, 0xff, 0xb0, 0x5b, 0x0a, 0x61, 0xbf, 0xf9, 0x91,
0x02, 0xb5, 0x4d, 0xb4, 0x4a, 0x37, 0xe0, 0x4b, 0x9e, 0xe9, 0x5b, 0x6f, 0x45, 0xa7, 0x05, 0x4e,
0x33, 0x99, 0x57, 0x85, 0xaf, 0x4d, 0xef, 0x67, 0x7a, 0xba, 0x65, 0x34, 0x16, 0xbc, 0xd6, 0x71,
0x59, 0x89, 0xfa, 0x50, 0x9c, 0x3c, 0xe9, 0xd9, 0x2d, 0xaa, 0x8a, 0x97, 0x47, 0xab, 0x7c, 0x79,
0x14, 0x79, 0x6e, 0xef, 0xf1, 0xfc, 0x6b, 0x1b, 0xe4, 0xc2, 0xac, 0xbb, 0xe6, 0xb4, 0x97, 0xce,
0x65, 0x55, 0xfc, 0x29, 0x9c, 0xcb, 0x6c, 0xd0, 0xd7, 0x0a, 0x83, 0xfe, 0x11, 0xc8, 0x11, 0x8d,
0xd7, 0x61, 0x10, 0x53, 0x9b, 0x85, 0x69, 0xd2, 0x90, 0xa9, 0xac, 0x90, 0xdf, 0xb9, 0x34, 0x88,
0x6d, 0xd1, 0x66, 0xe9, 0x19, 0xa5, 0x41, 0x2c, 0x18, 0x29, 0x8c, 0xcb, 0x66, 0x69, 0x5c, 0xee,
0x4f, 0xbe, 0xd6, 0x07, 0xcf, 0xfb, 0xf6, 0x87, 0xcc, 0x7b, 0xf4, 0x1c, 0x5a, 0x71, 0xf2, 0x6a,
0x51, 0x25, 0x31, 0x02, 0xd4, 0x9d, 0x83, 0xf2, 0x73, 0xe6, 0xd5, 0x01, 0xce, 0x4c, 0xd1, 0x10,
0x1a, 0xe2, 0x39, 0xa0, 0x82, 0xc0, 0xdc, 0xd9, 0x7b, 0x87, 0xec, 0x10, 0x89, 0x19, 0xb7, 0x27,
0xfc, 0x52, 0x56, 0xe5, 0x7d, 0xfb, 0xe2, 0x65, 0xcf, 0xed, 0x85, 0x19, 0x7a, 0x08, 0x92, 0x13,
0xfa, 0xfe, 0x26, 0xf0, 0xd8, 0x56, 0xed, 0xf0, 0xd2, 0xbf, 0x3a, 0xc0, 0x3b, 0x15, 0x1a, 0xc1,
0xa1, 0x9b, 0x34, 0x76, 0xf6, 0x54, 0x53, 0x9d, 0xfd, 0xe8, 0xcb, 0x9d, 0xff, 0xea, 0x00, 0xf7,
0xdc, 0xf2, 0xf4, 0xce, 0xaf, 0xa2, 0x6e, 0xf1, 0x2a, 0x7a, 0x0c, 0x1d, 0xd7, 0x8b, 0xd7, 0x2b,
0xb2, 0x4d, 0x0a, 0xd9, 0x4b, 0xda, 0x32, 0xd5, 0x89, 0x62, 0xae, 0xa1, 0x9f, 0x3e, 0xfd, 0xec,
0x88, 0x7e, 0xbf, 0xa1, 0x31, 0xb3, 0xd7, 0x51, 0xb8, 0x26, 0x97, 0x84, 0x5f, 0x43, 0x31, 0x23,
0x8c, 0xaa, 0x87, 0x22, 0x9c, 0xa7, 0x85, 0x6a, 0x24, 0x08, 0x9c, 0x00, 0xe6, 0xb9, 0xbd, 0xc9,
0xcd, 0xf1, 0xb1, 0x73, 0xd3, 0xef, 0xc1, 0xef, 0x55, 0x90, 0x47, 0xa5, 0x83, 0x71, 0x94, 0xbd,
0x6b, 0x46, 0xb3, 0xa9, 0xa5, 0x4f, 0xad, 0xec, 0x65, 0xd3, 0x03, 0xb0, 0xf4, 0x6f, 0x2d, 0x7b,
0xfe, 0x95, 0x66, 0x4c, 0x95, 0x0a, 0x92, 0xa1, 0x65, 0x5a, 0xc6, 0xe8, 0xb5, 0x8e, 0x95, 0x2a,
0x02, 0x68, 0x9a, 0x96, 0x66, 0x2d, 0x4c, 0xa5, 0x86, 0x24, 0x68, 0xe8, 0x93, 0xd9, 0x97, 0x86,
0x52, 0x47, 0x77, 0xe1, 0x96, 0x85, 0xb5, 0xa9, 0xa9, 0x8d, 0x2c, 0x63, 0xc6, 0x3d, 0x4e, 0x26,
0xda, 0x74, 0xac, 0x34, 0xd0, 0x09, 0x3c, 0x31, 0xcf, 0x4d, 0x4b, 0x9f, 0xd8, 0x13, 0xdd, 0x34,
0xb5, 0x33, 0x3d, 0xdf, 0x6d, 0x8e, 0x8d, 0x37, 0x9a, 0xa5, 0xdb, 0x67, 0x78, 0xb6, 0x98, 0x2b,
0x4d, 0xee, 0xcd, 0x98, 0x68, 0x67, 0xba, 0xd2, 0xe2, 0x4b, 0xf1, 0xd6, 0x52, 0xda, 0xa8, 0x0b,
0x12, 0x77, 0xb6, 0x98, 0x1a, 0xd6, 0xb9, 0x22, 0xf1, 0xd7, 0xd8, 0x9e, 0xbb, 0x33, 0x6d, 0xae,
0x00, 0xba, 0x05, 0x87, 0xdc, 0xaf, 0x36, 0xb2, 0x6c, 0xac, 0x7f, 0xbd, 0xd0, 0x4d, 0x4b, 0x91,
0xb9, 0x72, 0x6c, 0x98, 0xa3, 0x19, 0x1e, 0x67, 0xd6, 0x4a, 0x07, 0xdd, 0x83, 0xdb, 0xc6, 0x58,
0x9f, 0x5a, 0x86, 0x75, 0x6e, 0xbf, 0xd1, 0xb1, 0xf1, 0xd2, 0x18, 0x69, 0x3c, 0x66, 0xa5, 0x8b,
0x1e, 0xc3, 0xf1, 0x9e, 0xf3, 0xb9, 0x31, 0x9d, 0xea, 0x3b, 0x74, 0xef, 0x54, 0xca, 0xc7, 0xc9,
0x69, 0xf7, 0x3b, 0x79, 0xf8, 0xf1, 0xe7, 0x59, 0x71, 0x2e, 0x9a, 0x62, 0xf5, 0xc9, 0xbf, 0x01,
0x00, 0x00, 0xff, 0xff, 0x6a, 0xfa, 0x3a, 0x08, 0xfe, 0x0b, 0x00, 0x00,
}

View File

@ -66,7 +66,6 @@ message DeleteMessage {
message DeleteForMeMessage {
uint64 clock = 1;
string message_id = 2;
string chat_id = 3;
}
message DiscordMessage {

View File

@ -5,8 +5,7 @@ import (
"encoding/json"
"path/filepath"
"testing"
"github.com/status-im/status-go/protocol/identity"
"time"
"github.com/google/uuid"
"github.com/stretchr/testify/require"
@ -19,7 +18,12 @@ import (
"github.com/status-im/status-go/multiaccounts/accounts"
"github.com/status-im/status-go/multiaccounts/settings"
"github.com/status-im/status-go/params"
"github.com/status-im/status-go/protocol"
"github.com/status-im/status-go/protocol/common"
"github.com/status-im/status-go/protocol/identity"
"github.com/status-im/status-go/protocol/identity/alias"
"github.com/status-im/status-go/protocol/protobuf"
"github.com/status-im/status-go/protocol/requests"
"github.com/status-im/status-go/services/browsers"
"github.com/status-im/status-go/sqlite"
)
@ -33,6 +37,7 @@ const (
socialLinkURL = "https://github.com/status-im"
ensUsername = "bob.stateofus.eth"
ensChainID = 1
publicChatID = "localpairtest"
)
var paths = []string{pathWalletRoot, pathEIP1581, pathDefaultChat, pathDefaultWallet}
@ -124,6 +129,7 @@ func (s *SyncDeviceSuite) TestPairingSyncDeviceClientAsSender() {
require.NoError(s.T(), serverBackend.Logout())
require.NoError(s.T(), clientBackend.Logout())
}()
ctx := context.TODO()
err := serverBackend.AccountManager().InitKeystore(filepath.Join(serverTmpDir, keystoreDir))
require.NoError(s.T(), err)
@ -150,15 +156,18 @@ func (s *SyncDeviceSuite) TestPairingSyncDeviceClientAsSender() {
require.NoError(s.T(), err)
// generate some data for the client
// generate bookmark
clientBrowserAPI := clientBackend.StatusNode().BrowserService().APIs()[0].Service.(*browsers.API)
_, err = clientBrowserAPI.StoreBookmark(context.TODO(), browsers.Bookmark{
_, err = clientBrowserAPI.StoreBookmark(ctx, browsers.Bookmark{
Name: "status.im",
URL: "https://status.im",
})
require.NoError(s.T(), err)
// generate social link
err = clientBackend.Messenger().SetSocialLinks(&identity.SocialLinks{{Text: identity.GithubID, URL: socialLinkURL, Clock: 1}})
require.NoError(s.T(), err)
err = clientBackend.StatusNode().EnsService().API().Add(context.Background(), ensChainID, ensUsername)
// generate ens username
err = clientBackend.StatusNode().EnsService().API().Add(ctx, ensChainID, ensUsername)
require.NoError(s.T(), err)
clientActiveAccount, err := clientBackend.GetActiveAccount()
@ -180,14 +189,14 @@ func (s *SyncDeviceSuite) TestPairingSyncDeviceClientAsSender() {
// check that the server has the same data as the client
serverBrowserAPI := serverBackend.StatusNode().BrowserService().APIs()[0].Service.(*browsers.API)
bookmarks, err := serverBrowserAPI.GetBookmarks(context.TODO())
bookmarks, err := serverBrowserAPI.GetBookmarks(ctx)
require.NoError(s.T(), err)
require.Equal(s.T(), 1, len(bookmarks))
require.Equal(s.T(), "status.im", bookmarks[0].Name)
serverSocialLink, err := serverBackend.Messenger().GetSocialLink(identity.GithubID)
require.NoError(s.T(), err)
require.Equal(s.T(), socialLinkURL, serverSocialLink.URL)
uds, err := serverBackend.StatusNode().EnsService().API().GetEnsUsernames(context.Background())
uds, err := serverBackend.StatusNode().EnsService().API().GetEnsUsernames(ctx)
require.NoError(s.T(), err)
require.Equal(s.T(), 1, len(uds))
require.Equal(s.T(), ensUsername, uds[0].Username)
@ -233,6 +242,7 @@ func (s *SyncDeviceSuite) TestPairingSyncDeviceClientAsSender() {
func (s *SyncDeviceSuite) TestPairingSyncDeviceClientAsReceiver() {
clientTmpDir := filepath.Join(s.clientAsReceiverTmpdir, "client")
clientBackend := s.prepareBackendWithoutAccount(clientTmpDir)
ctx := context.TODO()
serverTmpDir := filepath.Join(s.clientAsReceiverTmpdir, "server")
serverBackend := s.prepareBackendWithAccount(serverTmpDir)
@ -259,15 +269,33 @@ func (s *SyncDeviceSuite) TestPairingSyncDeviceClientAsReceiver() {
require.NoError(s.T(), err)
// generate some data for the server
// generate bookmark
serverBrowserAPI := serverBackend.StatusNode().BrowserService().APIs()[0].Service.(*browsers.API)
_, err = serverBrowserAPI.StoreBookmark(context.TODO(), browsers.Bookmark{
_, err = serverBrowserAPI.StoreBookmark(ctx, browsers.Bookmark{
Name: "status.im",
URL: "https://status.im",
})
require.NoError(s.T(), err)
err = serverBackend.Messenger().SetSocialLinks(&identity.SocialLinks{{Text: identity.GithubID, URL: socialLinkURL, Clock: 1}})
// generate social link
serverMessenger := serverBackend.Messenger()
err = serverMessenger.SetSocialLinks(&identity.SocialLinks{{Text: identity.GithubID, URL: socialLinkURL, Clock: 1}})
require.NoError(s.T(), err)
err = serverBackend.StatusNode().EnsService().API().Add(context.Background(), ensChainID, ensUsername)
// generate ens username
err = serverBackend.StatusNode().EnsService().API().Add(ctx, ensChainID, ensUsername)
require.NoError(s.T(), err)
// generate local deleted message
_, err = serverMessenger.CreatePublicChat(&requests.CreatePublicChat{ID: publicChatID})
require.NoError(s.T(), err)
serverChat := serverMessenger.Chat(publicChatID)
serverMessage := buildTestMessage(serverChat)
serverMessengerResponse, err := serverMessenger.SendChatMessage(ctx, serverMessage)
require.NoError(s.T(), err)
require.Equal(s.T(), 1, len(serverMessengerResponse.Messages()))
serverMessageID := serverMessengerResponse.Messages()[0].ID
_, err = serverMessenger.DeleteMessageForMeAndSync(ctx, publicChatID, serverMessageID)
require.NoError(s.T(), err)
err = clientBackend.AccountManager().InitKeystore(filepath.Join(clientTmpDir, keystoreDir))
@ -295,27 +323,29 @@ func (s *SyncDeviceSuite) TestPairingSyncDeviceClientAsReceiver() {
require.NoError(s.T(), err)
// check that the client has the same data as the server
clientMessenger := clientBackend.Messenger()
clientBrowserAPI := clientBackend.StatusNode().BrowserService().APIs()[0].Service.(*browsers.API)
bookmarks, err := clientBrowserAPI.GetBookmarks(context.TODO())
bookmarks, err := clientBrowserAPI.GetBookmarks(ctx)
require.NoError(s.T(), err)
require.Equal(s.T(), 1, len(bookmarks))
require.Equal(s.T(), "status.im", bookmarks[0].Name)
clientSocialLink, err := clientBackend.Messenger().GetSocialLink(identity.GithubID)
clientSocialLink, err := clientMessenger.GetSocialLink(identity.GithubID)
require.NoError(s.T(), err)
require.Equal(s.T(), socialLinkURL, clientSocialLink.URL)
uds, err := clientBackend.StatusNode().EnsService().API().GetEnsUsernames(context.Background())
uds, err := clientBackend.StatusNode().EnsService().API().GetEnsUsernames(ctx)
require.NoError(s.T(), err)
require.Equal(s.T(), 1, len(uds))
require.Equal(s.T(), ensUsername, uds[0].Username)
require.Equal(s.T(), uint64(ensChainID), uds[0].ChainID)
deleteForMeMessages, err := clientMessenger.GetDeleteForMeMessages()
require.NoError(s.T(), err)
require.Equal(s.T(), 1, len(deleteForMeMessages))
clientActiveAccount, err := clientBackend.GetActiveAccount()
require.NoError(s.T(), err)
require.Equal(s.T(), serverActiveAccount.Name, clientActiveAccount.Name)
require.Equal(s.T(), clientActiveAccount.KDFIterations, expectedKDFIterations)
serverMessenger := serverBackend.Messenger()
clientMessenger := clientBackend.Messenger()
require.True(s.T(), serverMessenger.HasPairedDevices())
require.True(s.T(), clientMessenger.HasPairedDevices())
@ -438,3 +468,31 @@ func defaultNodeConfig(installationID, keyUID string) (*params.NodeConfig, error
return nodeConfig, nil
}
type testTimeSource struct{}
func (t *testTimeSource) GetCurrentTime() uint64 {
return uint64(time.Now().Unix())
}
func buildTestMessage(chat *protocol.Chat) *common.Message {
clock, timestamp := chat.NextClockAndTimestamp(&testTimeSource{})
message := &common.Message{}
message.Text = "text-input-message"
message.ChatId = chat.ID
message.Clock = clock
message.Timestamp = timestamp
message.WhisperTimestamp = clock
message.LocalChatID = chat.ID
message.ContentType = protobuf.ChatMessage_TEXT_PLAIN
switch chat.ChatType {
case protocol.ChatTypePublic, protocol.ChatTypeProfile:
message.MessageType = protobuf.MessageType_PUBLIC_GROUP
case protocol.ChatTypeOneToOne:
message.MessageType = protobuf.MessageType_ONE_TO_ONE
case protocol.ChatTypePrivateGroupChat:
message.MessageType = protobuf.MessageType_PRIVATE_GROUP
}
return message
}