mirror of https://github.com/cloudreve/Cloudreve
224 lines
4.3 KiB
Go
224 lines
4.3 KiB
Go
package setting
|
|
|
|
import (
|
|
"time"
|
|
)
|
|
|
|
type PWASetting struct {
|
|
SmallIcon string
|
|
MediumIcon string
|
|
LargeIcon string
|
|
Display string
|
|
ThemeColor string
|
|
BackgroundColor string
|
|
}
|
|
|
|
type SiteBasic struct {
|
|
Name string
|
|
Title string
|
|
ID string
|
|
Description string
|
|
Script string
|
|
}
|
|
|
|
type CaptchaType string
|
|
|
|
const (
|
|
CaptchaNormal = CaptchaType("normal")
|
|
CaptchaReCaptcha = CaptchaType("recaptcha")
|
|
CaptchaTcaptcha = CaptchaType("tcaptcha")
|
|
CaptchaTurnstile = CaptchaType("turnstile")
|
|
CaptchaCap = CaptchaType("cap")
|
|
)
|
|
|
|
type ReCaptcha struct {
|
|
Key string
|
|
Secret string
|
|
}
|
|
|
|
type TcCaptcha struct {
|
|
AppID string
|
|
AppSecretKey string
|
|
SecretID string
|
|
SecretKey string
|
|
}
|
|
|
|
type Turnstile struct {
|
|
Key string
|
|
Secret string
|
|
}
|
|
|
|
type Cap struct {
|
|
InstanceURL string
|
|
SiteKey string
|
|
SecretKey string
|
|
AssetServer string
|
|
}
|
|
|
|
type SMTP struct {
|
|
FromName string
|
|
From string
|
|
Host string
|
|
ReplyTo string
|
|
User string
|
|
Password string
|
|
ForceEncryption bool
|
|
Port int
|
|
Keepalive int
|
|
}
|
|
|
|
type TokenAuth struct {
|
|
AccessTokenTTL time.Duration
|
|
RefreshTokenTTL time.Duration
|
|
}
|
|
|
|
type DBFS struct {
|
|
UseCursorPagination bool
|
|
MaxPageSize int
|
|
MaxRecursiveSearchedFolder int
|
|
UseSSEForSearch bool
|
|
}
|
|
|
|
type (
|
|
QueueType string
|
|
QueueSetting struct {
|
|
WorkerNum int
|
|
MaxExecution time.Duration
|
|
BackoffFactor float64
|
|
BackoffMaxDuration time.Duration
|
|
MaxRetry int
|
|
RetryDelay time.Duration
|
|
}
|
|
)
|
|
|
|
type ThumbEncode struct {
|
|
Quality int
|
|
Format string
|
|
}
|
|
|
|
var (
|
|
QueueTypeMediaMeta = QueueType("media_meta")
|
|
QueueTypeIOIntense = QueueType("io_intense")
|
|
QueueTypeThumb = QueueType("thumb")
|
|
QueueTypeEntityRecycle = QueueType("recycle")
|
|
QueueTypeSlave = QueueType("slave")
|
|
QueueTypeRemoteDownload = QueueType("remote_download")
|
|
)
|
|
|
|
type CronType string
|
|
|
|
var (
|
|
CronTypeEntityCollect = CronType("entity_collect")
|
|
CronTypeTrashBinCollect = CronType("trash_bin_collect")
|
|
CronTypeOauthCredRefresh = CronType("oauth_cred_refresh")
|
|
)
|
|
|
|
type Theme struct {
|
|
Themes string
|
|
DefaultTheme string
|
|
}
|
|
|
|
type Logo struct {
|
|
Normal string
|
|
Light string
|
|
}
|
|
|
|
type LegalDocuments struct {
|
|
PrivacyPolicy string
|
|
TermsOfService string
|
|
}
|
|
|
|
type CaptchaMode int
|
|
|
|
const (
|
|
CaptchaModeNumber = CaptchaMode(iota)
|
|
CaptchaModeAlphabet
|
|
CaptchaModeArithmetic
|
|
CaptchaModeNumberAlphabet
|
|
)
|
|
|
|
type Captcha struct {
|
|
Height int
|
|
Width int
|
|
Mode CaptchaMode
|
|
ComplexOfNoiseText int
|
|
ComplexOfNoiseDot int
|
|
IsShowHollowLine bool
|
|
IsShowNoiseDot bool
|
|
IsShowNoiseText bool
|
|
IsShowSlimeLine bool
|
|
IsShowSineLine bool
|
|
Length int
|
|
}
|
|
|
|
type ExplorerFrontendSettings struct {
|
|
Icons string
|
|
}
|
|
|
|
type MapProvider string
|
|
|
|
const (
|
|
MapProviderOpenStreetMap = MapProvider("openstreetmap")
|
|
MapProviderGoogle = MapProvider("google")
|
|
)
|
|
|
|
type MapGoogleTileType string
|
|
|
|
const (
|
|
MapGoogleTileTypeRegular = MapGoogleTileType("regular")
|
|
MapGoogleTileTypeSatellite = MapGoogleTileType("satellite")
|
|
MapGoogleTileTypeTerrain = MapGoogleTileType("terrain")
|
|
)
|
|
|
|
type MapSetting struct {
|
|
Provider MapProvider
|
|
GoogleTileType MapGoogleTileType
|
|
}
|
|
|
|
// Viewer related
|
|
|
|
type (
|
|
SearchCategory string
|
|
)
|
|
|
|
const (
|
|
CategoryUnknown = SearchCategory("unknown")
|
|
CategoryImage = SearchCategory("image")
|
|
CategoryVideo = SearchCategory("video")
|
|
CategoryAudio = SearchCategory("audio")
|
|
CategoryDocument = SearchCategory("document")
|
|
)
|
|
|
|
type AppSetting struct {
|
|
Promotion bool
|
|
}
|
|
|
|
type EmailTemplate struct {
|
|
Title string `json:"title"`
|
|
Body string `json:"body"`
|
|
Language string `json:"language"`
|
|
}
|
|
|
|
type Avatar struct {
|
|
Gravatar string `json:"gravatar"`
|
|
Path string `json:"path"`
|
|
}
|
|
|
|
type AvatarProcess struct {
|
|
Path string `json:"path"`
|
|
MaxFileSize int64 `json:"max_file_size"`
|
|
MaxWidth int `json:"max_width"`
|
|
}
|
|
|
|
type CustomNavItem struct {
|
|
Icon string `json:"icon"`
|
|
Name string `json:"name"`
|
|
URL string `json:"url"`
|
|
}
|
|
|
|
type CustomHTML struct {
|
|
HeadlessFooter string `json:"headless_footer,omitempty"`
|
|
HeadlessBody string `json:"headless_bottom,omitempty"`
|
|
SidebarBottom string `json:"sidebar_bottom,omitempty"`
|
|
}
|