PREVIEWS_DIR: buildPath(config.get<string>('storage.previews')),
CAPTIONS_DIR: buildPath(config.get<string>('storage.captions')),
TORRENTS_DIR: buildPath(config.get<string>('storage.torrents')),
- CACHE_DIR: buildPath(config.get<string>('storage.cache'))
+ CACHE_DIR: buildPath(config.get<string>('storage.cache')),
+ PLUGINS_DIR: buildPath(config.get<string>('storage.plugins'))
},
WEBSERVER: {
SCHEME: config.get<boolean>('webserver.https') === true ? 'https' : 'http',
PORT: config.get<number>('webserver.port')
},
RATES_LIMIT: {
+ API: {
+ WINDOW_MS: parseDurationToMs(config.get<string>('rates_limit.api.window')),
+ MAX: config.get<number>('rates_limit.api.max')
+ },
+ SIGNUP: {
+ WINDOW_MS: parseDurationToMs(config.get<string>('rates_limit.signup.window')),
+ MAX: config.get<number>('rates_limit.signup.max')
+ },
LOGIN: {
WINDOW_MS: parseDurationToMs(config.get<string>('rates_limit.login.window')),
MAX: config.get<number>('rates_limit.login.max')
},
TRUST_PROXY: config.get<string[]>('trust_proxy'),
LOG: {
- LEVEL: config.get<string>('log.level')
+ LEVEL: config.get<string>('log.level'),
+ ROTATION: config.get<boolean>('log.rotation.enabled')
},
SEARCH: {
REMOTE_URI: {
}
}
},
+ PLUGINS: {
+ INDEX: {
+ ENABLED: config.get<boolean>('plugins.index.enabled'),
+ CHECK_LATEST_VERSIONS_INTERVAL: parseDurationToMs(config.get<string>('plugins.index.check_latest_versions_interval')),
+ URL: config.get<string>('plugins.index.url')
+ }
+ },
ADMIN: {
get EMAIL () { return config.get<string>('admin.email') }
},
get '360p' () { return config.get<boolean>('transcoding.resolutions.360p') },
get '480p' () { return config.get<boolean>('transcoding.resolutions.480p') },
get '720p' () { return config.get<boolean>('transcoding.resolutions.720p') },
- get '1080p' () { return config.get<boolean>('transcoding.resolutions.1080p') }
+ get '1080p' () { return config.get<boolean>('transcoding.resolutions.1080p') },
+ get '2160p' () { return config.get<boolean>('transcoding.resolutions.2160p') }
},
HLS: {
get ENABLED () { return config.get<boolean>('transcoding.hls.enabled') }
get ENABLED () { return config.get<boolean>('followers.instance.enabled') },
get MANUAL_APPROVAL () { return config.get<boolean>('followers.instance.manual_approval') }
}
+ },
+ THEME: {
+ get DEFAULT () { return config.get<string>('theme.default') }
}
}