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
@@ -1,4 +1,5 @@
<script setup lang="ts">
import KolPlatformTags from '@/components/kol/KolPlatformTags.vue'
import { kolMarketplaceApi, resolveApiURL } from '@/lib/api'
import { formatError } from '@/lib/errors'
import {
@@ -158,9 +159,12 @@ function goBack() {
<div v-for="prompt in pkg.prompts" :key="prompt.id" class="prompt-item">
<div class="prompt-info">
<span class="prompt-name">{{ prompt.name }}</span>
<a-tag v-if="prompt.platform_hint" color="cyan" size="small">
{{ prompt.platform_hint }}
</a-tag>
<KolPlatformTags
v-if="prompt.platform_hint"
:value="prompt.platform_hint"
:max="4"
size="small"
/>
</div>
<div class="prompt-action">
<a-tooltip :title="subscription?.status !== 'active' ? '订阅后可用' : ''">