X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=shared%2Fmodels%2Fserver%2Fserver-config.model.ts;h=3498f86d77be9db4439a05d042baf51c8db8d67c;hb=e8f902c05cb35f6d5e9b75a23ddabd51c220a976;hp=e0ff8c07def4755343fb4f56178d01b479e2b550;hpb=d9eaee3939bf2e93e5d775d32bce77842201faba;p=github%2FChocobozzz%2FPeerTube.git diff --git a/shared/models/server/server-config.model.ts b/shared/models/server/server-config.model.ts index e0ff8c07d..3498f86d7 100644 --- a/shared/models/server/server-config.model.ts +++ b/shared/models/server/server-config.model.ts @@ -1,12 +1,26 @@ import { NSFWPolicyType } from '../videos/nsfw-policy.type' +import { ClientScript } from '../plugins/plugin-package-json.model' + +export interface ServerConfigPlugin { + name: string + version: string + description: string + clientScripts: { [name: string]: ClientScript } +} + +export interface ServerConfigTheme extends ServerConfigPlugin { + css: string[] +} export interface ServerConfig { serverVersion: string + serverCommit?: string instance: { name: string shortDescription: string defaultClientRoute: string + isNSFW: boolean defaultNSFWPolicy: NSFWPolicyType customizations: { javascript: string @@ -14,13 +28,34 @@ export interface ServerConfig { } } + plugin: { + registered: ServerConfigPlugin[] + } + + theme: { + registered: ServerConfigTheme[] + default: string + } + + email: { + enabled: boolean + } + + contactForm: { + enabled: boolean + } + signup: { allowed: boolean, - allowedForCurrentIP: boolean, + allowedForCurrentIP: boolean requiresEmailVerification: boolean } transcoding: { + hls: { + enabled: boolean + } + enabledResolutions: number[] } @@ -35,11 +70,19 @@ export interface ServerConfig { } } + autoBlacklist: { + videos: { + ofUsers: { + enabled: boolean + } + } + } + avatar: { file: { size: { max: number - }, + } extensions: string[] } } @@ -69,4 +112,14 @@ export interface ServerConfig { videoQuota: number videoQuotaDaily: number } + + trending: { + videos: { + intervalDays: number + } + } + + tracker: { + enabled: boolean + } }