2023-05-12 18:23:22 +00:00
|
|
|
|
// KUNGalgame 设置面板的 store
|
|
|
|
|
import { defineStore } from 'pinia'
|
2023-05-26 09:07:35 +00:00
|
|
|
|
|
2023-06-15 15:51:50 +00:00
|
|
|
|
// 网站的默认设置
|
2023-08-20 13:38:40 +00:00
|
|
|
|
import { KUNGalgameLanguage, mode } from '@/utils/getDefaultEnv'
|
2023-06-15 15:51:50 +00:00
|
|
|
|
|
2023-05-26 09:07:35 +00:00
|
|
|
|
// 设置面板配置
|
|
|
|
|
interface KUNGalgameSettings {
|
2023-06-06 16:58:09 +00:00
|
|
|
|
// 白天黑夜模式切换
|
|
|
|
|
showKUNGalgameMode: string
|
2023-05-29 09:18:38 +00:00
|
|
|
|
// 网站显示语言
|
|
|
|
|
showKUNGalgameLanguage: string
|
2023-05-26 09:07:35 +00:00
|
|
|
|
// 主页宽度
|
2023-09-09 15:42:55 +00:00
|
|
|
|
showKUNGalgamePageWidth: Record<string, number>
|
2023-09-10 10:49:47 +00:00
|
|
|
|
// 网站字体
|
|
|
|
|
showKUNGalgameFontStyle: string
|
2023-05-27 02:39:57 +00:00
|
|
|
|
// 背景图
|
2023-05-29 09:18:38 +00:00
|
|
|
|
showKUNGalgameBackground: string
|
2023-05-30 14:06:30 +00:00
|
|
|
|
// 自定义背景图
|
2023-05-30 14:25:42 +00:00
|
|
|
|
showKUNGalgameCustomBackground: string
|
2023-09-10 10:49:47 +00:00
|
|
|
|
|
|
|
|
|
// 显示页面宽度还是显示字体设置
|
2023-09-10 14:05:39 +00:00
|
|
|
|
isShowPageWidth: boolean
|
2023-05-26 09:07:35 +00:00
|
|
|
|
}
|
|
|
|
|
|
2023-05-29 09:18:38 +00:00
|
|
|
|
export const useKUNGalgameSettingsStore = defineStore({
|
2023-05-30 10:59:54 +00:00
|
|
|
|
id: 'KUNGalgame-settings',
|
2023-05-29 09:18:38 +00:00
|
|
|
|
persist: true,
|
2023-05-30 14:25:42 +00:00
|
|
|
|
// 默认值
|
2023-05-29 09:18:38 +00:00
|
|
|
|
state: (): KUNGalgameSettings => ({
|
2023-06-15 15:51:50 +00:00
|
|
|
|
showKUNGalgameMode: mode,
|
2023-08-20 13:38:40 +00:00
|
|
|
|
showKUNGalgameLanguage: KUNGalgameLanguage,
|
2023-09-09 15:42:55 +00:00
|
|
|
|
showKUNGalgamePageWidth: {
|
|
|
|
|
KUN: 61.8,
|
|
|
|
|
Topic: 90,
|
|
|
|
|
Edit: 90,
|
|
|
|
|
KUNGalgame: 90,
|
|
|
|
|
Pool: 90,
|
|
|
|
|
Bylaw: 90,
|
|
|
|
|
Technique: 90,
|
|
|
|
|
ThanksList: 90,
|
|
|
|
|
},
|
2023-09-10 10:49:47 +00:00
|
|
|
|
showKUNGalgameFontStyle: '',
|
2023-05-29 09:18:38 +00:00
|
|
|
|
showKUNGalgameBackground: 'none',
|
2023-05-30 14:25:42 +00:00
|
|
|
|
showKUNGalgameCustomBackground: '',
|
2023-09-10 14:05:39 +00:00
|
|
|
|
|
|
|
|
|
isShowPageWidth: true,
|
2023-05-29 09:18:38 +00:00
|
|
|
|
}),
|
2023-05-30 14:25:42 +00:00
|
|
|
|
actions: {
|
2023-06-06 16:58:09 +00:00
|
|
|
|
// 设置主题,只有两种模式 light 和 dark,light 为 ''
|
|
|
|
|
setKUNGalgameTheme(theme: string) {
|
|
|
|
|
this.showKUNGalgameMode = theme
|
|
|
|
|
document.documentElement.className = theme
|
|
|
|
|
},
|
2023-09-10 10:49:47 +00:00
|
|
|
|
// 设置字体,用户自己设置,默认为系统 UI
|
|
|
|
|
setKUNGalgameFontStyle(font: string) {
|
|
|
|
|
this.showKUNGalgameFontStyle = font
|
|
|
|
|
document.documentElement.style.fontFamily = font
|
|
|
|
|
},
|
|
|
|
|
// 恢复所有设置,由于调用了 document,所以 pinia 响应式不生效
|
|
|
|
|
setKUNGalgameSettingsRecover() {
|
|
|
|
|
this.$reset()
|
|
|
|
|
this.setKUNGalgameTheme('')
|
|
|
|
|
this.setKUNGalgameFontStyle('')
|
|
|
|
|
},
|
2023-05-30 14:25:42 +00:00
|
|
|
|
},
|
2023-05-12 18:23:22 +00:00
|
|
|
|
})
|