aboutsummaryrefslogtreecommitdiffhomepage
path: root/shared/models
diff options
context:
space:
mode:
authorkontrollanten <6680299+kontrollanten@users.noreply.github.com>2022-02-28 08:34:43 +0100
committerGitHub <noreply@github.com>2022-02-28 08:34:43 +0100
commitd0800f7661f13fabe7bb6f4aa0ea50764f106405 (patch)
treed43e6b0b6f4a5a32e03487e6464edbcaf288be2a /shared/models
parent5cad2ca9db9b9d138f8a33058d10b94a9fd50c69 (diff)
downloadPeerTube-d0800f7661f13fabe7bb6f4aa0ea50764f106405.tar.gz
PeerTube-d0800f7661f13fabe7bb6f4aa0ea50764f106405.tar.zst
PeerTube-d0800f7661f13fabe7bb6f4aa0ea50764f106405.zip
Implement avatar miniatures (#4639)
* client: remove unused file * refactor(client/my-actor-avatar): size from input Read size from component input instead of scss, to make it possible to use smaller avatar images when implemented. * implement avatar miniatures close #4560 * fix(test): max file size * fix(search-index): normalize res acc to avatarMini * refactor avatars to an array * client/search: resize channel avatar to 120 * refactor(client/videos): remove unused function * client(actor-avatar): set default size * fix tests and avatars full result When findOne is used only an array containting one avatar is returned. * update migration version and version notations * server/search: harmonize normalizing * Cleanup avatar miniature PR Co-authored-by: Chocobozzz <me@florianbigard.com>
Diffstat (limited to 'shared/models')
-rw-r--r--shared/models/activitypub/activitypub-actor.ts7
-rw-r--r--shared/models/actors/account.model.ts7
-rw-r--r--shared/models/actors/actor-image.model.ts1
-rw-r--r--shared/models/actors/actor.model.ts6
-rw-r--r--shared/models/users/user-notification.model.ts11
-rw-r--r--shared/models/videos/channel/video-channel.model.ts13
6 files changed, 35 insertions, 10 deletions
diff --git a/shared/models/activitypub/activitypub-actor.ts b/shared/models/activitypub/activitypub-actor.ts
index 09d4f7402..efb6edec4 100644
--- a/shared/models/activitypub/activitypub-actor.ts
+++ b/shared/models/activitypub/activitypub-actor.ts
@@ -27,8 +27,11 @@ export interface ActivityPubActor {
27 publicKeyPem: string 27 publicKeyPem: string
28 } 28 }
29 29
30 icon?: ActivityIconObject 30 image?: ActivityIconObject | ActivityIconObject[]
31 image?: ActivityIconObject 31
32 icon?: ActivityIconObject | ActivityIconObject[]
33 // TODO: migrate to `icon`, introduced in 4.2
34 icons?: ActivityIconObject[]
32 35
33 published?: string 36 published?: string
34} 37}
diff --git a/shared/models/actors/account.model.ts b/shared/models/actors/account.model.ts
index f2138077e..60f4236d5 100644
--- a/shared/models/actors/account.model.ts
+++ b/shared/models/actors/account.model.ts
@@ -4,6 +4,7 @@ import { Actor } from './actor.model'
4export interface Account extends Actor { 4export interface Account extends Actor {
5 displayName: string 5 displayName: string
6 description: string 6 description: string
7 avatars: ActorImage[]
7 8
8 updatedAt: Date | string 9 updatedAt: Date | string
9 10
@@ -16,5 +17,9 @@ export interface AccountSummary {
16 displayName: string 17 displayName: string
17 url: string 18 url: string
18 host: string 19 host: string
19 avatar?: ActorImage 20
21 avatars: ActorImage[]
22
23 // TODO: remove, deprecated in 4.2
24 avatar: ActorImage
20} 25}
diff --git a/shared/models/actors/actor-image.model.ts b/shared/models/actors/actor-image.model.ts
index ad5eab627..cfe44ac15 100644
--- a/shared/models/actors/actor-image.model.ts
+++ b/shared/models/actors/actor-image.model.ts
@@ -1,4 +1,5 @@
1export interface ActorImage { 1export interface ActorImage {
2 width: number
2 path: string 3 path: string
3 4
4 url?: string 5 url?: string
diff --git a/shared/models/actors/actor.model.ts b/shared/models/actors/actor.model.ts
index fd0662331..bf86a917f 100644
--- a/shared/models/actors/actor.model.ts
+++ b/shared/models/actors/actor.model.ts
@@ -8,5 +8,9 @@ export interface Actor {
8 followingCount: number 8 followingCount: number
9 followersCount: number 9 followersCount: number
10 createdAt: Date | string 10 createdAt: Date | string
11 avatar?: ActorImage 11
12 avatars: ActorImage[]
13
14 // TODO: remove, deprecated in 4.2
15 avatar: ActorImage
12} 16}
diff --git a/shared/models/users/user-notification.model.ts b/shared/models/users/user-notification.model.ts
index 5820589fe..a2621fb5b 100644
--- a/shared/models/users/user-notification.model.ts
+++ b/shared/models/users/user-notification.model.ts
@@ -40,14 +40,19 @@ export interface VideoInfo {
40 name: string 40 name: string
41} 41}
42 42
43export interface AvatarInfo {
44 width: number
45 path: string
46}
47
43export interface ActorInfo { 48export interface ActorInfo {
44 id: number 49 id: number
45 displayName: string 50 displayName: string
46 name: string 51 name: string
47 host: string 52 host: string
48 avatar?: { 53
49 path: string 54 avatars: AvatarInfo[]
50 } 55 avatar: AvatarInfo
51} 56}
52 57
53export interface UserNotification { 58export interface UserNotification {
diff --git a/shared/models/videos/channel/video-channel.model.ts b/shared/models/videos/channel/video-channel.model.ts
index 5393f924d..58b60c177 100644
--- a/shared/models/videos/channel/video-channel.model.ts
+++ b/shared/models/videos/channel/video-channel.model.ts
@@ -1,5 +1,5 @@
1import { Actor } from '../../actors/actor.model'
2import { Account, ActorImage } from '../../actors' 1import { Account, ActorImage } from '../../actors'
2import { Actor } from '../../actors/actor.model'
3 3
4export type ViewsPerDate = { 4export type ViewsPerDate = {
5 date: Date 5 date: Date
@@ -19,7 +19,10 @@ export interface VideoChannel extends Actor {
19 videosCount?: number 19 videosCount?: number
20 viewsPerDay?: ViewsPerDate[] // chronologically ordered 20 viewsPerDay?: ViewsPerDate[] // chronologically ordered
21 21
22 banner?: ActorImage 22 banners: ActorImage[]
23
24 // TODO: remove, deprecated in 4.2
25 banner: ActorImage
23} 26}
24 27
25export interface VideoChannelSummary { 28export interface VideoChannelSummary {
@@ -28,5 +31,9 @@ export interface VideoChannelSummary {
28 displayName: string 31 displayName: string
29 url: string 32 url: string
30 host: string 33 host: string
31 avatar?: ActorImage 34
35 avatars: ActorImage[]
36
37 // TODO: remove, deprecated in 4.2
38 avatar: ActorImage
32} 39}