X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=shared%2Fmodels%2Fserver%2Fcustom-config.model.ts;h=338a5934108f60fce270e2b15b43a0b8e7d01d63;hb=e6abf95e9fc9fde52d583850cf7faafdf7d050d5;hp=7f3e2df0272f29456ea854f1ebc0ec38e4f7fd3c;hpb=901637bb87f5eb0518fb7ca69d98b53ed918339e;p=github%2FChocobozzz%2FPeerTube.git diff --git a/shared/models/server/custom-config.model.ts b/shared/models/server/custom-config.model.ts index 7f3e2df02..338a59341 100644 --- a/shared/models/server/custom-config.model.ts +++ b/shared/models/server/custom-config.model.ts @@ -1,43 +1,156 @@ +import { NSFWPolicyType } from '../videos/nsfw-policy.type' +import { BroadcastMessageLevel } from './broadcast-message-level.type' + export interface CustomConfig { instance: { name: string + shortDescription: string description: string terms: string + codeOfConduct: string + + creationReason: string + moderationInformation: string + administrator: string + maintenanceLifetime: string + businessModel: string + hardwareInformation: string + + languages: string[] + categories: number[] + + isNSFW: boolean defaultClientRoute: string + defaultNSFWPolicy: NSFWPolicyType customizations: { javascript?: string css?: string } } + theme: { + default: string + } + + services: { + twitter: { + username: string + whitelisted: boolean + } + } + cache: { previews: { size: number } + + captions: { + size: number + } } signup: { enabled: boolean limit: number + requiresEmailVerification: boolean } admin: { email: string } + contactForm: { + enabled: boolean + } + user: { videoQuota: number + videoQuotaDaily: number } transcoding: { enabled: boolean + + allowAdditionalExtensions: boolean + allowAudioFiles: boolean + threads: number resolutions: { + '0p': boolean '240p': boolean '360p': boolean '480p': boolean '720p': boolean '1080p': boolean + '2160p': boolean + } + + webtorrent: { + enabled: boolean + } + + hls: { + enabled: boolean + } + } + + import: { + videos: { + http: { + enabled: boolean + } + torrent: { + enabled: boolean + } + } + } + + autoBlacklist: { + videos: { + ofUsers: { + enabled: boolean + } + } + } + + followers: { + instance: { + enabled: boolean + manualApproval: boolean + } + } + + followings: { + instance: { + autoFollowBack: { + enabled: boolean + } + + autoFollowIndex: { + enabled: boolean + indexUrl: string + } + } + } + + broadcastMessage: { + enabled: boolean + message: string + level: BroadcastMessageLevel + dismissable: boolean + } + + search: { + remoteUri: { + users: boolean + anonymous: boolean + } + + searchIndex: { + enabled: boolean + url: string + disableLocalSearch: boolean + isDefaultSearch: boolean } } }