Delete messages (#2279)
* feat: add api and handling to delete messages * fix(delete): add whitelist to message types that can be deleted
This commit is contained in:
parent
7343b1b50c
commit
cdc7c55030
|
@ -1,53 +1,53 @@
|
|||
// Code generated by go-bindata.
|
||||
// Code generated by go-bindata. DO NOT EDIT.
|
||||
// sources:
|
||||
// 0001_app.down.sql
|
||||
// 0001_app.up.sql
|
||||
// 0002_tokens.down.sql
|
||||
// 0002_tokens.up.sql
|
||||
// 0003_settings.down.sql
|
||||
// 0003_settings.up.sql
|
||||
// 0004_pending_stickers.down.sql
|
||||
// 0004_pending_stickers.up.sql
|
||||
// 0005_waku_mode.down.sql
|
||||
// 0005_waku_mode.up.sql
|
||||
// 0006_appearance.up.sql
|
||||
// 0007_enable_waku_default.up.sql
|
||||
// 0008_add_push_notifications.up.sql
|
||||
// 0009_enable_sending_push_notifications.down.sql
|
||||
// 0009_enable_sending_push_notifications.up.sql
|
||||
// 0010_add_block_mentions.down.sql
|
||||
// 0010_add_block_mentions.up.sql
|
||||
// 0011_allow_webview_permission_requests.down.sql
|
||||
// 0011_allow_webview_permission_requests.up.sql
|
||||
// 0012_pending_transactions.down.sql
|
||||
// 0012_pending_transactions.up.sql
|
||||
// 0013_favourites.down.sql
|
||||
// 0013_favourites.up.sql
|
||||
// 0014_add_use_mailservers.down.sql
|
||||
// 0014_add_use_mailservers.up.sql
|
||||
// 0015_link_previews.down.sql
|
||||
// 0015_link_previews.up.sql
|
||||
// 0016_local_notifications_preferences.down.sql
|
||||
// 0016_local_notifications_preferences.up.sql
|
||||
// 0017_bookmarks.down.sql
|
||||
// 0017_bookmarks.up.sql
|
||||
// 0018_profile_pictures_visibility.up.sql
|
||||
// 0019_blocks_ranges_extra_data.up.sql
|
||||
// 0020_metrics.up.sql
|
||||
// 0021_add_session_id_to_metrics.up.sql
|
||||
// 0022_pending_transfers.up.sql
|
||||
// 1618237885_settings_anon_metrics_should_send.up.sql
|
||||
// 1618395756_contacts_only.up.sql
|
||||
// 1622184614_add_default_sync_period.up.sql
|
||||
// 1625872445_user_status.up.sql
|
||||
// doc.go
|
||||
// DO NOT EDIT!
|
||||
// 0001_app.down.sql (356B)
|
||||
// 0001_app.up.sql (2.967kB)
|
||||
// 0002_tokens.down.sql (19B)
|
||||
// 0002_tokens.up.sql (248B)
|
||||
// 0003_settings.down.sql (118B)
|
||||
// 0003_settings.up.sql (1.311kB)
|
||||
// 0004_pending_stickers.down.sql (0)
|
||||
// 0004_pending_stickers.up.sql (61B)
|
||||
// 0005_waku_mode.down.sql (0)
|
||||
// 0005_waku_mode.up.sql (146B)
|
||||
// 0006_appearance.up.sql (67B)
|
||||
// 0007_enable_waku_default.up.sql (38B)
|
||||
// 0008_add_push_notifications.up.sql (349B)
|
||||
// 0009_enable_sending_push_notifications.down.sql (49B)
|
||||
// 0009_enable_sending_push_notifications.up.sql (49B)
|
||||
// 0010_add_block_mentions.down.sql (83B)
|
||||
// 0010_add_block_mentions.up.sql (89B)
|
||||
// 0011_allow_webview_permission_requests.down.sql (0)
|
||||
// 0011_allow_webview_permission_requests.up.sql (88B)
|
||||
// 0012_pending_transactions.down.sql (33B)
|
||||
// 0012_pending_transactions.up.sql (321B)
|
||||
// 0013_favourites.down.sql (23B)
|
||||
// 0013_favourites.up.sql (132B)
|
||||
// 0014_add_use_mailservers.down.sql (0)
|
||||
// 0014_add_use_mailservers.up.sql (111B)
|
||||
// 0015_link_previews.down.sql (0)
|
||||
// 0015_link_previews.up.sql (203B)
|
||||
// 0016_local_notifications_preferences.down.sql (43B)
|
||||
// 0016_local_notifications_preferences.up.sql (204B)
|
||||
// 0017_bookmarks.down.sql (22B)
|
||||
// 0017_bookmarks.up.sql (147B)
|
||||
// 0018_profile_pictures_visibility.up.sql (84B)
|
||||
// 0019_blocks_ranges_extra_data.up.sql (89B)
|
||||
// 0020_metrics.up.sql (235B)
|
||||
// 0021_add_session_id_to_metrics.up.sql (55B)
|
||||
// 0022_pending_transfers.up.sql (706B)
|
||||
// 1618237885_settings_anon_metrics_should_send.up.sql (80B)
|
||||
// 1618395756_contacts_only.up.sql (136B)
|
||||
// 1622184614_add_default_sync_period.up.sql (125B)
|
||||
// 1625872445_user_status.up.sql (351B)
|
||||
// doc.go (74B)
|
||||
|
||||
package migrations
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"compress/gzip"
|
||||
"crypto/sha256"
|
||||
"fmt"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
|
@ -60,7 +60,7 @@ import (
|
|||
func bindataRead(data []byte, name string) ([]byte, error) {
|
||||
gz, err := gzip.NewReader(bytes.NewBuffer(data))
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("Read %q: %v", name, err)
|
||||
return nil, fmt.Errorf("read %q: %v", name, err)
|
||||
}
|
||||
|
||||
var buf bytes.Buffer
|
||||
|
@ -68,7 +68,7 @@ func bindataRead(data []byte, name string) ([]byte, error) {
|
|||
clErr := gz.Close()
|
||||
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("Read %q: %v", name, err)
|
||||
return nil, fmt.Errorf("read %q: %v", name, err)
|
||||
}
|
||||
if clErr != nil {
|
||||
return nil, err
|
||||
|
@ -78,8 +78,9 @@ func bindataRead(data []byte, name string) ([]byte, error) {
|
|||
}
|
||||
|
||||
type asset struct {
|
||||
bytes []byte
|
||||
info os.FileInfo
|
||||
bytes []byte
|
||||
info os.FileInfo
|
||||
digest [sha256.Size]byte
|
||||
}
|
||||
|
||||
type bindataFileInfo struct {
|
||||
|
@ -123,8 +124,8 @@ func _0001_appDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0001_app.down.sql", size: 356, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0001_app.down.sql", size: 356, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xb5, 0x25, 0xa0, 0xf8, 0x7d, 0x2d, 0xd, 0xcf, 0x18, 0xe4, 0x73, 0xc3, 0x95, 0xf5, 0x24, 0x20, 0xa9, 0xe6, 0x9e, 0x1d, 0x93, 0xe5, 0xc5, 0xad, 0x93, 0x8f, 0x5e, 0x40, 0xb5, 0x30, 0xaa, 0x25}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -143,8 +144,8 @@ func _0001_appUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0001_app.up.sql", size: 2967, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0001_app.up.sql", size: 2967, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf7, 0x3a, 0xa7, 0xf2, 0x8f, 0xfa, 0x82, 0x7c, 0xc5, 0x49, 0xac, 0xac, 0xf, 0xc, 0x77, 0xe2, 0xba, 0xe8, 0x4d, 0xe, 0x6f, 0x5d, 0x2c, 0x2c, 0x18, 0x80, 0xc2, 0x1d, 0xe, 0x25, 0xe, 0x18}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -163,8 +164,8 @@ func _0002_tokensDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0002_tokens.down.sql", size: 19, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0002_tokens.down.sql", size: 19, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd1, 0x31, 0x2, 0xcc, 0x2f, 0x38, 0x90, 0xf7, 0x58, 0x37, 0x47, 0xf4, 0x18, 0xf7, 0x72, 0x74, 0x67, 0x14, 0x7e, 0xf3, 0xb1, 0xd6, 0x5f, 0xb0, 0xd5, 0xe7, 0x91, 0xf4, 0x26, 0x77, 0x8e, 0x68}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -183,8 +184,8 @@ func _0002_tokensUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0002_tokens.up.sql", size: 248, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0002_tokens.up.sql", size: 248, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xcc, 0xd6, 0xde, 0xd3, 0x7b, 0xee, 0x92, 0x11, 0x38, 0xa4, 0xeb, 0x84, 0xca, 0xcb, 0x37, 0x75, 0x5, 0x77, 0x7f, 0x14, 0x39, 0xee, 0xa1, 0x8b, 0xd4, 0x5c, 0x6e, 0x55, 0x6, 0x50, 0x16, 0xd4}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -203,8 +204,8 @@ func _0003_settingsDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0003_settings.down.sql", size: 118, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0003_settings.down.sql", size: 118, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe5, 0xa6, 0xf5, 0xc0, 0x60, 0x64, 0x77, 0xe2, 0xe7, 0x3c, 0x9b, 0xb1, 0x52, 0xa9, 0x95, 0x16, 0xf8, 0x60, 0x2f, 0xa5, 0xeb, 0x46, 0xb9, 0xb9, 0x8f, 0x4c, 0xf4, 0xfd, 0xbb, 0xe7, 0xe5, 0xe5}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -223,8 +224,8 @@ func _0003_settingsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0003_settings.up.sql", size: 1311, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0003_settings.up.sql", size: 1311, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xea, 0x35, 0x0, 0xeb, 0xe2, 0x33, 0x68, 0xb9, 0xf4, 0xf6, 0x8e, 0x9e, 0x10, 0xe9, 0x58, 0x68, 0x28, 0xb, 0xcd, 0xec, 0x74, 0x71, 0xa7, 0x9a, 0x5a, 0x77, 0x59, 0xb1, 0x13, 0x1c, 0xa1, 0x5b}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -243,8 +244,8 @@ func _0004_pending_stickersDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0004_pending_stickers.down.sql", size: 0, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0004_pending_stickers.down.sql", size: 0, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe3, 0xb0, 0xc4, 0x42, 0x98, 0xfc, 0x1c, 0x14, 0x9a, 0xfb, 0xf4, 0xc8, 0x99, 0x6f, 0xb9, 0x24, 0x27, 0xae, 0x41, 0xe4, 0x64, 0x9b, 0x93, 0x4c, 0xa4, 0x95, 0x99, 0x1b, 0x78, 0x52, 0xb8, 0x55}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -263,8 +264,8 @@ func _0004_pending_stickersUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0004_pending_stickers.up.sql", size: 61, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0004_pending_stickers.up.sql", size: 61, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3c, 0xed, 0x25, 0xdf, 0x75, 0x2, 0x6c, 0xf0, 0xa2, 0xa8, 0x37, 0x62, 0x65, 0xad, 0xfd, 0x98, 0xa0, 0x9d, 0x63, 0x94, 0xdf, 0x6b, 0x46, 0xe0, 0x68, 0xec, 0x9c, 0x7f, 0x77, 0xdd, 0xb3, 0x6}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -283,8 +284,8 @@ func _0005_waku_modeDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0005_waku_mode.down.sql", size: 0, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0005_waku_mode.down.sql", size: 0, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe3, 0xb0, 0xc4, 0x42, 0x98, 0xfc, 0x1c, 0x14, 0x9a, 0xfb, 0xf4, 0xc8, 0x99, 0x6f, 0xb9, 0x24, 0x27, 0xae, 0x41, 0xe4, 0x64, 0x9b, 0x93, 0x4c, 0xa4, 0x95, 0x99, 0x1b, 0x78, 0x52, 0xb8, 0x55}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -303,8 +304,8 @@ func _0005_waku_modeUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0005_waku_mode.up.sql", size: 146, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0005_waku_mode.up.sql", size: 146, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa6, 0x91, 0xc, 0xd7, 0x89, 0x61, 0x2e, 0x4c, 0x5a, 0xb6, 0x67, 0xd1, 0xc1, 0x42, 0x24, 0x38, 0xd6, 0x1b, 0x75, 0x41, 0x9c, 0x23, 0xb0, 0xca, 0x5c, 0xf1, 0x5c, 0xd0, 0x13, 0x92, 0x3e, 0xe1}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -323,8 +324,8 @@ func _0006_appearanceUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0006_appearance.up.sql", size: 67, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0006_appearance.up.sql", size: 67, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xae, 0x6, 0x25, 0x6c, 0xe4, 0x9d, 0xa7, 0x72, 0xe8, 0xbc, 0xe4, 0x1f, 0x1e, 0x2d, 0x7c, 0xb7, 0xf6, 0xa3, 0xec, 0x3b, 0x4e, 0x93, 0x2e, 0xa4, 0xec, 0x6f, 0xe5, 0x95, 0x94, 0xe8, 0x4, 0xfb}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -343,8 +344,8 @@ func _0007_enable_waku_defaultUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0007_enable_waku_default.up.sql", size: 38, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0007_enable_waku_default.up.sql", size: 38, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd4, 0x42, 0xb6, 0xe5, 0x48, 0x41, 0xeb, 0xc0, 0x7e, 0x3b, 0xe6, 0x8e, 0x96, 0x33, 0x20, 0x92, 0x24, 0x5a, 0x60, 0xfa, 0xa0, 0x3, 0x5e, 0x76, 0x4b, 0x89, 0xaa, 0x37, 0x66, 0xbc, 0x26, 0x11}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -363,8 +364,8 @@ func _0008_add_push_notificationsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0008_add_push_notifications.up.sql", size: 349, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0008_add_push_notifications.up.sql", size: 349, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x5a, 0x0, 0xbf, 0xd0, 0xdd, 0xcd, 0x73, 0xe0, 0x7c, 0x56, 0xef, 0xdc, 0x57, 0x61, 0x94, 0x64, 0x70, 0xb9, 0xfa, 0xa1, 0x2a, 0x36, 0xc, 0x2f, 0xf8, 0x95, 0xa, 0x57, 0x3e, 0x7a, 0xd7, 0x12}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -383,8 +384,8 @@ func _0009_enable_sending_push_notificationsDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0009_enable_sending_push_notifications.down.sql", size: 49, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0009_enable_sending_push_notifications.down.sql", size: 49, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe9, 0xae, 0x1b, 0x41, 0xcb, 0x9c, 0x2c, 0x93, 0xc6, 0x2a, 0x77, 0x3, 0xb9, 0x51, 0xe0, 0x68, 0x68, 0x0, 0xf7, 0x5b, 0xb3, 0x1e, 0x94, 0x44, 0xba, 0x9c, 0xd0, 0x3b, 0x80, 0x21, 0x6f, 0xb5}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -403,8 +404,8 @@ func _0009_enable_sending_push_notificationsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0009_enable_sending_push_notifications.up.sql", size: 49, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0009_enable_sending_push_notifications.up.sql", size: 49, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1b, 0x80, 0xe4, 0x9c, 0xc8, 0xb8, 0xd5, 0xef, 0xce, 0x74, 0x9b, 0x7b, 0xdd, 0xa, 0x99, 0x1e, 0xef, 0x7f, 0xb8, 0x99, 0x84, 0x4, 0x0, 0x6b, 0x1d, 0x2c, 0xa, 0xf8, 0x2c, 0x4f, 0xb5, 0x44}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -423,8 +424,8 @@ func _0010_add_block_mentionsDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0010_add_block_mentions.down.sql", size: 83, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0010_add_block_mentions.down.sql", size: 83, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x6d, 0x9e, 0x27, 0x1e, 0xba, 0x9f, 0xca, 0xae, 0x98, 0x2e, 0x6e, 0xe3, 0xdd, 0xac, 0x73, 0x34, 0x4e, 0x69, 0x92, 0xb5, 0xf6, 0x9, 0xab, 0x50, 0x35, 0xd, 0xee, 0xeb, 0x3e, 0xcc, 0x7e, 0xce}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -443,8 +444,8 @@ func _0010_add_block_mentionsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0010_add_block_mentions.up.sql", size: 89, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0010_add_block_mentions.up.sql", size: 89, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd7, 0x23, 0x85, 0xa2, 0xb5, 0xb6, 0xb4, 0x3f, 0xdc, 0x4e, 0xff, 0xe2, 0x6b, 0x66, 0x68, 0x5e, 0xb2, 0xb4, 0x14, 0xb2, 0x1b, 0x4d, 0xb1, 0xce, 0xf7, 0x6, 0x58, 0xa7, 0xaf, 0x93, 0x3f, 0x25}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -463,8 +464,8 @@ func _0011_allow_webview_permission_requestsDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0011_allow_webview_permission_requests.down.sql", size: 0, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0011_allow_webview_permission_requests.down.sql", size: 0, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe3, 0xb0, 0xc4, 0x42, 0x98, 0xfc, 0x1c, 0x14, 0x9a, 0xfb, 0xf4, 0xc8, 0x99, 0x6f, 0xb9, 0x24, 0x27, 0xae, 0x41, 0xe4, 0x64, 0x9b, 0x93, 0x4c, 0xa4, 0x95, 0x99, 0x1b, 0x78, 0x52, 0xb8, 0x55}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -483,8 +484,8 @@ func _0011_allow_webview_permission_requestsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0011_allow_webview_permission_requests.up.sql", size: 88, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0011_allow_webview_permission_requests.up.sql", size: 88, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x43, 0x5f, 0x22, 0x4c, 0x98, 0x1d, 0xc6, 0xf4, 0x89, 0xaf, 0xf4, 0x44, 0xba, 0xf8, 0x28, 0xa7, 0xb5, 0xb9, 0xf0, 0xf2, 0xcb, 0x5, 0x59, 0x7a, 0xc, 0xdf, 0xd3, 0x38, 0xa4, 0xb8, 0x98, 0xc2}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -503,8 +504,8 @@ func _0012_pending_transactionsDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0012_pending_transactions.down.sql", size: 33, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0012_pending_transactions.down.sql", size: 33, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7e, 0x41, 0xfe, 0x5c, 0xd8, 0xc3, 0x29, 0xfd, 0x31, 0x78, 0x99, 0x7a, 0xeb, 0x17, 0x62, 0x88, 0x41, 0xb3, 0xe7, 0xb5, 0x5, 0x0, 0x90, 0xa1, 0x7, 0x1a, 0x23, 0x88, 0x81, 0xba, 0x56, 0x9d}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -523,8 +524,8 @@ func _0012_pending_transactionsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0012_pending_transactions.up.sql", size: 321, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0012_pending_transactions.up.sql", size: 321, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd, 0x17, 0xff, 0xd7, 0xa7, 0x49, 0x1e, 0x7b, 0x34, 0x63, 0x7c, 0x53, 0xaa, 0x6b, 0x2d, 0xc8, 0xe0, 0x82, 0x21, 0x90, 0x3a, 0x94, 0xf1, 0xa6, 0xe4, 0x70, 0xe5, 0x85, 0x1a, 0x48, 0x25, 0xb}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -543,8 +544,8 @@ func _0013_favouritesDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0013_favourites.down.sql", size: 23, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0013_favourites.down.sql", size: 23, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x32, 0xf8, 0x55, 0x13, 0x4f, 0x4a, 0x19, 0x83, 0x9c, 0xda, 0x34, 0xb8, 0x3, 0x54, 0x82, 0x1e, 0x99, 0x36, 0x6b, 0x42, 0x3, 0xf6, 0x43, 0xde, 0xe6, 0x32, 0xb6, 0xdf, 0xe2, 0x59, 0x8c, 0x84}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -563,8 +564,8 @@ func _0013_favouritesUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0013_favourites.up.sql", size: 132, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0013_favourites.up.sql", size: 132, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xbe, 0x1, 0x27, 0x38, 0x76, 0xf5, 0xcb, 0x61, 0xda, 0x5b, 0xce, 0xd9, 0x8b, 0x18, 0x77, 0x61, 0x84, 0xe7, 0x22, 0xe2, 0x13, 0x99, 0xab, 0x32, 0xbc, 0xbe, 0xed, 0x1f, 0x2f, 0xb0, 0xe4, 0x8d}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -583,8 +584,8 @@ func _0014_add_use_mailserversDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0014_add_use_mailservers.down.sql", size: 0, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0014_add_use_mailservers.down.sql", size: 0, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe3, 0xb0, 0xc4, 0x42, 0x98, 0xfc, 0x1c, 0x14, 0x9a, 0xfb, 0xf4, 0xc8, 0x99, 0x6f, 0xb9, 0x24, 0x27, 0xae, 0x41, 0xe4, 0x64, 0x9b, 0x93, 0x4c, 0xa4, 0x95, 0x99, 0x1b, 0x78, 0x52, 0xb8, 0x55}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -603,8 +604,8 @@ func _0014_add_use_mailserversUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0014_add_use_mailservers.up.sql", size: 111, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0014_add_use_mailservers.up.sql", size: 111, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc9, 0xba, 0x65, 0xbf, 0x1b, 0xc9, 0x6d, 0x45, 0xf2, 0xf5, 0x30, 0x7c, 0xc1, 0xde, 0xb8, 0xe3, 0x3f, 0xa9, 0x2f, 0x9f, 0xea, 0x1, 0x29, 0x29, 0x65, 0xe7, 0x38, 0xab, 0xa4, 0x62, 0xf, 0xd0}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -623,8 +624,8 @@ func _0015_link_previewsDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0015_link_previews.down.sql", size: 0, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0015_link_previews.down.sql", size: 0, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe3, 0xb0, 0xc4, 0x42, 0x98, 0xfc, 0x1c, 0x14, 0x9a, 0xfb, 0xf4, 0xc8, 0x99, 0x6f, 0xb9, 0x24, 0x27, 0xae, 0x41, 0xe4, 0x64, 0x9b, 0x93, 0x4c, 0xa4, 0x95, 0x99, 0x1b, 0x78, 0x52, 0xb8, 0x55}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -643,8 +644,8 @@ func _0015_link_previewsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0015_link_previews.up.sql", size: 203, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0015_link_previews.up.sql", size: 203, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xb1, 0xf7, 0x38, 0x25, 0xa6, 0xfc, 0x6b, 0x9, 0xe4, 0xd9, 0xbf, 0x58, 0x7b, 0x80, 0xd8, 0x48, 0x63, 0xde, 0xa5, 0x5e, 0x30, 0xa3, 0xeb, 0x68, 0x8e, 0x6a, 0x9f, 0xfd, 0xf4, 0x46, 0x41, 0x34}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -663,8 +664,8 @@ func _0016_local_notifications_preferencesDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0016_local_notifications_preferences.down.sql", size: 43, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0016_local_notifications_preferences.down.sql", size: 43, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe0, 0x50, 0xc7, 0xdd, 0x53, 0x9c, 0x5d, 0x1e, 0xb5, 0x71, 0x25, 0x50, 0x58, 0xcf, 0x6d, 0xbe, 0x5a, 0x8, 0x12, 0xc9, 0x13, 0xd, 0x9a, 0x3d, 0x4b, 0x7a, 0x2f, 0x1b, 0xe5, 0x23, 0x52, 0x78}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -683,8 +684,8 @@ func _0016_local_notifications_preferencesUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0016_local_notifications_preferences.up.sql", size: 204, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0016_local_notifications_preferences.up.sql", size: 204, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x3f, 0x3a, 0x16, 0x25, 0xdf, 0xba, 0x62, 0xd3, 0x81, 0x73, 0xc, 0x10, 0x85, 0xbc, 0x8d, 0xe, 0x1d, 0x62, 0xcb, 0xb, 0x6d, 0x8c, 0x4f, 0x63, 0x5f, 0xe2, 0xd, 0xc5, 0x46, 0xa8, 0x35, 0x5b}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -703,8 +704,8 @@ func _0017_bookmarksDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0017_bookmarks.down.sql", size: 22, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0017_bookmarks.down.sql", size: 22, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x9a, 0x13, 0x2a, 0x44, 0xb0, 0x3, 0x18, 0x63, 0xb8, 0x33, 0xda, 0x3a, 0xeb, 0xb8, 0xcb, 0xd1, 0x98, 0x29, 0xa7, 0xf0, 0x6, 0x9d, 0xc9, 0x62, 0xe7, 0x89, 0x7f, 0x77, 0xaf, 0xec, 0x6b, 0x8f}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -723,8 +724,8 @@ func _0017_bookmarksUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0017_bookmarks.up.sql", size: 147, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0017_bookmarks.up.sql", size: 147, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xbc, 0x47, 0xe1, 0xe3, 0xd8, 0xc6, 0x4, 0x6d, 0x5f, 0x2f, 0xa, 0x51, 0xa6, 0x8c, 0x6a, 0xe0, 0x3d, 0x8c, 0x91, 0x47, 0xbc, 0x1, 0x75, 0x46, 0x92, 0x2, 0x18, 0x6e, 0xe3, 0x4f, 0x18, 0x57}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -743,8 +744,8 @@ func _0018_profile_pictures_visibilityUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0018_profile_pictures_visibility.up.sql", size: 84, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0018_profile_pictures_visibility.up.sql", size: 84, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc9, 0xe3, 0xc5, 0xec, 0x83, 0x55, 0x45, 0x57, 0x7a, 0xaa, 0xd2, 0xa7, 0x59, 0xa7, 0x87, 0xef, 0x63, 0x19, 0x9c, 0x46, 0x9c, 0xc5, 0x32, 0x89, 0xa4, 0x68, 0x70, 0xd8, 0x83, 0x43, 0xa4, 0x72}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -763,8 +764,8 @@ func _0019_blocks_ranges_extra_dataUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0019_blocks_ranges_extra_data.up.sql", size: 89, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0019_blocks_ranges_extra_data.up.sql", size: 89, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa3, 0x96, 0x32, 0x58, 0xf0, 0xb9, 0xe1, 0x70, 0x81, 0xca, 0x8d, 0x45, 0x57, 0x8a, 0x7, 0x5d, 0x9e, 0x2a, 0x30, 0xb, 0xad, 0x5f, 0xf8, 0xd4, 0x30, 0x94, 0x73, 0x37, 0x8d, 0xc1, 0x9a, 0xed}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -783,8 +784,8 @@ func _0020_metricsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0020_metrics.up.sql", size: 235, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0020_metrics.up.sql", size: 235, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe8, 0x32, 0xbc, 0xb6, 0x9b, 0x5a, 0x8f, 0x9f, 0x4c, 0x90, 0x81, 0x3e, 0x2e, 0xd1, 0x23, 0xcd, 0xf1, 0x83, 0x35, 0xca, 0x66, 0x87, 0x52, 0x4e, 0x30, 0x3e, 0x4f, 0xa8, 0xfd, 0x30, 0x16, 0xbd}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -803,8 +804,8 @@ func _0021_add_session_id_to_metricsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0021_add_session_id_to_metrics.up.sql", size: 55, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0021_add_session_id_to_metrics.up.sql", size: 55, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xb7, 0x81, 0xfc, 0x97, 0xd1, 0x8b, 0xea, 0x8e, 0xd7, 0xc2, 0x53, 0x62, 0xe9, 0xbc, 0xf, 0x8c, 0x46, 0x41, 0x41, 0xb7, 0x6, 0x35, 0xf5, 0xba, 0xbb, 0x28, 0x50, 0x48, 0xbf, 0x36, 0x90, 0x5c}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -823,8 +824,8 @@ func _0022_pending_transfersUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0022_pending_transfers.up.sql", size: 706, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0022_pending_transfers.up.sql", size: 706, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x6a, 0x9, 0xe6, 0x6, 0xae, 0x60, 0xdd, 0xbb, 0x76, 0xac, 0xe0, 0x57, 0x30, 0x67, 0x37, 0x93, 0x40, 0x13, 0xec, 0xf2, 0x6e, 0x61, 0xa, 0x14, 0xb2, 0xb1, 0xbd, 0x91, 0xf8, 0x89, 0xb3, 0xe3}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -843,8 +844,8 @@ func _1618237885_settings_anon_metrics_should_sendUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1618237885_settings_anon_metrics_should_send.up.sql", size: 80, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "1618237885_settings_anon_metrics_should_send.up.sql", size: 80, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xea, 0x6c, 0x1d, 0x1f, 0x54, 0x62, 0x18, 0x22, 0x5c, 0xa7, 0x8c, 0x59, 0x24, 0xd3, 0x4d, 0x55, 0xc4, 0x2a, 0x9e, 0x4c, 0x37, 0x6b, 0xfd, 0xac, 0xec, 0xb7, 0x68, 0x21, 0x26, 0x26, 0xf3, 0x92}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -863,8 +864,8 @@ func _1618395756_contacts_onlyUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1618395756_contacts_only.up.sql", size: 136, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "1618395756_contacts_only.up.sql", size: 136, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1, 0xe3, 0xd0, 0xe7, 0xf2, 0x6e, 0xbf, 0x27, 0xf6, 0xe2, 0x2e, 0x16, 0x4b, 0x52, 0x3b, 0xcf, 0x63, 0x52, 0xfc, 0x1d, 0x43, 0xba, 0x42, 0xf9, 0x1e, 0x1e, 0x39, 0x40, 0xed, 0x0, 0x20, 0xa8}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -883,8 +884,8 @@ func _1622184614_add_default_sync_periodUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1622184614_add_default_sync_period.up.sql", size: 125, mode: os.FileMode(436), modTime: time.Unix(1623875362, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "1622184614_add_default_sync_period.up.sql", size: 125, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x60, 0x39, 0xeb, 0x8f, 0xdc, 0x1, 0x56, 0xc1, 0x9b, 0xaa, 0xda, 0x44, 0xe0, 0xdb, 0xda, 0x2c, 0xe7, 0x71, 0x8d, 0xbc, 0xc1, 0x9a, 0x4f, 0x48, 0xe0, 0x5e, 0x81, 0x1e, 0x8e, 0x6a, 0x4d, 0x3}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -903,8 +904,8 @@ func _1625872445_user_statusUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1625872445_user_status.up.sql", size: 351, mode: os.FileMode(436), modTime: time.Unix(1626970348, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "1625872445_user_status.up.sql", size: 351, mode: os.FileMode(0644), modTime: time.Unix(1627321820, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf5, 0xa, 0xfe, 0x7a, 0xcc, 0x9e, 0x35, 0x26, 0xb, 0xc8, 0xf2, 0x7d, 0xfa, 0x4b, 0xcf, 0x53, 0x20, 0x76, 0xc7, 0xd, 0xbc, 0x78, 0x4f, 0x74, 0x2d, 0x2e, 0x2e, 0x7e, 0x62, 0xae, 0x78, 0x1f}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -923,8 +924,8 @@ func docGo() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "doc.go", size: 74, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "doc.go", size: 74, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xde, 0x7c, 0x28, 0xcd, 0x47, 0xf2, 0xfa, 0x7c, 0x51, 0x2d, 0xd8, 0x38, 0xb, 0xb0, 0x34, 0x9d, 0x4c, 0x62, 0xa, 0x9e, 0x28, 0xc3, 0x31, 0x23, 0xd9, 0xbb, 0x89, 0x9f, 0xa0, 0x89, 0x1f, 0xe8}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -932,8 +933,8 @@ func docGo() (*asset, error) {
|
|||
// It returns an error if the asset could not be found or
|
||||
// could not be loaded.
|
||||
func Asset(name string) ([]byte, error) {
|
||||
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
if f, ok := _bindata[cannonicalName]; ok {
|
||||
canonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
if f, ok := _bindata[canonicalName]; ok {
|
||||
a, err := f()
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("Asset %s can't read by error: %v", name, err)
|
||||
|
@ -943,6 +944,12 @@ func Asset(name string) ([]byte, error) {
|
|||
return nil, fmt.Errorf("Asset %s not found", name)
|
||||
}
|
||||
|
||||
// AssetString returns the asset contents as a string (instead of a []byte).
|
||||
func AssetString(name string) (string, error) {
|
||||
data, err := Asset(name)
|
||||
return string(data), err
|
||||
}
|
||||
|
||||
// MustAsset is like Asset but panics when Asset would return an error.
|
||||
// It simplifies safe initialization of global variables.
|
||||
func MustAsset(name string) []byte {
|
||||
|
@ -954,12 +961,18 @@ func MustAsset(name string) []byte {
|
|||
return a
|
||||
}
|
||||
|
||||
// MustAssetString is like AssetString but panics when Asset would return an
|
||||
// error. It simplifies safe initialization of global variables.
|
||||
func MustAssetString(name string) string {
|
||||
return string(MustAsset(name))
|
||||
}
|
||||
|
||||
// AssetInfo loads and returns the asset info for the given name.
|
||||
// It returns an error if the asset could not be found or
|
||||
// could not be loaded.
|
||||
func AssetInfo(name string) (os.FileInfo, error) {
|
||||
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
if f, ok := _bindata[cannonicalName]; ok {
|
||||
canonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
if f, ok := _bindata[canonicalName]; ok {
|
||||
a, err := f()
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("AssetInfo %s can't read by error: %v", name, err)
|
||||
|
@ -969,6 +982,33 @@ func AssetInfo(name string) (os.FileInfo, error) {
|
|||
return nil, fmt.Errorf("AssetInfo %s not found", name)
|
||||
}
|
||||
|
||||
// AssetDigest returns the digest of the file with the given name. It returns an
|
||||
// error if the asset could not be found or the digest could not be loaded.
|
||||
func AssetDigest(name string) ([sha256.Size]byte, error) {
|
||||
canonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
if f, ok := _bindata[canonicalName]; ok {
|
||||
a, err := f()
|
||||
if err != nil {
|
||||
return [sha256.Size]byte{}, fmt.Errorf("AssetDigest %s can't read by error: %v", name, err)
|
||||
}
|
||||
return a.digest, nil
|
||||
}
|
||||
return [sha256.Size]byte{}, fmt.Errorf("AssetDigest %s not found", name)
|
||||
}
|
||||
|
||||
// Digests returns a map of all known files and their checksums.
|
||||
func Digests() (map[string][sha256.Size]byte, error) {
|
||||
mp := make(map[string][sha256.Size]byte, len(_bindata))
|
||||
for name := range _bindata {
|
||||
a, err := _bindata[name]()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
mp[name] = a.digest
|
||||
}
|
||||
return mp, nil
|
||||
}
|
||||
|
||||
// AssetNames returns the names of the assets.
|
||||
func AssetNames() []string {
|
||||
names := make([]string, 0, len(_bindata))
|
||||
|
@ -981,45 +1021,85 @@ func AssetNames() []string {
|
|||
// _bindata is a table, holding each asset generator, mapped to its name.
|
||||
var _bindata = map[string]func() (*asset, error){
|
||||
"0001_app.down.sql": _0001_appDownSql,
|
||||
|
||||
"0001_app.up.sql": _0001_appUpSql,
|
||||
|
||||
"0002_tokens.down.sql": _0002_tokensDownSql,
|
||||
|
||||
"0002_tokens.up.sql": _0002_tokensUpSql,
|
||||
|
||||
"0003_settings.down.sql": _0003_settingsDownSql,
|
||||
|
||||
"0003_settings.up.sql": _0003_settingsUpSql,
|
||||
|
||||
"0004_pending_stickers.down.sql": _0004_pending_stickersDownSql,
|
||||
|
||||
"0004_pending_stickers.up.sql": _0004_pending_stickersUpSql,
|
||||
|
||||
"0005_waku_mode.down.sql": _0005_waku_modeDownSql,
|
||||
|
||||
"0005_waku_mode.up.sql": _0005_waku_modeUpSql,
|
||||
|
||||
"0006_appearance.up.sql": _0006_appearanceUpSql,
|
||||
|
||||
"0007_enable_waku_default.up.sql": _0007_enable_waku_defaultUpSql,
|
||||
|
||||
"0008_add_push_notifications.up.sql": _0008_add_push_notificationsUpSql,
|
||||
|
||||
"0009_enable_sending_push_notifications.down.sql": _0009_enable_sending_push_notificationsDownSql,
|
||||
|
||||
"0009_enable_sending_push_notifications.up.sql": _0009_enable_sending_push_notificationsUpSql,
|
||||
|
||||
"0010_add_block_mentions.down.sql": _0010_add_block_mentionsDownSql,
|
||||
|
||||
"0010_add_block_mentions.up.sql": _0010_add_block_mentionsUpSql,
|
||||
|
||||
"0011_allow_webview_permission_requests.down.sql": _0011_allow_webview_permission_requestsDownSql,
|
||||
|
||||
"0011_allow_webview_permission_requests.up.sql": _0011_allow_webview_permission_requestsUpSql,
|
||||
|
||||
"0012_pending_transactions.down.sql": _0012_pending_transactionsDownSql,
|
||||
|
||||
"0012_pending_transactions.up.sql": _0012_pending_transactionsUpSql,
|
||||
|
||||
"0013_favourites.down.sql": _0013_favouritesDownSql,
|
||||
|
||||
"0013_favourites.up.sql": _0013_favouritesUpSql,
|
||||
|
||||
"0014_add_use_mailservers.down.sql": _0014_add_use_mailserversDownSql,
|
||||
|
||||
"0014_add_use_mailservers.up.sql": _0014_add_use_mailserversUpSql,
|
||||
|
||||
"0015_link_previews.down.sql": _0015_link_previewsDownSql,
|
||||
|
||||
"0015_link_previews.up.sql": _0015_link_previewsUpSql,
|
||||
|
||||
"0016_local_notifications_preferences.down.sql": _0016_local_notifications_preferencesDownSql,
|
||||
|
||||
"0016_local_notifications_preferences.up.sql": _0016_local_notifications_preferencesUpSql,
|
||||
|
||||
"0017_bookmarks.down.sql": _0017_bookmarksDownSql,
|
||||
|
||||
"0017_bookmarks.up.sql": _0017_bookmarksUpSql,
|
||||
|
||||
"0018_profile_pictures_visibility.up.sql": _0018_profile_pictures_visibilityUpSql,
|
||||
|
||||
"0019_blocks_ranges_extra_data.up.sql": _0019_blocks_ranges_extra_dataUpSql,
|
||||
|
||||
"0020_metrics.up.sql": _0020_metricsUpSql,
|
||||
|
||||
"0021_add_session_id_to_metrics.up.sql": _0021_add_session_id_to_metricsUpSql,
|
||||
|
||||
"0022_pending_transfers.up.sql": _0022_pending_transfersUpSql,
|
||||
|
||||
"1618237885_settings_anon_metrics_should_send.up.sql": _1618237885_settings_anon_metrics_should_sendUpSql,
|
||||
|
||||
"1618395756_contacts_only.up.sql": _1618395756_contacts_onlyUpSql,
|
||||
|
||||
"1622184614_add_default_sync_period.up.sql": _1622184614_add_default_sync_periodUpSql,
|
||||
|
||||
"1625872445_user_status.up.sql": _1625872445_user_statusUpSql,
|
||||
|
||||
"doc.go": docGo,
|
||||
}
|
||||
|
||||
|
@ -1032,15 +1112,15 @@ var _bindata = map[string]func() (*asset, error){
|
|||
// img/
|
||||
// a.png
|
||||
// b.png
|
||||
// then AssetDir("data") would return []string{"foo.txt", "img"}
|
||||
// AssetDir("data/img") would return []string{"a.png", "b.png"}
|
||||
// AssetDir("foo.txt") and AssetDir("notexist") would return an error
|
||||
// then AssetDir("data") would return []string{"foo.txt", "img"},
|
||||
// AssetDir("data/img") would return []string{"a.png", "b.png"},
|
||||
// AssetDir("foo.txt") and AssetDir("notexist") would return an error, and
|
||||
// AssetDir("") will return []string{"data"}.
|
||||
func AssetDir(name string) ([]string, error) {
|
||||
node := _bintree
|
||||
if len(name) != 0 {
|
||||
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
pathList := strings.Split(cannonicalName, "/")
|
||||
canonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
pathList := strings.Split(canonicalName, "/")
|
||||
for _, p := range pathList {
|
||||
node = node.Children[p]
|
||||
if node == nil {
|
||||
|
@ -1062,51 +1142,52 @@ type bintree struct {
|
|||
Func func() (*asset, error)
|
||||
Children map[string]*bintree
|
||||
}
|
||||
|
||||
var _bintree = &bintree{nil, map[string]*bintree{
|
||||
"0001_app.down.sql": &bintree{_0001_appDownSql, map[string]*bintree{}},
|
||||
"0001_app.up.sql": &bintree{_0001_appUpSql, map[string]*bintree{}},
|
||||
"0002_tokens.down.sql": &bintree{_0002_tokensDownSql, map[string]*bintree{}},
|
||||
"0002_tokens.up.sql": &bintree{_0002_tokensUpSql, map[string]*bintree{}},
|
||||
"0003_settings.down.sql": &bintree{_0003_settingsDownSql, map[string]*bintree{}},
|
||||
"0003_settings.up.sql": &bintree{_0003_settingsUpSql, map[string]*bintree{}},
|
||||
"0004_pending_stickers.down.sql": &bintree{_0004_pending_stickersDownSql, map[string]*bintree{}},
|
||||
"0004_pending_stickers.up.sql": &bintree{_0004_pending_stickersUpSql, map[string]*bintree{}},
|
||||
"0005_waku_mode.down.sql": &bintree{_0005_waku_modeDownSql, map[string]*bintree{}},
|
||||
"0005_waku_mode.up.sql": &bintree{_0005_waku_modeUpSql, map[string]*bintree{}},
|
||||
"0006_appearance.up.sql": &bintree{_0006_appearanceUpSql, map[string]*bintree{}},
|
||||
"0007_enable_waku_default.up.sql": &bintree{_0007_enable_waku_defaultUpSql, map[string]*bintree{}},
|
||||
"0008_add_push_notifications.up.sql": &bintree{_0008_add_push_notificationsUpSql, map[string]*bintree{}},
|
||||
"0009_enable_sending_push_notifications.down.sql": &bintree{_0009_enable_sending_push_notificationsDownSql, map[string]*bintree{}},
|
||||
"0009_enable_sending_push_notifications.up.sql": &bintree{_0009_enable_sending_push_notificationsUpSql, map[string]*bintree{}},
|
||||
"0010_add_block_mentions.down.sql": &bintree{_0010_add_block_mentionsDownSql, map[string]*bintree{}},
|
||||
"0010_add_block_mentions.up.sql": &bintree{_0010_add_block_mentionsUpSql, map[string]*bintree{}},
|
||||
"0011_allow_webview_permission_requests.down.sql": &bintree{_0011_allow_webview_permission_requestsDownSql, map[string]*bintree{}},
|
||||
"0011_allow_webview_permission_requests.up.sql": &bintree{_0011_allow_webview_permission_requestsUpSql, map[string]*bintree{}},
|
||||
"0012_pending_transactions.down.sql": &bintree{_0012_pending_transactionsDownSql, map[string]*bintree{}},
|
||||
"0012_pending_transactions.up.sql": &bintree{_0012_pending_transactionsUpSql, map[string]*bintree{}},
|
||||
"0013_favourites.down.sql": &bintree{_0013_favouritesDownSql, map[string]*bintree{}},
|
||||
"0013_favourites.up.sql": &bintree{_0013_favouritesUpSql, map[string]*bintree{}},
|
||||
"0014_add_use_mailservers.down.sql": &bintree{_0014_add_use_mailserversDownSql, map[string]*bintree{}},
|
||||
"0014_add_use_mailservers.up.sql": &bintree{_0014_add_use_mailserversUpSql, map[string]*bintree{}},
|
||||
"0015_link_previews.down.sql": &bintree{_0015_link_previewsDownSql, map[string]*bintree{}},
|
||||
"0015_link_previews.up.sql": &bintree{_0015_link_previewsUpSql, map[string]*bintree{}},
|
||||
"0016_local_notifications_preferences.down.sql": &bintree{_0016_local_notifications_preferencesDownSql, map[string]*bintree{}},
|
||||
"0016_local_notifications_preferences.up.sql": &bintree{_0016_local_notifications_preferencesUpSql, map[string]*bintree{}},
|
||||
"0017_bookmarks.down.sql": &bintree{_0017_bookmarksDownSql, map[string]*bintree{}},
|
||||
"0017_bookmarks.up.sql": &bintree{_0017_bookmarksUpSql, map[string]*bintree{}},
|
||||
"0018_profile_pictures_visibility.up.sql": &bintree{_0018_profile_pictures_visibilityUpSql, map[string]*bintree{}},
|
||||
"0019_blocks_ranges_extra_data.up.sql": &bintree{_0019_blocks_ranges_extra_dataUpSql, map[string]*bintree{}},
|
||||
"0020_metrics.up.sql": &bintree{_0020_metricsUpSql, map[string]*bintree{}},
|
||||
"0021_add_session_id_to_metrics.up.sql": &bintree{_0021_add_session_id_to_metricsUpSql, map[string]*bintree{}},
|
||||
"0022_pending_transfers.up.sql": &bintree{_0022_pending_transfersUpSql, map[string]*bintree{}},
|
||||
"0001_app.down.sql": &bintree{_0001_appDownSql, map[string]*bintree{}},
|
||||
"0001_app.up.sql": &bintree{_0001_appUpSql, map[string]*bintree{}},
|
||||
"0002_tokens.down.sql": &bintree{_0002_tokensDownSql, map[string]*bintree{}},
|
||||
"0002_tokens.up.sql": &bintree{_0002_tokensUpSql, map[string]*bintree{}},
|
||||
"0003_settings.down.sql": &bintree{_0003_settingsDownSql, map[string]*bintree{}},
|
||||
"0003_settings.up.sql": &bintree{_0003_settingsUpSql, map[string]*bintree{}},
|
||||
"0004_pending_stickers.down.sql": &bintree{_0004_pending_stickersDownSql, map[string]*bintree{}},
|
||||
"0004_pending_stickers.up.sql": &bintree{_0004_pending_stickersUpSql, map[string]*bintree{}},
|
||||
"0005_waku_mode.down.sql": &bintree{_0005_waku_modeDownSql, map[string]*bintree{}},
|
||||
"0005_waku_mode.up.sql": &bintree{_0005_waku_modeUpSql, map[string]*bintree{}},
|
||||
"0006_appearance.up.sql": &bintree{_0006_appearanceUpSql, map[string]*bintree{}},
|
||||
"0007_enable_waku_default.up.sql": &bintree{_0007_enable_waku_defaultUpSql, map[string]*bintree{}},
|
||||
"0008_add_push_notifications.up.sql": &bintree{_0008_add_push_notificationsUpSql, map[string]*bintree{}},
|
||||
"0009_enable_sending_push_notifications.down.sql": &bintree{_0009_enable_sending_push_notificationsDownSql, map[string]*bintree{}},
|
||||
"0009_enable_sending_push_notifications.up.sql": &bintree{_0009_enable_sending_push_notificationsUpSql, map[string]*bintree{}},
|
||||
"0010_add_block_mentions.down.sql": &bintree{_0010_add_block_mentionsDownSql, map[string]*bintree{}},
|
||||
"0010_add_block_mentions.up.sql": &bintree{_0010_add_block_mentionsUpSql, map[string]*bintree{}},
|
||||
"0011_allow_webview_permission_requests.down.sql": &bintree{_0011_allow_webview_permission_requestsDownSql, map[string]*bintree{}},
|
||||
"0011_allow_webview_permission_requests.up.sql": &bintree{_0011_allow_webview_permission_requestsUpSql, map[string]*bintree{}},
|
||||
"0012_pending_transactions.down.sql": &bintree{_0012_pending_transactionsDownSql, map[string]*bintree{}},
|
||||
"0012_pending_transactions.up.sql": &bintree{_0012_pending_transactionsUpSql, map[string]*bintree{}},
|
||||
"0013_favourites.down.sql": &bintree{_0013_favouritesDownSql, map[string]*bintree{}},
|
||||
"0013_favourites.up.sql": &bintree{_0013_favouritesUpSql, map[string]*bintree{}},
|
||||
"0014_add_use_mailservers.down.sql": &bintree{_0014_add_use_mailserversDownSql, map[string]*bintree{}},
|
||||
"0014_add_use_mailservers.up.sql": &bintree{_0014_add_use_mailserversUpSql, map[string]*bintree{}},
|
||||
"0015_link_previews.down.sql": &bintree{_0015_link_previewsDownSql, map[string]*bintree{}},
|
||||
"0015_link_previews.up.sql": &bintree{_0015_link_previewsUpSql, map[string]*bintree{}},
|
||||
"0016_local_notifications_preferences.down.sql": &bintree{_0016_local_notifications_preferencesDownSql, map[string]*bintree{}},
|
||||
"0016_local_notifications_preferences.up.sql": &bintree{_0016_local_notifications_preferencesUpSql, map[string]*bintree{}},
|
||||
"0017_bookmarks.down.sql": &bintree{_0017_bookmarksDownSql, map[string]*bintree{}},
|
||||
"0017_bookmarks.up.sql": &bintree{_0017_bookmarksUpSql, map[string]*bintree{}},
|
||||
"0018_profile_pictures_visibility.up.sql": &bintree{_0018_profile_pictures_visibilityUpSql, map[string]*bintree{}},
|
||||
"0019_blocks_ranges_extra_data.up.sql": &bintree{_0019_blocks_ranges_extra_dataUpSql, map[string]*bintree{}},
|
||||
"0020_metrics.up.sql": &bintree{_0020_metricsUpSql, map[string]*bintree{}},
|
||||
"0021_add_session_id_to_metrics.up.sql": &bintree{_0021_add_session_id_to_metricsUpSql, map[string]*bintree{}},
|
||||
"0022_pending_transfers.up.sql": &bintree{_0022_pending_transfersUpSql, map[string]*bintree{}},
|
||||
"1618237885_settings_anon_metrics_should_send.up.sql": &bintree{_1618237885_settings_anon_metrics_should_sendUpSql, map[string]*bintree{}},
|
||||
"1618395756_contacts_only.up.sql": &bintree{_1618395756_contacts_onlyUpSql, map[string]*bintree{}},
|
||||
"1622184614_add_default_sync_period.up.sql": &bintree{_1622184614_add_default_sync_periodUpSql, map[string]*bintree{}},
|
||||
"1625872445_user_status.up.sql": &bintree{_1625872445_user_statusUpSql, map[string]*bintree{}},
|
||||
"doc.go": &bintree{docGo, map[string]*bintree{}},
|
||||
"1618395756_contacts_only.up.sql": &bintree{_1618395756_contacts_onlyUpSql, map[string]*bintree{}},
|
||||
"1622184614_add_default_sync_period.up.sql": &bintree{_1622184614_add_default_sync_periodUpSql, map[string]*bintree{}},
|
||||
"1625872445_user_status.up.sql": &bintree{_1625872445_user_statusUpSql, map[string]*bintree{}},
|
||||
"doc.go": &bintree{docGo, map[string]*bintree{}},
|
||||
}}
|
||||
|
||||
// RestoreAsset restores an asset under the given directory
|
||||
// RestoreAsset restores an asset under the given directory.
|
||||
func RestoreAsset(dir, name string) error {
|
||||
data, err := Asset(name)
|
||||
if err != nil {
|
||||
|
@ -1124,14 +1205,10 @@ func RestoreAsset(dir, name string) error {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
return os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())
|
||||
}
|
||||
|
||||
// RestoreAssets restores an asset under the given directory recursively
|
||||
// RestoreAssets restores an asset under the given directory recursively.
|
||||
func RestoreAssets(dir, name string) error {
|
||||
children, err := AssetDir(name)
|
||||
// File
|
||||
|
@ -1149,7 +1226,6 @@ func RestoreAssets(dir, name string) error {
|
|||
}
|
||||
|
||||
func _filePath(dir, name string) string {
|
||||
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...)
|
||||
canonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
return filepath.Join(append([]string{dir}, strings.Split(canonicalName, "/")...)...)
|
||||
}
|
||||
|
||||
|
|
|
@ -86,7 +86,7 @@ func _1557732988_initialize_dbDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1557732988_initialize_db.down.sql", size: 72, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "1557732988_initialize_db.down.sql", size: 72, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x77, 0x40, 0x78, 0xb7, 0x71, 0x3c, 0x20, 0x3b, 0xc9, 0xb, 0x2f, 0x49, 0xe4, 0xff, 0x1c, 0x84, 0x54, 0xa1, 0x30, 0xe3, 0x90, 0xf8, 0x73, 0xda, 0xb0, 0x2a, 0xea, 0x8e, 0xf1, 0x82, 0xe7, 0xd2}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -106,7 +106,7 @@ func _1557732988_initialize_dbUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1557732988_initialize_db.up.sql", size: 234, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "1557732988_initialize_db.up.sql", size: 234, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8f, 0xa, 0x31, 0xf, 0x94, 0xe, 0xd7, 0xd6, 0xaa, 0x22, 0xd6, 0x6c, 0x7a, 0xbc, 0xad, 0x6a, 0xed, 0x2e, 0x7a, 0xf0, 0x24, 0x81, 0x87, 0x14, 0xe, 0x1c, 0x8a, 0xf1, 0x45, 0xaf, 0x9e, 0x85}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -126,7 +126,7 @@ func staticGo() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "static.go", size: 178, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "static.go", size: 178, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xab, 0x8a, 0xf4, 0x27, 0x24, 0x9d, 0x2a, 0x1, 0x7b, 0x54, 0xea, 0xae, 0x4a, 0x35, 0x40, 0x92, 0xb5, 0xf9, 0xb3, 0x54, 0x3e, 0x3a, 0x1a, 0x2b, 0xae, 0xfb, 0x9e, 0x82, 0xeb, 0x4c, 0xf, 0x6}}
|
||||
return a, nil
|
||||
}
|
||||
|
|
|
@ -1,19 +1,19 @@
|
|||
// Code generated by go-bindata.
|
||||
// Code generated by go-bindata. DO NOT EDIT.
|
||||
// sources:
|
||||
// 0001_accounts.down.sql
|
||||
// 0001_accounts.up.sql
|
||||
// 1605007189_identity_images.down.sql
|
||||
// 1605007189_identity_images.up.sql
|
||||
// 1606224181_drop_photo_path_from_accounts.down.sql
|
||||
// 1606224181_drop_photo_path_from_accounts.up.sql
|
||||
// doc.go
|
||||
// DO NOT EDIT!
|
||||
// 0001_accounts.down.sql (21B)
|
||||
// 0001_accounts.up.sql (163B)
|
||||
// 1605007189_identity_images.down.sql (29B)
|
||||
// 1605007189_identity_images.up.sql (268B)
|
||||
// 1606224181_drop_photo_path_from_accounts.down.sql (892B)
|
||||
// 1606224181_drop_photo_path_from_accounts.up.sql (866B)
|
||||
// doc.go (74B)
|
||||
|
||||
package migrations
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"compress/gzip"
|
||||
"crypto/sha256"
|
||||
"fmt"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
|
@ -26,7 +26,7 @@ import (
|
|||
func bindataRead(data []byte, name string) ([]byte, error) {
|
||||
gz, err := gzip.NewReader(bytes.NewBuffer(data))
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("Read %q: %v", name, err)
|
||||
return nil, fmt.Errorf("read %q: %v", name, err)
|
||||
}
|
||||
|
||||
var buf bytes.Buffer
|
||||
|
@ -34,7 +34,7 @@ func bindataRead(data []byte, name string) ([]byte, error) {
|
|||
clErr := gz.Close()
|
||||
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("Read %q: %v", name, err)
|
||||
return nil, fmt.Errorf("read %q: %v", name, err)
|
||||
}
|
||||
if clErr != nil {
|
||||
return nil, err
|
||||
|
@ -44,8 +44,9 @@ func bindataRead(data []byte, name string) ([]byte, error) {
|
|||
}
|
||||
|
||||
type asset struct {
|
||||
bytes []byte
|
||||
info os.FileInfo
|
||||
bytes []byte
|
||||
info os.FileInfo
|
||||
digest [sha256.Size]byte
|
||||
}
|
||||
|
||||
type bindataFileInfo struct {
|
||||
|
@ -89,8 +90,8 @@ func _0001_accountsDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0001_accounts.down.sql", size: 21, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0001_accounts.down.sql", size: 21, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd2, 0x61, 0x4c, 0x18, 0xfc, 0xc, 0xdf, 0x5c, 0x1f, 0x5e, 0xd3, 0xbd, 0xfa, 0x12, 0x5e, 0x8d, 0x8d, 0x8b, 0xb9, 0x5f, 0x99, 0x46, 0x63, 0xa5, 0xe3, 0xa6, 0x8a, 0x4, 0xf1, 0x73, 0x8a, 0xe9}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -109,8 +110,8 @@ func _0001_accountsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "0001_accounts.up.sql", size: 163, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "0001_accounts.up.sql", size: 163, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf2, 0xfa, 0x99, 0x8e, 0x96, 0xb3, 0x13, 0x6c, 0x1f, 0x6, 0x27, 0xc5, 0xd2, 0xd4, 0xe0, 0xa5, 0x26, 0x82, 0xa7, 0x26, 0xf2, 0x68, 0x9d, 0xed, 0x9c, 0x3d, 0xbb, 0xdc, 0x37, 0x28, 0xbc, 0x1}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -129,8 +130,8 @@ func _1605007189_identity_imagesDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1605007189_identity_images.down.sql", size: 29, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "1605007189_identity_images.down.sql", size: 29, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x2f, 0xcf, 0xa7, 0xae, 0xd5, 0x4f, 0xcd, 0x14, 0x63, 0x9, 0xbe, 0x39, 0x49, 0x18, 0x96, 0xb2, 0xa3, 0x8, 0x7d, 0x41, 0xdb, 0x50, 0x5d, 0xf5, 0x4d, 0xa2, 0xd, 0x8f, 0x57, 0x79, 0x77, 0x67}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -149,8 +150,8 @@ func _1605007189_identity_imagesUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1605007189_identity_images.up.sql", size: 268, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "1605007189_identity_images.up.sql", size: 268, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x50, 0xb6, 0xc1, 0x5c, 0x76, 0x72, 0x6b, 0x22, 0x34, 0xdc, 0x96, 0xdc, 0x2b, 0xfd, 0x2d, 0xbe, 0xcc, 0x1e, 0xd4, 0x5, 0x93, 0xd, 0xc2, 0x51, 0xf3, 0x1a, 0xef, 0x2b, 0x26, 0xa4, 0xeb, 0x65}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -169,8 +170,8 @@ func _1606224181_drop_photo_path_from_accountsDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1606224181_drop_photo_path_from_accounts.down.sql", size: 892, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "1606224181_drop_photo_path_from_accounts.down.sql", size: 892, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x90, 0x24, 0x17, 0x7, 0x80, 0x93, 0x6f, 0x8d, 0x5d, 0xaa, 0x8c, 0x79, 0x15, 0x5d, 0xb3, 0x19, 0xd7, 0xd8, 0x39, 0xf9, 0x3a, 0x63, 0x8f, 0x81, 0x15, 0xb6, 0xd6, 0x9a, 0x37, 0xa8, 0x8e, 0x9b}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -189,8 +190,8 @@ func _1606224181_drop_photo_path_from_accountsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1606224181_drop_photo_path_from_accounts.up.sql", size: 866, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "1606224181_drop_photo_path_from_accounts.up.sql", size: 866, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xff, 0x4c, 0x97, 0xee, 0xef, 0x82, 0xb8, 0x6c, 0x71, 0xbb, 0x50, 0x7b, 0xe6, 0xd9, 0x22, 0x31, 0x7c, 0x1a, 0xfe, 0x91, 0x28, 0xf6, 0x6, 0x36, 0xe, 0xb1, 0xf1, 0xc8, 0x25, 0xac, 0x7e, 0xd6}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -209,8 +210,8 @@ func docGo() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "doc.go", size: 74, mode: os.FileMode(436), modTime: time.Unix(1619724270, 0)}
|
||||
a := &asset{bytes: bytes, info: info}
|
||||
info := bindataFileInfo{name: "doc.go", size: 74, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xde, 0x7c, 0x28, 0xcd, 0x47, 0xf2, 0xfa, 0x7c, 0x51, 0x2d, 0xd8, 0x38, 0xb, 0xb0, 0x34, 0x9d, 0x4c, 0x62, 0xa, 0x9e, 0x28, 0xc3, 0x31, 0x23, 0xd9, 0xbb, 0x89, 0x9f, 0xa0, 0x89, 0x1f, 0xe8}}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
@ -218,8 +219,8 @@ func docGo() (*asset, error) {
|
|||
// It returns an error if the asset could not be found or
|
||||
// could not be loaded.
|
||||
func Asset(name string) ([]byte, error) {
|
||||
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
if f, ok := _bindata[cannonicalName]; ok {
|
||||
canonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
if f, ok := _bindata[canonicalName]; ok {
|
||||
a, err := f()
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("Asset %s can't read by error: %v", name, err)
|
||||
|
@ -229,6 +230,12 @@ func Asset(name string) ([]byte, error) {
|
|||
return nil, fmt.Errorf("Asset %s not found", name)
|
||||
}
|
||||
|
||||
// AssetString returns the asset contents as a string (instead of a []byte).
|
||||
func AssetString(name string) (string, error) {
|
||||
data, err := Asset(name)
|
||||
return string(data), err
|
||||
}
|
||||
|
||||
// MustAsset is like Asset but panics when Asset would return an error.
|
||||
// It simplifies safe initialization of global variables.
|
||||
func MustAsset(name string) []byte {
|
||||
|
@ -240,12 +247,18 @@ func MustAsset(name string) []byte {
|
|||
return a
|
||||
}
|
||||
|
||||
// MustAssetString is like AssetString but panics when Asset would return an
|
||||
// error. It simplifies safe initialization of global variables.
|
||||
func MustAssetString(name string) string {
|
||||
return string(MustAsset(name))
|
||||
}
|
||||
|
||||
// AssetInfo loads and returns the asset info for the given name.
|
||||
// It returns an error if the asset could not be found or
|
||||
// could not be loaded.
|
||||
func AssetInfo(name string) (os.FileInfo, error) {
|
||||
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
if f, ok := _bindata[cannonicalName]; ok {
|
||||
canonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
if f, ok := _bindata[canonicalName]; ok {
|
||||
a, err := f()
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("AssetInfo %s can't read by error: %v", name, err)
|
||||
|
@ -255,6 +268,33 @@ func AssetInfo(name string) (os.FileInfo, error) {
|
|||
return nil, fmt.Errorf("AssetInfo %s not found", name)
|
||||
}
|
||||
|
||||
// AssetDigest returns the digest of the file with the given name. It returns an
|
||||
// error if the asset could not be found or the digest could not be loaded.
|
||||
func AssetDigest(name string) ([sha256.Size]byte, error) {
|
||||
canonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
if f, ok := _bindata[canonicalName]; ok {
|
||||
a, err := f()
|
||||
if err != nil {
|
||||
return [sha256.Size]byte{}, fmt.Errorf("AssetDigest %s can't read by error: %v", name, err)
|
||||
}
|
||||
return a.digest, nil
|
||||
}
|
||||
return [sha256.Size]byte{}, fmt.Errorf("AssetDigest %s not found", name)
|
||||
}
|
||||
|
||||
// Digests returns a map of all known files and their checksums.
|
||||
func Digests() (map[string][sha256.Size]byte, error) {
|
||||
mp := make(map[string][sha256.Size]byte, len(_bindata))
|
||||
for name := range _bindata {
|
||||
a, err := _bindata[name]()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
mp[name] = a.digest
|
||||
}
|
||||
return mp, nil
|
||||
}
|
||||
|
||||
// AssetNames returns the names of the assets.
|
||||
func AssetNames() []string {
|
||||
names := make([]string, 0, len(_bindata))
|
||||
|
@ -267,11 +307,17 @@ func AssetNames() []string {
|
|||
// _bindata is a table, holding each asset generator, mapped to its name.
|
||||
var _bindata = map[string]func() (*asset, error){
|
||||
"0001_accounts.down.sql": _0001_accountsDownSql,
|
||||
|
||||
"0001_accounts.up.sql": _0001_accountsUpSql,
|
||||
|
||||
"1605007189_identity_images.down.sql": _1605007189_identity_imagesDownSql,
|
||||
|
||||
"1605007189_identity_images.up.sql": _1605007189_identity_imagesUpSql,
|
||||
|
||||
"1606224181_drop_photo_path_from_accounts.down.sql": _1606224181_drop_photo_path_from_accountsDownSql,
|
||||
|
||||
"1606224181_drop_photo_path_from_accounts.up.sql": _1606224181_drop_photo_path_from_accountsUpSql,
|
||||
|
||||
"doc.go": docGo,
|
||||
}
|
||||
|
||||
|
@ -284,15 +330,15 @@ var _bindata = map[string]func() (*asset, error){
|
|||
// img/
|
||||
// a.png
|
||||
// b.png
|
||||
// then AssetDir("data") would return []string{"foo.txt", "img"}
|
||||
// AssetDir("data/img") would return []string{"a.png", "b.png"}
|
||||
// AssetDir("foo.txt") and AssetDir("notexist") would return an error
|
||||
// then AssetDir("data") would return []string{"foo.txt", "img"},
|
||||
// AssetDir("data/img") would return []string{"a.png", "b.png"},
|
||||
// AssetDir("foo.txt") and AssetDir("notexist") would return an error, and
|
||||
// AssetDir("") will return []string{"data"}.
|
||||
func AssetDir(name string) ([]string, error) {
|
||||
node := _bintree
|
||||
if len(name) != 0 {
|
||||
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
pathList := strings.Split(cannonicalName, "/")
|
||||
canonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
pathList := strings.Split(canonicalName, "/")
|
||||
for _, p := range pathList {
|
||||
node = node.Children[p]
|
||||
if node == nil {
|
||||
|
@ -314,17 +360,18 @@ type bintree struct {
|
|||
Func func() (*asset, error)
|
||||
Children map[string]*bintree
|
||||
}
|
||||
|
||||
var _bintree = &bintree{nil, map[string]*bintree{
|
||||
"0001_accounts.down.sql": &bintree{_0001_accountsDownSql, map[string]*bintree{}},
|
||||
"0001_accounts.up.sql": &bintree{_0001_accountsUpSql, map[string]*bintree{}},
|
||||
"1605007189_identity_images.down.sql": &bintree{_1605007189_identity_imagesDownSql, map[string]*bintree{}},
|
||||
"1605007189_identity_images.up.sql": &bintree{_1605007189_identity_imagesUpSql, map[string]*bintree{}},
|
||||
"0001_accounts.down.sql": &bintree{_0001_accountsDownSql, map[string]*bintree{}},
|
||||
"0001_accounts.up.sql": &bintree{_0001_accountsUpSql, map[string]*bintree{}},
|
||||
"1605007189_identity_images.down.sql": &bintree{_1605007189_identity_imagesDownSql, map[string]*bintree{}},
|
||||
"1605007189_identity_images.up.sql": &bintree{_1605007189_identity_imagesUpSql, map[string]*bintree{}},
|
||||
"1606224181_drop_photo_path_from_accounts.down.sql": &bintree{_1606224181_drop_photo_path_from_accountsDownSql, map[string]*bintree{}},
|
||||
"1606224181_drop_photo_path_from_accounts.up.sql": &bintree{_1606224181_drop_photo_path_from_accountsUpSql, map[string]*bintree{}},
|
||||
"1606224181_drop_photo_path_from_accounts.up.sql": &bintree{_1606224181_drop_photo_path_from_accountsUpSql, map[string]*bintree{}},
|
||||
"doc.go": &bintree{docGo, map[string]*bintree{}},
|
||||
}}
|
||||
|
||||
// RestoreAsset restores an asset under the given directory
|
||||
// RestoreAsset restores an asset under the given directory.
|
||||
func RestoreAsset(dir, name string) error {
|
||||
data, err := Asset(name)
|
||||
if err != nil {
|
||||
|
@ -342,14 +389,10 @@ func RestoreAsset(dir, name string) error {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
return os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())
|
||||
}
|
||||
|
||||
// RestoreAssets restores an asset under the given directory recursively
|
||||
// RestoreAssets restores an asset under the given directory recursively.
|
||||
func RestoreAssets(dir, name string) error {
|
||||
children, err := AssetDir(name)
|
||||
// File
|
||||
|
@ -367,7 +410,6 @@ func RestoreAssets(dir, name string) error {
|
|||
}
|
||||
|
||||
func _filePath(dir, name string) string {
|
||||
cannonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...)
|
||||
canonicalName := strings.Replace(name, "\\", "/", -1)
|
||||
return filepath.Join(append([]string{dir}, strings.Split(canonicalName, "/")...)...)
|
||||
}
|
||||
|
||||
|
|
|
@ -153,6 +153,9 @@ type Message struct {
|
|||
|
||||
// EditedAt indicates the clock value it was edited
|
||||
EditedAt uint64 `json:"editedAt"`
|
||||
|
||||
// Deleted indicates if a message was deleted
|
||||
Deleted bool `json:"deleted"`
|
||||
}
|
||||
|
||||
func (m *Message) MarshalJSON() ([]byte, error) {
|
||||
|
@ -194,6 +197,7 @@ func (m *Message) MarshalJSON() ([]byte, error) {
|
|||
Mentioned bool `json:"mentioned,omitempty"`
|
||||
Links []string `json:"links,omitempty"`
|
||||
EditedAt uint64 `json:"editedAt,omitempty"`
|
||||
Deleted bool `json:"deleted,omitempty"`
|
||||
}{
|
||||
ID: m.ID,
|
||||
WhisperTimestamp: m.WhisperTimestamp,
|
||||
|
@ -226,6 +230,7 @@ func (m *Message) MarshalJSON() ([]byte, error) {
|
|||
CommandParameters: m.CommandParameters,
|
||||
GapParameters: m.GapParameters,
|
||||
EditedAt: m.EditedAt,
|
||||
Deleted: m.Deleted,
|
||||
}
|
||||
if sticker := m.GetSticker(); sticker != nil {
|
||||
item.Sticker = &StickerAlias{
|
||||
|
|
|
@ -0,0 +1,50 @@
|
|||
package protocol
|
||||
|
||||
import (
|
||||
"crypto/ecdsa"
|
||||
|
||||
"github.com/golang/protobuf/proto"
|
||||
|
||||
"github.com/status-im/status-go/protocol/protobuf"
|
||||
)
|
||||
|
||||
// DeleteMessage represents a delete of a message from a user in the application layer, used for persistence, querying and
|
||||
// signaling
|
||||
type DeleteMessage struct {
|
||||
protobuf.DeleteMessage
|
||||
|
||||
// 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:"-"`
|
||||
|
||||
// LocalChatID is the chatID of the local chat (one-to-one are not symmetric)
|
||||
LocalChatID string `json:"localChatId"`
|
||||
}
|
||||
|
||||
// GetSigPubKey returns an ecdsa encoded public key
|
||||
// this function is required to implement the ChatEntity interface
|
||||
func (e DeleteMessage) 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 DeleteMessage) GetProtobuf() proto.Message {
|
||||
return &e.DeleteMessage
|
||||
}
|
||||
|
||||
// SetMessageType a setter for the MessageType field
|
||||
// this function is required to implement the ChatEntity interface
|
||||
func (e *DeleteMessage) SetMessageType(messageType protobuf.MessageType) {
|
||||
e.MessageType = messageType
|
||||
}
|
||||
|
||||
// WrapGroupMessage indicates whether we should wrap this in membership information
|
||||
func (e DeleteMessage) WrapGroupMessage() bool {
|
||||
return false
|
||||
}
|
|
@ -100,7 +100,7 @@ func _1536754952_initial_schemaDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1536754952_initial_schema.down.sql", size: 83, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1536754952_initial_schema.down.sql", size: 83, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x44, 0xcf, 0x76, 0x71, 0x1f, 0x5e, 0x9a, 0x43, 0xd8, 0xcd, 0xb8, 0xc3, 0x70, 0xc3, 0x7f, 0xfc, 0x90, 0xb4, 0x25, 0x1e, 0xf4, 0x66, 0x20, 0xb8, 0x33, 0x7e, 0xb0, 0x76, 0x1f, 0xc, 0xc0, 0x75}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -120,7 +120,7 @@ func _1536754952_initial_schemaUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1536754952_initial_schema.up.sql", size: 962, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1536754952_initial_schema.up.sql", size: 962, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xea, 0x90, 0x5a, 0x59, 0x3e, 0x3, 0xe2, 0x3c, 0x81, 0x42, 0xcd, 0x4c, 0x9a, 0xe8, 0xda, 0x93, 0x2b, 0x70, 0xa4, 0xd5, 0x29, 0x3e, 0xd5, 0xc9, 0x27, 0xb6, 0xb7, 0x65, 0xff, 0x0, 0xcb, 0xde}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -140,7 +140,7 @@ func _1539249977_update_ratchet_infoDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1539249977_update_ratchet_info.down.sql", size: 311, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1539249977_update_ratchet_info.down.sql", size: 311, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x1, 0xa4, 0xeb, 0xa0, 0xe6, 0xa0, 0xd4, 0x48, 0xbb, 0xad, 0x6f, 0x7d, 0x67, 0x8c, 0xbd, 0x25, 0xde, 0x1f, 0x73, 0x9a, 0xbb, 0xa8, 0xc9, 0x30, 0xb7, 0xa9, 0x7c, 0xaf, 0xb5, 0x1, 0x61, 0xdd}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -160,7 +160,7 @@ func _1539249977_update_ratchet_infoUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1539249977_update_ratchet_info.up.sql", size: 368, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1539249977_update_ratchet_info.up.sql", size: 368, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc, 0x8e, 0xbf, 0x6f, 0xa, 0xc0, 0xe1, 0x3c, 0x42, 0x28, 0x88, 0x1d, 0xdb, 0xba, 0x1c, 0x83, 0xec, 0xba, 0xd3, 0x5f, 0x5c, 0x77, 0x5e, 0xa7, 0x46, 0x36, 0xec, 0x69, 0xa, 0x4b, 0x17, 0x79}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -180,7 +180,7 @@ func _1540715431_add_versionDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1540715431_add_version.down.sql", size: 127, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1540715431_add_version.down.sql", size: 127, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf5, 0x9, 0x4, 0xe3, 0x76, 0x2e, 0xb8, 0x9, 0x23, 0xf0, 0x70, 0x93, 0xc4, 0x50, 0xe, 0x9d, 0x84, 0x22, 0x8c, 0x94, 0xd3, 0x24, 0x9, 0x9a, 0xc1, 0xa1, 0x48, 0x45, 0xfd, 0x40, 0x6e, 0xe6}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -200,7 +200,7 @@ func _1540715431_add_versionUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1540715431_add_version.up.sql", size: 265, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1540715431_add_version.up.sql", size: 265, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc7, 0x4c, 0x36, 0x96, 0xdf, 0x16, 0x10, 0xa6, 0x27, 0x1a, 0x79, 0x8b, 0x42, 0x83, 0x23, 0xc, 0x7e, 0xb6, 0x3d, 0x2, 0xda, 0xa4, 0xb4, 0xd, 0x27, 0x55, 0xba, 0xdc, 0xb2, 0x88, 0x8f, 0xa6}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -220,7 +220,7 @@ func _1541164797_add_installationsDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1541164797_add_installations.down.sql", size: 26, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1541164797_add_installations.down.sql", size: 26, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf5, 0xfd, 0xe6, 0xd8, 0xca, 0x3b, 0x38, 0x18, 0xee, 0x0, 0x5f, 0x36, 0x9e, 0x1e, 0xd, 0x19, 0x3e, 0xb4, 0x73, 0x53, 0xe9, 0xa5, 0xac, 0xdd, 0xa1, 0x2f, 0xc7, 0x6c, 0xa8, 0xd9, 0xa, 0x88}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -240,7 +240,7 @@ func _1541164797_add_installationsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1541164797_add_installations.up.sql", size: 216, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1541164797_add_installations.up.sql", size: 216, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x2d, 0x18, 0x26, 0xb8, 0x88, 0x47, 0xdb, 0x83, 0xcc, 0xb6, 0x9d, 0x1c, 0x1, 0xae, 0x2f, 0xde, 0x97, 0x82, 0x3, 0x30, 0xa8, 0x63, 0xa1, 0x78, 0x4b, 0xa5, 0x9, 0x8, 0x75, 0xa2, 0x57, 0x81}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -260,7 +260,7 @@ func _1558084410_add_secretDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1558084410_add_secret.down.sql", size: 56, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1558084410_add_secret.down.sql", size: 56, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x49, 0xb, 0x65, 0xdf, 0x59, 0xbf, 0xe9, 0x5, 0x5b, 0x6f, 0xd5, 0x3a, 0xb7, 0x57, 0xe8, 0x78, 0x38, 0x73, 0x53, 0x57, 0xf7, 0x24, 0x4, 0xe4, 0xa2, 0x49, 0x22, 0xa2, 0xc6, 0xfd, 0x80, 0xa4}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -280,7 +280,7 @@ func _1558084410_add_secretUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1558084410_add_secret.up.sql", size: 301, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1558084410_add_secret.up.sql", size: 301, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xf5, 0x32, 0x36, 0x8e, 0x47, 0xb0, 0x8f, 0xc1, 0xc6, 0xf7, 0xc6, 0x9f, 0x2d, 0x44, 0x75, 0x2b, 0x26, 0xec, 0x6, 0xa0, 0x7b, 0xa5, 0xbd, 0xc8, 0x76, 0x8a, 0x82, 0x68, 0x2, 0x42, 0xb5, 0xf4}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -300,7 +300,7 @@ func _1558588866_add_versionDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1558588866_add_version.down.sql", size: 47, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1558588866_add_version.down.sql", size: 47, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xde, 0x52, 0x34, 0x3c, 0x46, 0x4a, 0xf0, 0x72, 0x47, 0x6f, 0x49, 0x5c, 0xc7, 0xf9, 0x32, 0xce, 0xc4, 0x3d, 0xfd, 0x61, 0xa1, 0x8b, 0x8f, 0xf2, 0x31, 0x34, 0xde, 0x15, 0x49, 0xa6, 0xde, 0xb9}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -320,7 +320,7 @@ func _1558588866_add_versionUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1558588866_add_version.up.sql", size: 57, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1558588866_add_version.up.sql", size: 57, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x2a, 0xea, 0x64, 0x39, 0x61, 0x20, 0x83, 0x83, 0xb, 0x2e, 0x79, 0x64, 0xb, 0x53, 0xfa, 0xfe, 0xc6, 0xf7, 0x67, 0x42, 0xd3, 0x4f, 0xdc, 0x7e, 0x30, 0x32, 0xe8, 0x14, 0x41, 0xe9, 0xe7, 0x3b}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -340,7 +340,7 @@ func _1559627659_add_contact_codeDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1559627659_add_contact_code.down.sql", size: 32, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1559627659_add_contact_code.down.sql", size: 32, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x5d, 0x64, 0x6d, 0xce, 0x24, 0x42, 0x20, 0x8d, 0x4f, 0x37, 0xaa, 0x9d, 0xc, 0x57, 0x98, 0xc1, 0xd1, 0x1a, 0x34, 0xcd, 0x9f, 0x8f, 0x34, 0x86, 0xb3, 0xd3, 0xdc, 0xf1, 0x7d, 0xe5, 0x1b, 0x6e}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -360,7 +360,7 @@ func _1559627659_add_contact_codeUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1559627659_add_contact_code.up.sql", size: 198, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1559627659_add_contact_code.up.sql", size: 198, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x16, 0xf6, 0xc2, 0x62, 0x9c, 0xd2, 0xc9, 0x1e, 0xd8, 0xea, 0xaa, 0xea, 0x95, 0x8f, 0x89, 0x6a, 0x85, 0x5d, 0x9d, 0x99, 0x78, 0x3c, 0x90, 0x66, 0x99, 0x3e, 0x4b, 0x19, 0x62, 0xfb, 0x31, 0x4d}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -380,7 +380,7 @@ func _1561368210_add_installation_metadataDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1561368210_add_installation_metadata.down.sql", size: 35, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1561368210_add_installation_metadata.down.sql", size: 35, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa8, 0xde, 0x3f, 0xd2, 0x4a, 0x50, 0x98, 0x56, 0xe3, 0xc0, 0xcd, 0x9d, 0xb0, 0x34, 0x3b, 0xe5, 0x62, 0x18, 0xb5, 0x20, 0xc9, 0x3e, 0xdc, 0x6a, 0x40, 0x36, 0x66, 0xea, 0x51, 0x8c, 0x71, 0xf5}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -400,7 +400,7 @@ func _1561368210_add_installation_metadataUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1561368210_add_installation_metadata.up.sql", size: 267, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "1561368210_add_installation_metadata.up.sql", size: 267, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xb4, 0x71, 0x8f, 0x29, 0xb1, 0xaa, 0xd6, 0xd1, 0x8c, 0x17, 0xef, 0x6c, 0xd5, 0x80, 0xb8, 0x2c, 0xc3, 0xfe, 0xec, 0x24, 0x4d, 0xc8, 0x25, 0xd3, 0xb4, 0xcd, 0xa9, 0xac, 0x63, 0x61, 0xb2, 0x9c}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -420,7 +420,7 @@ func docGo() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "doc.go", size: 377, mode: os.FileMode(0644), modTime: time.Unix(1603694100, 0)}
|
||||
info := bindataFileInfo{name: "doc.go", size: 377, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xef, 0xaf, 0xdf, 0xcf, 0x65, 0xae, 0x19, 0xfc, 0x9d, 0x29, 0xc1, 0x91, 0xaf, 0xb5, 0xd5, 0xb1, 0x56, 0xf3, 0xee, 0xa8, 0xba, 0x13, 0x65, 0xdb, 0xab, 0xcf, 0x4e, 0xac, 0x92, 0xe9, 0x60, 0xf1}}
|
||||
return a, nil
|
||||
}
|
||||
|
|
|
@ -48,6 +48,7 @@ func (db sqlitePersistence) tableUserMessagesAllFields() string {
|
|||
command_signature,
|
||||
replace_message,
|
||||
edited_at,
|
||||
deleted,
|
||||
rtl,
|
||||
line_count,
|
||||
response_to,
|
||||
|
@ -89,6 +90,7 @@ func (db sqlitePersistence) tableUserMessagesAllFieldsJoin() string {
|
|||
m1.command_signature,
|
||||
m1.replace_message,
|
||||
m1.edited_at,
|
||||
m1.deleted,
|
||||
m1.rtl,
|
||||
m1.line_count,
|
||||
m1.response_to,
|
||||
|
@ -130,6 +132,7 @@ func (db sqlitePersistence) tableUserMessagesScanAllFields(row scanner, message
|
|||
var gapFrom sql.NullInt64
|
||||
var gapTo sql.NullInt64
|
||||
var editedAt sql.NullInt64
|
||||
var deleted sql.NullBool
|
||||
|
||||
sticker := &protobuf.StickerMessage{}
|
||||
command := &common.CommandParameters{}
|
||||
|
@ -168,6 +171,7 @@ func (db sqlitePersistence) tableUserMessagesScanAllFields(row scanner, message
|
|||
&command.Signature,
|
||||
&message.Replace,
|
||||
&editedAt,
|
||||
&deleted,
|
||||
&message.RTL,
|
||||
&message.LineCount,
|
||||
&message.ResponseTo,
|
||||
|
@ -193,6 +197,10 @@ func (db sqlitePersistence) tableUserMessagesScanAllFields(row scanner, message
|
|||
message.EditedAt = uint64(editedAt.Int64)
|
||||
}
|
||||
|
||||
if deleted.Valid {
|
||||
message.Deleted = deleted.Bool
|
||||
}
|
||||
|
||||
if quotedText.Valid {
|
||||
message.QuotedMessage = &common.QuotedMessage{
|
||||
From: quotedFrom.String,
|
||||
|
@ -327,6 +335,7 @@ func (db sqlitePersistence) tableUserMessagesAllValues(message *common.Message)
|
|||
command.Signature,
|
||||
message.Replace,
|
||||
int64(message.EditedAt),
|
||||
message.Deleted,
|
||||
message.RTL,
|
||||
message.LineCount,
|
||||
message.ResponseTo,
|
||||
|
@ -1427,6 +1436,31 @@ func (db sqlitePersistence) deactivateChat(chat *Chat, currentClockValue uint64,
|
|||
return db.clearHistory(chat, currentClockValue, tx, true)
|
||||
}
|
||||
|
||||
func (db sqlitePersistence) SaveDelete(deleteMessage DeleteMessage) error {
|
||||
_, err := db.db.Exec(`INSERT INTO user_messages_deletes (clock, chat_id, message_id, source, id) VALUES(?,?,?,?,?)`, deleteMessage.Clock, deleteMessage.ChatId, deleteMessage.MessageId, deleteMessage.From, deleteMessage.ID)
|
||||
return err
|
||||
}
|
||||
|
||||
func (db sqlitePersistence) GetDeletes(messageID string, from string) ([]*DeleteMessage, error) {
|
||||
rows, err := db.db.Query(`SELECT clock, chat_id, message_id, source, id FROM user_messages_deletes WHERE message_id = ? AND source = ? ORDER BY CLOCK DESC`, messageID, from)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var messages []*DeleteMessage
|
||||
|
||||
for rows.Next() {
|
||||
d := &DeleteMessage{}
|
||||
err := rows.Scan(&d.Clock, &d.ChatId, &d.MessageId, &d.From, &d.ID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
messages = append(messages, d)
|
||||
|
||||
}
|
||||
return messages, nil
|
||||
}
|
||||
|
||||
func (db sqlitePersistence) SaveEdit(editMessage EditMessage) error {
|
||||
_, err := db.db.Exec(`INSERT INTO user_messages_edits (clock, chat_id, message_id, text, source, id) VALUES(?,?,?,?,?,?)`, editMessage.Clock, editMessage.ChatId, editMessage.MessageId, editMessage.Text, editMessage.From, editMessage.ID)
|
||||
return err
|
||||
|
|
|
@ -75,6 +75,21 @@ func ValidateEditMessage(message protobuf.EditMessage) error {
|
|||
return ValidateText(message.Text)
|
||||
}
|
||||
|
||||
func ValidateDeleteMessage(message protobuf.DeleteMessage) error {
|
||||
if len(message.ChatId) == 0 {
|
||||
return errors.New("chat-id can't be empty")
|
||||
}
|
||||
if len(message.MessageId) == 0 {
|
||||
return errors.New("message-id can't be empty")
|
||||
}
|
||||
|
||||
if message.MessageType == protobuf.MessageType_UNKNOWN_MESSAGE_TYPE || message.MessageType == protobuf.MessageType_SYSTEM_MESSAGE_PRIVATE_GROUP {
|
||||
return errors.New("unknown message type")
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func ValidateReceivedPairInstallation(message *protobuf.PairInstallation, whisperTimestamp uint64) error {
|
||||
if err := validateClockValue(message.Clock, whisperTimestamp); err != nil {
|
||||
return err
|
||||
|
|
|
@ -2550,6 +2550,23 @@ func (m *Messenger) handleRetrievedMessages(chatWithMessages map[transport.Filte
|
|||
continue
|
||||
}
|
||||
|
||||
case protobuf.DeleteMessage:
|
||||
logger.Debug("Handling DeleteMessage")
|
||||
deleteProto := msg.ParsedMessage.Interface().(protobuf.DeleteMessage)
|
||||
deleteMessage := DeleteMessage{
|
||||
DeleteMessage: deleteProto,
|
||||
From: contact.ID,
|
||||
ID: messageID,
|
||||
SigPubKey: publicKey,
|
||||
}
|
||||
|
||||
err = m.HandleDeleteMessage(messageState.Response, deleteMessage)
|
||||
if err != nil {
|
||||
logger.Warn("failed to handle DeleteMessage", zap.Error(err))
|
||||
allMessagesProcessed = false
|
||||
continue
|
||||
}
|
||||
|
||||
case protobuf.PinMessage:
|
||||
pinMessage := msg.ParsedMessage.Interface().(protobuf.PinMessage)
|
||||
err = m.HandlePinMessage(messageState, pinMessage)
|
||||
|
|
|
@ -0,0 +1,185 @@
|
|||
package protocol
|
||||
|
||||
import (
|
||||
"context"
|
||||
"crypto/ecdsa"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/suite"
|
||||
"go.uber.org/zap"
|
||||
|
||||
gethbridge "github.com/status-im/status-go/eth-node/bridge/geth"
|
||||
"github.com/status-im/status-go/eth-node/crypto"
|
||||
"github.com/status-im/status-go/eth-node/types"
|
||||
"github.com/status-im/status-go/protocol/common"
|
||||
"github.com/status-im/status-go/protocol/protobuf"
|
||||
"github.com/status-im/status-go/protocol/tt"
|
||||
"github.com/status-im/status-go/waku"
|
||||
)
|
||||
|
||||
func TestMessengerDeleteMessageSuite(t *testing.T) {
|
||||
suite.Run(t, new(MessengerDeleteMessageSuite))
|
||||
}
|
||||
|
||||
type MessengerDeleteMessageSuite struct {
|
||||
suite.Suite
|
||||
m *Messenger // main instance of Messenger
|
||||
privateKey *ecdsa.PrivateKey // private key for the main instance of Messenger
|
||||
// If one wants to send messages between different instances of Messenger,
|
||||
// a single waku service should be shared.
|
||||
shh types.Waku
|
||||
logger *zap.Logger
|
||||
}
|
||||
|
||||
func (s *MessengerDeleteMessageSuite) SetupTest() {
|
||||
s.logger = tt.MustCreateTestLogger()
|
||||
|
||||
config := waku.DefaultConfig
|
||||
config.MinimumAcceptedPoW = 0
|
||||
shh := waku.New(&config, s.logger)
|
||||
s.shh = gethbridge.NewGethWakuWrapper(shh)
|
||||
s.Require().NoError(shh.Start())
|
||||
|
||||
s.m = s.newMessenger()
|
||||
s.privateKey = s.m.identity
|
||||
_, err := s.m.Start()
|
||||
s.Require().NoError(err)
|
||||
}
|
||||
|
||||
func (s *MessengerDeleteMessageSuite) TearDownTest() {
|
||||
s.Require().NoError(s.m.Shutdown())
|
||||
}
|
||||
|
||||
func (s *MessengerDeleteMessageSuite) newMessenger() *Messenger {
|
||||
privateKey, err := crypto.GenerateKey()
|
||||
s.Require().NoError(err)
|
||||
|
||||
messenger, err := newMessengerWithKey(s.shh, privateKey, s.logger, nil)
|
||||
s.Require().NoError(err)
|
||||
return messenger
|
||||
}
|
||||
|
||||
func (s *MessengerDeleteMessageSuite) TestDeleteMessage() {
|
||||
theirMessenger := s.newMessenger()
|
||||
_, err := theirMessenger.Start()
|
||||
s.Require().NoError(err)
|
||||
|
||||
theirChat := CreateOneToOneChat("Their 1TO1", &s.privateKey.PublicKey, s.m.transport)
|
||||
err = theirMessenger.SaveChat(theirChat)
|
||||
s.Require().NoError(err)
|
||||
|
||||
ourChat := CreateOneToOneChat("Our 1TO1", &theirMessenger.identity.PublicKey, s.m.transport)
|
||||
err = s.m.SaveChat(ourChat)
|
||||
s.Require().NoError(err)
|
||||
|
||||
inputMessage := buildTestMessage(*theirChat)
|
||||
sendResponse, err := theirMessenger.SendChatMessage(context.Background(), inputMessage)
|
||||
s.NoError(err)
|
||||
s.Require().Len(sendResponse.Messages(), 1)
|
||||
|
||||
response, err := WaitOnMessengerResponse(
|
||||
s.m,
|
||||
func(r *MessengerResponse) bool { return len(r.messages) > 0 },
|
||||
"no messages",
|
||||
)
|
||||
s.Require().NoError(err)
|
||||
s.Require().Len(response.Chats(), 1)
|
||||
s.Require().Len(response.Messages(), 1)
|
||||
|
||||
ogMessage := sendResponse.Messages()[0]
|
||||
|
||||
sendResponse, err = theirMessenger.DeleteMessageAndSend(context.Background(), ogMessage.ID)
|
||||
|
||||
s.Require().NoError(err)
|
||||
s.Require().Len(sendResponse.Messages(), 1)
|
||||
s.Require().True(sendResponse.Messages()[0].Deleted)
|
||||
s.Require().Len(sendResponse.Chats(), 1)
|
||||
s.Require().NotNil(sendResponse.Chats()[0].LastMessage)
|
||||
|
||||
// Main instance user attempts to delete the message it received from theirMessenger
|
||||
_, err = s.m.DeleteMessageAndSend(context.Background(), ogMessage.ID)
|
||||
|
||||
s.Require().Equal(ErrInvalidEditOrDeleteAuthor, err)
|
||||
}
|
||||
|
||||
func (s *MessengerDeleteMessageSuite) TestDeleteWrongMessageType() {
|
||||
theirMessenger := s.newMessenger()
|
||||
_, err := theirMessenger.Start()
|
||||
s.Require().NoError(err)
|
||||
|
||||
theirChat := CreateOneToOneChat("Their 1TO1", &s.privateKey.PublicKey, s.m.transport)
|
||||
err = theirMessenger.SaveChat(theirChat)
|
||||
s.Require().NoError(err)
|
||||
|
||||
ourChat := CreateOneToOneChat("Our 1TO1", &theirMessenger.identity.PublicKey, s.m.transport)
|
||||
err = s.m.SaveChat(ourChat)
|
||||
s.Require().NoError(err)
|
||||
|
||||
inputMessage := buildTestGapMessage(*theirChat)
|
||||
sendResponse, err := theirMessenger.SendChatMessage(context.Background(), inputMessage)
|
||||
s.NoError(err)
|
||||
s.Require().Len(sendResponse.Messages(), 1)
|
||||
|
||||
ogMessage := sendResponse.Messages()[0]
|
||||
|
||||
// Delete should not work
|
||||
_, err = theirMessenger.DeleteMessageAndSend(context.Background(), ogMessage.ID)
|
||||
|
||||
s.Require().Equal(ErrInvalidDeleteTypeAuthor, err)
|
||||
}
|
||||
|
||||
// TODO fix activity center notifications not being deleted when a message is deleted
|
||||
|
||||
func (s *MessengerDeleteMessageSuite) TestDeleteMessageFirstThenMessage() {
|
||||
theirMessenger := s.newMessenger()
|
||||
_, err := theirMessenger.Start()
|
||||
s.Require().NoError(err)
|
||||
|
||||
theirChat := CreateOneToOneChat("Their 1TO1", &s.privateKey.PublicKey, s.m.transport)
|
||||
err = theirMessenger.SaveChat(theirChat)
|
||||
s.Require().NoError(err)
|
||||
|
||||
contact, err := BuildContactFromPublicKey(&theirMessenger.identity.PublicKey)
|
||||
s.Require().NoError(err)
|
||||
|
||||
ourChat := CreateOneToOneChat("Our 1TO1", &theirMessenger.identity.PublicKey, s.m.transport)
|
||||
err = s.m.SaveChat(ourChat)
|
||||
s.Require().NoError(err)
|
||||
messageID := "message-id"
|
||||
|
||||
inputMessage := buildTestMessage(*theirChat)
|
||||
inputMessage.Clock = 1
|
||||
deleteMessage := DeleteMessage{
|
||||
DeleteMessage: protobuf.DeleteMessage{
|
||||
Clock: 2,
|
||||
MessageType: protobuf.MessageType_ONE_TO_ONE,
|
||||
MessageId: messageID,
|
||||
ChatId: theirChat.ID,
|
||||
},
|
||||
From: common.PubkeyToHex(&theirMessenger.identity.PublicKey),
|
||||
}
|
||||
|
||||
response := &MessengerResponse{}
|
||||
|
||||
// Handle Delete first
|
||||
err = s.m.HandleDeleteMessage(response, deleteMessage)
|
||||
s.Require().NoError(err)
|
||||
|
||||
// // Handle chat message
|
||||
response = &MessengerResponse{}
|
||||
state := &ReceivedMessageState{
|
||||
Response: response,
|
||||
CurrentMessageState: &CurrentMessageState{
|
||||
Message: inputMessage.ChatMessage,
|
||||
MessageID: messageID,
|
||||
WhisperTimestamp: s.m.getTimesource().GetCurrentTime(),
|
||||
Contact: contact,
|
||||
PublicKey: &theirMessenger.identity.PublicKey,
|
||||
},
|
||||
}
|
||||
err = s.m.HandleChatMessage(state)
|
||||
s.Require().NoError(err)
|
||||
s.Require().Len(response.Messages(), 1)
|
||||
s.Require().True(response.Messages()[0].Deleted)
|
||||
|
||||
}
|
|
@ -127,7 +127,7 @@ func (s *MessengerEditMessageSuite) TestEditMessage() {
|
|||
}
|
||||
_, err = s.m.EditMessage(context.Background(), editedMessage)
|
||||
|
||||
s.Require().Equal(ErrInvalidEditAuthor, err)
|
||||
s.Require().Equal(ErrInvalidEditOrDeleteAuthor, err)
|
||||
}
|
||||
|
||||
func (s *MessengerEditMessageSuite) TestEditMessageActivityCenter() {
|
||||
|
@ -204,7 +204,7 @@ func (s *MessengerEditMessageSuite) TestEditMessageActivityCenter() {
|
|||
}
|
||||
_, err = s.m.EditMessage(context.Background(), editedMessage)
|
||||
|
||||
s.Require().Equal(ErrInvalidEditAuthor, err)
|
||||
s.Require().Equal(ErrInvalidEditOrDeleteAuthor, err)
|
||||
}
|
||||
|
||||
func (s *MessengerEditMessageSuite) TestEditMessageEdgeCases() {
|
||||
|
|
|
@ -545,6 +545,71 @@ func (m *Messenger) HandleEditMessage(response *MessengerResponse, editMessage E
|
|||
return nil
|
||||
}
|
||||
|
||||
func (m *Messenger) HandleDeleteMessage(response *MessengerResponse, deleteMessage DeleteMessage) error {
|
||||
if err := ValidateDeleteMessage(deleteMessage.DeleteMessage); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
messageID := deleteMessage.MessageId
|
||||
// Check if it's already in the response
|
||||
originalMessage := response.GetMessage(messageID)
|
||||
// otherwise pull from database
|
||||
if originalMessage == nil {
|
||||
var err error
|
||||
originalMessage, err = m.persistence.MessageByID(messageID)
|
||||
|
||||
if err != nil && err != common.ErrRecordNotFound {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
if originalMessage == nil {
|
||||
return m.persistence.SaveDelete(deleteMessage)
|
||||
}
|
||||
|
||||
chat, ok := m.allChats.Load(originalMessage.LocalChatID)
|
||||
if !ok {
|
||||
return errors.New("chat not found")
|
||||
}
|
||||
|
||||
// Check edit is valid
|
||||
if originalMessage.From != deleteMessage.From {
|
||||
return errors.New("invalid delete, not the right author")
|
||||
}
|
||||
|
||||
// Update message and return it
|
||||
originalMessage.Deleted = true
|
||||
|
||||
err := m.persistence.SaveMessages([]*common.Message{originalMessage})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
err = m.persistence.HideMessage(deleteMessage.MessageId)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if chat.LastMessage != nil && chat.LastMessage.ID == originalMessage.ID {
|
||||
// Get last message that is not hidden
|
||||
messages, _, err := m.persistence.MessageByChatID(originalMessage.LocalChatID, "", 1)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if messages != nil {
|
||||
chat.LastMessage = messages[0]
|
||||
err := m.saveChat(chat)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
response.AddRemovedMessage(messageID)
|
||||
response.AddChat(chat)
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Messenger) HandleChatMessage(state *ReceivedMessageState) error {
|
||||
logger := m.logger.With(zap.String("site", "handleChatMessage"))
|
||||
if err := ValidateReceivedChatMessage(&state.CurrentMessageState.Message, state.CurrentMessageState.WhisperTimestamp); err != nil {
|
||||
|
@ -623,6 +688,11 @@ func (m *Messenger) HandleChatMessage(state *ReceivedMessageState) error {
|
|||
return err
|
||||
}
|
||||
|
||||
err = m.checkForDeletes(receivedMessage)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
err = chat.UpdateFromMessage(receivedMessage, m.getTimesource())
|
||||
if err != nil {
|
||||
return err
|
||||
|
@ -1186,6 +1256,21 @@ func (m *Messenger) checkForEdits(message *common.Message) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (m *Messenger) checkForDeletes(message *common.Message) error {
|
||||
// Check for any pending deletes
|
||||
// If any pending deletes are available and valid, apply them
|
||||
messageDeletes, err := m.persistence.GetDeletes(message.ID, message.From)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(messageDeletes) == 0 {
|
||||
return nil
|
||||
}
|
||||
|
||||
return m.applyDeleteMessage(messageDeletes, message)
|
||||
}
|
||||
|
||||
func (m *Messenger) isMessageAllowedFrom(publicKey string, chat *Chat) (bool, error) {
|
||||
onlyFromContacts, err := m.settings.GetMessagesFromContactsOnly()
|
||||
if err != nil {
|
||||
|
|
|
@ -9,7 +9,8 @@ import (
|
|||
"github.com/status-im/status-go/protocol/requests"
|
||||
)
|
||||
|
||||
var ErrInvalidEditAuthor = errors.New("sender is not the author of the message")
|
||||
var ErrInvalidEditOrDeleteAuthor = errors.New("sender is not the author of the message")
|
||||
var ErrInvalidDeleteTypeAuthor = errors.New("message type cannot be deleted")
|
||||
var ErrInvalidEditContentType = errors.New("only text messages can be replaced")
|
||||
|
||||
func (m *Messenger) EditMessage(ctx context.Context, request *requests.EditMessage) (*MessengerResponse, error) {
|
||||
|
@ -23,7 +24,7 @@ func (m *Messenger) EditMessage(ctx context.Context, request *requests.EditMessa
|
|||
}
|
||||
|
||||
if message.From != common.PubkeyToHex(&m.identity.PublicKey) {
|
||||
return nil, ErrInvalidEditAuthor
|
||||
return nil, ErrInvalidEditOrDeleteAuthor
|
||||
}
|
||||
|
||||
if message.ContentType != protobuf.ChatMessage_TEXT_PLAIN {
|
||||
|
@ -82,6 +83,83 @@ func (m *Messenger) EditMessage(ctx context.Context, request *requests.EditMessa
|
|||
return response, nil
|
||||
}
|
||||
|
||||
func (m *Messenger) DeleteMessageAndSend(ctx context.Context, messageID string) (*MessengerResponse, error) {
|
||||
message, err := m.persistence.MessageByID(messageID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if message.From != common.PubkeyToHex(&m.identity.PublicKey) {
|
||||
return nil, ErrInvalidEditOrDeleteAuthor
|
||||
}
|
||||
|
||||
// A valid added chat is required.
|
||||
chat, ok := m.allChats.Load(message.ChatId)
|
||||
if !ok {
|
||||
return nil, errors.New("Chat not found")
|
||||
}
|
||||
|
||||
// Only certain types of messages can be deleted
|
||||
if message.ContentType != protobuf.ChatMessage_TEXT_PLAIN &&
|
||||
message.ContentType != protobuf.ChatMessage_STICKER &&
|
||||
message.ContentType != protobuf.ChatMessage_EMOJI &&
|
||||
message.ContentType != protobuf.ChatMessage_IMAGE &&
|
||||
message.ContentType != protobuf.ChatMessage_AUDIO {
|
||||
return nil, ErrInvalidDeleteTypeAuthor
|
||||
}
|
||||
|
||||
clock, _ := chat.NextClockAndTimestamp(m.getTimesource())
|
||||
|
||||
deleteMessage := &DeleteMessage{}
|
||||
|
||||
deleteMessage.ChatId = message.ChatId
|
||||
deleteMessage.MessageId = messageID
|
||||
deleteMessage.Clock = clock
|
||||
|
||||
encodedMessage, err := m.encodeChatEntity(chat, deleteMessage)
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
rawMessage := common.RawMessage{
|
||||
LocalChatID: chat.ID,
|
||||
Payload: encodedMessage,
|
||||
MessageType: protobuf.ApplicationMetadataMessage_DELETE_MESSAGE,
|
||||
SkipGroupMessageWrap: true,
|
||||
ResendAutomatically: true,
|
||||
}
|
||||
_, err = m.dispatchMessage(ctx, rawMessage)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
message.Deleted = true
|
||||
err = m.persistence.SaveMessages([]*common.Message{message})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
err = m.persistence.HideMessage(messageID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if chat.LastMessage != nil && chat.LastMessage.ID == message.ID {
|
||||
chat.LastMessage = message
|
||||
err := m.saveChat(chat)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
|
||||
response := &MessengerResponse{}
|
||||
response.AddMessage(message)
|
||||
response.AddChat(chat)
|
||||
|
||||
return response, nil
|
||||
}
|
||||
|
||||
func (m *Messenger) applyEditMessage(editMessage *protobuf.EditMessage, message *common.Message) error {
|
||||
if err := ValidateText(editMessage.Text); err != nil {
|
||||
return err
|
||||
|
@ -110,3 +188,23 @@ func (m *Messenger) applyEditMessage(editMessage *protobuf.EditMessage, message
|
|||
|
||||
return m.persistence.SaveMessages([]*common.Message{message})
|
||||
}
|
||||
|
||||
func (m *Messenger) applyDeleteMessage(messageDeletes []*DeleteMessage, message *common.Message) error {
|
||||
if messageDeletes[0].From != message.From {
|
||||
return ErrInvalidEditOrDeleteAuthor
|
||||
}
|
||||
|
||||
message.Deleted = true
|
||||
|
||||
err := message.PrepareContent(common.PubkeyToHex(&m.identity.PublicKey))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
err = m.persistence.SaveMessages([]*common.Message{message})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return m.persistence.HideMessage(message.ID)
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ type MessengerResponse struct {
|
|||
notifications map[string]*localnotifications.Notification
|
||||
chats map[string]*Chat
|
||||
removedChats map[string]bool
|
||||
removedMessages map[string]bool
|
||||
communities map[string]*communities.Community
|
||||
activityCenterNotifications map[string]*ActivityCenterNotification
|
||||
messages map[string]*common.Message
|
||||
|
@ -36,6 +37,7 @@ func (r *MessengerResponse) MarshalJSON() ([]byte, error) {
|
|||
responseItem := struct {
|
||||
Chats []*Chat `json:"chats,omitempty"`
|
||||
RemovedChats []string `json:"removedChats,omitempty"`
|
||||
RemovedMessages []string `json:"removedMessages,omitempty"`
|
||||
Messages []*common.Message `json:"messages,omitempty"`
|
||||
Contacts []*Contact `json:"contacts,omitempty"`
|
||||
Installations []*multidevice.Installation `json:"installations,omitempty"`
|
||||
|
@ -68,6 +70,7 @@ func (r *MessengerResponse) MarshalJSON() ([]byte, error) {
|
|||
responseItem.Chats = r.Chats()
|
||||
responseItem.Communities = r.Communities()
|
||||
responseItem.RemovedChats = r.RemovedChats()
|
||||
responseItem.RemovedMessages = r.RemovedMessages()
|
||||
responseItem.ActivityCenterNotifications = r.ActivityCenterNotifications()
|
||||
responseItem.PinMessages = r.PinMessages()
|
||||
responseItem.StatusUpdates = r.StatusUpdates()
|
||||
|
@ -91,6 +94,14 @@ func (r *MessengerResponse) RemovedChats() []string {
|
|||
return chats
|
||||
}
|
||||
|
||||
func (r *MessengerResponse) RemovedMessages() []string {
|
||||
var messages []string
|
||||
for messageID := range r.removedMessages {
|
||||
messages = append(messages, messageID)
|
||||
}
|
||||
return messages
|
||||
}
|
||||
|
||||
func (r *MessengerResponse) Communities() []*communities.Community {
|
||||
var communities []*communities.Community
|
||||
for _, c := range r.communities {
|
||||
|
@ -135,6 +146,7 @@ func (r *MessengerResponse) IsEmpty() bool {
|
|||
len(r.communities)+
|
||||
len(r.CommunityChanges)+
|
||||
len(r.removedChats)+
|
||||
len(r.removedMessages)+
|
||||
len(r.Mailservers)+
|
||||
len(r.notifications)+
|
||||
len(r.statusUpdates)+
|
||||
|
@ -159,6 +171,7 @@ func (r *MessengerResponse) Merge(response *MessengerResponse) error {
|
|||
|
||||
r.AddChats(response.Chats())
|
||||
r.AddRemovedChats(response.RemovedChats())
|
||||
r.AddRemovedMessages(response.RemovedMessages())
|
||||
r.AddNotifications(response.Notifications())
|
||||
r.AddMessages(response.Messages())
|
||||
r.AddCommunities(response.Communities())
|
||||
|
@ -227,6 +240,20 @@ func (r *MessengerResponse) AddRemovedChat(chatID string) {
|
|||
r.removedChats[chatID] = true
|
||||
}
|
||||
|
||||
func (r *MessengerResponse) AddRemovedMessages(messages []string) {
|
||||
for _, m := range messages {
|
||||
r.AddRemovedMessage(m)
|
||||
}
|
||||
}
|
||||
|
||||
func (r *MessengerResponse) AddRemovedMessage(messageID string) {
|
||||
if r.removedMessages == nil {
|
||||
r.removedMessages = make(map[string]bool)
|
||||
}
|
||||
|
||||
r.removedMessages[messageID] = true
|
||||
}
|
||||
|
||||
func (r *MessengerResponse) AddActivityCenterNotifications(ns []*ActivityCenterNotification) {
|
||||
for _, n := range ns {
|
||||
r.AddActivityCenterNotification(n)
|
||||
|
|
|
@ -351,6 +351,27 @@ func buildTestMessage(chat Chat) *common.Message {
|
|||
return message
|
||||
}
|
||||
|
||||
func buildTestGapMessage(chat Chat) *common.Message {
|
||||
clock, timestamp := chat.NextClockAndTimestamp(&testTimeSource{})
|
||||
message := &common.Message{}
|
||||
message.ChatId = chat.ID
|
||||
message.Clock = clock
|
||||
message.Timestamp = timestamp
|
||||
message.WhisperTimestamp = clock
|
||||
message.LocalChatID = chat.ID
|
||||
message.ContentType = protobuf.ChatMessage_SYSTEM_MESSAGE_GAP
|
||||
switch chat.ChatType {
|
||||
case ChatTypePublic, ChatTypeProfile:
|
||||
message.MessageType = protobuf.MessageType_PUBLIC_GROUP
|
||||
case ChatTypeOneToOne:
|
||||
message.MessageType = protobuf.MessageType_ONE_TO_ONE
|
||||
case ChatTypePrivateGroupChat:
|
||||
message.MessageType = protobuf.MessageType_PRIVATE_GROUP
|
||||
}
|
||||
|
||||
return message
|
||||
}
|
||||
|
||||
func (s *MessengerSuite) TestMarkMessagesSeen() {
|
||||
chat := CreatePublicChat("test-chat", s.m.transport)
|
||||
chat.UnviewedMessagesCount = 2
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
// 1623938330_add_edit_messages.up.sql (369B)
|
||||
// 1624978434_add_muted_community.up.sql (82B)
|
||||
// 1625018910_add_repply_message_activity_center_notification_field.up.sql (86B)
|
||||
// 1625762506_add_deleted_messages.up.sql (357B)
|
||||
// README.md (554B)
|
||||
// doc.go (850B)
|
||||
|
||||
|
@ -125,7 +126,7 @@ func _000001_initDownDbSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "000001_init.down.db.sql", size: 65, mode: os.FileMode(0644), modTime: time.Unix(1610007618, 0)}
|
||||
info := bindataFileInfo{name: "000001_init.down.db.sql", size: 65, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -145,7 +146,7 @@ func _000001_initUpDbSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "000001_init.up.db.sql", size: 2719, mode: os.FileMode(0644), modTime: time.Unix(1610007618, 0)}
|
||||
info := bindataFileInfo{name: "000001_init.up.db.sql", size: 2719, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -165,7 +166,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(0644), modTime: time.Unix(1610007618, 0)}
|
||||
info := bindataFileInfo{name: "000002_add_last_ens_clock_value.up.sql", size: 77, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -185,7 +186,7 @@ func _1586358095_add_replaceUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1586358095_add_replace.up.sql", size: 224, mode: os.FileMode(0644), modTime: time.Unix(1611588719, 0)}
|
||||
info := bindataFileInfo{name: "1586358095_add_replace.up.sql", size: 224, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -205,7 +206,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(0644), modTime: time.Unix(1611588719, 0)}
|
||||
info := bindataFileInfo{name: "1588665364_add_image_data.up.sql", size: 186, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -225,7 +226,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(0644), modTime: time.Unix(1611588719, 0)}
|
||||
info := bindataFileInfo{name: "1589365189_add_pow_target.up.sql", size: 66, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -245,7 +246,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(0644), modTime: time.Unix(1614609069, 0)}
|
||||
info := bindataFileInfo{name: "1591277220_add_index_messages.up.sql", size: 240, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -265,7 +266,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(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1593087212_add_mute_chat_and_raw_message_fields.up.sql", size: 215, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -285,7 +286,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(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1595862781_add_audio_data.up.sql", size: 246, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -305,7 +306,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(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1595865249_create_emoji_reactions_table.up.sql", size: 300, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -325,7 +326,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(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1596805115_create_group_chat_invitations_table.up.sql", size: 231, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -345,7 +346,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(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1597322655_add_invitation_admin_chat_field.up.sql", size: 54, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -365,7 +366,7 @@ func _1597757544_add_nicknameUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1597757544_add_nickname.up.sql", size: 52, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1597757544_add_nickname.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -385,7 +386,7 @@ func _1598955122_add_mentionsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1598955122_add_mentions.up.sql", size: 52, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1598955122_add_mentions.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -405,7 +406,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(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1599641390_add_emoji_reactions_index.up.sql", size: 126, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -425,7 +426,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(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1599720851_add_seen_index_remove_long_messages.up.sql", size: 150, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -445,7 +446,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(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "1603198582_add_profile_chat_field.up.sql", size: 45, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -465,7 +466,7 @@ func _1603816533_add_linksUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1603816533_add_links.up.sql", size: 48, mode: os.FileMode(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "1603816533_add_links.up.sql", size: 48, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -485,7 +486,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(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "1603888149_create_chat_identity_last_published_table.up.sql", size: 407, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -505,7 +506,7 @@ func _1605075346_add_communitiesUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1605075346_add_communities.up.sql", size: 6971, mode: os.FileMode(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "1605075346_add_communities.up.sql", size: 6971, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -525,7 +526,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(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "1610117927_add_message_cache.up.sql", size: 142, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -545,7 +546,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(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "1610959908_add_dont_wrap_to_raw_messages.up.sql", size: 83, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -565,7 +566,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(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "1610960912_add_send_on_personal_topic.up.sql", size: 82, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -585,7 +586,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(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "1612870480_add_datasync_id.up.sql", size: 111, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -605,7 +606,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(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "1614152139_add_communities_request_to_join.up.sql", size: 831, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -625,7 +626,7 @@ func _1615374373_add_confirmationsUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1615374373_add_confirmations.up.sql", size: 227, mode: os.FileMode(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "1615374373_add_confirmations.up.sql", size: 227, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -645,7 +646,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(0644), modTime: time.Unix(1618913882, 0)}
|
||||
info := bindataFileInfo{name: "1617694931_add_notification_center.up.sql", size: 572, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -665,7 +666,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(0644), modTime: time.Unix(1621583900, 0)}
|
||||
info := bindataFileInfo{name: "1618923660_create_pin_messages.up.sql", size: 265, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -685,7 +686,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(0644), modTime: time.Unix(1621583900, 0)}
|
||||
info := bindataFileInfo{name: "1619094007_add_joined_chat_field.up.sql", size: 101, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -705,7 +706,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(0644), modTime: time.Unix(1621583900, 0)}
|
||||
info := bindataFileInfo{name: "1619099821_add_last_synced_field.up.sql", size: 226, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -725,7 +726,7 @@ func _1621933219_add_mentionedUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1621933219_add_mentioned.up.sql", size: 70, mode: os.FileMode(0644), modTime: time.Unix(1622722246, 0)}
|
||||
info := bindataFileInfo{name: "1621933219_add_mentioned.up.sql", size: 70, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -745,7 +746,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(0644), modTime: time.Unix(1625056983, 0)}
|
||||
info := bindataFileInfo{name: "1622010048_add_unviewed_mentions_count.up.sql", size: 114, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -765,7 +766,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(0644), modTime: time.Unix(1625056983, 0)}
|
||||
info := bindataFileInfo{name: "1622061278_add_message_activity_center_notification_field.up.sql", size: 80, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -785,7 +786,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(0644), modTime: time.Unix(1625056983, 0)}
|
||||
info := bindataFileInfo{name: "1622464518_set_synced_to_from.up.sql", size: 105, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -805,7 +806,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(0644), modTime: time.Unix(1625056983, 0)}
|
||||
info := bindataFileInfo{name: "1622464519_add_chat_description.up.sql", size: 93, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -825,7 +826,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(0644), modTime: time.Unix(1625056983, 0)}
|
||||
info := bindataFileInfo{name: "1622622253_add_pinned_by_to_pin_messages.up.sql", size: 52, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -845,7 +846,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(0644), modTime: time.Unix(1625056983, 0)}
|
||||
info := bindataFileInfo{name: "1623938329_add_author_activity_center_notification_field.up.sql", size: 66, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -865,7 +866,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(0644), modTime: time.Unix(1626270780, 0)}
|
||||
info := bindataFileInfo{name: "1623938330_add_edit_messages.up.sql", size: 369, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -885,7 +886,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(0644), modTime: time.Unix(1626270780, 0)}
|
||||
info := bindataFileInfo{name: "1624978434_add_muted_community.up.sql", size: 82, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -905,11 +906,31 @@ 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(0644), modTime: time.Unix(1626436769, 0)}
|
||||
info := bindataFileInfo{name: "1625018910_add_repply_message_activity_center_notification_field.up.sql", size: 86, mode: os.FileMode(0664), modTime: time.Unix(1627313620, 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
|
||||
}
|
||||
|
||||
var __1625762506_add_deleted_messagesUpSql = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\x8f\xdf\x4a\xc3\x30\x14\xc6\xef\xf3\x14\xdf\x65\x0b\x7b\x83\x5d\x9d\x35\x67\x5a\x3c\x4b\x24\xa6\xe2\xae\xc2\x68\x0e\x5a\x9c\x0c\x96\xf6\xfd\x45\x2c\x14\xa5\xbd\xfe\x7d\x7f\x49\x22\x07\x44\x3a\x08\x63\x2a\x7a\x4f\x5f\x5a\xca\xe5\x5d\x0b\xc8\x5a\x34\x5e\xba\x93\x43\xd6\xab\x8e\x9a\x71\xf0\x5e\x60\xf9\x48\x9d\x44\x1c\x49\x5e\x78\x6f\x4c\x13\x98\x22\xaf\x45\xa4\x5f\x5f\x41\x65\x80\xfe\x7a\xeb\x3f\xd1\xba\xc8\x0f\x1c\xe0\x7c\x84\xeb\x44\x76\x3f\xe4\xe3\x32\xa6\x21\xe3\x95\x42\xf3\x48\x7f\xd9\x1c\xb5\x85\xcb\x6d\xba\xf7\xba\x8a\x36\x1c\xcf\xa1\x3d\x51\x38\xe3\x89\xcf\xd5\x90\x6b\x53\x2f\x0f\x5a\x67\xf9\x6d\xfd\x41\x5a\x76\xa4\xb9\xd3\xbb\x7f\x52\xcd\xc3\x58\xaa\x45\xb8\x9b\xd7\xd5\x7b\xf3\x1d\x00\x00\xff\xff\xe9\x4c\x40\xd6\x65\x01\x00\x00")
|
||||
|
||||
func _1625762506_add_deleted_messagesUpSqlBytes() ([]byte, error) {
|
||||
return bindataRead(
|
||||
__1625762506_add_deleted_messagesUpSql,
|
||||
"1625762506_add_deleted_messages.up.sql",
|
||||
)
|
||||
}
|
||||
|
||||
func _1625762506_add_deleted_messagesUpSql() (*asset, error) {
|
||||
bytes, err := _1625762506_add_deleted_messagesUpSqlBytes()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1625762506_add_deleted_messages.up.sql", size: 357, mode: os.FileMode(0644), modTime: time.Unix(1627322438, 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
|
||||
}
|
||||
|
||||
var _readmeMd = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x91\xc1\xce\xd3\x30\x10\x84\xef\x7e\x8a\x91\x7a\x01\xa9\x2a\x8f\xc0\x0d\x71\x82\x03\x48\x1c\xc9\x36\x9e\x36\x96\x1c\x6f\xf0\xae\x93\xe6\xed\x91\xa3\xc2\xdf\xff\x66\xed\xd8\x33\xdf\x78\x4f\xa7\x13\xbe\xea\x06\x57\x6c\x35\x39\x31\xa7\x7b\x15\x4f\x5a\xec\x73\x08\xbf\x08\x2d\x79\x7f\x4a\x43\x5b\x86\x17\xfd\x8c\x21\xea\x56\x5e\x47\x90\x4a\x14\x75\x48\xde\x64\x37\x2c\x6a\x96\xae\x99\x48\x05\xf6\x27\x77\x13\xad\x08\xae\x8a\x51\xe7\x25\xf3\xf1\xa9\x9f\xf9\x58\x58\x2c\xad\xbc\xe0\x8b\x56\xf0\x21\x5d\xeb\x4c\x95\xb3\xae\x84\x60\xd4\xdc\xe6\x82\x5d\x1b\x36\x6d\x39\x62\x92\xf5\xb8\x11\xdb\x92\xd3\x28\xce\xe0\x13\xe1\x72\xcd\x3c\x63\xd4\x65\x87\xae\xac\xe8\xc3\x28\x2e\x67\x44\x66\x3a\x21\x25\xa2\x72\xac\x14\x67\xbc\x84\x9f\x53\x32\x8c\x52\x70\x25\x56\xd6\xfd\x8d\x05\x37\xad\x30\x9d\x9f\xa6\x86\x0f\xcd\x58\x7f\xcf\x34\x93\x3b\xed\x90\x9f\xa4\x1f\xcf\x30\x85\x4d\x07\x58\xaf\x7f\x25\xc4\x9d\xf3\x72\x64\x84\xd0\x7f\xf9\x9b\x3a\x2d\x84\xef\x85\x48\x66\x8d\xd8\x88\x9b\x8c\x8c\x98\x5b\xf6\x74\x14\x4e\x33\x0d\xc9\xe0\x93\x38\xda\x12\xc5\x69\xbd\xe4\xf0\x2e\x7a\x78\x07\x1c\xfe\x13\x9f\x91\x29\x31\x95\x7b\x7f\x62\x59\x37\xb4\xe5\x5e\x25\xfe\x33\xee\xd5\x53\x71\xd6\xda\x3a\xd8\xcb\xde\x2e\xf8\xa1\x90\x55\x53\x0c\xc7\xaa\x0d\xe9\x76\x14\x29\x1c\x7b\x68\xdd\x2f\xe1\x6f\x00\x00\x00\xff\xff\x3c\x0a\xc2\xfe\x2a\x02\x00\x00")
|
||||
|
||||
func readmeMdBytes() ([]byte, error) {
|
||||
|
@ -925,7 +946,7 @@ func readmeMd() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "README.md", size: 554, mode: os.FileMode(0644), modTime: time.Unix(1617280156, 0)}
|
||||
info := bindataFileInfo{name: "README.md", size: 554, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -945,7 +966,7 @@ func docGo() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "doc.go", size: 850, mode: os.FileMode(0644), modTime: time.Unix(1611588719, 0)}
|
||||
info := bindataFileInfo{name: "doc.go", size: 850, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 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
|
||||
}
|
||||
|
@ -1121,6 +1142,8 @@ var _bindata = map[string]func() (*asset, error){
|
|||
|
||||
"1625018910_add_repply_message_activity_center_notification_field.up.sql": _1625018910_add_repply_message_activity_center_notification_fieldUpSql,
|
||||
|
||||
"1625762506_add_deleted_messages.up.sql": _1625762506_add_deleted_messagesUpSql,
|
||||
|
||||
"README.md": readmeMd,
|
||||
|
||||
"doc.go": docGo,
|
||||
|
@ -1207,8 +1230,9 @@ var _bintree = &bintree{nil, map[string]*bintree{
|
|||
"1623938330_add_edit_messages.up.sql": &bintree{_1623938330_add_edit_messagesUpSql, map[string]*bintree{}},
|
||||
"1624978434_add_muted_community.up.sql": &bintree{_1624978434_add_muted_communityUpSql, map[string]*bintree{}},
|
||||
"1625018910_add_repply_message_activity_center_notification_field.up.sql": &bintree{_1625018910_add_repply_message_activity_center_notification_fieldUpSql, map[string]*bintree{}},
|
||||
"README.md": &bintree{readmeMd, map[string]*bintree{}},
|
||||
"doc.go": &bintree{docGo, map[string]*bintree{}},
|
||||
"1625762506_add_deleted_messages.up.sql": &bintree{_1625762506_add_deleted_messagesUpSql, map[string]*bintree{}},
|
||||
"README.md": &bintree{readmeMd, map[string]*bintree{}},
|
||||
"doc.go": &bintree{docGo, map[string]*bintree{}},
|
||||
}}
|
||||
|
||||
// RestoreAsset restores an asset under the given directory.
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
ALTER TABLE user_messages ADD COLUMN deleted BOOL DEFAULT FALSE;
|
||||
|
||||
CREATE TABLE user_messages_deletes (
|
||||
clock INTEGER NOT NULL,
|
||||
chat_id VARCHAR NOT NULL,
|
||||
message_id VARCHAR NOT NULL,
|
||||
source VARCHAR NOT NULL,
|
||||
id VARCHAR NOT NULL,
|
||||
PRIMARY KEY(id)
|
||||
);
|
||||
|
||||
CREATE INDEX user_messages_deletes_message_id_source ON user_messages_edits(message_id, source);
|
|
@ -54,6 +54,7 @@ const (
|
|||
ApplicationMetadataMessage_PIN_MESSAGE ApplicationMetadataMessage_Type = 28
|
||||
ApplicationMetadataMessage_EDIT_MESSAGE ApplicationMetadataMessage_Type = 29
|
||||
ApplicationMetadataMessage_STATUS_UPDATE ApplicationMetadataMessage_Type = 30
|
||||
ApplicationMetadataMessage_DELETE_MESSAGE ApplicationMetadataMessage_Type = 31
|
||||
)
|
||||
|
||||
var ApplicationMetadataMessage_Type_name = map[int32]string{
|
||||
|
@ -88,6 +89,7 @@ var ApplicationMetadataMessage_Type_name = map[int32]string{
|
|||
28: "PIN_MESSAGE",
|
||||
29: "EDIT_MESSAGE",
|
||||
30: "STATUS_UPDATE",
|
||||
31: "DELETE_MESSAGE",
|
||||
}
|
||||
|
||||
var ApplicationMetadataMessage_Type_value = map[string]int32{
|
||||
|
@ -122,6 +124,7 @@ var ApplicationMetadataMessage_Type_value = map[string]int32{
|
|||
"PIN_MESSAGE": 28,
|
||||
"EDIT_MESSAGE": 29,
|
||||
"STATUS_UPDATE": 30,
|
||||
"DELETE_MESSAGE": 31,
|
||||
}
|
||||
|
||||
func (x ApplicationMetadataMessage_Type) String() string {
|
||||
|
@ -200,41 +203,43 @@ func init() {
|
|||
}
|
||||
|
||||
var fileDescriptor_ad09a6406fcf24c7 = []byte{
|
||||
// 562 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x53, 0xdd, 0x4e, 0x1b, 0x3d,
|
||||
0x10, 0xfd, 0x02, 0x7c, 0xfc, 0x0c, 0x7f, 0x66, 0x80, 0x12, 0xfe, 0x69, 0x5a, 0xb5, 0xb4, 0x95,
|
||||
0x72, 0xd1, 0x5e, 0xf7, 0xc2, 0x78, 0x07, 0x30, 0xcd, 0xda, 0x8b, 0xed, 0xa5, 0xca, 0x95, 0xb5,
|
||||
0x94, 0x14, 0x21, 0x01, 0x59, 0xc1, 0x72, 0xc1, 0x2b, 0xf4, 0x79, 0xfb, 0x00, 0x95, 0x37, 0x09,
|
||||
0x0b, 0x05, 0xca, 0x95, 0xe5, 0x73, 0xce, 0xcc, 0x78, 0xce, 0x78, 0xa0, 0x91, 0xe5, 0xf9, 0xf9,
|
||||
0xd9, 0x8f, 0xac, 0x38, 0xeb, 0x5e, 0xfa, 0x8b, 0x4e, 0x91, 0x9d, 0x64, 0x45, 0xe6, 0x2f, 0x3a,
|
||||
0xd7, 0xd7, 0xd9, 0x69, 0xa7, 0x99, 0x5f, 0x75, 0x8b, 0x2e, 0x8e, 0x97, 0xc7, 0xf1, 0xcd, 0xcf,
|
||||
0xc6, 0xaf, 0x71, 0x58, 0xe1, 0x55, 0x40, 0xdc, 0xd7, 0xc7, 0x3d, 0x39, 0xae, 0xc1, 0xc4, 0xf5,
|
||||
0xd9, 0xe9, 0x65, 0x56, 0xdc, 0x5c, 0x75, 0xea, 0xb5, 0xad, 0xda, 0xf6, 0x94, 0xa9, 0x00, 0xac,
|
||||
0xc3, 0x58, 0x9e, 0xdd, 0x9e, 0x77, 0xb3, 0x93, 0xfa, 0x50, 0xc9, 0x0d, 0xae, 0xf8, 0x15, 0x46,
|
||||
0x8a, 0xdb, 0xbc, 0x53, 0x1f, 0xde, 0xaa, 0x6d, 0xcf, 0x7c, 0xfe, 0xd0, 0x1c, 0xd4, 0x6b, 0x3e,
|
||||
0x5f, 0xab, 0xe9, 0x6e, 0xf3, 0x8e, 0x29, 0xc3, 0x1a, 0xbf, 0x47, 0x61, 0x24, 0x5c, 0x71, 0x12,
|
||||
0xc6, 0x52, 0xf5, 0x4d, 0xe9, 0xef, 0x8a, 0xfd, 0x87, 0x0c, 0xa6, 0xc4, 0x3e, 0x77, 0x3e, 0x26,
|
||||
0x6b, 0xf9, 0x1e, 0xb1, 0x1a, 0x22, 0xcc, 0x08, 0xad, 0x1c, 0x17, 0xce, 0xa7, 0x49, 0xc4, 0x1d,
|
||||
0xb1, 0x21, 0x5c, 0x87, 0xe5, 0x98, 0xe2, 0x1d, 0x32, 0x76, 0x5f, 0x26, 0x7d, 0xf8, 0x2e, 0x64,
|
||||
0x18, 0x17, 0x61, 0x2e, 0xe1, 0xd2, 0x78, 0xa9, 0xac, 0xe3, 0xad, 0x16, 0x77, 0x52, 0x2b, 0x36,
|
||||
0x12, 0x60, 0xdb, 0x56, 0xe2, 0x21, 0xfc, 0x3f, 0xbe, 0x81, 0x4d, 0x43, 0x87, 0x29, 0x59, 0xe7,
|
||||
0x79, 0x14, 0x19, 0xb2, 0xd6, 0xef, 0x6a, 0xe3, 0x9d, 0xe1, 0xca, 0x72, 0x51, 0x8a, 0x46, 0xf1,
|
||||
0x23, 0xbc, 0xe3, 0x42, 0x50, 0xe2, 0xfc, 0x4b, 0xda, 0x31, 0xfc, 0x04, 0xef, 0x23, 0x12, 0x2d,
|
||||
0xa9, 0xe8, 0x45, 0xf1, 0x38, 0x2e, 0xc1, 0xfc, 0x40, 0x74, 0x9f, 0x98, 0xc0, 0x05, 0x60, 0x96,
|
||||
0x54, 0xf4, 0x00, 0x05, 0xdc, 0x84, 0xd5, 0xbf, 0x73, 0xdf, 0x17, 0x4c, 0x06, 0x6b, 0x1e, 0x35,
|
||||
0xe9, 0xfb, 0x06, 0xb2, 0xa9, 0xa7, 0x69, 0x2e, 0x84, 0x4e, 0x95, 0x63, 0xd3, 0xf8, 0x1a, 0xd6,
|
||||
0x1f, 0xd3, 0x49, 0xba, 0xd3, 0x92, 0xc2, 0x87, 0xb9, 0xb0, 0x19, 0xdc, 0x80, 0x95, 0xc1, 0x3c,
|
||||
0x84, 0x8e, 0xc8, 0xf3, 0xe8, 0x88, 0x8c, 0x93, 0x96, 0x62, 0x52, 0x8e, 0xcd, 0x62, 0x03, 0x36,
|
||||
0x92, 0xd4, 0xee, 0x7b, 0xa5, 0x9d, 0xdc, 0x95, 0xa2, 0x97, 0xc2, 0xd0, 0x9e, 0xb4, 0xce, 0xf4,
|
||||
0x2c, 0x67, 0xc1, 0xa1, 0x7f, 0x6b, 0xbc, 0x21, 0x9b, 0x68, 0x65, 0x89, 0xcd, 0xe1, 0x2a, 0x2c,
|
||||
0x3d, 0x16, 0x1f, 0xa6, 0x64, 0xda, 0x0c, 0xf1, 0x2d, 0x6c, 0x3d, 0x43, 0x56, 0x29, 0xe6, 0x43,
|
||||
0xd7, 0x4f, 0xd5, 0x2b, 0xfd, 0x63, 0x0b, 0xa1, 0xa5, 0xa7, 0xe8, 0x7e, 0xf8, 0x62, 0xf8, 0x82,
|
||||
0x14, 0xeb, 0x03, 0xe9, 0x0d, 0xf5, 0x7d, 0x7e, 0x85, 0xcb, 0xb0, 0xb8, 0x67, 0x74, 0x9a, 0x94,
|
||||
0xb6, 0x78, 0xa9, 0x8e, 0xa4, 0xeb, 0x75, 0xb7, 0x84, 0x73, 0x30, 0xdd, 0x03, 0x23, 0x52, 0x4e,
|
||||
0xba, 0x36, 0xab, 0x07, 0xb5, 0xd0, 0x71, 0x9c, 0x2a, 0xe9, 0xda, 0x3e, 0x22, 0x2b, 0x8c, 0x4c,
|
||||
0x4a, 0xf5, 0x32, 0xd6, 0x61, 0xa1, 0xa2, 0xee, 0xe5, 0x59, 0x09, 0xaf, 0xae, 0x98, 0xbb, 0x69,
|
||||
0x6b, 0x7f, 0xa0, 0xa5, 0x62, 0xab, 0x38, 0x0b, 0x93, 0x89, 0x54, 0x77, 0xdf, 0x7e, 0x2d, 0xec,
|
||||
0x0e, 0x45, 0xb2, 0xda, 0x9d, 0xf5, 0xf0, 0x12, 0xeb, 0xb8, 0x4b, 0xed, 0x60, 0x75, 0x36, 0x8e,
|
||||
0x47, 0xcb, 0x35, 0xfd, 0xf2, 0x27, 0x00, 0x00, 0xff, 0xff, 0x55, 0x1d, 0x56, 0x78, 0x43, 0x04,
|
||||
// 594 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x53, 0x5d, 0x53, 0x13, 0x31,
|
||||
0x14, 0xb5, 0x80, 0x14, 0x2e, 0x5f, 0xe1, 0x02, 0x52, 0xbe, 0x0a, 0x56, 0x47, 0x51, 0x67, 0xca,
|
||||
0x8c, 0x3e, 0xfb, 0x10, 0xb2, 0x17, 0x08, 0x76, 0xb3, 0x4b, 0x92, 0xc5, 0xa9, 0x2f, 0x99, 0x05,
|
||||
0x2a, 0x76, 0x06, 0x68, 0x07, 0x96, 0x07, 0xfe, 0x81, 0xbf, 0xc2, 0xdf, 0xea, 0x64, 0xdb, 0xd2,
|
||||
0x22, 0x45, 0x9e, 0x76, 0x73, 0xce, 0xb9, 0x37, 0xb9, 0x27, 0x39, 0x50, 0x49, 0xdb, 0xed, 0x8b,
|
||||
0xe6, 0x69, 0x9a, 0x35, 0x5b, 0x57, 0xee, 0xb2, 0x91, 0xa5, 0x67, 0x69, 0x96, 0xba, 0xcb, 0xc6,
|
||||
0xcd, 0x4d, 0x7a, 0xde, 0xa8, 0xb6, 0xaf, 0x5b, 0x59, 0x0b, 0x27, 0xf2, 0xcf, 0xc9, 0xed, 0xcf,
|
||||
0xca, 0x9f, 0x09, 0x58, 0xe5, 0xfd, 0x82, 0xb0, 0xab, 0x0f, 0x3b, 0x72, 0x5c, 0x87, 0xc9, 0x9b,
|
||||
0xe6, 0xf9, 0x55, 0x9a, 0xdd, 0x5e, 0x37, 0x4a, 0x85, 0xad, 0xc2, 0xf6, 0xb4, 0xee, 0x03, 0x58,
|
||||
0x82, 0x62, 0x3b, 0xbd, 0xbb, 0x68, 0xa5, 0x67, 0xa5, 0x91, 0x9c, 0xeb, 0x2d, 0xf1, 0x2b, 0x8c,
|
||||
0x65, 0x77, 0xed, 0x46, 0x69, 0x74, 0xab, 0xb0, 0x3d, 0xfb, 0xf9, 0x43, 0xb5, 0xb7, 0x5f, 0xf5,
|
||||
0xe9, 0xbd, 0xaa, 0xf6, 0xae, 0xdd, 0xd0, 0x79, 0x59, 0xe5, 0x77, 0x11, 0xc6, 0xfc, 0x12, 0xa7,
|
||||
0xa0, 0x98, 0xa8, 0x6f, 0x2a, 0xfa, 0xae, 0xd8, 0x0b, 0x64, 0x30, 0x2d, 0x0e, 0xb8, 0x75, 0x21,
|
||||
0x19, 0xc3, 0xf7, 0x89, 0x15, 0x10, 0x61, 0x56, 0x44, 0xca, 0x72, 0x61, 0x5d, 0x12, 0x07, 0xdc,
|
||||
0x12, 0x1b, 0xc1, 0x0d, 0x58, 0x09, 0x29, 0xdc, 0x25, 0x6d, 0x0e, 0x64, 0xdc, 0x85, 0xef, 0x4b,
|
||||
0x46, 0x71, 0x09, 0xe6, 0x63, 0x2e, 0xb5, 0x93, 0xca, 0x58, 0x5e, 0xab, 0x71, 0x2b, 0x23, 0xc5,
|
||||
0xc6, 0x3c, 0x6c, 0xea, 0x4a, 0x3c, 0x84, 0x5f, 0xe2, 0x1b, 0xd8, 0xd4, 0x74, 0x94, 0x90, 0xb1,
|
||||
0x8e, 0x07, 0x81, 0x26, 0x63, 0xdc, 0x5e, 0xa4, 0x9d, 0xd5, 0x5c, 0x19, 0x2e, 0x72, 0xd1, 0x38,
|
||||
0x7e, 0x84, 0x77, 0x5c, 0x08, 0x8a, 0xad, 0x7b, 0x4e, 0x5b, 0xc4, 0x4f, 0xf0, 0x3e, 0x20, 0x51,
|
||||
0x93, 0x8a, 0x9e, 0x15, 0x4f, 0xe0, 0x32, 0x2c, 0xf4, 0x44, 0x83, 0xc4, 0x24, 0x2e, 0x02, 0x33,
|
||||
0xa4, 0x82, 0x07, 0x28, 0xe0, 0x26, 0xac, 0xfd, 0xdb, 0x7b, 0x50, 0x30, 0xe5, 0xad, 0x79, 0x34,
|
||||
0xa4, 0xeb, 0x1a, 0xc8, 0xa6, 0x87, 0xd3, 0x5c, 0x88, 0x28, 0x51, 0x96, 0xcd, 0xe0, 0x6b, 0xd8,
|
||||
0x78, 0x4c, 0xc7, 0xc9, 0x6e, 0x4d, 0x0a, 0xe7, 0xef, 0x85, 0xcd, 0x62, 0x19, 0x56, 0x7b, 0xf7,
|
||||
0x21, 0xa2, 0x80, 0x1c, 0x0f, 0x8e, 0x49, 0x5b, 0x69, 0x28, 0x24, 0x65, 0xd9, 0x1c, 0x56, 0xa0,
|
||||
0x1c, 0x27, 0xe6, 0xc0, 0xa9, 0xc8, 0xca, 0x3d, 0x29, 0x3a, 0x2d, 0x34, 0xed, 0x4b, 0x63, 0x75,
|
||||
0xc7, 0x72, 0xe6, 0x1d, 0xfa, 0xbf, 0xc6, 0x69, 0x32, 0x71, 0xa4, 0x0c, 0xb1, 0x79, 0x5c, 0x83,
|
||||
0xe5, 0xc7, 0xe2, 0xa3, 0x84, 0x74, 0x9d, 0x21, 0xbe, 0x85, 0xad, 0x27, 0xc8, 0x7e, 0x8b, 0x05,
|
||||
0x3f, 0xf5, 0xb0, 0xfd, 0x72, 0xff, 0xd8, 0xa2, 0x1f, 0x69, 0x18, 0xdd, 0x2d, 0x5f, 0xf2, 0x4f,
|
||||
0x90, 0xc2, 0xe8, 0x50, 0x3a, 0x4d, 0x5d, 0x9f, 0x5f, 0xe1, 0x0a, 0x2c, 0xed, 0xeb, 0x28, 0x89,
|
||||
0x73, 0x5b, 0x9c, 0x54, 0xc7, 0xd2, 0x76, 0xa6, 0x5b, 0xc6, 0x79, 0x98, 0xe9, 0x80, 0x01, 0x29,
|
||||
0x2b, 0x6d, 0x9d, 0x95, 0xbc, 0x5a, 0x44, 0x61, 0x98, 0x28, 0x69, 0xeb, 0x2e, 0x20, 0x23, 0xb4,
|
||||
0x8c, 0x73, 0xf5, 0x0a, 0x96, 0x60, 0xb1, 0x4f, 0x0d, 0xf4, 0x59, 0xf5, 0xa7, 0xee, 0x33, 0xf7,
|
||||
0xb7, 0x1d, 0xb9, 0xc3, 0x48, 0x2a, 0xb6, 0x86, 0x73, 0x30, 0x15, 0x4b, 0x75, 0xff, 0xec, 0xd7,
|
||||
0x7d, 0x76, 0x28, 0x90, 0xfd, 0xec, 0x6c, 0xf8, 0x93, 0x18, 0xcb, 0x6d, 0x62, 0x7a, 0xd1, 0x29,
|
||||
0xfb, 0x59, 0x02, 0xaa, 0xd1, 0x40, 0x5e, 0x36, 0x77, 0xcb, 0x3f, 0xd6, 0xcf, 0x9b, 0xd9, 0xaf,
|
||||
0xdb, 0x93, 0xea, 0x69, 0xeb, 0x72, 0x27, 0xcf, 0xf1, 0x69, 0xeb, 0x62, 0xa7, 0x17, 0xe8, 0x93,
|
||||
0xf1, 0xfc, 0xef, 0xcb, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xec, 0x5b, 0x99, 0xc1, 0x77, 0x04,
|
||||
0x00, 0x00,
|
||||
}
|
||||
|
|
|
@ -44,5 +44,6 @@ message ApplicationMetadataMessage {
|
|||
PIN_MESSAGE = 28;
|
||||
EDIT_MESSAGE = 29;
|
||||
STATUS_UPDATE = 30;
|
||||
DELETE_MESSAGE = 31;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -99,7 +99,7 @@ func (x ChatMessage_ContentType) String() string {
|
|||
}
|
||||
|
||||
func (ChatMessage_ContentType) EnumDescriptor() ([]byte, []int) {
|
||||
return fileDescriptor_263952f55fd35689, []int{4, 0}
|
||||
return fileDescriptor_263952f55fd35689, []int{5, 0}
|
||||
}
|
||||
|
||||
type StickerMessage struct {
|
||||
|
@ -333,6 +333,79 @@ func (m *EditMessage) GetMessageType() MessageType {
|
|||
return MessageType_UNKNOWN_MESSAGE_TYPE
|
||||
}
|
||||
|
||||
type DeleteMessage struct {
|
||||
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
|
||||
ChatId string `protobuf:"bytes,2,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
|
||||
MessageId string `protobuf:"bytes,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
|
||||
// Grant for community delete messages
|
||||
Grant []byte `protobuf:"bytes,4,opt,name=grant,proto3" json:"grant,omitempty"`
|
||||
// The type of message (public/one-to-one/private-group-chat)
|
||||
MessageType MessageType `protobuf:"varint,5,opt,name=message_type,json=messageType,proto3,enum=protobuf.MessageType" json:"message_type,omitempty"`
|
||||
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
XXX_sizecache int32 `json:"-"`
|
||||
}
|
||||
|
||||
func (m *DeleteMessage) Reset() { *m = DeleteMessage{} }
|
||||
func (m *DeleteMessage) String() string { return proto.CompactTextString(m) }
|
||||
func (*DeleteMessage) ProtoMessage() {}
|
||||
func (*DeleteMessage) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_263952f55fd35689, []int{4}
|
||||
}
|
||||
|
||||
func (m *DeleteMessage) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_DeleteMessage.Unmarshal(m, b)
|
||||
}
|
||||
func (m *DeleteMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
||||
return xxx_messageInfo_DeleteMessage.Marshal(b, m, deterministic)
|
||||
}
|
||||
func (m *DeleteMessage) XXX_Merge(src proto.Message) {
|
||||
xxx_messageInfo_DeleteMessage.Merge(m, src)
|
||||
}
|
||||
func (m *DeleteMessage) XXX_Size() int {
|
||||
return xxx_messageInfo_DeleteMessage.Size(m)
|
||||
}
|
||||
func (m *DeleteMessage) XXX_DiscardUnknown() {
|
||||
xxx_messageInfo_DeleteMessage.DiscardUnknown(m)
|
||||
}
|
||||
|
||||
var xxx_messageInfo_DeleteMessage proto.InternalMessageInfo
|
||||
|
||||
func (m *DeleteMessage) GetClock() uint64 {
|
||||
if m != nil {
|
||||
return m.Clock
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *DeleteMessage) GetChatId() string {
|
||||
if m != nil {
|
||||
return m.ChatId
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *DeleteMessage) GetMessageId() string {
|
||||
if m != nil {
|
||||
return m.MessageId
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *DeleteMessage) GetGrant() []byte {
|
||||
if m != nil {
|
||||
return m.Grant
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *DeleteMessage) GetMessageType() MessageType {
|
||||
if m != nil {
|
||||
return m.MessageType
|
||||
}
|
||||
return MessageType_UNKNOWN_MESSAGE_TYPE
|
||||
}
|
||||
|
||||
type ChatMessage struct {
|
||||
// Lamport timestamp of the chat message
|
||||
Clock uint64 `protobuf:"varint,1,opt,name=clock,proto3" json:"clock,omitempty"`
|
||||
|
@ -371,7 +444,7 @@ func (m *ChatMessage) Reset() { *m = ChatMessage{} }
|
|||
func (m *ChatMessage) String() string { return proto.CompactTextString(m) }
|
||||
func (*ChatMessage) ProtoMessage() {}
|
||||
func (*ChatMessage) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_263952f55fd35689, []int{4}
|
||||
return fileDescriptor_263952f55fd35689, []int{5}
|
||||
}
|
||||
|
||||
func (m *ChatMessage) XXX_Unmarshal(b []byte) error {
|
||||
|
@ -535,6 +608,7 @@ func init() {
|
|||
proto.RegisterType((*ImageMessage)(nil), "protobuf.ImageMessage")
|
||||
proto.RegisterType((*AudioMessage)(nil), "protobuf.AudioMessage")
|
||||
proto.RegisterType((*EditMessage)(nil), "protobuf.EditMessage")
|
||||
proto.RegisterType((*DeleteMessage)(nil), "protobuf.DeleteMessage")
|
||||
proto.RegisterType((*ChatMessage)(nil), "protobuf.ChatMessage")
|
||||
}
|
||||
|
||||
|
@ -543,48 +617,50 @@ func init() {
|
|||
}
|
||||
|
||||
var fileDescriptor_263952f55fd35689 = []byte{
|
||||
// 678 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x54, 0x4d, 0x6f, 0x9b, 0x4c,
|
||||
0x10, 0x0e, 0xf1, 0x07, 0x66, 0x70, 0x22, 0xb4, 0xc9, 0x9b, 0xf0, 0xbe, 0x7a, 0xdb, 0xb8, 0x56,
|
||||
0xa5, 0xfa, 0xe4, 0x43, 0x9a, 0x4a, 0xb9, 0x52, 0x07, 0x39, 0x34, 0x05, 0xbb, 0xcb, 0xba, 0x6d,
|
||||
0x4e, 0x68, 0x83, 0xb7, 0x31, 0x4a, 0xf8, 0x90, 0x59, 0x4b, 0xf5, 0x1f, 0xeb, 0xb5, 0x3f, 0xa4,
|
||||
0x87, 0xfe, 0x95, 0x6a, 0x17, 0x63, 0x88, 0x2f, 0xe9, 0xc9, 0x33, 0xc3, 0x3c, 0x0f, 0xf3, 0x3c,
|
||||
0xcc, 0x18, 0x50, 0xb8, 0xa0, 0x3c, 0x88, 0x59, 0x9e, 0xd3, 0x7b, 0x36, 0xcc, 0x96, 0x29, 0x4f,
|
||||
0x51, 0x47, 0xfe, 0xdc, 0xad, 0xbe, 0xfd, 0xa7, 0xb3, 0x64, 0x15, 0xe7, 0x45, 0xb9, 0x7f, 0x09,
|
||||
0x87, 0x3e, 0x8f, 0xc2, 0x07, 0xb6, 0x74, 0x8b, 0x76, 0x84, 0xa0, 0xb9, 0xa0, 0xf9, 0xc2, 0x54,
|
||||
0x7a, 0xca, 0x40, 0xc3, 0x32, 0x16, 0xb5, 0x8c, 0x86, 0x0f, 0xe6, 0x7e, 0x4f, 0x19, 0xb4, 0xb0,
|
||||
0x8c, 0xfb, 0x9f, 0xa0, 0xeb, 0xc4, 0xf4, 0x9e, 0x95, 0x38, 0x13, 0xd4, 0x8c, 0xae, 0x1f, 0x53,
|
||||
0x3a, 0x97, 0xd0, 0x2e, 0x2e, 0x53, 0xf4, 0x06, 0x9a, 0x7c, 0x9d, 0x31, 0x89, 0x3e, 0x3c, 0x3f,
|
||||
0x1a, 0x96, 0x93, 0x0c, 0x25, 0x9e, 0xac, 0x33, 0x86, 0x65, 0x43, 0xff, 0x87, 0x02, 0x5d, 0x6b,
|
||||
0x35, 0x8f, 0xd2, 0xe7, 0x39, 0x2f, 0x9e, 0x70, 0xf6, 0x2a, 0xce, 0x3a, 0xbe, 0x48, 0xaa, 0x17,
|
||||
0xa0, 0x33, 0xd0, 0xe7, 0xab, 0x25, 0xe5, 0x51, 0x9a, 0x04, 0x71, 0x6e, 0x36, 0x7a, 0xca, 0xa0,
|
||||
0x89, 0xa1, 0x2c, 0xb9, 0x79, 0xff, 0x1d, 0x68, 0x5b, 0x0c, 0x3a, 0x01, 0x34, 0xf3, 0x6e, 0xbc,
|
||||
0xc9, 0x17, 0x2f, 0xb0, 0x66, 0x57, 0xce, 0x24, 0x20, 0xb7, 0x53, 0xdb, 0xd8, 0x43, 0x2a, 0x34,
|
||||
0x2c, 0x6b, 0x64, 0x28, 0x32, 0x70, 0xb1, 0xb1, 0xdf, 0xff, 0xa9, 0x80, 0x6e, 0xcf, 0x23, 0x5e,
|
||||
0xce, 0x7d, 0x0c, 0xad, 0xf0, 0x31, 0x0d, 0x1f, 0xe4, 0xd4, 0x4d, 0x5c, 0x24, 0xc2, 0x45, 0xce,
|
||||
0xbe, 0x73, 0x39, 0xb3, 0x86, 0x65, 0x8c, 0x4e, 0x41, 0x95, 0x1f, 0x2b, 0x9a, 0xcb, 0x69, 0x34,
|
||||
0xdc, 0x16, 0xa9, 0x33, 0x47, 0x2f, 0x00, 0x36, 0x1f, 0x50, 0x3c, 0x6b, 0xca, 0x67, 0xda, 0xa6,
|
||||
0xe2, 0xcc, 0xc5, 0x1b, 0xee, 0x97, 0x34, 0xe1, 0x66, 0x4b, 0xfa, 0x52, 0x24, 0xe8, 0x12, 0xba,
|
||||
0x25, 0x48, 0xba, 0xd3, 0x96, 0xee, 0xfc, 0x53, 0xb9, 0xb3, 0x19, 0x50, 0x5a, 0xa2, 0xc7, 0x55,
|
||||
0xd2, 0xff, 0xdd, 0x02, 0x7d, 0xb4, 0xa0, 0xcf, 0x28, 0xf8, 0x1f, 0x34, 0x1e, 0xc5, 0x2c, 0xe7,
|
||||
0x34, 0xce, 0xa4, 0x8c, 0x26, 0xae, 0x0a, 0x5b, 0x7d, 0x8d, 0x9a, 0xbe, 0x33, 0xd0, 0x97, 0x2c,
|
||||
0xcf, 0xd2, 0x24, 0x67, 0x01, 0x4f, 0x37, 0x3a, 0xa0, 0x2c, 0x91, 0x14, 0xfd, 0x0b, 0x1d, 0x96,
|
||||
0xe4, 0x41, 0x42, 0x63, 0x26, 0xb5, 0x68, 0x58, 0x65, 0x49, 0xee, 0xd1, 0x98, 0xd5, 0xbd, 0x69,
|
||||
0x3f, 0xf1, 0x66, 0x57, 0xa6, 0xfa, 0xb7, 0x32, 0xd1, 0x15, 0x74, 0xc3, 0x34, 0xe1, 0x2c, 0xe1,
|
||||
0x05, 0xb2, 0x23, 0x91, 0xaf, 0x2a, 0x64, 0xcd, 0x83, 0xe1, 0xa8, 0xe8, 0x2c, 0x58, 0xc2, 0x2a,
|
||||
0x41, 0x17, 0xa0, 0xe6, 0xc5, 0xd1, 0x98, 0x5a, 0x4f, 0x19, 0xe8, 0xe7, 0x66, 0x45, 0xf0, 0xf4,
|
||||
0x9a, 0xae, 0xf7, 0x70, 0xd9, 0x8a, 0x86, 0xd0, 0x8a, 0xc4, 0xc2, 0x9b, 0x20, 0x31, 0x27, 0x3b,
|
||||
0x77, 0x50, 0x21, 0x8a, 0x36, 0xd1, 0x4f, 0xc5, 0x2e, 0x9a, 0xfa, 0x6e, 0x7f, 0x7d, 0xc7, 0x45,
|
||||
0xbf, 0x6c, 0x43, 0x2f, 0x41, 0x0b, 0xd3, 0x38, 0x5e, 0x25, 0x11, 0x5f, 0x9b, 0x5d, 0xb1, 0x16,
|
||||
0xd7, 0x7b, 0xb8, 0x2a, 0x55, 0x2b, 0x73, 0x50, 0x5b, 0x99, 0xfe, 0x2f, 0x05, 0xf4, 0x9a, 0x50,
|
||||
0x64, 0xc2, 0x71, 0xb9, 0xf4, 0xa3, 0x89, 0x47, 0x6c, 0x8f, 0x94, 0x6b, 0x7f, 0x08, 0x40, 0xec,
|
||||
0xaf, 0x24, 0x98, 0x7e, 0xb4, 0x1c, 0xcf, 0x50, 0x90, 0x0e, 0xaa, 0x4f, 0x9c, 0xd1, 0x8d, 0x8d,
|
||||
0x8d, 0x7d, 0x04, 0xd0, 0xf6, 0x89, 0x45, 0x66, 0xbe, 0xd1, 0x40, 0x1a, 0xb4, 0x6c, 0x77, 0xf2,
|
||||
0xc1, 0x31, 0x9a, 0xe8, 0x14, 0x8e, 0x08, 0xb6, 0x3c, 0xdf, 0x1a, 0x11, 0x67, 0x22, 0x18, 0x5d,
|
||||
0xd7, 0xf2, 0xae, 0x8c, 0x16, 0x1a, 0xc0, 0x6b, 0xff, 0xd6, 0x27, 0xb6, 0x1b, 0xb8, 0xb6, 0xef,
|
||||
0x5b, 0x63, 0x7b, 0xfb, 0xb6, 0x29, 0x76, 0x3e, 0x5b, 0xc4, 0x0e, 0xc6, 0x78, 0x32, 0x9b, 0x1a,
|
||||
0x6d, 0xc1, 0xe6, 0xb8, 0xd6, 0xd8, 0x36, 0x54, 0x11, 0xca, 0x43, 0x34, 0x3a, 0xe8, 0x00, 0x34,
|
||||
0x41, 0x36, 0xf3, 0x1c, 0x72, 0x6b, 0x68, 0xe2, 0x54, 0x77, 0xe8, 0xc6, 0xd6, 0xd4, 0x80, 0xf7,
|
||||
0xda, 0xf6, 0x0f, 0xe4, 0xae, 0x2d, 0xed, 0x7b, 0xfb, 0x27, 0x00, 0x00, 0xff, 0xff, 0xc9, 0x56,
|
||||
0xc0, 0x4f, 0x1d, 0x05, 0x00, 0x00,
|
||||
// 708 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x54, 0x41, 0x6f, 0xa3, 0x46,
|
||||
0x14, 0x0e, 0x36, 0x18, 0xf3, 0x70, 0x22, 0x34, 0x49, 0x13, 0x5a, 0xb5, 0x8d, 0x6b, 0x55, 0xaa,
|
||||
0x4f, 0x3e, 0xa4, 0xa9, 0x94, 0x2b, 0xb5, 0x91, 0x43, 0x53, 0xb0, 0x77, 0x18, 0xef, 0x6e, 0x4e,
|
||||
0x88, 0xe0, 0xd9, 0x18, 0x25, 0x80, 0x65, 0xc6, 0xd2, 0xfa, 0x47, 0xed, 0x75, 0xaf, 0xfb, 0x43,
|
||||
0xf6, 0xb0, 0x7f, 0x65, 0x35, 0x83, 0x31, 0xc4, 0xd2, 0x26, 0x39, 0xf1, 0xde, 0xe3, 0x7d, 0xdf,
|
||||
0x7c, 0xf3, 0xcd, 0xbc, 0x01, 0x14, 0x2d, 0x42, 0x16, 0x24, 0x34, 0xcf, 0xc3, 0x7b, 0x3a, 0x58,
|
||||
0xae, 0x32, 0x96, 0xa1, 0xb6, 0xf8, 0xdc, 0xad, 0x3f, 0xfc, 0xa2, 0xd3, 0x74, 0x9d, 0xe4, 0x45,
|
||||
0xb9, 0x77, 0x05, 0x47, 0x3e, 0x8b, 0xa3, 0x07, 0xba, 0x72, 0x8b, 0x76, 0x84, 0x40, 0x5e, 0x84,
|
||||
0xf9, 0xc2, 0x94, 0xba, 0x52, 0x5f, 0xc3, 0x22, 0xe6, 0xb5, 0x65, 0x18, 0x3d, 0x98, 0x8d, 0xae,
|
||||
0xd4, 0x57, 0xb0, 0x88, 0x7b, 0x6f, 0xa0, 0xe3, 0x24, 0xe1, 0x3d, 0x2d, 0x71, 0x26, 0xa8, 0xcb,
|
||||
0x70, 0xf3, 0x98, 0x85, 0x73, 0x01, 0xed, 0xe0, 0x32, 0x45, 0x7f, 0x81, 0xcc, 0x36, 0x4b, 0x2a,
|
||||
0xd0, 0x47, 0x17, 0xc7, 0x83, 0x52, 0xc9, 0x40, 0xe0, 0xc9, 0x66, 0x49, 0xb1, 0x68, 0xe8, 0x7d,
|
||||
0x96, 0xa0, 0x63, 0xad, 0xe7, 0x71, 0xf6, 0x32, 0xe7, 0xe5, 0x13, 0xce, 0x6e, 0xc5, 0x59, 0xc7,
|
||||
0x17, 0x49, 0xb5, 0x00, 0x3a, 0x07, 0x7d, 0xbe, 0x5e, 0x85, 0x2c, 0xce, 0xd2, 0x20, 0xc9, 0xcd,
|
||||
0x66, 0x57, 0xea, 0xcb, 0x18, 0xca, 0x92, 0x9b, 0xf7, 0xfe, 0x01, 0x6d, 0x87, 0x41, 0xa7, 0x80,
|
||||
0x66, 0xde, 0x8d, 0x37, 0x79, 0xe7, 0x05, 0xd6, 0x6c, 0xe4, 0x4c, 0x02, 0x72, 0x3b, 0xb5, 0x8d,
|
||||
0x03, 0xa4, 0x42, 0xd3, 0xb2, 0x86, 0x86, 0x24, 0x02, 0x17, 0x1b, 0x8d, 0xde, 0x17, 0x09, 0x74,
|
||||
0x7b, 0x1e, 0xb3, 0x52, 0xf7, 0x09, 0x28, 0xd1, 0x63, 0x16, 0x3d, 0x08, 0xd5, 0x32, 0x2e, 0x12,
|
||||
0xee, 0x22, 0xa3, 0x1f, 0x99, 0xd0, 0xac, 0x61, 0x11, 0xa3, 0x33, 0x50, 0xc5, 0x61, 0xc5, 0x73,
|
||||
0xa1, 0x46, 0xc3, 0x2d, 0x9e, 0x3a, 0x73, 0xf4, 0x1b, 0xc0, 0xf6, 0x00, 0xf9, 0x3f, 0x59, 0xfc,
|
||||
0xd3, 0xb6, 0x15, 0x67, 0xce, 0x57, 0xb8, 0x5f, 0x85, 0x29, 0x33, 0x15, 0xe1, 0x4b, 0x91, 0xa0,
|
||||
0x2b, 0xe8, 0x94, 0x20, 0xe1, 0x4e, 0x4b, 0xb8, 0xf3, 0x53, 0xe5, 0xce, 0x56, 0xa0, 0xb0, 0x44,
|
||||
0x4f, 0xaa, 0xa4, 0xf7, 0x49, 0x82, 0xc3, 0x11, 0x7d, 0xa4, 0x8c, 0x3e, 0xbf, 0x87, 0x9a, 0xde,
|
||||
0xc6, 0x33, 0x7a, 0x9b, 0x3f, 0xd4, 0x2b, 0x3f, 0xa7, 0x57, 0x79, 0xb5, 0xde, 0x6f, 0x0a, 0xe8,
|
||||
0xc3, 0x45, 0xf8, 0x82, 0xe3, 0xbf, 0x82, 0xc6, 0xe2, 0x84, 0xe6, 0x2c, 0x4c, 0x96, 0x42, 0xaf,
|
||||
0x8c, 0xab, 0xc2, 0xee, 0x3c, 0x9a, 0xb5, 0xf3, 0x38, 0x07, 0x7d, 0x45, 0xf3, 0x65, 0x96, 0xe6,
|
||||
0x34, 0x60, 0xd9, 0xd6, 0x77, 0x28, 0x4b, 0x24, 0x43, 0x3f, 0x43, 0x9b, 0xa6, 0x79, 0x90, 0x86,
|
||||
0x49, 0x21, 0x57, 0xc3, 0x2a, 0x4d, 0x73, 0x2f, 0x4c, 0x68, 0xdd, 0x9b, 0xd6, 0x13, 0x6f, 0xf6,
|
||||
0xb7, 0xa9, 0xbe, 0x76, 0x9b, 0x68, 0x04, 0x9d, 0x28, 0x4b, 0x19, 0x4d, 0x59, 0x81, 0x6c, 0x0b,
|
||||
0xe4, 0x1f, 0x15, 0xb2, 0xe6, 0xc1, 0x60, 0x58, 0x74, 0x16, 0x2c, 0x51, 0x95, 0xa0, 0x4b, 0x50,
|
||||
0xf3, 0x62, 0xc8, 0x4d, 0xad, 0x2b, 0xf5, 0xf5, 0x0b, 0xb3, 0x22, 0x78, 0x3a, 0xfd, 0xd7, 0x07,
|
||||
0xb8, 0x6c, 0x45, 0x03, 0x50, 0x62, 0x3e, 0xa0, 0x26, 0x08, 0xcc, 0xe9, 0xde, 0xdc, 0x56, 0x88,
|
||||
0xa2, 0x8d, 0xf7, 0x87, 0x7c, 0x76, 0x4c, 0x7d, 0xbf, 0xbf, 0x3e, 0x93, 0xbc, 0x5f, 0xb4, 0xa1,
|
||||
0xdf, 0x41, 0x8b, 0xb2, 0x24, 0x59, 0xa7, 0x31, 0xdb, 0x98, 0x1d, 0x7e, 0x2d, 0xae, 0x0f, 0x70,
|
||||
0x55, 0xaa, 0xae, 0xcc, 0x61, 0xed, 0xca, 0xf4, 0xbe, 0x4a, 0xa0, 0xd7, 0x36, 0x8a, 0x4c, 0x38,
|
||||
0x29, 0x87, 0x74, 0x38, 0xf1, 0x88, 0xed, 0x91, 0x72, 0x4c, 0x8f, 0x00, 0x88, 0xfd, 0x9e, 0x04,
|
||||
0xd3, 0xff, 0x2d, 0xc7, 0x33, 0x24, 0xa4, 0x83, 0xea, 0x13, 0x67, 0x78, 0x63, 0x63, 0xa3, 0x81,
|
||||
0x00, 0x5a, 0x3e, 0xb1, 0xc8, 0xcc, 0x37, 0x9a, 0x48, 0x03, 0xc5, 0x76, 0x27, 0xff, 0x39, 0x86,
|
||||
0x8c, 0xce, 0xe0, 0x98, 0x60, 0xcb, 0xf3, 0xad, 0x21, 0x71, 0x26, 0x9c, 0xd1, 0x75, 0x2d, 0x6f,
|
||||
0x64, 0x28, 0xa8, 0x0f, 0x7f, 0xfa, 0xb7, 0x3e, 0xb1, 0xdd, 0xc0, 0xb5, 0x7d, 0xdf, 0x1a, 0xdb,
|
||||
0xbb, 0xd5, 0xa6, 0xd8, 0x79, 0x6b, 0x11, 0x3b, 0x18, 0xe3, 0xc9, 0x6c, 0x6a, 0xb4, 0x38, 0x9b,
|
||||
0xe3, 0x5a, 0x63, 0xdb, 0x50, 0x79, 0x28, 0x1e, 0x0e, 0xa3, 0x8d, 0x0e, 0x41, 0xe3, 0x64, 0x33,
|
||||
0xcf, 0x21, 0xb7, 0x86, 0xc6, 0x9f, 0x96, 0x3d, 0xba, 0xb1, 0x35, 0x35, 0xe0, 0x5f, 0x6d, 0xf7,
|
||||
0xe0, 0xdd, 0xb5, 0x84, 0x7d, 0x7f, 0x7f, 0x0f, 0x00, 0x00, 0xff, 0xff, 0x67, 0x37, 0x27, 0xf9,
|
||||
0xcd, 0x05, 0x00, 0x00,
|
||||
}
|
||||
|
|
|
@ -41,6 +41,19 @@ message EditMessage {
|
|||
MessageType message_type = 6;
|
||||
}
|
||||
|
||||
message DeleteMessage {
|
||||
uint64 clock = 1;
|
||||
|
||||
string chat_id = 2;
|
||||
string message_id = 3;
|
||||
|
||||
// Grant for community delete messages
|
||||
bytes grant = 4;
|
||||
|
||||
// The type of message (public/one-to-one/private-group-chat)
|
||||
MessageType message_type = 5;
|
||||
}
|
||||
|
||||
|
||||
message ChatMessage {
|
||||
// Lamport timestamp of the chat message
|
||||
|
|
|
@ -90,7 +90,7 @@ func _1593601729_initial_schemaDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1593601729_initial_schema.down.sql", size: 144, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1593601729_initial_schema.down.sql", size: 144, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa, 0x95, 0x55, 0x64, 0x38, 0x40, 0x16, 0xbf, 0x8b, 0x1c, 0x18, 0xb4, 0xc5, 0x7f, 0xd0, 0xb8, 0xf0, 0x3c, 0xa2, 0x82, 0xf8, 0x8d, 0x5a, 0xd3, 0xb6, 0x6e, 0xa3, 0xb4, 0xc, 0x9, 0x33, 0x0}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -110,7 +110,7 @@ func _1593601729_initial_schemaUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1593601729_initial_schema.up.sql", size: 1773, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1593601729_initial_schema.up.sql", size: 1773, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x4e, 0x1e, 0x5, 0x35, 0x9, 0xb2, 0x2d, 0x6f, 0x33, 0x63, 0xa2, 0x7a, 0x5b, 0xd2, 0x2d, 0xcb, 0x79, 0x7e, 0x6, 0xb4, 0x9d, 0x35, 0xd8, 0x9b, 0x55, 0xe5, 0xf8, 0x44, 0xca, 0xa6, 0xf3, 0xd3}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -130,7 +130,7 @@ func _1597909626_add_server_typeDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1597909626_add_server_type.down.sql", size: 0, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1597909626_add_server_type.down.sql", size: 0, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe3, 0xb0, 0xc4, 0x42, 0x98, 0xfc, 0x1c, 0x14, 0x9a, 0xfb, 0xf4, 0xc8, 0x99, 0x6f, 0xb9, 0x24, 0x27, 0xae, 0x41, 0xe4, 0x64, 0x9b, 0x93, 0x4c, 0xa4, 0x95, 0x99, 0x1b, 0x78, 0x52, 0xb8, 0x55}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -150,7 +150,7 @@ func _1597909626_add_server_typeUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1597909626_add_server_type.up.sql", size: 145, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1597909626_add_server_type.up.sql", size: 145, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc8, 0x3f, 0xe0, 0xe7, 0x57, 0x0, 0x5d, 0x60, 0xf3, 0x55, 0x64, 0x71, 0x80, 0x3c, 0xca, 0x8, 0x61, 0xb5, 0x3c, 0xe, 0xa1, 0xe4, 0x61, 0xd1, 0x4e, 0xd8, 0xb2, 0x55, 0xdd, 0x87, 0x62, 0x9b}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -170,7 +170,7 @@ func _1599053776_add_chat_id_and_typeDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1599053776_add_chat_id_and_type.down.sql", size: 0, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1599053776_add_chat_id_and_type.down.sql", size: 0, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe3, 0xb0, 0xc4, 0x42, 0x98, 0xfc, 0x1c, 0x14, 0x9a, 0xfb, 0xf4, 0xc8, 0x99, 0x6f, 0xb9, 0x24, 0x27, 0xae, 0x41, 0xe4, 0x64, 0x9b, 0x93, 0x4c, 0xa4, 0x95, 0x99, 0x1b, 0x78, 0x52, 0xb8, 0x55}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -190,7 +190,7 @@ func _1599053776_add_chat_id_and_typeUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1599053776_add_chat_id_and_type.up.sql", size: 264, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1599053776_add_chat_id_and_type.up.sql", size: 264, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xea, 0x7a, 0xf9, 0xc4, 0xa2, 0x96, 0x2e, 0xf9, 0x8f, 0x7, 0xf1, 0x1e, 0x73, 0x8a, 0xa6, 0x3a, 0x13, 0x4, 0x73, 0x82, 0x83, 0xb, 0xe3, 0xb5, 0x3b, 0x7e, 0xd, 0x23, 0xce, 0x98, 0xd4, 0xdc}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -210,7 +210,7 @@ func docGo() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "doc.go", size: 382, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "doc.go", size: 382, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc0, 0x2f, 0x1e, 0x64, 0x9, 0x93, 0xe4, 0x8b, 0xf2, 0x98, 0x5a, 0x45, 0xe2, 0x80, 0x88, 0x67, 0x7a, 0x2d, 0xd7, 0x4b, 0xd1, 0x73, 0xb6, 0x6d, 0x15, 0xc2, 0x0, 0x34, 0xcd, 0xa0, 0xdb, 0x20}}
|
||||
return a, nil
|
||||
}
|
||||
|
|
|
@ -88,7 +88,7 @@ func _1593601728_initial_schemaDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1593601728_initial_schema.down.sql", size: 200, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1593601728_initial_schema.down.sql", size: 200, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x88, 0x8a, 0x61, 0x81, 0x57, 0x45, 0x9b, 0x97, 0x9b, 0x1f, 0xf6, 0x94, 0x8a, 0x20, 0xb3, 0x2b, 0xff, 0x69, 0x49, 0xf4, 0x58, 0xcc, 0xd0, 0x55, 0xcc, 0x9a, 0x8b, 0xb6, 0x7f, 0x29, 0x53, 0xc1}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -108,7 +108,7 @@ func _1593601728_initial_schemaUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1593601728_initial_schema.up.sql", size: 675, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1593601728_initial_schema.up.sql", size: 675, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xfd, 0x61, 0x90, 0x79, 0xd9, 0x14, 0x65, 0xe9, 0x96, 0x53, 0x17, 0x33, 0x54, 0xeb, 0x8b, 0x5d, 0x95, 0x99, 0x10, 0x36, 0x58, 0xdd, 0xb2, 0xbf, 0x45, 0xd9, 0xbb, 0xc4, 0x92, 0xe, 0xce, 0x2}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -128,7 +128,7 @@ func _1598419937_add_push_notifications_tableDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1598419937_add_push_notifications_table.down.sql", size: 51, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1598419937_add_push_notifications_table.down.sql", size: 51, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc, 0x98, 0xc8, 0x30, 0x45, 0x5b, 0xc5, 0x7d, 0x13, 0x5d, 0xe7, 0xc8, 0x23, 0x43, 0xf7, 0xdc, 0x9c, 0xe2, 0xdd, 0x63, 0xf0, 0xb7, 0x16, 0x40, 0xc, 0xda, 0xb9, 0x16, 0x70, 0x2b, 0x5a, 0x7e}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -148,7 +148,7 @@ func _1598419937_add_push_notifications_tableUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1598419937_add_push_notifications_table.up.sql", size: 104, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "1598419937_add_push_notifications_table.up.sql", size: 104, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x2, 0x3e, 0xef, 0xf, 0xc2, 0xdf, 0xbc, 0x99, 0x7a, 0xc2, 0xd3, 0x64, 0x4f, 0x4c, 0x7e, 0xfc, 0x2e, 0x8c, 0xa7, 0x54, 0xd3, 0x4d, 0x25, 0x98, 0x41, 0xbc, 0xea, 0xd7, 0x2, 0xc1, 0xd0, 0x52}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -168,7 +168,7 @@ func docGo() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "doc.go", size: 382, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "doc.go", size: 382, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xc0, 0x2f, 0x1e, 0x64, 0x9, 0x93, 0xe4, 0x8b, 0xf2, 0x98, 0x5a, 0x45, 0xe2, 0x80, 0x88, 0x67, 0x7a, 0x2d, 0xd7, 0x4b, 0xd1, 0x73, 0xb6, 0x6d, 0x15, 0xc2, 0x0, 0x34, 0xcd, 0xa0, 0xdb, 0x20}}
|
||||
return a, nil
|
||||
}
|
||||
|
|
|
@ -88,7 +88,7 @@ func _1561059284_add_waku_keysDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1561059284_add_waku_keys.down.sql", size: 22, mode: os.FileMode(0644), modTime: time.Unix(1621583900, 0)}
|
||||
info := bindataFileInfo{name: "1561059284_add_waku_keys.down.sql", size: 22, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe5, 0x2a, 0x7e, 0x9, 0xa3, 0xdd, 0xc6, 0x3, 0xfa, 0xaa, 0x98, 0xa0, 0x26, 0x5e, 0x67, 0x43, 0xe6, 0x20, 0xfd, 0x10, 0xfd, 0x60, 0x89, 0x17, 0x13, 0x87, 0x1b, 0x44, 0x36, 0x79, 0xb6, 0x60}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -108,7 +108,7 @@ func _1561059284_add_waku_keysUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1561059284_add_waku_keys.up.sql", size: 109, mode: os.FileMode(0644), modTime: time.Unix(1621583900, 0)}
|
||||
info := bindataFileInfo{name: "1561059284_add_waku_keys.up.sql", size: 109, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa9, 0x5c, 0x8, 0x32, 0xef, 0x12, 0x88, 0x21, 0xd, 0x7a, 0x42, 0x4d, 0xe7, 0x2d, 0x6c, 0x99, 0xb6, 0x1, 0xf1, 0xba, 0x2c, 0x40, 0x8d, 0xa9, 0x4b, 0xe6, 0xc4, 0x21, 0xec, 0x47, 0x6b, 0xf7}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -128,7 +128,7 @@ func _1616691080_add_wakuv2_keysDownSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1616691080_add_wakuV2_keys.down.sql", size: 24, mode: os.FileMode(0644), modTime: time.Unix(1625056983, 0)}
|
||||
info := bindataFileInfo{name: "1616691080_add_wakuV2_keys.down.sql", size: 24, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x42, 0xb6, 0x23, 0x70, 0xb8, 0x63, 0x18, 0x61, 0xea, 0x35, 0x6e, 0xae, 0xe9, 0x71, 0x89, 0xa, 0xa5, 0x72, 0xa2, 0x64, 0xaa, 0x45, 0x1, 0xf, 0xfc, 0xee, 0x1b, 0xd9, 0xd2, 0x27, 0xf4, 0xe2}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -148,7 +148,7 @@ func _1616691080_add_wakuv2_keysUpSql() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "1616691080_add_wakuV2_keys.up.sql", size: 111, mode: os.FileMode(0644), modTime: time.Unix(1625056983, 0)}
|
||||
info := bindataFileInfo{name: "1616691080_add_wakuV2_keys.up.sql", size: 111, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x10, 0xf0, 0x97, 0x25, 0xfe, 0x96, 0x2c, 0xa8, 0x62, 0x4a, 0x71, 0x75, 0xff, 0x5f, 0x43, 0x1e, 0x71, 0x53, 0xf1, 0xde, 0xf, 0xcf, 0xcd, 0x87, 0x15, 0x61, 0x9d, 0x25, 0x2e, 0xaf, 0x18, 0x99}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -168,7 +168,7 @@ func docGo() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "doc.go", size: 373, mode: os.FileMode(0644), modTime: time.Unix(1621583900, 0)}
|
||||
info := bindataFileInfo{name: "doc.go", size: 373, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x23, 0x6a, 0xc1, 0xce, 0x94, 0xf6, 0xef, 0xf1, 0x97, 0x95, 0xb, 0x35, 0xaf, 0x5f, 0xe7, 0x5f, 0xac, 0x6e, 0xb8, 0xab, 0xba, 0xb5, 0x35, 0x97, 0x22, 0x36, 0x11, 0xce, 0x44, 0xfc, 0xfa, 0xac}}
|
||||
return a, nil
|
||||
}
|
||||
|
|
|
@ -232,6 +232,8 @@ func (m *StatusMessage) HandleApplication() error {
|
|||
return m.unmarshalProtobufData(new(protobuf.CommunityRequestToJoin))
|
||||
case protobuf.ApplicationMetadataMessage_EDIT_MESSAGE:
|
||||
return m.unmarshalProtobufData(new(protobuf.EditMessage))
|
||||
case protobuf.ApplicationMetadataMessage_DELETE_MESSAGE:
|
||||
return m.unmarshalProtobufData(new(protobuf.DeleteMessage))
|
||||
case protobuf.ApplicationMetadataMessage_STATUS_UPDATE:
|
||||
return m.unmarshalProtobufData(new(protobuf.StatusUpdate))
|
||||
case protobuf.ApplicationMetadataMessage_PUSH_NOTIFICATION_REGISTRATION:
|
||||
|
|
|
@ -568,6 +568,10 @@ func (api *PublicAPI) EditMessage(ctx context.Context, request *requests.EditMes
|
|||
return api.service.messenger.EditMessage(ctx, request)
|
||||
}
|
||||
|
||||
func (api *PublicAPI) DeleteMessageAndSend(ctx context.Context, messageID string) (*protocol.MessengerResponse, error) {
|
||||
return api.service.messenger.DeleteMessageAndSend(ctx, messageID)
|
||||
}
|
||||
|
||||
func (api *PublicAPI) SendPinMessage(ctx context.Context, message *common.PinMessage) (*protocol.MessengerResponse, error) {
|
||||
return api.service.messenger.SendPinMessage(ctx, message)
|
||||
}
|
||||
|
|
|
@ -99,7 +99,7 @@ func ConfigReadmeMd() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "../config/README.md", size: 3153, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "../config/README.md", size: 3153, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x84, 0xf1, 0x44, 0x5b, 0x33, 0xe5, 0xfa, 0xe6, 0x38, 0x77, 0x19, 0x91, 0x6e, 0xd8, 0x8e, 0x8d, 0xaa, 0x32, 0xb2, 0x8b, 0xf9, 0x4f, 0x3, 0xe, 0xc0, 0xca, 0x5e, 0x5d, 0xec, 0x37, 0x1d, 0xc3}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -119,7 +119,7 @@ func ConfigCliFleetEthProdJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "../config/cli/fleet-eth.prod.json", size: 4925, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "../config/cli/fleet-eth.prod.json", size: 4925, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x97, 0x5a, 0x72, 0x64, 0x6b, 0xee, 0xe6, 0x97, 0xda, 0xe8, 0x53, 0x7c, 0x33, 0x25, 0x27, 0x55, 0xa8, 0xe0, 0x9a, 0xc2, 0x16, 0xcf, 0xc0, 0x91, 0x8a, 0xbc, 0x98, 0x5, 0xe5, 0x63, 0x83, 0x77}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -139,7 +139,7 @@ func ConfigCliFleetEthStagingJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "../config/cli/fleet-eth.staging.json", size: 2307, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "../config/cli/fleet-eth.staging.json", size: 2307, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xa, 0x55, 0x35, 0x5e, 0xf5, 0x90, 0x37, 0x0, 0xe4, 0x45, 0x8c, 0x19, 0x77, 0x14, 0xa0, 0x94, 0x1c, 0x9b, 0x78, 0xa7, 0x2e, 0x58, 0x45, 0x1b, 0xba, 0xf3, 0xfb, 0x62, 0x87, 0x97, 0xf8, 0x96}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -159,7 +159,7 @@ func ConfigCliFleetEthTestJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "../config/cli/fleet-eth.test.json", size: 2315, mode: os.FileMode(0644), modTime: time.Unix(1611588835, 0)}
|
||||
info := bindataFileInfo{name: "../config/cli/fleet-eth.test.json", size: 2315, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7, 0x92, 0x14, 0x26, 0xa6, 0x12, 0xb1, 0x0, 0x2d, 0xbe, 0x9a, 0xb7, 0x55, 0xdb, 0xfc, 0x1f, 0x75, 0xe, 0xc2, 0x2b, 0xad, 0xfe, 0x44, 0x78, 0x2e, 0x7f, 0x8, 0x7f, 0xd1, 0x9e, 0x11, 0x2c}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -179,7 +179,7 @@ func ConfigCliFleetWakuv2ProdJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "../config/cli/fleet-wakuv2.prod.json", size: 744, mode: os.FileMode(0644), modTime: time.Unix(1625056983, 0)}
|
||||
info := bindataFileInfo{name: "../config/cli/fleet-wakuv2.prod.json", size: 744, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xd, 0xe, 0xe1, 0xa9, 0x7c, 0x9e, 0xab, 0x85, 0x12, 0x87, 0x71, 0xb9, 0x3, 0xf3, 0xfe, 0xe9, 0x64, 0x7d, 0x76, 0x91, 0x4e, 0xb4, 0x7b, 0x39, 0xdc, 0x1, 0x50, 0x3, 0xf8, 0x32, 0x41, 0x60}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -199,7 +199,7 @@ func ConfigCliFleetWakuv2TestJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "../config/cli/fleet-wakuv2.test.json", size: 745, mode: os.FileMode(0644), modTime: time.Unix(1625056983, 0)}
|
||||
info := bindataFileInfo{name: "../config/cli/fleet-wakuv2.test.json", size: 745, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xfc, 0x81, 0xe8, 0xb0, 0x1, 0x31, 0xf1, 0xe4, 0x66, 0xae, 0xd2, 0xfa, 0xbd, 0x35, 0xc2, 0x54, 0x40, 0x24, 0xdb, 0x4b, 0x4c, 0x6, 0x8d, 0x64, 0x6d, 0xfd, 0xad, 0x9c, 0x47, 0x1c, 0xa1, 0x8e}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -219,7 +219,7 @@ func ConfigCliLesEnabledJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "../config/cli/les-enabled.json", size: 58, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "../config/cli/les-enabled.json", size: 58, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x7e, 0xee, 0x27, 0xa7, 0x74, 0xa0, 0x46, 0xa1, 0x41, 0xed, 0x4d, 0x16, 0x5b, 0xf3, 0xf0, 0x7c, 0xc8, 0x2f, 0x6f, 0x47, 0xa4, 0xbb, 0x5f, 0x43, 0x33, 0xd, 0x9, 0x9d, 0xea, 0x9e, 0x15, 0xee}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -239,7 +239,7 @@ func ConfigCliMailserverEnabledJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "../config/cli/mailserver-enabled.json", size: 176, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "../config/cli/mailserver-enabled.json", size: 176, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x34, 0xec, 0x81, 0x8b, 0x99, 0xb6, 0xdb, 0xc0, 0x8b, 0x46, 0x97, 0x96, 0xc7, 0x58, 0x30, 0x33, 0xef, 0x54, 0x25, 0x87, 0x7b, 0xb9, 0x94, 0x6b, 0x18, 0xa4, 0x5b, 0x58, 0x67, 0x7c, 0x44, 0xa6}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -259,7 +259,7 @@ func ConfigStatusChainGenesisJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "../config/status-chain-genesis.json", size: 612, mode: os.FileMode(0644), modTime: time.Unix(1599559876, 0)}
|
||||
info := bindataFileInfo{name: "../config/status-chain-genesis.json", size: 612, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xb, 0xf0, 0xc, 0x1, 0x95, 0x65, 0x6, 0x55, 0x48, 0x8f, 0x83, 0xa0, 0xb4, 0x81, 0xda, 0xad, 0x30, 0x6d, 0xb2, 0x78, 0x1b, 0x26, 0x4, 0x13, 0x12, 0x9, 0x6, 0xae, 0x3a, 0x2c, 0x1, 0x71}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -279,7 +279,7 @@ func keysBootnodeKey() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "keys/bootnode.key", size: 65, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "keys/bootnode.key", size: 65, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x31, 0xcf, 0x27, 0xd4, 0x96, 0x2e, 0x32, 0xcd, 0x58, 0x96, 0x2a, 0xe5, 0x8c, 0xa0, 0xf1, 0x73, 0x1f, 0xd6, 0xd6, 0x8b, 0xb, 0x73, 0xd3, 0x2c, 0x84, 0x1a, 0x56, 0xa4, 0x74, 0xb6, 0x95, 0x20}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -299,7 +299,7 @@ func keysFirebaseauthkey() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "keys/firebaseauthkey", size: 153, mode: os.FileMode(0644), modTime: time.Unix(1536843582, 0)}
|
||||
info := bindataFileInfo{name: "keys/firebaseauthkey", size: 153, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xe, 0x69, 0x23, 0x64, 0x7d, 0xf9, 0x14, 0x37, 0x6f, 0x2b, 0x1, 0xf0, 0xb0, 0xa4, 0xb2, 0xd0, 0x18, 0xcd, 0xf9, 0xeb, 0x57, 0xa3, 0xfd, 0x79, 0x25, 0xa7, 0x9c, 0x3, 0xce, 0x26, 0xec, 0xe1}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -319,7 +319,7 @@ func keysTestAccount1StatusChainPk() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "keys/test-account1-status-chain.pk", size: 489, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "keys/test-account1-status-chain.pk", size: 489, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8f, 0xba, 0x35, 0x1, 0x2b, 0x9d, 0xad, 0xf0, 0x2d, 0x3c, 0x4d, 0x6, 0xb5, 0x22, 0x2, 0x47, 0xd4, 0x1c, 0xf4, 0x31, 0x2f, 0xb, 0x5b, 0x27, 0x5d, 0x43, 0x97, 0x58, 0x2d, 0xf0, 0xe1, 0xbe}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -339,7 +339,7 @@ func keysTestAccount1Pk() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "keys/test-account1.pk", size: 491, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "keys/test-account1.pk", size: 491, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x9, 0x43, 0xc2, 0xf4, 0x8c, 0xc6, 0x64, 0x25, 0x8c, 0x7, 0x8c, 0xa8, 0x89, 0x2b, 0x7b, 0x9b, 0x4f, 0x81, 0xcb, 0xce, 0x3d, 0xef, 0x82, 0x9c, 0x27, 0x27, 0xa9, 0xc5, 0x46, 0x70, 0x30, 0x38}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -359,7 +359,7 @@ func keysTestAccount2StatusChainPk() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "keys/test-account2-status-chain.pk", size: 489, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "keys/test-account2-status-chain.pk", size: 489, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x9, 0xf8, 0x5c, 0xe9, 0x92, 0x96, 0x2d, 0x88, 0x2b, 0x8e, 0x42, 0x3f, 0xa4, 0x93, 0x6c, 0xad, 0xe9, 0xc0, 0x1b, 0x8a, 0x8, 0x8c, 0x5e, 0x7a, 0x84, 0xa2, 0xf, 0x9f, 0x77, 0x58, 0x2c, 0x2c}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -379,7 +379,7 @@ func keysTestAccount2Pk() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "keys/test-account2.pk", size: 491, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "keys/test-account2.pk", size: 491, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x9f, 0x72, 0xd5, 0x95, 0x5c, 0x5a, 0x99, 0x9d, 0x2f, 0x21, 0x83, 0xd7, 0x10, 0x17, 0x4a, 0x3d, 0x65, 0xc9, 0x26, 0x1a, 0x2c, 0x9d, 0x65, 0x63, 0xd2, 0xa0, 0xfc, 0x7c, 0x0, 0x87, 0x38, 0x9f}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -399,7 +399,7 @@ func keysTestAccount3BeforeEip55Pk() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "keys/test-account3-before-eip55.pk", size: 489, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "keys/test-account3-before-eip55.pk", size: 489, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x81, 0x40, 0x56, 0xc1, 0x5e, 0x10, 0x6e, 0x28, 0x15, 0x3, 0x4e, 0xc4, 0xc4, 0x71, 0x4d, 0x16, 0x99, 0xcc, 0x1b, 0x63, 0xee, 0x10, 0x20, 0xe4, 0x59, 0x52, 0x3f, 0xc0, 0xad, 0x15, 0x13, 0x72}}
|
||||
return a, nil
|
||||
}
|
||||
|
|
|
@ -86,7 +86,7 @@ func configPublicChainAccountsJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "config/public-chain-accounts.json", size: 307, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "config/public-chain-accounts.json", size: 307, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x76, 0x5d, 0xc0, 0xfe, 0x57, 0x50, 0x18, 0xec, 0x2d, 0x61, 0x1b, 0xa9, 0x81, 0x11, 0x5f, 0x77, 0xf7, 0xb6, 0x67, 0x82, 0x1, 0x40, 0x68, 0x9d, 0xc5, 0x41, 0xaf, 0xce, 0x43, 0x81, 0x92, 0x96}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -106,7 +106,7 @@ func configStatusChainAccountsJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "config/status-chain-accounts.json", size: 543, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "config/status-chain-accounts.json", size: 543, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0x8e, 0xb3, 0x61, 0x51, 0x70, 0x3c, 0x12, 0x3e, 0xf1, 0x1c, 0x81, 0xfb, 0x9a, 0x7c, 0xe3, 0x63, 0xd0, 0x8f, 0x12, 0xc5, 0x2d, 0xf4, 0xea, 0x27, 0x33, 0xef, 0xca, 0xf9, 0x3f, 0x72, 0x44, 0xbf}}
|
||||
return a, nil
|
||||
}
|
||||
|
@ -126,7 +126,7 @@ func configTestDataJson() (*asset, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
info := bindataFileInfo{name: "config/test-data.json", size: 84, mode: os.FileMode(0644), modTime: time.Unix(1599559877, 0)}
|
||||
info := bindataFileInfo{name: "config/test-data.json", size: 84, mode: os.FileMode(0664), modTime: time.Unix(1627313635, 0)}
|
||||
a := &asset{bytes: bytes, info: info, digest: [32]uint8{0xce, 0x9d, 0x80, 0xf5, 0x87, 0xfa, 0x57, 0x1d, 0xa1, 0xd5, 0x7a, 0x10, 0x3, 0xac, 0xd7, 0xf4, 0x64, 0x32, 0x96, 0x2b, 0xb7, 0x21, 0xb7, 0xa6, 0x80, 0x40, 0xe9, 0x65, 0xe3, 0xd6, 0xbd, 0x40}}
|
||||
return a, nil
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue