refactor(TabFunction): 整理设置项,整合一下
This commit is contained in:
@@ -2,14 +2,65 @@
|
|||||||
import { QuestionCircleOutlined } from '@ant-design/icons-vue'
|
import { QuestionCircleOutlined } from '@ant-design/icons-vue'
|
||||||
import type { SettingsData } from '@/types/settings'
|
import type { SettingsData } from '@/types/settings'
|
||||||
|
|
||||||
const { settings, historyRetentionOptions, handleSettingChange } = defineProps<{
|
const { settings, historyRetentionOptions, updateSourceOptions, voiceTypeOptions, handleSettingChange, checkUpdate } = defineProps<{
|
||||||
settings: SettingsData
|
settings: SettingsData
|
||||||
historyRetentionOptions: { label: string; value: number }[]
|
historyRetentionOptions: { label: string; value: number }[]
|
||||||
|
updateSourceOptions: { label: string; value: string }[]
|
||||||
|
voiceTypeOptions: { label: string; value: string }[]
|
||||||
handleSettingChange: (category: keyof SettingsData, key: string, value: any) => Promise<void>
|
handleSettingChange: (category: keyof SettingsData, key: string, value: any) => Promise<void>
|
||||||
|
checkUpdate: () => Promise<void>
|
||||||
}>()
|
}>()
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
<div class="tab-content">
|
<div class="tab-content">
|
||||||
|
<!-- 启动设置 - 移到最上方 -->
|
||||||
|
<div class="form-section">
|
||||||
|
<div class="section-header">
|
||||||
|
<h3>启动配置</h3>
|
||||||
|
</div>
|
||||||
|
<a-row :gutter="24">
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="form-item-vertical">
|
||||||
|
<div class="form-label-wrapper">
|
||||||
|
<span class="form-label">开机自启</span>
|
||||||
|
<a-tooltip title="在系统启动时自动启动应用">
|
||||||
|
<QuestionCircleOutlined class="help-icon" />
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
|
<a-select
|
||||||
|
v-model:value="settings.Start.IfSelfStart"
|
||||||
|
@change="(checked: any) => handleSettingChange('Start', 'IfSelfStart', checked)"
|
||||||
|
size="large"
|
||||||
|
style="width:100%"
|
||||||
|
>
|
||||||
|
<a-select-option :value="true">是</a-select-option>
|
||||||
|
<a-select-option :value="false">否</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="form-item-vertical">
|
||||||
|
<div class="form-label-wrapper">
|
||||||
|
<span class="form-label">启动后直接最小化</span>
|
||||||
|
<a-tooltip title="启动后直接最小化">
|
||||||
|
<QuestionCircleOutlined class="help-icon" />
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
|
<a-select
|
||||||
|
v-model:value="settings.Start.IfMinimizeDirectly"
|
||||||
|
@change="(checked: any) => handleSettingChange('Start', 'IfMinimizeDirectly', checked)"
|
||||||
|
size="large"
|
||||||
|
style="width:100%"
|
||||||
|
>
|
||||||
|
<a-select-option :value="true">是</a-select-option>
|
||||||
|
<a-select-option :value="false">否</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 原有的功能设置 -->
|
||||||
<div class="form-section">
|
<div class="form-section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
<h3>功能设置</h3>
|
<h3>功能设置</h3>
|
||||||
@@ -147,5 +198,147 @@ const { settings, historyRetentionOptions, handleSettingChange } = defineProps<{
|
|||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 更新设置 - 移到最下方 -->
|
||||||
|
<div class="form-section">
|
||||||
|
<div class="section-header">
|
||||||
|
<h3>更新配置</h3>
|
||||||
|
<a-button type="primary" @click="checkUpdate" size="small" class="section-update-button">
|
||||||
|
<template #icon>
|
||||||
|
<svg width="14" height="14" viewBox="0 0 24 24" fill="currentColor">
|
||||||
|
<path d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z" />
|
||||||
|
</svg>
|
||||||
|
</template>
|
||||||
|
检查更新
|
||||||
|
</a-button>
|
||||||
|
</div>
|
||||||
|
<a-row :gutter="24">
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="form-item-vertical">
|
||||||
|
<div class="form-label-wrapper">
|
||||||
|
<span class="form-label">自动检查更新</span>
|
||||||
|
<a-tooltip title="启动时自动检测软件更新">
|
||||||
|
<QuestionCircleOutlined class="help-icon" />
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
|
<a-select
|
||||||
|
v-model:value="settings.Update.IfAutoUpdate"
|
||||||
|
@change="(checked: any) => handleSettingChange('Update', 'IfAutoUpdate', checked)"
|
||||||
|
size="large"
|
||||||
|
style="width:100%"
|
||||||
|
>
|
||||||
|
<a-select-option :value="true">是</a-select-option>
|
||||||
|
<a-select-option :value="false">否</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="form-item-vertical">
|
||||||
|
<div class="form-label-wrapper">
|
||||||
|
<span class="form-label">更新源</span>
|
||||||
|
<a-tooltip title="选择下载软件更新的来源">
|
||||||
|
<QuestionCircleOutlined class="help-icon" />
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
|
<a-select
|
||||||
|
v-model:value="settings.Update.Source"
|
||||||
|
@change="(value: any) => handleSettingChange('Update', 'Source', value)"
|
||||||
|
:options="updateSourceOptions"
|
||||||
|
size="large"
|
||||||
|
style="width:100%"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
<a-row :gutter="24">
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="form-item-vertical">
|
||||||
|
<div class="form-label-wrapper">
|
||||||
|
<span class="form-label">网络代理地址</span>
|
||||||
|
<a-tooltip title="使用网络代理软件时,若出现网络连接问题,请尝试设置代理地址,此设置全局生效">
|
||||||
|
<QuestionCircleOutlined class="help-icon" />
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
|
<a-input
|
||||||
|
v-model:value="settings.Update.ProxyAddress"
|
||||||
|
@blur="handleSettingChange('Update', 'ProxyAddress', settings.Update.ProxyAddress)"
|
||||||
|
placeholder="请输入网络代理地址"
|
||||||
|
size="large"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="form-item-vertical">
|
||||||
|
<div class="form-label-wrapper">
|
||||||
|
<span class="form-label">Mirror酱 CDK</span>
|
||||||
|
<a-tooltip>
|
||||||
|
<template #title>
|
||||||
|
<div>
|
||||||
|
Mirror酱CDK是使用Mirror源进行高速下载的凭证,可前往
|
||||||
|
<a href="https://mirrorchyan.com/zh/get-start?source=auto-mas-setting" target="_blank" class="tooltip-link" @click.stop>Mirror酱官网</a>
|
||||||
|
获取
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<QuestionCircleOutlined class="help-icon" />
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
|
<a-input-password
|
||||||
|
v-model:value="settings.Update.MirrorChyanCDK"
|
||||||
|
@blur="handleSettingChange('Update','MirrorChyanCDK', settings.Update.MirrorChyanCDK)"
|
||||||
|
:disabled="settings.Update.Source !== 'MirrorChyan'"
|
||||||
|
placeholder="使用Mirror源时请输入Mirror酱CDK"
|
||||||
|
:visibilityToggle="true"
|
||||||
|
size="large"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 语音设置 - 移到最下方 -->
|
||||||
|
<div class="form-section">
|
||||||
|
<div class="section-header">
|
||||||
|
<h3>语音配置</h3>
|
||||||
|
</div>
|
||||||
|
<a-row :gutter="24">
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="form-item-vertical">
|
||||||
|
<div class="form-label-wrapper">
|
||||||
|
<span class="form-label">启用语音提示</span>
|
||||||
|
<a-tooltip title="开启后将在特定时刻播放语音提示">
|
||||||
|
<QuestionCircleOutlined class="help-icon" />
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
|
<a-select
|
||||||
|
v-model:value="settings.Voice.Enabled"
|
||||||
|
@change="(checked: any) => handleSettingChange('Voice', 'Enabled', checked)"
|
||||||
|
size="large"
|
||||||
|
style="width:100%"
|
||||||
|
>
|
||||||
|
<a-select-option :value="true">是</a-select-option>
|
||||||
|
<a-select-option :value="false">否</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="form-item-vertical">
|
||||||
|
<div class="form-label-wrapper">
|
||||||
|
<span class="form-label">语音类型</span>
|
||||||
|
<a-tooltip title="选择语音提示的详细程度">
|
||||||
|
<QuestionCircleOutlined class="help-icon" />
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
|
<a-select
|
||||||
|
v-model:value="settings.Voice.Type"
|
||||||
|
@change="(value: any) => handleSettingChange('Voice', 'Type', value)"
|
||||||
|
:options="voiceTypeOptions"
|
||||||
|
:disabled="!settings.Voice.Enabled"
|
||||||
|
size="large"
|
||||||
|
style="width:100%"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -1,58 +0,0 @@
|
|||||||
<script setup lang="ts">
|
|
||||||
import { QuestionCircleOutlined } from '@ant-design/icons-vue'
|
|
||||||
import type { SettingsData } from '@/types/settings'
|
|
||||||
|
|
||||||
const { settings, handleSettingChange } = defineProps<{
|
|
||||||
settings: SettingsData
|
|
||||||
handleSettingChange: (category: keyof SettingsData, key: string, value: any) => Promise<void>
|
|
||||||
}>()
|
|
||||||
</script>
|
|
||||||
<template>
|
|
||||||
<div class="tab-content">
|
|
||||||
<div class="form-section">
|
|
||||||
<div class="section-header">
|
|
||||||
<h3>启动配置</h3>
|
|
||||||
</div>
|
|
||||||
<a-row :gutter="24">
|
|
||||||
<a-col :span="12">
|
|
||||||
<div class="form-item-vertical">
|
|
||||||
<div class="form-label-wrapper">
|
|
||||||
<span class="form-label">开机自启</span>
|
|
||||||
<a-tooltip title="在系统启动时自动启动应用">
|
|
||||||
<QuestionCircleOutlined class="help-icon" />
|
|
||||||
</a-tooltip>
|
|
||||||
</div>
|
|
||||||
<a-select
|
|
||||||
v-model:value="settings.Start.IfSelfStart"
|
|
||||||
@change="(checked: any) => handleSettingChange('Start', 'IfSelfStart', checked)"
|
|
||||||
size="large"
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
<a-select-option :value="true">是</a-select-option>
|
|
||||||
<a-select-option :value="false">否</a-select-option>
|
|
||||||
</a-select>
|
|
||||||
</div>
|
|
||||||
</a-col>
|
|
||||||
<a-col :span="12">
|
|
||||||
<div class="form-item-vertical">
|
|
||||||
<div class="form-label-wrapper">
|
|
||||||
<span class="form-label">启动后直接最小化</span>
|
|
||||||
<a-tooltip title="启动后直接最小化">
|
|
||||||
<QuestionCircleOutlined class="help-icon" />
|
|
||||||
</a-tooltip>
|
|
||||||
</div>
|
|
||||||
<a-select
|
|
||||||
v-model:value="settings.Start.IfMinimizeDirectly"
|
|
||||||
@change="(checked: any) => handleSettingChange('Start', 'IfMinimizeDirectly', checked)"
|
|
||||||
size="large"
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
<a-select-option :value="true">是</a-select-option>
|
|
||||||
<a-select-option :value="false">否</a-select-option>
|
|
||||||
</a-select>
|
|
||||||
</div>
|
|
||||||
</a-col>
|
|
||||||
</a-row>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
@@ -1,108 +0,0 @@
|
|||||||
<script setup lang="ts">
|
|
||||||
import { QuestionCircleOutlined } from '@ant-design/icons-vue'
|
|
||||||
import type { SettingsData } from '@/types/settings'
|
|
||||||
|
|
||||||
const { settings, updateSourceOptions, handleSettingChange, checkUpdate } = defineProps<{
|
|
||||||
settings: SettingsData
|
|
||||||
updateSourceOptions: { label: string; value: string }[]
|
|
||||||
handleSettingChange: (category: keyof SettingsData, key: string, value: any) => Promise<void>
|
|
||||||
checkUpdate: () => Promise<void>
|
|
||||||
}>()
|
|
||||||
</script>
|
|
||||||
<template>
|
|
||||||
<div class="tab-content">
|
|
||||||
<div class="form-section">
|
|
||||||
<div class="section-header">
|
|
||||||
<h3>更新配置</h3>
|
|
||||||
<a-button type="primary" @click="checkUpdate" size="medium" class="section-update-button">
|
|
||||||
<template #icon>
|
|
||||||
<svg width="14" height="14" viewBox="0 0 24 24" fill="currentColor">
|
|
||||||
<path d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z" />
|
|
||||||
</svg>
|
|
||||||
</template>
|
|
||||||
检查更新
|
|
||||||
</a-button>
|
|
||||||
</div>
|
|
||||||
<a-row :gutter="24">
|
|
||||||
<a-col :span="12">
|
|
||||||
<div class="form-item-vertical">
|
|
||||||
<div class="form-label-wrapper">
|
|
||||||
<span class="form-label">自动检查更新</span>
|
|
||||||
<a-tooltip title="启动时自动检测软件更新">
|
|
||||||
<QuestionCircleOutlined class="help-icon" />
|
|
||||||
</a-tooltip>
|
|
||||||
</div>
|
|
||||||
<a-select
|
|
||||||
v-model:value="settings.Update.IfAutoUpdate"
|
|
||||||
@change="(checked: any) => handleSettingChange('Update', 'IfAutoUpdate', checked)"
|
|
||||||
size="large"
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
<a-select-option :value="true">是</a-select-option>
|
|
||||||
<a-select-option :value="false">否</a-select-option>
|
|
||||||
</a-select>
|
|
||||||
</div>
|
|
||||||
</a-col>
|
|
||||||
<a-col :span="12">
|
|
||||||
<div class="form-item-vertical">
|
|
||||||
<div class="form-label-wrapper">
|
|
||||||
<span class="form-label">更新源</span>
|
|
||||||
<a-tooltip title="选择下载软件更新的来源">
|
|
||||||
<QuestionCircleOutlined class="help-icon" />
|
|
||||||
</a-tooltip>
|
|
||||||
</div>
|
|
||||||
<a-select
|
|
||||||
v-model:value="settings.Update.Source"
|
|
||||||
@change="(value: any) => handleSettingChange('Update', 'Source', value)"
|
|
||||||
:options="updateSourceOptions"
|
|
||||||
size="large"
|
|
||||||
style="width:100%"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</a-col>
|
|
||||||
</a-row>
|
|
||||||
<a-row :gutter="24">
|
|
||||||
<a-col :span="12">
|
|
||||||
<div class="form-item-vertical">
|
|
||||||
<div class="form-label-wrapper">
|
|
||||||
<span class="form-label">网络代理地址</span>
|
|
||||||
<a-tooltip title="使用网络代理软件时,若出现网络连接问题,请尝试设置代理地址,此设置全局生效">
|
|
||||||
<QuestionCircleOutlined class="help-icon" />
|
|
||||||
</a-tooltip>
|
|
||||||
</div>
|
|
||||||
<a-input
|
|
||||||
v-model:value="settings.Update.ProxyAddress"
|
|
||||||
@blur="handleSettingChange('Update', 'ProxyAddress', settings.Update.ProxyAddress)"
|
|
||||||
placeholder="请输入网络代理地址"
|
|
||||||
size="large"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</a-col>
|
|
||||||
<a-col :span="12">
|
|
||||||
<div class="form-item-vertical">
|
|
||||||
<div class="form-label-wrapper">
|
|
||||||
<span class="form-label">Mirror酱 CDK</span>
|
|
||||||
<a-tooltip>
|
|
||||||
<template #title>
|
|
||||||
<div>
|
|
||||||
Mirror酱CDK是使用Mirror源进行高速下载的凭证,可前往
|
|
||||||
<a href="https://mirrorchyan.com/zh/get-start?source=auto-mas-setting" target="_blank" class="tooltip-link" @click.stop>Mirror酱官网</a>
|
|
||||||
获取
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<QuestionCircleOutlined class="help-icon" />
|
|
||||||
</a-tooltip>
|
|
||||||
</div>
|
|
||||||
<a-input
|
|
||||||
v-model:value="settings.Update.MirrorChyanCDK"
|
|
||||||
@blur="handleSettingChange('Update','MirrorChyanCDK', settings.Update.MirrorChyanCDK)"
|
|
||||||
:disabled="settings.Update.Source !== 'MirrorChyan'"
|
|
||||||
placeholder="使用Mirror源时请输入Mirror酱CDK"
|
|
||||||
size="large"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</a-col>
|
|
||||||
</a-row>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
<script setup lang="ts">
|
|
||||||
import { QuestionCircleOutlined } from '@ant-design/icons-vue'
|
|
||||||
import type { SettingsData } from '@/types/settings'
|
|
||||||
|
|
||||||
const { settings, voiceTypeOptions, handleSettingChange } = defineProps<{
|
|
||||||
settings: SettingsData
|
|
||||||
voiceTypeOptions: { label: string; value: string }[]
|
|
||||||
handleSettingChange: (category: keyof SettingsData, key: string, value: any) => Promise<void>
|
|
||||||
}>()
|
|
||||||
</script>
|
|
||||||
<template>
|
|
||||||
<div class="tab-content">
|
|
||||||
<div class="form-section">
|
|
||||||
<div class="section-header">
|
|
||||||
<h3>语音配置</h3>
|
|
||||||
</div>
|
|
||||||
<a-row :gutter="24">
|
|
||||||
<a-col :span="12">
|
|
||||||
<div class="form-item-vertical">
|
|
||||||
<div class="form-label-wrapper">
|
|
||||||
<span class="form-label">启用音效</span>
|
|
||||||
<a-tooltip title="是否启用音效功能">
|
|
||||||
<QuestionCircleOutlined class="help-icon" />
|
|
||||||
</a-tooltip>
|
|
||||||
</div>
|
|
||||||
<a-select
|
|
||||||
v-model:value="settings.Voice.Enabled"
|
|
||||||
@change="(checked: any) => handleSettingChange('Voice', 'Enabled', checked)"
|
|
||||||
size="large"
|
|
||||||
style="width:100%"
|
|
||||||
>
|
|
||||||
<a-select-option :value="true">是</a-select-option>
|
|
||||||
<a-select-option :value="false">否</a-select-option>
|
|
||||||
</a-select>
|
|
||||||
</div>
|
|
||||||
</a-col>
|
|
||||||
<a-col :span="12">
|
|
||||||
<div class="form-item-vertical">
|
|
||||||
<div class="form-label-wrapper">
|
|
||||||
<span class="form-label">音效模式</span>
|
|
||||||
<a-tooltip title="选择音效的播报模式">
|
|
||||||
<QuestionCircleOutlined class="help-icon" />
|
|
||||||
</a-tooltip>
|
|
||||||
</div>
|
|
||||||
<a-select
|
|
||||||
v-model:value="settings.Voice.Type"
|
|
||||||
@change="(value: any) => handleSettingChange('Voice', 'Type', value)"
|
|
||||||
:options="voiceTypeOptions"
|
|
||||||
:disabled="!settings.Voice.Enabled"
|
|
||||||
size="large"
|
|
||||||
style="width:100%"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</a-col>
|
|
||||||
</a-row>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
@@ -16,9 +16,6 @@ import { mirrorManager } from '@/utils/mirrorManager'
|
|||||||
import TabBasic from './TabBasic.vue'
|
import TabBasic from './TabBasic.vue'
|
||||||
import TabFunction from './TabFunction.vue'
|
import TabFunction from './TabFunction.vue'
|
||||||
import TabNotify from './TabNotify.vue'
|
import TabNotify from './TabNotify.vue'
|
||||||
import TabUpdate from './TabUpdate.vue'
|
|
||||||
import TabStart from './TabStart.vue'
|
|
||||||
import TabVoice from './TabVoice.vue'
|
|
||||||
import TabAdvanced from './TabAdvanced.vue'
|
import TabAdvanced from './TabAdvanced.vue'
|
||||||
import TabOthers from './TabOthers.vue'
|
import TabOthers from './TabOthers.vue'
|
||||||
|
|
||||||
@@ -278,7 +275,10 @@ onMounted(() => {
|
|||||||
<TabFunction
|
<TabFunction
|
||||||
:settings="settings"
|
:settings="settings"
|
||||||
:history-retention-options="historyRetentionOptions"
|
:history-retention-options="historyRetentionOptions"
|
||||||
|
:update-source-options="updateSourceOptions"
|
||||||
|
:voice-type-options="voiceTypeOptions"
|
||||||
:handle-setting-change="handleSettingChange"
|
:handle-setting-change="handleSettingChange"
|
||||||
|
:check-update="checkUpdate"
|
||||||
/>
|
/>
|
||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
<a-tab-pane key="notify" tab="通知设置">
|
<a-tab-pane key="notify" tab="通知设置">
|
||||||
@@ -290,20 +290,6 @@ onMounted(() => {
|
|||||||
:testing-notify="testingNotify"
|
:testing-notify="testingNotify"
|
||||||
/>
|
/>
|
||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
<a-tab-pane key="update" tab="更新设置">
|
|
||||||
<TabUpdate
|
|
||||||
:settings="settings"
|
|
||||||
:update-source-options="updateSourceOptions"
|
|
||||||
:handle-setting-change="handleSettingChange"
|
|
||||||
:check-update="checkUpdate"
|
|
||||||
/>
|
|
||||||
</a-tab-pane>
|
|
||||||
<a-tab-pane key="start" tab="启动设置">
|
|
||||||
<TabStart :settings="settings" :handle-setting-change="handleSettingChange" />
|
|
||||||
</a-tab-pane>
|
|
||||||
<a-tab-pane key="voice" tab="语音设置">
|
|
||||||
<TabVoice :settings="settings" :voice-type-options="voiceTypeOptions" :handle-setting-change="handleSettingChange" />
|
|
||||||
</a-tab-pane>
|
|
||||||
<a-tab-pane key="advanced" tab="高级设置">
|
<a-tab-pane key="advanced" tab="高级设置">
|
||||||
<TabAdvanced
|
<TabAdvanced
|
||||||
:go-to-logs="goToLogs"
|
:go-to-logs="goToLogs"
|
||||||
|
|||||||
Reference in New Issue
Block a user