X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=shared%2Fmodels%2Fserver%2Fserver-config.model.ts;h=d6c660aac05c56bda8d32ab237c1e7ed8b9b0873;hb=7cd4d2ba10106c10602c86f74f55743ded588896;hp=611d0efe5db9e2392b4adda1a1515486d49d812b;hpb=1869c87535d31a73a26c5d07718cdf94300cc332;p=github%2FChocobozzz%2FPeerTube.git diff --git a/shared/models/server/server-config.model.ts b/shared/models/server/server-config.model.ts index 611d0efe5..d6c660aac 100644 --- a/shared/models/server/server-config.model.ts +++ b/shared/models/server/server-config.model.ts @@ -1,29 +1,84 @@ +import { NSFWPolicyType } from '../videos/nsfw-policy.type' +import { ClientScript } from '../plugins/plugin-package-json.model' + +export type ServerConfigPlugin = { + name: string + version: string + description: string + clientScripts: { [name: string]: ClientScript } +} + export interface ServerConfig { serverVersion: string + serverCommit?: string instance: { name: string shortDescription: string defaultClientRoute: string + isNSFW: boolean + defaultNSFWPolicy: NSFWPolicyType customizations: { javascript: string css: string } } + plugin: { + registered: ServerConfigPlugin[] + } + + theme: { + registered: ServerConfigPlugin[] + default: string + } + + email: { + enabled: boolean + } + + contactForm: { + enabled: boolean + } + signup: { - allowed: boolean + allowed: boolean, + allowedForCurrentIP: boolean + requiresEmailVerification: boolean } transcoding: { + hls: { + enabled: boolean + } + enabledResolutions: number[] } + import: { + videos: { + http: { + enabled: boolean + } + torrent: { + enabled: boolean + } + } + } + + autoBlacklist: { + videos: { + ofUsers: { + enabled: boolean + } + } + } + avatar: { file: { size: { max: number - }, + } extensions: string[] } } @@ -40,7 +95,27 @@ export interface ServerConfig { } } + videoCaption: { + file: { + size: { + max: number + }, + extensions: string[] + } + } + user: { videoQuota: number + videoQuotaDaily: number + } + + trending: { + videos: { + intervalDays: number + } + } + + tracker: { + enabled: boolean } }