feat(kol): support multiple platform hints with shared tag renderer
Frontend CI / Frontend (push) Successful in 2m47s
Backend CI / Backend (push) Failing after 6m50s

Turn the KOL prompt platform hint into a multi-select backed by the
media platforms API, persist hints as a 、-joined string, and add a
reusable KolPlatformTags component so manage/generate/package/template/
workspace views and the generate-task drawer all render the hints
consistently with truncation and overflow handling.

Also auto-select the first available subscription prompt in
GenerateTaskDrawer when switching to the subscription-prompt target so
users land on a usable option without an extra click.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-24 01:48:04 +08:00
parent db95b8e4ee
commit 8991edabb5
10 changed files with 322 additions and 57 deletions
+6 -3
View File
@@ -16,6 +16,7 @@ import { computed, ref } from 'vue'
import { useI18n } from 'vue-i18n'
import KolPackageFormModal from '@/components/kol/KolPackageFormModal.vue'
import KolPlatformTags from '@/components/kol/KolPlatformTags.vue'
import KolPromptEditor from '@/components/kol/KolPromptEditor.vue'
import KolPromptFormModal from '@/components/kol/KolPromptFormModal.vue'
import { kolManageApi } from '@/lib/api'
@@ -400,9 +401,11 @@ function canCancelSelfSubscription(pkg: KolPackageSummary) {
>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'platform_hint'">
<a-tag color="blue">
{{ record.platform_hint || t('kol.manage.platformHintDefault') }}
</a-tag>
<KolPlatformTags
:value="record.platform_hint || t('kol.manage.platformHintDefault')"
:max="3"
size="small"
/>
</template>
<template v-else-if="column.key === 'status'">
<a-tag