You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

164 lines
4.2 KiB
TypeScript

1 year ago
import { MenuTypeEnum, MenuModeEnum, TriggerEnum, MixSidebarTriggerEnum } from '/@/enums/menuEnum'
import {
ContentEnum,
PermissionModeEnum,
ThemeEnum,
RouterTransitionEnum,
SettingButtonPositionEnum,
SessionTimeoutProcessingEnum,
} from '/@/enums/appEnum'
import { CacheTypeEnum } from '/@/enums/cacheEnum'
export type LocaleType = 'zh_CN' | 'en' | 'ru' | 'ja' | 'ko'
export interface MenuSetting {
bgColor: string
fixed: boolean
collapsed: boolean
siderHidden: boolean
canDrag: boolean
show: boolean
hidden: boolean
split: boolean
menuWidth: number
mode: MenuModeEnum
type: MenuTypeEnum
theme: ThemeEnum
topMenuAlign: 'start' | 'center' | 'end'
trigger: TriggerEnum
accordion: boolean
closeMixSidebarOnChange: boolean
collapsedShowTitle: boolean
mixSideTrigger: MixSidebarTriggerEnum
mixSideFixed: boolean
}
export interface MultiTabsSetting {
cache: boolean
show: boolean
showQuick: boolean
canDrag: boolean
showRedo: boolean
showFold: boolean
}
export interface HeaderSetting {
bgColor: string
fixed: boolean
show: boolean
theme: ThemeEnum
// Turn on full screen
showFullScreen: boolean
// Show document button
showDoc: boolean
// Show message center button
showNotice: boolean
showSearch: boolean
}
export interface LocaleSetting {
showPicker: boolean
// Current language
locale: LocaleType
// default language
fallback: LocaleType
// available Locales
availableLocales: LocaleType[]
}
export interface TransitionSetting {
// Whether to open the page switching animation
enable: boolean
// Route basic switching animation
basicTransition: RouterTransitionEnum
// Whether to open page switching loading
openPageLoading: boolean
// Whether to open the top progress bar
openNProgress: boolean
}
export interface ProjectConfig {
// Storage location of permission related information
permissionCacheType: CacheTypeEnum
// Whether to show the configuration button
showSettingButton: boolean
// Whether to show the theme switch button
showDarkModeToggle: boolean
// Configure where the button is displayed
settingButtonPosition: SettingButtonPositionEnum
// Permission mode
permissionMode: PermissionModeEnum
// Session timeout processing
sessionTimeoutProcessing: SessionTimeoutProcessingEnum
// Website gray mode, open for possible mourning dates
grayMode: boolean
// Whether to turn on the color weak mode
colorWeak: boolean
// Theme color
themeColor: string
// The main interface is displayed in full screen, the menu is not displayed, and the top
fullContent: boolean
// content width
contentMode: ContentEnum
// Whether to display the logo
showLogo: boolean
// Whether to show the global footer
showFooter: boolean
// menuType: MenuTypeEnum;
headerSetting: HeaderSetting
// menuSetting
menuSetting: MenuSetting
// Multi-tab settings
multiTabsSetting: MultiTabsSetting
// Animation configuration
transitionSetting: TransitionSetting
// pageLayout whether to enable keep-alive
openKeepAlive: boolean
// Show breadcrumbs
showBreadCrumb: boolean
// Show breadcrumb icon
showBreadCrumbIcon: boolean
// Use error-handler-plugin
useErrorHandle: boolean
// Whether to open back to top
useOpenBackTop: boolean
// Is it possible to embed iframe pages
canEmbedIFramePage: boolean
// Whether to delete unclosed messages and notify when switching the interface
closeMessageOnSwitch: boolean
// Whether to cancel the http request that has been sent but not responded when switching the interface.
removeAllHttpPending: boolean
}
export interface GlobConfig {
// Site title
title: string
// Service interface url
apiUrl: string
// Upload url
uploadUrl?: string
// 预览 url
viewUrl?: string;
// Service interface url prefix
urlPrefix?: string
// Project abbreviation
shortName: string
}
export interface GlobEnvConfig {
// Site title
VITE_GLOB_APP_TITLE: string
// Service interface url
VITE_GLOB_API_URL: string
// Service interface url prefix
VITE_GLOB_API_URL_PREFIX?: string
// Project abbreviation
VITE_GLOB_APP_SHORT_NAME: string
// Upload url
VITE_GLOB_UPLOAD_URL?: string
// view url
VITE_GLOB_VIEW_URL?: string
}