import AppConfig from '@/config' import NProgress from 'nprogress' import 'nprogress/nprogress.css' import i18n, { $t } from '@/locales' const configureNProgress = () => { NProgress.configure({ easing: 'ease', speed: 600, showSpinner: false, parent: 'body' }) } const setPageTitle = (to) => { const { title } = to.meta if (title) { setTimeout(() => { document.title = `${formatMenuTitle(String(title))} - ${AppConfig.systemInfo.name}` }, 150) } } const formatMenuTitle = (title) => { if (title) { if (i18n.global.te(title)) { return $t(title) } if (title.startsWith('menus.') || title.startsWith('menu.')) { const leaf = title.startsWith('menus.') ? title.slice('menus.'.length) : '' const aliasTitle = leaf ? `menu.${leaf}` : '' if (aliasTitle && i18n.global.te(aliasTitle)) { return $t(aliasTitle) } return '' } return title } return '' } export { configureNProgress, formatMenuTitle, setPageTitle }