fix: 自定义标签融入原生标签栏,点击切换而非消失

- StyleSelector 新增 customTags 属性,自定义标签作为「自定义标签」行展示在原生标签栏中
- 自定义标签点击切换 true/false,不再移除 key,解决点击消失问题
- CustomTagsEditor 简化为仅输入框+添加按钮
- extractTags 仅提取激活态自定义标签(value=true)
- 导出 CUSTOM_PREFIX 供组件使用
This commit is contained in:
2026-05-25 19:55:29 +08:00
parent 9d3b8fcd20
commit f44fd56e22
8 changed files with 50 additions and 49 deletions
+6 -3
View File
@@ -1,5 +1,5 @@
import { post } from './client'
import { STYLE_CATEGORIES, PROJECT_TYPES, PROJECT_TYPE_KEY, getCustomTags } from '../utils/style'
import { STYLE_CATEGORIES, PROJECT_TYPES, PROJECT_TYPE_KEY, CUSTOM_PREFIX, getCustomTags } from '../utils/style'
interface OptimizePromptParams {
tags: string[]
@@ -34,8 +34,11 @@ export function extractTags(style: Record<string, string>): string[] {
if (option) tags.push(option.label)
}
// 自定义标签
tags.push(...getCustomTags(style))
// 自定义标签(仅包含激活的)
const customTags = getCustomTags(style).filter(
tag => style[`${CUSTOM_PREFIX}${tag}`] === 'true'
)
tags.push(...customTags)
return tags
}