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
164 lines
4.2 KiB
TypeScript
8 months 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
|
||
|
}
|