package dto import ( "time" ) type SettingInfo struct { SystemVersion string `json:"systemVersion"` DeveloperMode string `json:"developerMode"` UpgradeBackupCopies string `json:"upgradeBackupCopies"` SessionTimeout string `json:"sessionTimeout"` Port string `json:"port"` Ipv6 string `json:"ipv6"` BindAddress string `json:"bindAddress"` PanelName string `json:"panelName"` Edition string `json:"edition"` Theme string `json:"theme"` MenuTabs string `json:"menuTabs"` MenuAccordion string `json:"menuAccordion"` Language string `json:"language"` DocSource string `json:"docSource"` ServerPort string `json:"serverPort"` SSL string `json:"ssl"` SSLType string `json:"sslType"` BindDomain string `json:"bindDomain"` PasskeyTrustedProxies string `json:"passkeyTrustedProxies"` AllowIPs string `json:"allowIPs"` AllowIPTrustedProxies string `json:"allowIPTrustedProxies"` SecurityEntrance string `json:"securityEntrance"` DashboardMemoVisible string `json:"dashboardMemoVisible"` DashboardSimpleNodeVisible string `json:"dashboardSimpleNodeVisible"` ExpirationDays string `json:"expirationDays"` ComplexityVerification string `json:"complexityVerification"` AppStoreVersion string `json:"appStoreVersion"` AppStoreLastModified string `json:"appStoreLastModified"` AppStoreSyncStatus string `json:"appStoreSyncStatus"` HideMenu string `json:"hideMenu"` NoAuthSetting string `json:"noAuthSetting"` ProxyUrl string `json:"proxyUrl"` ProxyType string `json:"proxyType"` ProxyPort string `json:"proxyPort"` ProxyUser string `json:"proxyUser"` ProxyPasswd string `json:"proxyPasswd"` ProxyPasswdKeep string `json:"proxyPasswdKeep"` } type SettingBaseInfo struct { SystemVersion string `json:"systemVersion"` DeveloperMode string `json:"developerMode"` UpgradeBackupCopies string `json:"upgradeBackupCopies"` Port string `json:"port"` Ipv6 string `json:"ipv6"` BindAddress string `json:"bindAddress"` PanelName string `json:"panelName"` Edition string `json:"edition"` Theme string `json:"theme"` MenuTabs string `json:"menuTabs"` MenuAccordion string `json:"menuAccordion"` Language string `json:"language"` HideMenu string `json:"hideMenu"` DocSource string `json:"docSource"` ServerPort string `json:"serverPort"` SecurityEntrance string `json:"securityEntrance"` ComplexityVerification string `json:"complexityVerification"` NoAuthSetting string `json:"noAuthSetting"` ProxyType string `json:"proxyType"` ScriptSync string `json:"scriptSync"` DashboardMemoVisible string `json:"dashboardMemoVisible"` DashboardSimpleNodeVisible string `json:"dashboardSimpleNodeVisible"` } type SettingUpdate struct { Key string `json:"key" validate:"required,base_setting_key"` Value string `json:"value"` } type SSLUpdate struct { SSLType string `json:"sslType" validate:"required,oneof=self select import import-paste import-local"` Domain string `json:"domain"` SSL string `json:"ssl" validate:"required,oneof=Enable Disable Mux"` Cert string `json:"cert"` Key string `json:"key"` SSLID uint `json:"sslID"` } type SSLInfo struct { Domain string `json:"domain"` Timeout string `json:"timeout"` RootPath string `json:"rootPath"` Cert string `json:"cert"` Key string `json:"key"` SSLID uint `json:"sslID"` } type PasswordUpdate struct { OldPassword string `json:"oldPassword" validate:"required"` NewPassword string `json:"newPassword" validate:"required"` } type PortUpdate struct { ServerPort uint `json:"serverPort" validate:"required,number,max=65535,min=1"` } type SnapshotCreate struct { ID uint `json:"id"` From string `json:"from" validate:"required"` DefaultDownload string `json:"defaultDownload" validate:"required"` Description string `json:"description" validate:"max=256"` Secret string `json:"secret"` } type SnapshotRecover struct { IsNew bool `json:"isNew"` ReDownload bool `json:"reDownload"` ID uint `json:"id" validate:"required"` Secret string `json:"secret"` } type SnapshotBatchDelete struct { DeleteWithFile bool `json:"deleteWithFile"` Ids []uint `json:"ids" validate:"required"` } type SnapshotImport struct { From string `json:"from"` Names []string `json:"names"` Description string `json:"description" validate:"max=256"` } type SnapshotInfo struct { ID uint `json:"id"` Name string `json:"name"` Description string `json:"description" validate:"max=256"` From string `json:"from"` DefaultDownload string `json:"defaultDownload"` Status string `json:"status"` Message string `json:"message"` CreatedAt time.Time `json:"createdAt"` Version string `json:"version"` Size int64 `json:"size"` InterruptStep string `json:"interruptStep"` RecoverStatus string `json:"recoverStatus"` RecoverMessage string `json:"recoverMessage"` LastRecoveredAt string `json:"lastRecoveredAt"` RollbackStatus string `json:"rollbackStatus"` RollbackMessage string `json:"rollbackMessage"` LastRollbackedAt string `json:"lastRollbackedAt"` } type UpgradeInfo struct { TestVersion string `json:"testVersion"` NewVersion string `json:"newVersion"` LatestVersion string `json:"latestVersion"` ReleaseNote string `json:"releaseNote"` } type SyncTime struct { NtpSite string `json:"ntpSite" validate:"required"` } type BindInfo struct { Ipv6 string `json:"ipv6" validate:"required,oneof=Enable Disable"` BindAddress string `json:"bindAddress" validate:"required"` } type Upgrade struct { Version string `json:"version" validate:"required"` } type ReleasesNotes struct { Version string `json:"version"` CreatedAt string `json:"createdAt"` Content string `json:"content"` NewCount int `json:"newCount"` OptimizationCount int `json:"optimizationCount"` FixCount int `json:"fixCount"` } type ProxyUpdate struct { ProxyUrl string `json:"proxyUrl"` ProxyType string `json:"proxyType"` ProxyPort string `json:"proxyPort"` ProxyUser string `json:"proxyUser"` ProxyPasswd string `json:"proxyPasswd"` ProxyPasswdKeep string `json:"proxyPasswdKeep"` ProxyDocker bool `json:"proxyDocker"` WithDockerRestart bool `json:"withDockerRestart"` } type CleanData struct { SystemClean []CleanTree `json:"systemClean"` UploadClean []CleanTree `json:"uploadClean"` DownloadClean []CleanTree `json:"downloadClean"` SystemLogClean []CleanTree `json:"systemLogClean"` ContainerClean []CleanTree `json:"containerClean"` } type CleanTree struct { ID string `json:"id"` Label string `json:"label"` Children []CleanTree `json:"children"` Type string `json:"type"` Name string `json:"name"` Size uint64 `json:"size"` IsCheck bool `json:"isCheck"` IsRecommend bool `json:"isRecommend"` } type Clean struct { TreeType string `json:"treeType"` Name string `json:"name"` Size uint64 `json:"size"` } type ShowMenu struct { ID string `json:"id"` Label string `json:"label"` Disabled bool `json:"disabled"` IsShow bool `json:"isShow"` Title string `json:"title"` Path string `json:"path,omitempty"` Sort int `json:"sort"` Children []ShowMenu `json:"children,omitempty"` } type MenuLabelSort struct { Label string `json:"label"` Sort int `json:"sort"` } type TerminalInfo struct { LineHeight string `json:"lineHeight"` LetterSpacing string `json:"letterSpacing"` FontSize string `json:"fontSize"` FontFamily string `json:"fontFamily"` BackgroundColor string `json:"backgroundColor"` ForegroundColor string `json:"foregroundColor"` CursorBlink string `json:"cursorBlink"` CursorStyle string `json:"cursorStyle"` Scrollback string `json:"scrollback"` ScrollSensitivity string `json:"scrollSensitivity"` } type AppstoreUpdate struct { Scope string `json:"scope" validate:"required,oneof=UninstallDeleteImage UpgradeBackup UpgradeDeleteImage UninstallDeleteBackup InstallAllowPort"` Status string `json:"status" validate:"required,oneof=Disable Enable"` } type AppstoreConfig struct { UninstallDeleteImage string `json:"uninstallDeleteImage"` UpgradeBackup string `json:"upgradeBackup"` UpgradeDeleteImage string `json:"upgradeDeleteImage"` UninstallDeleteBackup string `json:"uninstallDeleteBackup"` InstallAllowPort string `json:"installAllowPort"` } type LoginSetting struct { IsDemo bool `json:"isDemo"` IsIntl bool `json:"isIntl"` IsOffline bool `json:"isOffline"` IsFxplay bool `json:"isFxplay"` IsEnterprise bool `json:"isEnterprise"` Language string `json:"language"` MenuTabs string `json:"menuTabs"` MenuAccordion string `json:"menuAccordion"` PanelName string `json:"panelName"` Theme string `json:"theme"` NeedCaptcha bool `json:"needCaptcha"` PasskeySetting bool `json:"passkeySetting"` } type PasskeyRegisterRequest struct { Name string `json:"name" validate:"required"` } type PasskeyInfo struct { ID string `json:"id"` Name string `json:"name"` CreatedAt string `json:"createdAt"` LastUsedAt string `json:"lastUsedAt"` } type MemoUpdate struct { Content string `json:"content" validate:"max=500"` }