feat: 按来源分组展示 Skill
This commit is contained in:
parent
a60c5db7ee
commit
fafbc5c9ee
@ -76,9 +76,12 @@
|
||||
</div>
|
||||
|
||||
<template v-else>
|
||||
<template v-for="group in skillGroups" :key="group.key">
|
||||
<template v-if="group.skills.length">
|
||||
<div class="extension-section-header">{{ group.title }}</div>
|
||||
<ExtensionCardGrid :min-width="360">
|
||||
<div
|
||||
v-for="skill in filteredInstalledSkills"
|
||||
v-for="skill in group.skills"
|
||||
:key="skill.slug"
|
||||
class="card-wrapper"
|
||||
:class="{
|
||||
@ -120,6 +123,8 @@
|
||||
</div>
|
||||
</ExtensionCardGrid>
|
||||
</template>
|
||||
</template>
|
||||
</template>
|
||||
|
||||
<a-modal
|
||||
v-model:open="skillPreviewVisible"
|
||||
@ -610,6 +615,18 @@ const installedSkillCards = computed(() =>
|
||||
)
|
||||
|
||||
const filteredInstalledSkills = computed(() => installedSkillCards.value.filter(matchesSearch))
|
||||
const skillGroups = computed(() => [
|
||||
{
|
||||
key: 'builtin',
|
||||
title: '内置',
|
||||
skills: filteredInstalledSkills.value.filter((skill) => skill.sourceType === 'builtin')
|
||||
},
|
||||
{
|
||||
key: 'uploaded',
|
||||
title: '上传的',
|
||||
skills: filteredInstalledSkills.value.filter((skill) => skill.sourceType !== 'builtin')
|
||||
}
|
||||
])
|
||||
const filteredDeletableSkills = computed(() =>
|
||||
filteredInstalledSkills.value.filter(
|
||||
(skill) => canManageSkill(skill) && skill.sourceType !== 'builtin'
|
||||
|
||||
Loading…
Reference in New Issue
Block a user