[feature] Allow user to choose "gallery" style layout for web view of profile (#3917)

* [feature] Allow user to choose "gallery" style web layout

* find a bug and squish it up and all day long you'll have good luck

* just a sec

* [performance] reindex public timeline + tinker with query a bit

* fiddling

* should be good now

* last bit of finagling, i'm done now i prommy

* panic normally
This commit is contained in:
tobi 2025-03-26 16:59:39 +01:00 committed by GitHub
commit b6e481d63e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
82 changed files with 2921 additions and 1171 deletions

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 324 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 636 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 761 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 284 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 396 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 372 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 501 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 358 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

View file

@ -95,6 +95,15 @@ func NewTestTokens() map[string]*gtsmodel.Token {
AccessCreateAt: TimeMustParse("2022-06-10T15:22:08Z"),
AccessExpiresAt: TimeMustParse("2050-01-01T15:22:08Z"),
},
"local_account_3": {
ID: "01JPCMGR09M8VGARPSBABXNZFQ",
ClientID: "01F8MGV8AC3NGSJW0FE8W1BV70",
UserID: "01JPCMFRTQ0B6R8SXPM7RS80Q4",
RedirectURI: "http://localhost:8080",
Scope: "read write push",
Access: "01JPCMK0YQ24FFVZ98PYZGJCC901JPCMK32ZKZMM737HGSWMW",
AccessCreateAt: TimeMustParse("2025-03-15T11:08:00Z"),
},
"admin_account": {
ID: "01FS4TP8ANA5VE92EAPA9E0M7Q",
ClientID: "01F8MGWSJCND9BWBD4WGJXBM93",
@ -249,6 +258,29 @@ func NewTestUsers() map[string]*gtsmodel.User {
ResetPasswordToken: "",
ResetPasswordSentAt: time.Time{},
},
"local_account_3": {
ID: "01JPCMFRTQ0B6R8SXPM7RS80Q4",
Email: "media.mogul@example.org",
AccountID: "01JPCMD83Y4WR901094YES3QC5",
EncryptedPassword: "$2y$10$ggWz5QWwnx6kzb9g0tnIJurFtE0dhr5Zfeaqs9iFuUIXzafQlJVZS", // 'password'
CreatedAt: TimeMustParse("2025-03-15T11:08:00Z"),
SignUpIP: nil,
UpdatedAt: TimeMustParse("2025-03-15T11:08:00Z"),
InviteID: "",
Locale: "en",
CreatedByApplicationID: "01HT5P2YHDMPAAD500NDAY8JW1",
LastEmailedAt: TimeMustParse("2025-03-15T11:08:00Z"),
ConfirmationToken: "",
ConfirmedAt: TimeMustParse("2025-03-15T11:08:00Z"),
ConfirmationSentAt: TimeMustParse("2025-03-15T11:08:00Z"),
UnconfirmedEmail: "",
Moderator: util.Ptr(false),
Admin: util.Ptr(false),
Disabled: util.Ptr(false),
Approved: util.Ptr(true),
ResetPasswordToken: "",
ResetPasswordSentAt: time.Time{},
},
}
return users
@ -446,6 +478,59 @@ func NewTestAccounts() map[string]*gtsmodel.Account {
SuspensionOrigin: "",
Settings: settings["local_account_2"],
},
"local_account_3": {
ID: "01JPCMD83Y4WR901094YES3QC5",
Username: "media_mogul",
AvatarMediaAttachmentID: "01JPHQZ0ZHC2AXJK1JQNXRXQZN",
HeaderMediaAttachmentID: "01JPHRB7F2RXPTEQFRYC85EPD9",
DisplayName: "",
Fields: []*gtsmodel.Field{
{
Name: "I'm going to post a lot of",
Value: "media!",
},
{
Name: "and there's nothing",
Value: "you can do about it",
},
},
FieldsRaw: []*gtsmodel.Field{
{
Name: "I'm going to post a lot of",
Value: "media!",
},
{
Name: "and there's nothing",
Value: "you can do about it",
},
},
Note: "<p>I'm a test account that posts a shitload of media and I have my account rendered in \"gallery\" mode</p>",
NoteRaw: "I'm a test account that posts a shitload of media and I have my account rendered in \"gallery\" mode",
Memorial: util.Ptr(false),
MovedToURI: "",
CreatedAt: TimeMustParse("2025-03-15T11:08:00Z"),
UpdatedAt: TimeMustParse("2025-03-15T11:08:00Z"),
Bot: util.Ptr(false),
Locked: util.Ptr(false),
Discoverable: util.Ptr(false),
URI: "http://localhost:8080/users/media_mogul",
URL: "http://localhost:8080/@media_mogul",
FetchedAt: time.Time{},
InboxURI: "http://localhost:8080/users/media_mogul/inbox",
OutboxURI: "http://localhost:8080/users/media_mogul/outbox",
FollowersURI: "http://localhost:8080/users/media_mogul/followers",
FollowingURI: "http://localhost:8080/users/media_mogul/following",
FeaturedCollectionURI: "http://localhost:8080/users/media_mogul/collections/featured",
ActorType: ap.ActorPerson,
PrivateKey: &rsa.PrivateKey{},
PublicKey: &rsa.PublicKey{},
PublicKeyURI: "http://localhost:8080/users/media_mogul#main-key",
SensitizedAt: time.Time{},
SilencedAt: time.Time{},
SuspendedAt: time.Time{},
SuspensionOrigin: "",
Settings: settings["local_account_3"],
},
"remote_account_1": {
ID: "01F8MH5ZK5VRH73AKHQM6Y9VNX",
Username: "foss_satan",
@ -596,6 +681,7 @@ func NewTestAccounts() map[string]*gtsmodel.Account {
"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",
}
if diff := len(accountsSorted) - len(preserializedKeys); diff > 0 {
@ -640,6 +726,7 @@ func NewTestAccountSettings() map[string]*gtsmodel.AccountSettings {
EnableRSS: util.Ptr(false),
HideCollections: util.Ptr(false),
WebVisibility: gtsmodel.VisibilityPublic,
WebLayout: gtsmodel.WebLayoutMicroblog,
},
"admin_account": {
AccountID: "01F8MH17FWEB39HZJ76B6VXSKF",
@ -651,6 +738,7 @@ func NewTestAccountSettings() map[string]*gtsmodel.AccountSettings {
EnableRSS: util.Ptr(true),
HideCollections: util.Ptr(false),
WebVisibility: gtsmodel.VisibilityPublic,
WebLayout: gtsmodel.WebLayoutMicroblog,
},
"local_account_1": {
AccountID: "01F8MH1H7YV1Z7D2C8K2730QBF",
@ -662,6 +750,7 @@ func NewTestAccountSettings() map[string]*gtsmodel.AccountSettings {
EnableRSS: util.Ptr(true),
HideCollections: util.Ptr(false),
WebVisibility: gtsmodel.VisibilityUnlocked,
WebLayout: gtsmodel.WebLayoutMicroblog,
},
"local_account_2": {
AccountID: "01F8MH5NBDF2MV7CTC4Q5128HF",
@ -673,6 +762,19 @@ func NewTestAccountSettings() map[string]*gtsmodel.AccountSettings {
EnableRSS: util.Ptr(false),
HideCollections: util.Ptr(true),
WebVisibility: gtsmodel.VisibilityPublic,
WebLayout: gtsmodel.WebLayoutMicroblog,
},
"local_account_3": {
AccountID: "01JPCMD83Y4WR901094YES3QC5",
CreatedAt: TimeMustParse("2025-03-15T11:08:00Z"),
UpdatedAt: TimeMustParse("2025-03-15T11:08:00Z"),
Privacy: gtsmodel.VisibilityPublic,
Sensitive: util.Ptr(true),
Language: "en",
EnableRSS: util.Ptr(true),
HideCollections: util.Ptr(false),
WebVisibility: gtsmodel.VisibilityUnlocked,
WebLayout: gtsmodel.WebLayoutGallery,
},
}
}
@ -1035,6 +1137,623 @@ func NewTestAttachments() map[string]*gtsmodel.MediaAttachment {
Header: util.Ptr(false),
Cached: util.Ptr(false),
},
"local_account_3_avatar": {
ID: "01JPHQZ0ZHC2AXJK1JQNXRXQZN",
StatusID: "", // this attachment isn't connected to a status
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/avatar/original/01JPHQZ0ZHC2AXJK1JQNXRXQZN.jpeg",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-17T10:46:37+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 1280,
Height: 720,
Size: 921600,
Aspect: 1.777778,
},
Small: gtsmodel.Small{
Width: 512,
Height: 288,
Size: 147456,
Aspect: 1.777778,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "LRF~2LIU0esp-qRjR*aeJ$s;iwW.",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/avatar/original/01JPHQZ0ZHC2AXJK1JQNXRXQZN.jpeg",
ContentType: "image/jpeg",
FileSize: 291230,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/avatar/small/01JPHQZ0ZHC2AXJK1JQNXRXQZN.jpeg",
ContentType: "image/jpeg",
FileSize: 24486,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/avatar/small/01JPHQZ0ZHC2AXJK1JQNXRXQZN.jpeg",
RemoteURL: "",
},
Avatar: util.Ptr(true),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
"local_account_3_header": {
ID: "01JPHRB7F2RXPTEQFRYC85EPD9",
StatusID: "", // this attachment isn't connected to a status
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/header/original/01JPHRB7F2RXPTEQFRYC85EPD9.png",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-17T10:53:17+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 725,
Height: 307,
Size: 222575,
Aspect: 2.361563,
},
Small: gtsmodel.Small{
Width: 512,
Height: 216,
Size: 110592,
Aspect: 2.361563,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "L9I5h:%M%M?a~os:D*bFMybFM{jI",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/header/original/01JPHRB7F2RXPTEQFRYC85EPD9.png",
ContentType: "image/png",
FileSize: 405238,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/header/small/01JPHRB7F2RXPTEQFRYC85EPD9.webp",
ContentType: "image/webp",
FileSize: 26478,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/header/small/01JPHRB7F2RXPTEQFRYC85EPD9.webp",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(true),
Cached: util.Ptr(true),
},
// sickos
"local_account_3_status_1_attachment_1": {
ID: "01JPCPRMPPGWKBCAE7X81XA0PK",
StatusID: "01JPCNB4417JG3XHHP0WS60RM3",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPCPRMPPGWKBCAE7X81XA0PK.jpeg",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-15T11:49:28+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 1920,
Height: 1200,
Size: 2304000,
Aspect: 1.600000,
},
Small: gtsmodel.Small{
Width: 512,
Height: 320,
Size: 163840,
Aspect: 1.600000,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "L~EqXWX5t6og%jW=owa~N1WFjYWC",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPCPRMPPGWKBCAE7X81XA0PK.jpeg",
ContentType: "image/jpeg",
FileSize: 513277,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPCPRMPPGWKBCAE7X81XA0PK.jpeg",
ContentType: "image/jpeg",
FileSize: 23550,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPCPRMPPGWKBCAE7X81XA0PK.jpeg",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
// marge
"local_account_3_status_1_attachment_2": {
ID: "01JPCPTSFNQDAGTHP49DXSD0BM",
StatusID: "01JPCNB4417JG3XHHP0WS60RM3",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPCPTSFNQDAGTHP49DXSD0BM.png",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-15T11:50:38+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 976,
Height: 741,
Size: 723216,
Aspect: 1.317139,
},
Small: gtsmodel.Small{
Width: 512,
Height: 388,
Size: 198656,
Aspect: 1.317139,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "LGH1i6RpD;-,0DoZaIogA2N3xZI]",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPCPTSFNQDAGTHP49DXSD0BM.png",
ContentType: "image/png",
FileSize: 380878,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPCPTSFNQDAGTHP49DXSD0BM.webp",
ContentType: "image/webp",
FileSize: 51882,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPCPTSFNQDAGTHP49DXSD0BM.webp",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
// sloth-gear
"local_account_3_status_1_attachment_3": {
ID: "01JPCPYJ6N2E2R7GAJ1XECXNV5",
StatusID: "01JPCNB4417JG3XHHP0WS60RM3",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPCPYJ6N2E2R7GAJ1XECXNV5.webp",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-15T11:52:42+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 2830,
Height: 1472,
Size: 4165760,
Aspect: 1.922554,
},
Small: gtsmodel.Small{
Width: 512,
Height: 266,
Size: 136192,
Aspect: 1.922554,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "LOE.|bxZx]j[~pt7WWWW%Lj@%Mj[",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPCPYJ6N2E2R7GAJ1XECXNV5.webp",
ContentType: "image/webp",
FileSize: 366592,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPCPYJ6N2E2R7GAJ1XECXNV5.jpeg",
ContentType: "image/jpeg",
FileSize: 15461,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPCPYJ6N2E2R7GAJ1XECXNV5.jpeg",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
// you-posted
"local_account_3_status_1_attachment_4": {
ID: "01JPCQ4WXEA52VVR9V1HN7E0RS",
StatusID: "01JPCNB4417JG3XHHP0WS60RM3",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPCQ4WXEA52VVR9V1HN7E0RS.png",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-15T11:56:09+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 1920,
Height: 1080,
Size: 2073600,
Aspect: 1.777778,
},
Small: gtsmodel.Small{
Width: 512,
Height: 288,
Size: 147456,
Aspect: 1.777778,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "L00+zhoLNubHj[fQa|fQ9tWVw{jZ",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPCQ4WXEA52VVR9V1HN7E0RS.png",
ContentType: "image/png",
FileSize: 80917,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPCQ4WXEA52VVR9V1HN7E0RS.webp",
ContentType: "image/webp",
FileSize: 5344,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPCQ4WXEA52VVR9V1HN7E0RS.webp",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
// buscemi
"local_account_3_status_1_attachment_5": {
ID: "01JPCQ9VBZBMSTVN56QN3R5188",
StatusID: "01JPCNB4417JG3XHHP0WS60RM3",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPCQ9VBZBMSTVN56QN3R5188.jpeg",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-15T11:58:51+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 1077,
Height: 525,
Size: 565425,
Aspect: 2.051429,
},
Small: gtsmodel.Small{
Width: 512,
Height: 249,
Size: 127488,
Aspect: 2.051429,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "L5A9A=}?J*5m56Rk={$%O?Nb$M$i",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPCQ9VBZBMSTVN56QN3R5188.jpeg",
ContentType: "image/jpeg",
FileSize: 42899,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPCQ9VBZBMSTVN56QN3R5188.jpeg",
ContentType: "image/jpeg",
FileSize: 17341,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPCQ9VBZBMSTVN56QN3R5188.jpeg",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
// butt
"local_account_3_status_1_attachment_6": {
ID: "01JPG1RZPRH3Y00VSA3RQ2SJWP",
StatusID: "01JPCNB4417JG3XHHP0WS60RM3",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPG1RZPRH3Y00VSA3RQ2SJWP.gif",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-16T18:59:36+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 31,
Height: 25,
Size: 775,
Aspect: 1.240000,
},
Small: gtsmodel.Small{
Width: 31,
Height: 25,
Size: 775,
Aspect: 1.240000,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "LWLN.4~q00ofxuxu-;%M9F-;-;xu",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPG1RZPRH3Y00VSA3RQ2SJWP.gif",
ContentType: "image/gif",
FileSize: 636,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPG1RZPRH3Y00VSA3RQ2SJWP.webp",
ContentType: "image/webp",
FileSize: 406,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPG1RZPRH3Y00VSA3RQ2SJWP.webp",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
// bunny
"local_account_3_status_2_attachment_1": {
ID: "01JPHFKQ86GT9W76SWPHE9P8JB",
StatusID: "01JPCNJAPHJKJC4EXWA6N9BXDD",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPHFKQ86GT9W76SWPHE9P8JB.webm",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-17T08:20:38+01:00"),
Type: gtsmodel.FileTypeVideo,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 640,
Height: 360,
Size: 230400,
Aspect: 1.777778,
Duration: util.Ptr[float32](32.480000),
Bitrate: util.Ptr[uint64](533294),
},
Small: gtsmodel.Small{
Width: 512,
Height: 288,
Size: 147456,
Aspect: 1.777778,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "LEQcn{?bfQ?b~qoffQoffQfQfQfQ",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPHFKQ86GT9W76SWPHE9P8JB.webm",
ContentType: "video/webm",
FileSize: 2165608,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPHFKQ86GT9W76SWPHE9P8JB.webp",
ContentType: "image/webp",
FileSize: 324,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPHFKQ86GT9W76SWPHE9P8JB.webp",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
// computerbye
"local_account_3_status_2_attachment_2": {
ID: "01JPHFSCVGGH02FX9VJMXGXN45",
StatusID: "01JPCNJAPHJKJC4EXWA6N9BXDD",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPHFSCVGGH02FX9VJMXGXN45.gif",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-17T08:23:44+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 442,
Height: 332,
Size: 146744,
Aspect: 1.331325,
Duration: util.Ptr[float32](3.750000),
Framerate: util.Ptr[float32](20.000000),
Bitrate: util.Ptr[uint64](4078150),
},
Small: gtsmodel.Small{
Width: 442,
Height: 332,
Size: 146744,
Aspect: 1.331325,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "LLHUzr-;o#_2~q-:IV%Mxu%MM{M{",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPHFSCVGGH02FX9VJMXGXN45.gif",
ContentType: "image/gif",
FileSize: 1911633,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPHFSCVGGH02FX9VJMXGXN45.webp",
ContentType: "image/webp",
FileSize: 10056,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPHFSCVGGH02FX9VJMXGXN45.webp",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
// diarrhea
"local_account_3_status_2_attachment_3": {
ID: "01JPHFW5HKFWQNQ954P5KNXWSR",
StatusID: "01JPCNJAPHJKJC4EXWA6N9BXDD",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPHFW5HKFWQNQ954P5KNXWSR.gif",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-17T08:25:15+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 320,
Height: 214,
Size: 68480,
Aspect: 1.495327,
Duration: util.Ptr[float32](3.100000),
Framerate: util.Ptr[float32](10.000000),
Bitrate: util.Ptr[uint64](2011086),
},
Small: gtsmodel.Small{
Width: 320,
Height: 214,
Size: 68480,
Aspect: 1.495327,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "L78qTmNG00xZkWxsIURQ01s;?aR*",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPHFW5HKFWQNQ954P5KNXWSR.gif",
ContentType: "image/gif",
FileSize: 779296,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPHFW5HKFWQNQ954P5KNXWSR.webp",
ContentType: "image/webp",
FileSize: 10238,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPHFW5HKFWQNQ954P5KNXWSR.webp",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
// ffmpreg
"local_account_3_status_2_attachment_4": {
ID: "01JPHFZP2VNS1M2RQ646BXBZQG",
StatusID: "01JPCNJAPHJKJC4EXWA6N9BXDD",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPHFZP2VNS1M2RQ646BXBZQG.jpeg",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-17T08:27:10+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 1280,
Height: 720,
Size: 921600,
Aspect: 1.777778,
},
Small: gtsmodel.Small{
Width: 512,
Height: 288,
Size: 147456,
Aspect: 1.777778,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "LOCX.y}rIpE3,?w{S4W;9vENX8t6",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPHFZP2VNS1M2RQ646BXBZQG.jpeg",
ContentType: "image/jpeg",
FileSize: 137328,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPHFZP2VNS1M2RQ646BXBZQG.jpeg",
ContentType: "image/jpeg",
FileSize: 19775,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPHFZP2VNS1M2RQ646BXBZQG.jpeg",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
// notabug
"local_account_3_status_2_attachment_5": {
ID: "01JPHG32F7M6F084WKEGAYJ40X",
StatusID: "01JPCNJAPHJKJC4EXWA6N9BXDD",
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPHG32F7M6F084WKEGAYJ40X.jpeg",
RemoteURL: "",
CreatedAt: TimeMustParse("2025-03-17T08:29:01+01:00"),
Type: gtsmodel.FileTypeImage,
FileMeta: gtsmodel.FileMeta{
Original: gtsmodel.Original{
Width: 500,
Height: 739,
Size: 369500,
Aspect: 0.676590,
},
Small: gtsmodel.Small{
Width: 346,
Height: 512,
Size: 177152,
Aspect: 0.676590,
},
Focus: gtsmodel.Focus{
X: 0,
Y: 0,
},
},
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Description: "DESCRIPTION_GOES_HERE",
ScheduledStatusID: "",
Blurhash: "LTGbrRxAE1og0OR:xve-OFs6kCWY",
Processing: 2,
File: gtsmodel.File{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/original/01JPHG32F7M6F084WKEGAYJ40X.jpeg",
ContentType: "image/jpeg",
FileSize: 106636,
},
Thumbnail: gtsmodel.Thumbnail{
Path: "01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPHG32F7M6F084WKEGAYJ40X.jpeg",
ContentType: "image/jpeg",
FileSize: 27483,
URL: "http://localhost:8080/fileserver/01JPCMD83Y4WR901094YES3QC5/attachment/small/01JPHG32F7M6F084WKEGAYJ40X.jpeg",
RemoteURL: "",
},
Avatar: util.Ptr(false),
Header: util.Ptr(false),
Cached: util.Ptr(true),
},
"remote_account_1_status_1_attachment_1": {
ID: "01FVW7RXPQ8YJHTEXYPE7Q8ZY0",
StatusID: "01FVW7JHQFSFK166WWKR8CBA6M",
@ -1372,6 +2091,58 @@ func newTestStoredAttachments() map[string]filenames {
Original: "ghosts-original.mp3",
Small: "ghosts-small.webp",
},
"local_account_3_status_1_attachment_1": {
Original: "sickos-original.jpeg",
Small: "sickos-small.jpeg",
},
"local_account_3_status_1_attachment_2": {
Original: "marge-original.png",
Small: "marge-small.webp",
},
"local_account_3_status_1_attachment_3": {
Original: "sloth-gear-original.webp",
Small: "sloth-gear-small.jpeg",
},
"local_account_3_status_1_attachment_4": {
Original: "you-posted-original.webp",
Small: "you-posted-small.webp",
},
"local_account_3_status_1_attachment_5": {
Original: "buscemi-original.jpeg",
Small: "buscemi-small.jpeg",
},
"local_account_3_avatar": {
Original: "dollar-original.jpeg",
Small: "dollar-small.jpeg",
},
"local_account_3_header": {
Original: "dollar2-original.png",
Small: "dollar2-small.webp",
},
"local_account_3_status_1_attachment_6": {
Original: "butt-original.gif",
Small: "butt-small.webp",
},
"local_account_3_status_2_attachment_1": {
Original: "bunny-original.webm",
Small: "bunny-small.webp",
},
"local_account_3_status_2_attachment_2": {
Original: "computerbye-original.gif",
Small: "computerbye-small.webp",
},
"local_account_3_status_2_attachment_3": {
Original: "diarrhea-original.gif",
Small: "diarrhea-small.webp",
},
"local_account_3_status_2_attachment_4": {
Original: "ffmpreg-original.jpeg",
Small: "ffmpreg-small.jpeg",
},
"local_account_3_status_2_attachment_5": {
Original: "notabug-original.jpeg",
Small: "notabug-small.jpeg",
},
"remote_account_1_status_1_attachment_1": {
Original: "thoughtsofdog-original.jpg",
Small: "thoughtsofdog-small.jpeg",
@ -1941,6 +2712,54 @@ func NewTestStatuses() map[string]*gtsmodel.Status {
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
},
"local_account_3_status_1": {
ID: "01JPCNB4417JG3XHHP0WS60RM3",
URI: "http://localhost:8080/users/media_mogul/statuses/01JPCNB4417JG3XHHP0WS60RM3",
URL: "http://localhost:8080/@media_mogul/statuses/01JPCNB4417JG3XHHP0WS60RM3",
AttachmentIDs: []string{
"01JPCPRMPPGWKBCAE7X81XA0PK",
"01JPCPTSFNQDAGTHP49DXSD0BM",
"01JPCPYJ6N2E2R7GAJ1XECXNV5",
"01JPCQ4WXEA52VVR9V1HN7E0RS",
"01JPCQ9VBZBMSTVN56QN3R5188",
"01JPG1RZPRH3Y00VSA3RQ2SJWP",
},
ContentType: gtsmodel.StatusContentTypePlain,
CreatedAt: TimeMustParse("2025-03-15T11:26:17Z"),
Local: util.Ptr(true),
AccountURI: "http://localhost:8080/users/media_mogul",
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Visibility: gtsmodel.VisibilityUnlocked,
Sensitive: util.Ptr(false),
Language: "en",
CreatedWithApplicationID: "01F8MGY43H3N2C8EWPR2FPYEXG",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
PinnedAt: TimeMustParse("2025-03-15T11:27:00Z"),
},
"local_account_3_status_2": {
ID: "01JPCNJAPHJKJC4EXWA6N9BXDD",
URI: "http://localhost:8080/users/media_mogul/statuses/01JPCNJAPHJKJC4EXWA6N9BXDD",
URL: "http://localhost:8080/@media_mogul/statuses/01JPCNJAPHJKJC4EXWA6N9BXDD",
AttachmentIDs: []string{
"01JPHFKQ86GT9W76SWPHE9P8JB",
"01JPHFSCVGGH02FX9VJMXGXN45",
"01JPHFW5HKFWQNQ954P5KNXWSR",
"01JPHFZP2VNS1M2RQ646BXBZQG",
"01JPHG32F7M6F084WKEGAYJ40X",
},
ContentType: gtsmodel.StatusContentTypePlain,
CreatedAt: TimeMustParse("2025-03-15T11:28:42Z"),
Local: util.Ptr(true),
AccountURI: "http://localhost:8080/users/media_mogul",
AccountID: "01JPCMD83Y4WR901094YES3QC5",
Visibility: gtsmodel.VisibilityUnlocked,
Sensitive: util.Ptr(false),
Language: "en",
CreatedWithApplicationID: "01F8MGY43H3N2C8EWPR2FPYEXG",
Federated: util.Ptr(true),
ActivityStreamsType: ap.ObjectNote,
},
"remote_account_1_status_1": {
ID: "01FVW7JHQFSFK166WWKR8CBA6M",
URI: "http://fossbros-anonymous.io/users/foss_satan/statuses/01FVW7JHQFSFK166WWKR8CBA6M",