feat: refine topic insights and learner experience

This commit is contained in:
2026-08-17 12:42:16 +08:00
parent 77399df060
commit 833763c461
27 changed files with 848 additions and 182 deletions

View File

@@ -8,14 +8,11 @@ const props = defineProps<{
used: number;
limit: number;
entitlement?: UserEntitlementSummary | null;
finishing?: boolean;
generatingHelpCard?: boolean;
generatingShareDraft?: boolean;
}>();
defineEmits<{
finishTopic: [];
openProfile: [];
generateHelpCard: [];
generateShareDraft: [];
}>();
@@ -43,8 +40,8 @@ const guidanceText = computed(() => {
if (props.entitlement?.lifecycleStatus === "expiring_7" || props.entitlement?.lifecycleStatus === "expiring_30") {
return `当前权益将于 ${formatDate(props.entitlement.expiredAt)} 到期;如需继续使用,可提前联系运营老师确认续期。`;
}
if (exhausted.value) return "本月深度主题使用较多,建议先完成已有功课;如需继续高频陪伴,可联系运营老师确认权益。";
if (nearLimit.value) return "本月深度主题接近上限,可以先沉淀已有主题,继续新的议题。";
if (exhausted.value) return "本月新主题额度已用完;当前对话仍受每日聊天额度管理,如需开启新议题可联系运营老师确认权益。";
if (nearLimit.value) return "本月主题接近上限;只有主动创建新对话才会计入新主题,继续当前对话不会重复扣减。";
return "";
});
</script>
@@ -57,18 +54,6 @@ const guidanceText = computed(() => {
<small v-if="hasEntitlement">{{ entitlement?.name }}</small>
</div>
<div class="session-quota-actions">
<button
v-if="entitlement?.enableGrowthProfile"
type="button"
class="quota-link"
@click="$emit('openProfile')"
>
近期回顾
</button>
<button type="button" class="quota-link" :disabled="finishing" @click="$emit('finishTopic')">
<LoaderCircle v-if="finishing" class="spinning" :size="14" aria-hidden="true" />
{{ finishing ? '沉淀中' : '沉淀本主题' }}
</button>
<button
v-if="entitlement?.allowHelpCard"
type="button"