Files
Snap.Hutao.Docs/docs/.vuepress/theme.ts
2022-09-29 05:13:47 -07:00

199 lines
4.5 KiB
TypeScript

import { hopeTheme } from "vuepress-theme-hope";
import { enNavbar, zhNavbar } from "./navbar/index.js";
import { enSidebar, zhSidebar } from "./sidebar/index.js";
export default hopeTheme({
hostname: "https://hut.ao",
author: {
name: "DGP-Studio",
url: "https://github.com/DGP-Studio",
},
iconAssets: "iconfont",
logo: "/images/202209/HeroImageLogo.png",
repo: "DGP-Studio/Snap.Hutao",
pageInfo: ["Author", "Original", "Date", "Category", "Tag", "ReadingTime"],
docsRepo: "DGP-Studio/Snap.Hutao.Docs",
docsDir: "docs",
locales: {
"/en/": {
// navbar
navbar: enNavbar,
// sidebar
sidebar: enSidebar,
footer: "Be the best Genshin Impact tool",
displayFooter: true,
metaLocales: {
editLink: "Edit this page on GitHub",
},
},
/**
* Chinese locale config
*/
"/": {
// navbar
navbar: zhNavbar,
// sidebar
sidebar: zhSidebar,
footer: "做最好的原神工具",
displayFooter: true,
// page meta
metaLocales: {
editLink: "在 GitHub 上编辑此页",
},
},
},
plugins: {
// If you don't need comment feature, you can remove following option
// The following config is for demo ONLY, if you need comment feature, please generate and use your own config, see comment plugin documentation for details.
// To avoid disturbing the theme developer and consuming his resources, please DO NOT use the following config directly in your production environment!!!!!
comment: {
/**
* Using Giscus
*/
// provider: "Giscus",
// repo: "vuepress-theme-hope/giscus-discussions",
// repoId: "R_kgDOG_Pt2A",
// category: "Announcements",
// categoryId: "DIC_kwDOG_Pt2M4COD69",
/**
* Using Twikoo
*/
// provider: "Twikoo",
// envId: "https://twikoo.ccknbc.vercel.app",
/**
* Using Waline
*/
//provider: "Waline",
//serverURL: "https://vuepress-theme-hope-comment.vercel.app",
},
// Disable features you don't want here
mdEnhance: {
align: true,
attrs: true,
chart: true,
codetabs: true,
container: true,
demo: true,
echarts: true,
flowchart: true,
gfm: true,
imageSize: true,
include: true,
katex: true,
lazyLoad: true,
mark: true,
mermaid: true,
playground: {
presets: ["ts", "vue"],
},
presentation: {
plugins: ["highlight", "math", "search", "notes", "zoom"],
},
stylize: [
{
matcher: "Recommanded",
replacer: ({ tag }) => {
if (tag === "em")
return {
tag: "Badge",
attrs: { type: "tip" },
content: "Recommanded",
};
},
},
],
sub: true,
sup: true,
tabs: true,
vpre: true,
vuePlayground: true,
},
pwa: false
/**
pwa: {
favicon: "/favicon.ico",
cacheHTML: true,
cachePic: true,
appendBase: true,
apple: {
icon: "/assets/icon/apple-icon-152.png",
statusBarColor: "black",
},
msTile: {
image: "/assets/icon/ms-icon-144.png",
color: "#ffffff",
},
manifest: {
icons: [
{
src: "/assets/icon/chrome-mask-512.png",
sizes: "512x512",
purpose: "maskable",
type: "image/png",
},
{
src: "/assets/icon/chrome-mask-192.png",
sizes: "192x192",
purpose: "maskable",
type: "image/png",
},
{
src: "/assets/icon/chrome-512.png",
sizes: "512x512",
type: "image/png",
},
{
src: "/assets/icon/chrome-192.png",
sizes: "192x192",
type: "image/png",
},
],
shortcuts: [
{
name: "Demo",
short_name: "Demo",
url: "/demo/",
icons: [
{
src: "/assets/icon/guide-maskable.png",
sizes: "192x192",
purpose: "maskable",
type: "image/png",
},
{
src: "/assets/icon/guide-monochrome.png",
sizes: "192x192",
purpose: "monochrome",
type: "image/png",
},
],
},
],
},
},
**/
},
});