From fdf9f4d5a851788208877faa4c2413bbecb9bdd6 Mon Sep 17 00:00:00 2001 From: kjqwer <2990346238@qq.com> Date: Sun, 7 Dec 2025 22:07:26 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=A2=84=E8=AE=BE=E8=BF=87?= =?UTF-8?q?=E5=A4=9A=E5=88=87=E6=8D=A2=E4=B8=BB=E9=A2=98=E5=8D=A1=E9=A1=BF?= =?UTF-8?q?=E9=97=AE=E9=A2=98=EF=BC=8C=E6=9B=B4=E6=94=B9=E9=A2=84=E8=AE=BE?= =?UTF-8?q?=E5=9B=BE=E6=A0=87=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/PresetDropdown.vue | 20 +-- src/components/PresetManager.vue | 42 ++--- src/components/icons/IconPresetType.vue | 154 ++++++++++++++++++ src/components/preset/PresetList.vue | 107 +++++++++--- src/components/preset/TypeSelector.vue | 207 ++++++++++++++++++++++++ 5 files changed, 475 insertions(+), 55 deletions(-) create mode 100644 src/components/icons/IconPresetType.vue create mode 100644 src/components/preset/TypeSelector.vue diff --git a/src/components/PresetDropdown.vue b/src/components/PresetDropdown.vue index 86efb19..f17037a 100644 --- a/src/components/PresetDropdown.vue +++ b/src/components/PresetDropdown.vue @@ -3,6 +3,7 @@ import { ref, computed, onMounted, onUnmounted } from 'vue'; import { usePromptStore } from '../stores/promptStore'; import type { PromptPreset, PresetType } from '../types'; import NotificationToast from './NotificationToast.vue'; +import IconPresetType from './icons/IconPresetType.vue'; const store = usePromptStore(); @@ -325,19 +326,6 @@ function importPreset(event: Event) { (event.target as HTMLInputElement).value = ''; } -function getTypeIcon(type: string) { - const icons: Record = { - positive: '🪄', - negative: '⛔', - setting: '⚙️', - style: '🖌️', - character: '🧙', - scene: '🏞️', - custom: '🧩' - }; - return icons[type] || '🧩'; -} - function getTypeLabel(type: string) { const typeMap: Record = { 'positive': '正面', @@ -513,12 +501,14 @@ onUnmounted(() => { {{ group.presets.length }} -
+