X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=shared%2Fmodels%2Fusers%2Fuser.model.ts;h=63c5c8a92f961e36da3e9b4e40e064e27cb713e4;hb=b211106695bb82f6c32e53306081b5262c3d109d;hp=d3085267f713f648057895c42a03454b7abbb962;hpb=eacb25c4366bcc8fba20f98f93f004fabc6d5578;p=github%2FChocobozzz%2FPeerTube.git diff --git a/shared/models/users/user.model.ts b/shared/models/users/user.model.ts index d3085267f..63c5c8a92 100644 --- a/shared/models/users/user.model.ts +++ b/shared/models/users/user.model.ts @@ -1,20 +1,75 @@ import { Account } from '../actors' -import { VideoChannel } from '../videos/video-channel.model' +import { VideoChannel } from '../videos/channel/video-channel.model' import { UserRole } from './user-role' import { NSFWPolicyType } from '../videos/nsfw-policy.type' +import { UserNotificationSetting } from './user-notification-setting.model' +import { UserAdminFlag } from './user-flag.model' +import { VideoPlaylistType } from '../videos/playlist/video-playlist-type.model' export interface User { id: number username: string email: string + pendingEmail: string | null + + emailVerified: boolean nsfwPolicy: NSFWPolicyType + + adminFlags?: UserAdminFlag + autoPlayVideo: boolean + autoPlayNextVideo: boolean + autoPlayNextVideoPlaylist: boolean + + // @deprecated in favour of p2pEnabled + webTorrentEnabled: boolean + p2pEnabled: boolean + + videosHistoryEnabled: boolean + videoLanguages: string[] + role: UserRole + roleLabel: string + videoQuota: number - createdAt: Date + videoQuotaDaily: number + videoQuotaUsed?: number + videoQuotaUsedDaily?: number + + videosCount?: number + + abusesCount?: number + abusesAcceptedCount?: number + abusesCreatedCount?: number + + videoCommentsCount?: number + + theme: string + account: Account + notificationSettings?: UserNotificationSetting videoChannels?: VideoChannel[] blocked: boolean blockedReason?: string + + noInstanceConfigWarningModal: boolean + noWelcomeModal: boolean + noAccountSetupWarningModal: boolean + + createdAt: Date + + pluginAuth: string | null + + lastLoginDate: Date | null +} + +export interface MyUserSpecialPlaylist { + id: number + name: string + type: VideoPlaylistType +} + +export interface MyUser extends User { + specialPlaylists: MyUserSpecialPlaylist[] }