diff --git a/web/src/i18n/locales/zh.json b/web/src/i18n/locales/zh.json index d12e9ff7..7a6d7a3e 100644 --- a/web/src/i18n/locales/zh.json +++ b/web/src/i18n/locales/zh.json @@ -16,7 +16,7 @@ "subtitle": "使用社区驱动的技能构建强大的 AI 代理", "searchPlaceholder": "搜索技能...", "exploreSkills": "探索技能", - "publishSkill": "开始构建" + "publishSkill": "发布技能" }, "features": { "secure": { diff --git a/web/src/pages/skill-detail.tsx b/web/src/pages/skill-detail.tsx index 45cebb24..2865b63a 100644 --- a/web/src/pages/skill-detail.tsx +++ b/web/src/pages/skill-detail.tsx @@ -2,7 +2,7 @@ import { useEffect, useRef, useState } from 'react' import { useTranslation } from 'react-i18next' import { useParams, useNavigate, useRouterState, useSearch } from '@tanstack/react-router' import { useMutation, useQueryClient } from '@tanstack/react-query' -import { ArrowLeft, ChevronDown, ChevronUp } from 'lucide-react' +import { ArrowLeft, ChevronDown, ChevronUp, User } from 'lucide-react' import { MarkdownRenderer } from '@/features/skill/markdown-renderer' import { FileTree } from '@/features/skill/file-tree' import { InstallCommand } from '@/features/skill/install-command' @@ -68,19 +68,6 @@ function parseMetadataJson(parsed?: string) { } } -function getAuthorMonogram(name?: string) { - if (!name) { - return '?' - } - - const trimmed = name.trim() - if (!trimmed) { - return '?' - } - - return trimmed[0]!.toUpperCase() -} - function getPromotionConflictKey(error: ApiError): 'promotion.duplicate_pending' | 'promotion.already_promoted' | null { if (error.serverMessageKey === 'promotion.duplicate_pending') { return 'promotion.duplicate_pending' @@ -565,7 +552,7 @@ export function SkillDetailPage() {
- {getAuthorMonogram(skill.ownerDisplayName)} + {t('skillDetail.authorLabel', { name: skill.ownerDisplayName })}