import { createApp } from "vue"; import { createRouter, createWebHistory } from "vue-router"; import PrimeVue from "primevue/config"; import Aura from "@primeuix/themes/aura"; import ToastService from "primevue/toastservice"; import ConfirmationService from "primevue/confirmationservice"; import "primeicons/primeicons.css"; import App from "./App.vue"; import "./styles.css"; const RoutePlaceholder = { template: "" }; const routes = [ "/admin/login", "/admin/dashboard", "/admin/feedbacks", "/admin/releases", "/admin/legacy/update-info", "/admin/legacy/media-types", "/admin/sources", "/admin/endpoints", "/admin/system", ].map((path) => ({ path, component: RoutePlaceholder })); const router = createRouter({ history: createWebHistory(), routes: [ ...routes, { path: "/admin/database", redirect: { path: "/admin/system", query: { tab: "database" } } }, { path: "/admin/health", redirect: { path: "/admin/system", query: { tab: "health" } } }, { path: "/admin/settings", redirect: { path: "/admin/system", query: { tab: "security" } } }, { path: "/admin/audit", redirect: { path: "/admin/system", query: { tab: "audit" } } }, { path: "/admin", redirect: "/admin/dashboard" }, { path: "/admin/:pathMatch(.*)*", redirect: "/admin/dashboard" }, ], }); createApp(App) .use(router) .use(PrimeVue, { ripple: true, theme: { preset: Aura, options: { darkModeSelector: ".admin-dark", }, }, locale: { accept: "确定", reject: "取消", clear: "清除", apply: "应用", emptyMessage: "暂无数据", emptyFilterMessage: "没有匹配结果", }, }) .use(ToastService) .use(ConfirmationService) .mount("#app");