msgid ""
msgstr ""
"POT-Creation-Date: 2026-04-04 12:28+0300\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: @lingui/cli\n"
"Language: zh-CN\n"
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
"Plural-Forms: \n"

#: packages/admin/src/routes/bylines.tsx:446
msgid " - Guest"
msgstr " - 访客"

#: packages/admin/src/routes/bylines.tsx:446
msgid " - Linked"
msgstr " - 已关联"

#: packages/admin/src/components/LocaleSwitcher.tsx:72
#: packages/admin/src/components/TranslationsPanel.tsx:81
msgid " (default)"
msgstr "（默认）"

#: packages/admin/src/components/MenuEditor.tsx:521
msgid " (opens in new window)"
msgstr "（在新窗口中打开）"

#: packages/admin/src/components/MediaPickerModal.tsx:868
#: packages/admin/src/components/MediaPickerModal.tsx:952
msgid " (selected)"
msgstr "（已选择）"

#: packages/admin/src/routes/bylines.tsx:706
msgid "-- Select --"
msgstr "-- 选择 --"

#. placeholder {0}: providers?.find((p) => p.id === selectedItem.providerId)?.name
#: packages/admin/src/components/MediaPickerModal.tsx:799
msgid "(from {0})"
msgstr "（来自 {0}）"

#: packages/admin/src/components/RegistryPluginDetail.tsx:570
msgid "(pre-release)"
msgstr "（预发布）"

#: packages/admin/src/components/settings/PasskeyItem.tsx:151
msgid "(synced)"
msgstr "（已同步）"

#: packages/admin/src/components/RegistryPluginDetail.tsx:573
msgid "(too new)"
msgstr "（版本过高）"

#. placeholder {0}: items.length
#. placeholder {0}: orphan.rowCount
#: packages/admin/src/components/ContentTypeList.tsx:147
#: packages/admin/src/components/RepeaterField.tsx:152
msgid "{0, plural, one {(# item)} other {(# items)}}"
msgstr "{0, plural, one {(# 个项目)} other {(# 个项目)}}"

#. placeholder {0}: 1
#. placeholder {0}: value.bylineIds.length
#: packages/admin/src/components/BylineFilter.tsx:105
#: packages/admin/src/components/BylineFilter.tsx:106
msgid "{0, plural, one {# byline} other {# bylines}}"
msgstr ""

#. placeholder {0}: seedInfo.collections
#: packages/admin/src/components/SetupWizard.tsx:156
msgid "{0, plural, one {# collection} other {# collections}}"
msgstr "{0, plural, one {# 个合集} other {# 个合集}}"

#. placeholder {0}: result.comments.imported
#: packages/admin/src/components/WordPressImport.tsx:2279
msgid "{0, plural, one {# comment imported} other {# comments imported}}"
msgstr ""

#. placeholder {0}: result.affected
#: packages/admin/src/router.tsx:1789
msgid "{0, plural, one {# comment updated} other {# comments updated}}"
msgstr "{0, plural, one {# 条评论已更新} other {# 条评论已更新}}"

#. placeholder {0}: comments.length
#: packages/admin/src/components/comments/CommentInbox.tsx:336
msgid "{0, plural, one {# comment} other {# comments}}"
msgstr "{0, plural, one {# 条评论} other {# 条评论}}"

#. placeholder {0}: result.errors.length
#: packages/admin/src/components/WordPressImport.tsx:2290
msgid "{0, plural, one {# content error} other {# content errors}}"
msgstr "{0, plural, one {# 个内容错误} other {# 个内容错误}}"

#. placeholder {0}: result.imported
#: packages/admin/src/components/WordPressImport.tsx:2231
msgid "{0, plural, one {# content item imported} other {# content items imported}}"
msgstr "{0, plural, one {# 个内容项已导入} other {# 个内容项已导入}}"

#. placeholder {0}: locationFolders.length
#. placeholder {0}: visibleFolders.length
#: packages/admin/src/components/MediaDetailPanel.tsx:750
#: packages/admin/src/components/MediaLibrary.tsx:1006
msgid "{0, plural, one {# folder loaded} other {# folders loaded}}"
msgstr ""

#. placeholder {0}: selectedItems.length
#: packages/admin/src/components/MediaPickerModal.tsx:788
msgid "{0, plural, one {# item selected} other {# items selected}}"
msgstr ""

#. placeholder {0}: items.length
#. placeholder {0}: menu.itemCount ?? 0
#: packages/admin/src/components/MediaPickerModal.tsx:637
#: packages/admin/src/components/MenuList.tsx:220
msgid "{0, plural, one {# item} other {# items}}"
msgstr "{0, plural, one {# 个项目} other {# 个项目}}"

#. placeholder {0}: mcpTools.length
#: packages/admin/src/components/PluginManager.tsx:426
msgid "{0, plural, one {# MCP tool} other {# MCP tools}}"
msgstr ""

#. placeholder {0}: mediaResult.failed.length
#: packages/admin/src/components/WordPressImport.tsx:2295
msgid "{0, plural, one {# media error} other {# media errors}}"
msgstr "{0, plural, one {# 个媒体错误} other {# 个媒体错误}}"

#. placeholder {0}: mediaResult.imported.length
#: packages/admin/src/components/WordPressImport.tsx:2247
msgid "{0, plural, one {# media file imported} other {# media files imported}}"
msgstr "{0, plural, one {# 个媒体文件已导入} other {# 个媒体文件已导入}}"

#. placeholder {0}: result.menus.created
#: packages/admin/src/components/WordPressImport.tsx:2271
msgid "{0, plural, one {# menu imported} other {# menus imported}}"
msgstr ""

#. placeholder {0}: navMenus.length
#: packages/admin/src/components/WordPressImport.tsx:1919
msgid "{0, plural, one {# menu will be imported} other {# menus will be imported}}"
msgstr "{0, plural, one {# 个菜单将导入} other {# 个菜单将导入}}"

#. placeholder {0}: plugin.capabilities.length
#: packages/admin/src/components/MarketplaceBrowse.tsx:290
#: packages/admin/src/components/PluginManager.tsx:440
msgid "{0, plural, one {# permission} other {# permissions}}"
msgstr "{0, plural, one {# 个权限} other {# 个权限}}"

#. placeholder {0}: mapping.postCount
#: packages/admin/src/components/WordPressImport.tsx:2502
msgid "{0, plural, one {# post} other {# posts}}"
msgstr "{0, plural, one {# 篇文章} other {# 篇文章}}"

#. placeholder {0}: loopRedirectIds.size
#: packages/admin/src/components/Redirects.tsx:452
msgid "{0, plural, one {# redirect is part of a loop.} other {# redirects are part of a loop.}}"
msgstr "{0, plural, one {# 个重定向是循环的一部分。} other {# 个重定向是循环的一部分。}}"

#. placeholder {0}: selected.size
#: packages/admin/src/components/comments/CommentInbox.tsx:220
msgid "{0, plural, one {# selected} other {# selected}}"
msgstr "{0, plural, one {# 个已选择} other {# 个已选择}}"

#. placeholder {0}: result.skipped
#: packages/admin/src/components/WordPressImport.tsx:2239
msgid "{0, plural, one {# skipped (already exists)} other {# skipped (already exist)}}"
msgstr "{0, plural, one {# 个已跳过（已存在）} other {# 个已跳过（已存在）}}"

#. placeholder {0}: result.taxonomyAssignments
#: packages/admin/src/components/WordPressImport.tsx:2263
msgid "{0, plural, one {# taxonomy assignment} other {# taxonomy assignments}}"
msgstr ""

#. placeholder {0}: result.taxonomiesCreated.length
#: packages/admin/src/components/WordPressImport.tsx:2255
msgid "{0, plural, one {# taxonomy created} other {# taxonomies created}}"
msgstr ""

#. placeholder {0}: fields.length
#: packages/admin/src/components/ContentTypeEditor.tsx:600
msgid "{0, plural, one {field} other {fields}}"
msgstr "{0, plural, one {# 个字段} other {# 个字段}}"

#. placeholder {0}: stats.mediaCount
#: packages/admin/src/components/Dashboard.tsx:213
msgid "{0, plural, one {Media file} other {Media files}}"
msgstr ""

#. placeholder {0}: stats.userCount
#: packages/admin/src/components/Dashboard.tsx:217
msgid "{0, plural, one {User} other {Users}}"
msgstr ""

#. placeholder {0}: envLabel(m.key)
#. placeholder {1}: m.required
#. placeholder {2}: m.host
#: packages/admin/src/components/RegistryPluginDetail.tsx:647
msgid "{0} {1} required — you have {2}."
msgstr "{0} {1} 必需 — 您有 {2}。"

#. placeholder {0}: menu.name
#. placeholder {1}: /** * Menu List component * * Displays all menus with ability to create, edit, and delete. */ import { Button, Dialog, Input, Toast } from "@cloudflare/kumo"; import { plural } from "@lingui/core/macro"; import { Trans } from "@lingui/react/macro"; import { useLingui } from "@lingui/react/macro"; import { Plus, Pencil, Trash } from "@phosphor-icons/react"; import { X } from "@phosphor-icons/react"; import { useQuery, useMutation, useQueryClient } from "@tanstack/react-query"; import { Link, useNavigate } from "@tanstack/react-router"; import * as React from "react"; import { fetchMenus, createMenu, deleteMenu } from "../lib/api"; import { fetchManifest } from "../lib/api/client.js"; import { ADMIN_NAV_ICONS } from "./admin-navigation-icons.js"; import { ConfirmDialog } from "./ConfirmDialog.js"; import { DialogError, getMutationError } from "./DialogError.js"; import { LocaleSwitcher, useI18nConfig } from "./LocaleSwitcher.js"; import { RouterLinkButton } from "./RouterLinkButton.js"; export function MenuList() { const { t } = useLingui(); const queryClient = useQueryClient(); const navigate = useNavigate(); const toastManager = Toast.useToastManager(); const [isCreateOpen, setIsCreateOpen] = React.useState(false); const [deleteMenuName, setDeleteMenuName] = React.useState<string | null>(null); const [createError, setCreateError] = React.useState<string | null>(null); const { data: manifest } = useQuery({ queryKey: ["manifest"], queryFn: fetchManifest, }); const i18n = useI18nConfig(manifest); const [activeLocale, setActiveLocale] = React.useState<string | undefined>(undefined); React.useEffect(() => { if (i18n && !activeLocale) setActiveLocale(i18n.defaultLocale); }, [i18n, activeLocale]); const { data: menus, isLoading } = useQuery({ queryKey: ["menus", activeLocale], queryFn: () => fetchMenus({ locale: activeLocale }), }); const createMutation = useMutation({ mutationFn: createMenu, onSuccess: (menu) => { void queryClient.invalidateQueries({ queryKey: ["menus"] }); setIsCreateOpen(false); toastManager.add({ title: t`Menu created`, description: t`Menu "${menu.label}" has been created.`, }); void navigate({ to: "/menus/$name", params: { name: menu.name }, search: { locale: menu.locale }, }); }, onError: (error: Error) => { setCreateError(error.message); }, }); const deleteMutation = useMutation({ mutationFn: (name: string) => deleteMenu(name, { locale: activeLocale }), onSuccess: () => { void queryClient.invalidateQueries({ queryKey: ["menus"] }); setDeleteMenuName(null); toastManager.add({ title: t`Menu deleted`, description: t`The menu has been deleted.`, }); }, }); const handleCreate = (e: React.FormEvent<HTMLFormElement>) => { e.preventDefault(); setCreateError(null); const formData = new FormData(e.currentTarget); const nameVal = formData.get("name"); const name = typeof nameVal === "string" ? nameVal : ""; const labelVal = formData.get("label"); const label = typeof labelVal === "string" ? labelVal : ""; createMutation.mutate({ name, label, locale: activeLocale }); }; if (isLoading) { return ( <div className="flex items-center justify-center h-64"> <div className="text-kumo-subtle">{t`Loading menus...`}</div> </div> ); } return ( <div className="space-y-6"> <div className="flex items-center justify-between gap-4 flex-wrap"> <div> <h1 className="text-2xl font-semibold leading-tight">{t`Menus`}</h1> <p className="mt-1 text-sm leading-5 text-pretty text-kumo-subtle"> {t`Manage navigation menus for your site`} </p> </div> <div className="flex items-center gap-2"> {i18n && activeLocale ? ( <LocaleSwitcher locales={i18n.locales} defaultLocale={i18n.defaultLocale} value={activeLocale} onChange={setActiveLocale} /> ) : null} </div> <Dialog.Root open={isCreateOpen} onOpenChange={(open) => { setIsCreateOpen(open); if (!open) setCreateError(null); }} > <Dialog.Trigger render={(props) => ( <Button {...props} icon={<Plus />}> {t`Create Menu`} </Button> )} /> <Dialog className="p-6" size="lg"> <div className="flex items-start justify-between gap-4 mb-4"> <Dialog.Title className="text-lg font-semibold leading-none tracking-tight"> {t`Create New Menu`} </Dialog.Title> <Dialog.Close aria-label={t`Close`} render={(props) => ( <Button {...props} variant="ghost" shape="square" aria-label={t`Close`} className="absolute end-4 top-4" > <X className="h-4 w-4" /> <span className="sr-only">{t`Close`}</span> </Button> )} /> </div> <form onSubmit={handleCreate} className="space-y-4"> <div> <Input label={t`Name`} name="name" required placeholder="primary" pattern="[a-z0-9\-]+" title={t`Only lowercase letters, numbers, and hyphens`} /> <p className="text-sm text-kumo-subtle mt-1"> {t`URL-friendly identifier (e.g., "primary", "footer")`} </p> </div> <div> <Input label={t`Label`} name="label" required placeholder={t`Primary Navigation`} /> <p className="text-sm text-kumo-subtle mt-1">{t`Display name for admin interface`}</p> </div> <DialogError message={createError || getMutationError(createMutation.error)} /> <div className="flex justify-end gap-2"> <Button type="button" variant="outline" onClick={() => setIsCreateOpen(false)}> {t`Cancel`} </Button> <Button type="submit" disabled={createMutation.isPending}> {createMutation.isPending ? t`Creating...` : t`Create`} </Button> </div> </form> </Dialog> </Dialog.Root> </div> {!menus || menus.length === 0 ? ( <div className="border rounded-lg p-12 text-center"> <ADMIN_NAV_ICONS.menus className="mx-auto h-12 w-12 text-kumo-subtle mb-4" /> <h3 className="text-lg font-semibold mb-2">{t`No menus yet`}</h3> <p className="text-kumo-subtle mb-4">{t`Create your first navigation menu to get started`}</p> <Button icon={<Plus />} onClick={() => setIsCreateOpen(true)}> {t`Create Menu`} </Button> </div> ) : ( <div className="grid gap-4"> {menus.map((menu) => ( <div key={menu.id} className="border rounded-lg p-6 flex items-center justify-between hover:bg-kumo-tint transition-colors" > <Link to="/menus/$name" params={{ name: menu.name }} search={{ locale: menu.locale }} className="flex-1" > <div> <h3 className="font-semibold text-lg"> {menu.label} {i18n ? ( <span className="ms-2 text-xs font-mono uppercase text-kumo-subtle"> {menu.locale} </span> ) : null} </h3> <p className="text-sm text-kumo-subtle"> <Trans> {menu.name} •{" "} {plural(menu.itemCount ?? 0, { one: "# item", other: "# items" })} </Trans> </p> </div> </Link> <div className="flex gap-2"> <RouterLinkButton to="/menus/$name" params={{ name: menu.name }} search={{ locale: menu.locale }} variant="outline" size="sm" icon={<Pencil />} > {t`Edit`} </RouterLinkButton> <Button variant="outline" size="sm" onClick={() => setDeleteMenuName(menu.name)} aria-label={t`Delete ${menu.name} menu`} > <Trash className="h-4 w-4" /> </Button> </div> </div> ))} </div> )} <ConfirmDialog open={deleteMenuName !== null} onClose={() => { setDeleteMenuName(null); deleteMutation.reset(); }} title={t`Delete Menu`} description={t`Are you sure you want to delete this menu? This will also delete all menu items. This action cannot be undone.`} confirmLabel={t`Delete`} pendingLabel={t`Deleting...`} isPending={deleteMutation.isPending} error={deleteMutation.error} onConfirm={() => deleteMenuName && deleteMutation.mutate(deleteMenuName)} /> </div> ); } 
#: packages/admin/src/components/MenuList.tsx:218
msgid "{0} • {1}"
msgstr "{0} • {1}"

#. placeholder {0}: byline.displayName
#: packages/admin/src/components/BylineCreditsEditor.tsx:272
msgid "{0} added to this post."
msgstr ""

#. placeholder {0}: displayName ?? slug
#: packages/admin/src/components/RegistryPluginDetail.tsx:484
msgid "{0} banner"
msgstr "{0} 横幅"

#. placeholder {0}: term.label
#: packages/admin/src/components/TaxonomyManager.tsx:233
msgid "{0} can't be moved here — its parent has no translation in this locale, so this list isn't the group it belongs to."
msgstr ""

#. placeholder {0}: bestMatch?.detected.siteTitle || "WordPress site"
#: packages/admin/src/components/WordPressImport.tsx:1319
msgid "{0} detected"
msgstr "检测到 {0}"

#. placeholder {0}: term.locale.toUpperCase()
#: packages/admin/src/components/TaxonomySidebar.tsx:356
msgid "{0} fallback"
msgstr ""

#. placeholder {0}: plugin.name
#: packages/admin/src/components/PluginManager.tsx:127
msgid "{0} has been deactivated"
msgstr "{0} 已停用"

#. placeholder {0}: plugin.name
#: packages/admin/src/components/PluginManager.tsx:330
msgid "{0} has been removed"
msgstr "{0} 已移除"

#. placeholder {0}: displayName ?? slug
#: packages/admin/src/components/RegistryPluginDetail.tsx:496
msgid "{0} icon"
msgstr "{0} 图标"

#. placeholder {0}: plugin.installCount.toLocaleString()
#: packages/admin/src/components/MarketplacePluginDetail.tsx:213
msgid "{0} installs"
msgstr "{0} 次安装"

#. placeholder {0}: plugin.name
#: packages/admin/src/components/PluginManager.tsx:108
msgid "{0} is now active"
msgstr "{0} 现已激活"

#. placeholder {0}: postType.count
#. placeholder {1}: postType.suggestedCollection
#: packages/admin/src/components/WordPressImport.tsx:1989
msgid "{0} items → {1}"
msgstr "{0} 个项目 → {1}"

#. placeholder {0}: analysis.postTypes .filter((pt) => selections[pt.name]?.enabled) .reduce((sum, pt) => sum + pt.count, 0)
#: packages/admin/src/components/WordPressImport.tsx:1912
msgid "{0} items will be imported"
msgstr "将导入 {0} 个项目"

#. placeholder {0}: failedIds.length
#: packages/admin/src/router.tsx:574
msgid "{0} of {total} could not be deleted"
msgstr ""

#. placeholder {0}: failedIds.length
#: packages/admin/src/router.tsx:530
msgid "{0} of {total} could not be published"
msgstr ""

#. placeholder {0}: failedIds.length
#: packages/admin/src/router.tsx:553
msgid "{0} of {total} could not be updated"
msgstr ""

#. placeholder {0}: plugins?.length ?? 0
#: packages/admin/src/components/PluginManager.tsx:191
msgid "{0} plugins"
msgstr "{0} 个插件"

#. placeholder {0}: theme.name
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:206
msgid "{0} preview"
msgstr "{0} 预览"

#. placeholder {0}: byline.displayName
#: packages/admin/src/components/BylineCreditsEditor.tsx:625
msgid "{0} removed from this post."
msgstr ""

#. placeholder {0}: SYSTEM_FIELDS.length
#. placeholder {1}: fields.length
#. placeholder {2}: import { Badge, Button, Checkbox, Input, InputArea, Label, Select, Switch } from "@cloudflare/kumo"; import { DndContext, closestCenter, type DragEndEvent, KeyboardSensor, PointerSensor, useSensor, useSensors, } from "@dnd-kit/core"; import { arrayMove, SortableContext, sortableKeyboardCoordinates, useSortable, verticalListSortingStrategy, } from "@dnd-kit/sortable"; import { CSS } from "@dnd-kit/utilities"; import type { MessageDescriptor } from "@lingui/core"; import { msg, plural } from "@lingui/core/macro"; import { Trans, useLingui } from "@lingui/react/macro"; import { Plus, DotsSixVertical, Pencil, Trash, Database, FileText } from "@phosphor-icons/react"; import { useNavigate } from "@tanstack/react-router"; import * as React from "react"; import type { SchemaCollectionWithFields, SchemaField, CreateFieldInput, CreateCollectionInput, UpdateCollectionInput, } from "../lib/api"; import { cn } from "../lib/utils"; import { ArrowPrev } from "./ArrowIcons.js"; import { ConfirmDialog } from "./ConfirmDialog"; import { EditorHeader } from "./EditorHeader"; import { FieldEditor } from "./FieldEditor"; import { RouterLinkButton } from "./RouterLinkButton.js"; import { SaveButton } from "./SaveButton"; // Regex patterns for slug generation const SLUG_INVALID_CHARS_PATTERN = /[^a-z0-9]+/g; const SLUG_LEADING_TRAILING_PATTERN = /^_|_$/g; export interface ContentTypeEditorProps { collection?: SchemaCollectionWithFields; isNew?: boolean; isSaving?: boolean; onSave: (input: CreateCollectionInput | UpdateCollectionInput) => void; onAddField?: (input: CreateFieldInput) => void; onUpdateField?: (fieldSlug: string, input: CreateFieldInput) => void; onDeleteField?: (fieldSlug: string) => void; onReorderFields?: (fieldSlugs: string[]) => void; } interface SupportOptionDef { value: string; label: MessageDescriptor; description: MessageDescriptor; } const MODERATION_OPTIONS: Record<"all" | "first_time" | "none", MessageDescriptor> = { all: msg`All comments require approval`, first_time: msg`First-time commenters only`, none: msg`No moderation (auto-approve all)`, }; const SUPPORT_OPTIONS: SupportOptionDef[] = [ { value: "drafts", label: msg`Drafts`, description: msg`Save content as draft before publishing`, }, { value: "revisions", label: msg`Revisions`, description: msg`Track content history`, }, { value: "preview", label: msg`Preview`, description: msg`Preview content before publishing`, }, { value: "search", label: msg`Search`, description: msg`Enable full-text search on this collection`, }, ]; /** * System fields that exist on every collection * These are created automatically and cannot be modified */ interface SystemFieldDef { slug: string; label: MessageDescriptor; type: string; description: MessageDescriptor; } const SYSTEM_FIELDS: SystemFieldDef[] = [ { slug: "id", label: msg`ID`, type: "text", description: msg`Unique identifier (ULID)`, }, { slug: "slug", label: msg`Slug`, type: "text", description: msg`URL-friendly identifier`, }, { slug: "status", label: msg`Status`, type: "text", description: msg`draft, published, or archived`, }, { slug: "created_at", label: msg`Created At`, type: "datetime", description: msg`When the entry was created`, }, { slug: "updated_at", label: msg`Updated At`, type: "datetime", description: msg`When the entry was last modified`, }, { slug: "published_at", label: msg`Published At`, type: "datetime", description: msg`When the entry was published`, }, ]; /** * Content Type editor for creating/editing collections */ export function ContentTypeEditor({ collection, isNew, isSaving, onSave, onAddField, onUpdateField, onDeleteField, onReorderFields, }: ContentTypeEditorProps) { const { t } = useLingui(); const _navigate = useNavigate(); // Form state const [slug, setSlug] = React.useState(collection?.slug ?? ""); const [label, setLabel] = React.useState(collection?.label ?? ""); const [labelSingular, setLabelSingular] = React.useState(collection?.labelSingular ?? ""); const [description, setDescription] = React.useState(collection?.description ?? ""); const [urlPattern, setUrlPattern] = React.useState(collection?.urlPattern ?? ""); const [routable, setRoutable] = React.useState(collection?.routable ?? true); // SEO is managed via the separate `hasSeo` field; strip any legacy "seo" entry // so it isn't sent back on save (the API enum rejects it). const [supports, setSupports] = React.useState<string[]>( (collection?.supports ?? ["drafts", "revisions"]).filter((s) => s !== "seo"), ); // SEO state const [hasSeo, setHasSeo] = React.useState(collection?.hasSeo ?? false); // Comment settings state const [commentsEnabled, setCommentsEnabled] = React.useState( collection?.commentsEnabled ?? false, ); const [commentsModeration, setCommentsModeration] = React.useState<"all" | "first_time" | "none">( collection?.commentsModeration ?? "first_time", ); const [commentsClosedAfterDays, setCommentsClosedAfterDays] = React.useState( collection?.commentsClosedAfterDays ?? 90, ); const [commentsAutoApproveUsers, setCommentsAutoApproveUsers] = React.useState( collection?.commentsAutoApproveUsers ?? true, ); // Field editor state const [fieldEditorOpen, setFieldEditorOpen] = React.useState(false); const [editingField, setEditingField] = React.useState<SchemaField | undefined>(); const [fieldSaving, setFieldSaving] = React.useState(false); const [deleteFieldTarget, setDeleteFieldTarget] = React.useState<SchemaField | null>(null); const urlPatternValid = !urlPattern || urlPattern.includes("{slug}"); // Track whether form has unsaved changes const hasChanges = React.useMemo(() => { if (isNew) return slug && label; if (!collection) return false; return ( label !== collection.label || labelSingular !== (collection.labelSingular ?? "") || description !== (collection.description ?? "") || urlPattern !== (collection.urlPattern ?? "") || routable !== (collection.routable ?? true) || JSON.stringify([...supports].toSorted()) !== JSON.stringify(collection.supports.filter((s) => s !== "seo").toSorted()) || hasSeo !== collection.hasSeo || commentsEnabled !== collection.commentsEnabled || commentsModeration !== collection.commentsModeration || commentsClosedAfterDays !== collection.commentsClosedAfterDays || commentsAutoApproveUsers !== collection.commentsAutoApproveUsers ); }, [ isNew, collection, slug, label, labelSingular, description, urlPattern, routable, supports, hasSeo, commentsEnabled, commentsModeration, commentsClosedAfterDays, commentsAutoApproveUsers, ]); // Auto-generate slug from plural label const handleLabelChange = (value: string) => { setLabel(value); if (isNew) { setSlug( value .toLowerCase() .replace(SLUG_INVALID_CHARS_PATTERN, "_") .replace(SLUG_LEADING_TRAILING_PATTERN, ""), ); } }; // Auto-generate plural label (and slug) from singular label const handleSingularLabelChange = (value: string) => { setLabelSingular(value); if (isNew) { const pluralLabel = value ? `${value}s` : ""; handleLabelChange(pluralLabel); } }; const handleSupportToggle = (value: string) => { setSupports((prev) => prev.includes(value) ? prev.filter((s) => s !== value) : [...prev, value], ); }; const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); if (isNew) { onSave({ slug, label, labelSingular: labelSingular || undefined, description: description || undefined, urlPattern: urlPattern || undefined, routable, supports, hasSeo, }); } else { onSave({ label, labelSingular: labelSingular || undefined, description: description || undefined, urlPattern: urlPattern || undefined, routable, supports, hasSeo, commentsEnabled, commentsModeration, commentsClosedAfterDays, commentsAutoApproveUsers, }); } }; const handleFieldSave = async (input: CreateFieldInput) => { setFieldSaving(true); try { if (editingField) { onUpdateField?.(editingField.slug, input); } else { onAddField?.(input); } setFieldEditorOpen(false); setEditingField(undefined); } finally { setFieldSaving(false); } }; const handleEditField = (field: SchemaField) => { setEditingField(field); setFieldEditorOpen(true); }; const handleAddField = () => { setEditingField(undefined); setFieldEditorOpen(true); }; const isFromCode = collection?.source === "code"; const fields = collection?.fields ?? []; const sensors = useSensors( useSensor(PointerSensor, { activationConstraint: { distance: 8 } }), useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates }), ); const handleDragEnd = (event: DragEndEvent) => { const { active, over } = event; if (!over || active.id === over.id) return; const oldIndex = fields.findIndex((f) => f.id === active.id); const newIndex = fields.findIndex((f) => f.id === over.id); if (oldIndex === -1 || newIndex === -1) return; const reordered = arrayMove(fields, oldIndex, newIndex); onReorderFields?.(reordered.map((f) => f.slug)); }; return ( <div className="space-y-6"> <EditorHeader leading={ <RouterLinkButton to="/content-types" aria-label={t`Back to Content Types`} variant="ghost" shape="square" icon={<ArrowPrev />} /> } actions={ !isFromCode && !isNew ? ( <SaveButton type="submit" form="content-type-editor-form" isDirty={!!hasChanges} isSaving={!!isSaving} disabled={!urlPatternValid} /> ) : null } > <h1 className="truncate text-2xl font-semibold"> {isNew ? t`New Content Type` : collection?.label} </h1> {!isNew && ( <p className="text-kumo-subtle text-sm"> <code className="bg-kumo-tint px-1.5 py-0.5 rounded">{collection?.slug}</code> {isFromCode && <span className="ms-2 text-kumo-info">{t`Defined in code`}</span>} </p> )} </EditorHeader> {isFromCode && ( <div className="rounded-lg border border-kumo-info/50 bg-kumo-info-tint p-4"> <div className="flex items-center space-x-2"> <FileText className="h-5 w-5 text-kumo-info" /> <p className="text-sm text-kumo-subtle"> {t`This collection is defined in code. Some settings cannot be changed here. Edit your live.config.ts file to modify the schema.`} </p> </div> </div> )} <div className="grid grid-cols-1 lg:grid-cols-3 gap-6"> {/* Settings form */} <div className="lg:col-span-1"> <form id="content-type-editor-form" onSubmit={handleSubmit} className="space-y-4"> <div className="rounded-lg border bg-kumo-base p-4 space-y-4"> <h2 className="font-semibold">{t`Settings`}</h2> <Input label={t`Label (Singular)`} value={labelSingular} onChange={(e) => handleSingularLabelChange(e.target.value)} placeholder={t`Post`} disabled={isFromCode} /> <Input label={t`Label (Plural)`} value={label} onChange={(e) => handleLabelChange(e.target.value)} placeholder={t`Posts`} disabled={isFromCode} /> {isNew && ( <div> <Input label={t`Slug`} value={slug} onChange={(e) => setSlug(e.target.value)} placeholder="posts" disabled={!isNew} /> <p className="text-xs text-kumo-subtle mt-2">{t`Used in URLs and API endpoints`}</p> </div> )} <InputArea label={t`Description`} value={description} onChange={(e) => setDescription(e.target.value)} placeholder={t`A brief description of this content type`} rows={3} disabled={isFromCode} /> <Switch checked={routable} onCheckedChange={setRoutable} disabled={isFromCode} label={ <div> <span className="text-sm font-medium">{t`Routable`}</span> <p className="text-xs text-kumo-subtle"> {t`Require a slug before content can be published`} </p> </div> } /> <div> <Input label={t`URL Pattern`} value={urlPattern} onChange={(e) => setUrlPattern(e.target.value)} placeholder={`/${slug === "pages" ? "" : `${slug}/`}{slug}`} disabled={isFromCode} /> {urlPattern && !urlPattern.includes("{slug}") && ( <p className="text-xs text-kumo-danger mt-2"> {t`Pattern must include a ${"{slug}"} placeholder`} </p> )} <p className="text-xs text-kumo-subtle mt-1"> {t`Pattern for generating URLs, e.g. /blog/${"{slug}"}`} </p> </div> <div className="space-y-3"> <Label>{t`Features`}</Label> {SUPPORT_OPTIONS.map((option) => ( <div key={option.value} className={cn( "p-2 rounded-md hover:bg-kumo-tint/50", isFromCode && "opacity-60", )} > <Checkbox checked={supports.includes(option.value)} onCheckedChange={() => handleSupportToggle(option.value)} disabled={isFromCode} label={ <div> <span className="text-sm font-medium">{t(option.label)}</span> <p className="text-xs text-kumo-subtle">{t(option.description)}</p> </div> } /> </div> ))} </div> {/* SEO toggle */} <div className="pt-2 border-t"> <Switch checked={hasSeo} onCheckedChange={(checked) => setHasSeo(checked)} disabled={isFromCode} label={ <div> <span className="text-sm font-medium">{t`SEO`}</span> <p className="text-xs text-kumo-subtle"> {t`Add SEO metadata fields (title, description, image) and include in sitemap`} </p> </div> } /> </div> </div> {/* Comments settings — only for existing collections */} {!isNew && ( <div className="rounded-lg border bg-kumo-base p-4 space-y-4"> <h2 className="font-semibold">{t`Comments`}</h2> <Switch checked={commentsEnabled} onCheckedChange={(checked) => setCommentsEnabled(checked)} disabled={isFromCode} label={ <div> <span className="text-sm font-medium">{t`Enable comments`}</span> <p className="text-xs text-kumo-subtle"> {t`Allow visitors to leave comments on this collection's content`} </p> </div> } /> {commentsEnabled && ( <> <Select label={t`Moderation`} value={commentsModeration} onValueChange={(v) => setCommentsModeration((v as "all" | "first_time" | "none") ?? "first_time") } items={{ all: t(MODERATION_OPTIONS.all), first_time: t(MODERATION_OPTIONS.first_time), none: t(MODERATION_OPTIONS.none), }} disabled={isFromCode} /> <Input label={t`Close comments after (days)`} type="number" min={0} value={String(commentsClosedAfterDays)} onChange={(e) => { const parsed = Number.parseInt(e.target.value, 10); setCommentsClosedAfterDays(Number.isNaN(parsed) ? 0 : Math.max(0, parsed)); }} disabled={isFromCode} /> <p className="text-xs text-kumo-subtle -mt-2"> {t`Set to 0 to never close comments automatically.`} </p> <Switch checked={commentsAutoApproveUsers} onCheckedChange={(checked) => setCommentsAutoApproveUsers(checked)} disabled={isFromCode} label={ <div> <span className="text-sm font-medium"> {t`Auto-approve authenticated users`} </span> <p className="text-xs text-kumo-subtle"> {t`Comments from logged-in CMS users are approved automatically`} </p> </div> } /> </> )} </div> )} {!isFromCode && (isNew ? ( <Button type="submit" disabled={!hasChanges || !urlPatternValid} loading={isSaving} className="w-full justify-center" > {t`Create Content Type`} </Button> ) : ( <SaveButton type="submit" isDirty={!!hasChanges} isSaving={!!isSaving} announce={false} disabled={!urlPatternValid} className="w-full justify-center" /> ))} </form> </div> {/* Fields section - only show for existing collections */} {!isNew && ( <div className="lg:col-span-2"> <div className="rounded-lg border bg-kumo-base"> <div className="flex items-center justify-between p-4 border-b"> <div> <h2 className="font-semibold">{t`Fields`}</h2> <p className="text-sm text-kumo-subtle"> <Trans> {SYSTEM_FIELDS.length} system + {fields.length} custom{" "} {plural(fields.length, { one: "field", other: "fields" })} </Trans> </p> </div> {!isFromCode && ( <Button icon={<Plus />} onClick={handleAddField}> {t`Add Field`} </Button> )} </div> {/* System fields - always shown */} <div> <div className="px-4 py-2 text-xs font-medium text-kumo-subtle uppercase tracking-wider bg-kumo-tint/50 border-b"> {t`System Fields`} </div> <div className="divide-y divide-kumo-line/50 border-b"> {SYSTEM_FIELDS.map((field) => ( <SystemFieldRow key={field.slug} field={field} /> ))} </div> </div> {/* Custom fields */} {fields.length === 0 ? ( <div className="p-8 text-center text-kumo-subtle"> <Database className="mx-auto h-12 w-12 mb-4 opacity-50" /> <p className="font-medium">{t`No custom fields yet`}</p> <p className="text-sm">{t`Add fields to define the structure of your content`}</p> {!isFromCode && ( <Button className="mt-4" icon={<Plus />} onClick={handleAddField}> {t`Add First Field`} </Button> )} </div> ) : ( <> <div className="px-4 py-2 text-xs font-medium text-kumo-subtle uppercase tracking-wider bg-kumo-tint/50 border-b"> {t`Custom Fields`} </div> <DndContext sensors={sensors} collisionDetection={closestCenter} onDragEnd={handleDragEnd} > <SortableContext items={fields.map((f) => f.id)} strategy={verticalListSortingStrategy} > <div className="divide-y"> {fields.map((field) => ( <FieldRow key={field.id} field={field} isFromCode={isFromCode} onEdit={() => handleEditField(field)} onDelete={() => setDeleteFieldTarget(field)} /> ))} </div> </SortableContext> </DndContext> </> )} </div> </div> )} </div> {/* Field editor dialog */} <FieldEditor open={fieldEditorOpen} onOpenChange={setFieldEditorOpen} field={editingField} onSave={handleFieldSave} isSaving={fieldSaving} /> <ConfirmDialog open={!!deleteFieldTarget} onClose={() => setDeleteFieldTarget(null)} title={t`Delete Field?`} description={ deleteFieldTarget ? t`Are you sure you want to delete the "${deleteFieldTarget.label}" field?` : "" } confirmLabel={t`Delete`} pendingLabel={t`Deleting...`} isPending={false} error={null} onConfirm={() => { if (deleteFieldTarget) { onDeleteField?.(deleteFieldTarget.slug); setDeleteFieldTarget(null); } }} /> </div> ); } interface FieldRowProps { field: SchemaField; isFromCode?: boolean; onEdit: () => void; onDelete: () => void; } function FieldRow({ field, isFromCode, onEdit, onDelete }: FieldRowProps) { const { t } = useLingui(); const { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({ id: field.id, disabled: isFromCode, }); const style = { transform: CSS.Transform.toString(transform), transition }; return ( <div ref={setNodeRef} style={style} className={cn( "flex items-center px-4 py-3 hover:bg-kumo-tint/25", isDragging && "opacity-50", )} > {!isFromCode && ( <button {...attributes} {...listeners} className="cursor-grab active:cursor-grabbing me-3" aria-label={t`Drag to reorder ${field.label}`} > <DotsSixVertical className="h-5 w-5 text-kumo-subtle" /> </button> )} <div className="flex-1 min-w-0"> <div className="flex items-center space-x-2"> <span className="font-medium">{field.label}</span> <code className="text-xs bg-kumo-tint px-1.5 py-0.5 rounded text-kumo-subtle"> {field.slug} </code> </div> <div className="flex items-center space-x-2 mt-1"> <span className="text-xs text-kumo-subtle capitalize">{field.type}</span> {field.required && <Badge variant="secondary">{t`Required`}</Badge>} {field.unique && <Badge variant="secondary">{t`Unique`}</Badge>} {field.searchable && <Badge variant="secondary">{t`Searchable`}</Badge>} </div> </div> {!isFromCode && ( <div className="flex items-center space-x-1"> <Button variant="ghost" shape="square" onClick={onEdit} aria-label={t`Edit ${field.label} field`} > <Pencil className="h-4 w-4" /> </Button> <Button variant="ghost" shape="square" onClick={onDelete} aria-label={t`Delete ${field.label} field`} > <Trash className="h-4 w-4 text-kumo-danger" /> </Button> </div> )} </div> ); } interface SystemFieldInfo { slug: string; label: MessageDescriptor; type: string; description: MessageDescriptor; } function SystemFieldRow({ field }: { field: SystemFieldInfo }) { const { t } = useLingui(); return ( <div className="flex items-center px-4 py-2 opacity-75"> <div className="w-8" /> {/* Spacer for alignment with draggable fields */} <div className="flex-1 min-w-0"> <div className="flex items-center space-x-2"> <span className="font-medium text-sm">{t(field.label)}</span> <code className="text-xs bg-kumo-tint px-1.5 py-0.5 rounded text-kumo-subtle"> {field.slug} </code> <Badge variant="secondary">{t`System`}</Badge> </div> <p className="text-xs text-kumo-subtle mt-0.5">{t(field.description)}</p> </div> </div> ); } 
#: packages/admin/src/components/ContentTypeEditor.tsx:598
msgid "{0} system + {1} custom {2}"
msgstr "{0} 个系统 + {1} 个自定义 {2}"

#. placeholder {0}: taxonomy.label
#: packages/admin/src/components/TaxonomySidebar.tsx:411
msgid "{0} updated"
msgstr "{0} 已更新"

#. placeholder {0}: updated.displayName
#: packages/admin/src/components/BylineCreditsEditor.tsx:375
msgid "{0} updated everywhere it appears."
msgstr ""

#. placeholder {0}: plugin.name
#. placeholder {1}: updateInfo?.latest
#: packages/admin/src/components/PluginManager.tsx:276
msgid "{0} updated to v{1}"
msgstr "{0} 已更新至 v{1}"

#. placeholder {0}: item.filename
#. placeholder {1}: selected ? t` (selected)` : ""
#: packages/admin/src/components/MediaPickerModal.tsx:868
#: packages/admin/src/components/MediaPickerModal.tsx:952
msgid "{0}{1}"
msgstr "{0}{1}"

#. placeholder {0}: draft.description.length
#: packages/admin/src/components/SeoPanel.tsx:215
msgid "{0}/160 characters"
msgstr "{0}/160 个字符"

#. placeholder {0}: allowedHosts.join(", ")
#: packages/admin/src/lib/api/marketplace.ts:313
msgid "{base} to: {0}"
msgstr "{base} 到：{0}"

#: packages/admin/src/components/RevisionHistory.tsx:355
msgid "{changedCount, plural, one {# change from next revision} other {# changes from next revision}}"
msgstr "{changedCount, plural, one {# 个变更来自下一个修订版本} other {# 个变更来自下一个修订版本}}"

#: packages/admin/src/components/PortableTextEditor.tsx:2530
msgid "{characters, plural, one {# character} other {# characters}}"
msgstr ""

#. placeholder {0}: rows.length
#: packages/admin/src/components/MediaUploadDialog.tsx:488
msgid "{completedCount} of {0} complete"
msgstr ""

#. placeholder {0}: rows.length
#: packages/admin/src/components/MediaUploadDialog.tsx:373
msgid "{completedCount} of {0} uploads complete"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:2088
msgid "{count, plural, one {# file} other {# files}}"
msgstr "{count, plural, one {# 个文件} other {# 个文件}}"

#: packages/admin/src/components/WordPressImport.tsx:2367
msgid "{count, plural, one {# item} other {# items}}"
msgstr "{count, plural, one {# 个项目} other {# 个项目}}"

#: packages/admin/src/components/WordPressImport.tsx:2159
msgid "{current} of {total}"
msgstr "{current} / {total}"

#: packages/admin/src/components/MediaUploadDialog.tsx:375
msgid "{failedCount, plural, one {# upload failed} other {# uploads failed}}"
msgstr ""

#. placeholder {0}: hasMore ? "+" : ""
#. placeholder {1}: hasMore ? "+" : ""
#: packages/admin/src/components/ContentList.tsx:1200
msgid "{filteredCount, plural, one {#{0} item} other {#{1} items}}"
msgstr "{filteredCount, plural, one {#{0} 个项目} other {#{1} 个项目}}"

#: packages/admin/src/components/MediaImportSummary.tsx:9
msgid "{importedFiles, plural, one {<count>#</count> file imported} other {<count>#</count> files imported}}"
msgstr ""

#: packages/admin/src/components/LocaleSwitcher.tsx:107
msgid "{label} — no translation"
msgstr "{label} — 无翻译"

#: packages/admin/src/components/LocaleSwitcher.tsx:107
msgid "{label} — view translation"
msgstr "{label} — 查看翻译"

#. placeholder {0}: to + 1
#: packages/admin/src/components/BylineCreditsEditor.tsx:291
msgid "{label} moved to position {0}."
msgstr ""

#: packages/admin/src/components/ContentList.tsx:1189
msgid "{matchCount, plural, one {# item matching \"{searchQuery}\"} other {# items matching \"{searchQuery}\"}}"
msgstr "{matchCount, plural, one {# 个项目匹配 \"{searchQuery}\"} other {# 个项目匹配 \"{searchQuery}\"}}"

#: packages/admin/src/components/WordPressImport.tsx:2489
msgid "{matchedCount} of {totalCount} assigned"
msgstr "已分配 {matchedCount} / {totalCount}"

#: packages/admin/src/components/WordPressImport.tsx:2477
msgid "{matchedCount} of {totalCount} authors matched by email"
msgstr "通过电子邮件匹配 {matchedCount} / {totalCount} 位作者"

#: packages/admin/src/components/WordPressImport.tsx:1895
msgid "{needsNewCollections, plural, one {# new collection will be created} other {# new collections will be created}}"
msgstr "{needsNewCollections, plural, one {将创建 # 个新合集} other {将创建 # 个新合集}}"

#: packages/admin/src/components/WordPressImport.tsx:1904
msgid "{needsNewFields, plural, one {Fields will be added to # existing collection} other {Fields will be added to # existing collections}}"
msgstr "{needsNewFields, plural, one {字段将添加到 # 个现有合集} other {字段将添加到 # 个现有合集}}"

#: packages/admin/src/components/Dashboard.tsx:102
msgid "{overdueCount, plural, one {One scheduled item is overdue and the scheduler heartbeat is stale. Run `npx emdash doctor` and verify the deployed Cron Trigger.} other {# scheduled items are overdue and the scheduler heartbeat is stale. Run `npx emdash doctor` and verify the deployed Cron Trigger.}}"
msgstr ""

#: packages/admin/src/components/Dashboard.tsx:97
msgid "{overdueCount, plural, one {One scheduled item is overdue, but no scheduler run has completed. Run `npx emdash doctor` and verify the deployed Cron Trigger.} other {# scheduled items are overdue, but no scheduler run has completed. Run `npx emdash doctor` and verify the deployed Cron Trigger.}}"
msgstr ""

#: packages/admin/src/components/MediaUploadDialog.tsx:464
msgid "{overflowCount, plural, one {# file was not added because the upload list is full.} other {# files were not added because the upload list is full.}}"
msgstr ""

#: packages/admin/src/components/CapabilityConsentDialog.tsx:83
msgid "{pluginName} is requesting additional permissions:"
msgstr "{pluginName} 正在请求额外权限："

#: packages/admin/src/components/CapabilityConsentDialog.tsx:84
msgid "{pluginName} requires the following permissions:"
msgstr "{pluginName} 需要以下权限："

#: packages/admin/src/components/PluginSettings.tsx:128
#: packages/admin/src/components/PluginSettings.tsx:142
#: packages/admin/src/components/PluginSettings.tsx:170
msgid "{pluginName} Settings"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:2531
msgid "{readingTime, plural, one {# min read} other {# min read}}"
msgstr ""

#: packages/admin/src/components/MediaImportSummary.tsx:11
msgid "{rewrittenUrls, plural, one {<rewrittenCount>#</rewrittenCount> image URL updated in {updatedContentItems, plural, one {<contentCount>#</contentCount> content item} other {<contentCount>#</contentCount> content items}}} other {<rewrittenCount>#</rewrittenCount> image URLs updated in {updatedContentItems, plural, one {<contentCount>#</contentCount> content item} other {<contentCount>#</contentCount> content items}}}}"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:493
msgid "{selectedCount, plural, one {# selected} other {# selected}}"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:535
msgid "{selectedCount, plural, one {Move # item to trash? You can restore it later.} other {Move # items to trash? You can restore them later.}}"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:1195
msgid "{total, plural, one {# item} other {# items}}"
msgstr "{total, plural, one {# 个项目} other {# 个项目}}"

#: packages/admin/src/components/comments/CommentInbox.tsx:151
msgid "{total, plural, one {# total} other {# total}}"
msgstr "{total, plural, one {共 # 条} other {共 # 条}}"

#: packages/admin/src/components/Dashboard.tsx:201
msgid "{totalDrafts, plural, one {Draft} other {Drafts}}"
msgstr ""

#: packages/admin/src/components/Dashboard.tsx:207
msgid "{totalScheduled, plural, one {Scheduled} other {Scheduled}}"
msgstr ""

#: packages/admin/src/components/RevisionHistory.tsx:367
msgid "{unchangedCount, plural, one {Hide # unchanged} other {Hide # unchanged}}"
msgstr "{unchangedCount, plural, one {隐藏 # 个未变更} other {隐藏 # 个未变更}}"

#: packages/admin/src/components/RevisionHistory.tsx:368
msgid "{unchangedCount, plural, one {Show # unchanged} other {Show # unchanged}}"
msgstr "{unchangedCount, plural, one {显示 # 个未变更} other {显示 # 个未变更}}"

#: packages/admin/src/components/PortableTextEditor.tsx:2529
msgid "{words, plural, one {# word} other {# words}}"
msgstr ""

#: packages/admin/src/components/Redirects.tsx:142
msgid "/new-page or /articles/[slug]"
msgstr "/new-page 或 /articles/[slug]"

#: packages/admin/src/components/Redirects.tsx:133
msgid "/old-page or /blog/[slug]"
msgstr "/old-page 或 /blog/[slug]"

#: packages/admin/src/components/WordPressImport.tsx:2109
msgid "• Files are downloaded from your WordPress site"
msgstr "• 文件从您的 WordPress 站点下载"

#: packages/admin/src/components/WordPressImport.tsx:2110
msgid "• Uploaded to your EmDash media storage"
msgstr "• 已上传到您的 EmDash 媒体存储"

#: packages/admin/src/components/WordPressImport.tsx:2111
msgid "• URLs in your content are updated automatically"
msgstr "• 您内容中的 URL 将自动更新"

#: packages/admin/src/components/SetupWizard.tsx:225
#: packages/admin/src/components/SetupWizard.tsx:277
#: packages/admin/src/components/SetupWizard.tsx:332
#: packages/admin/src/components/WordPressImport.tsx:1617
msgid "← Back"
msgstr "← 返回"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:37
msgid "1 year"
msgstr "1 年"

#: packages/admin/src/components/WordPressImport.tsx:1538
msgid "1. Log into your WordPress admin"
msgstr "1. 登录您的 WordPress 管理后台"

#: packages/admin/src/components/WordPressImport.tsx:1291
msgid "1. Log into your WordPress admin dashboard"
msgstr "1. 登录您的 WordPress 管理后台"

#: packages/admin/src/components/WordPressImport.tsx:76
msgid "2. Go to <0>Tools → Export</0>"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1539
msgid "2. Go to Users → Profile"
msgstr "2. 前往 用户 → 个人资料"

#: packages/admin/src/components/WordPressImport.tsx:1540
msgid "3. Scroll to \"Application Passwords\""
msgstr "3. 滚动到 \"应用程序密码\""

#: packages/admin/src/components/WordPressImport.tsx:1295
msgid "3. Select \"All content\""
msgstr "3. 选择 \"所有内容\""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:35
msgid "30 days"
msgstr "30 天"

#: packages/admin/src/components/Redirects.tsx:156
msgid "301 Permanent"
msgstr "301 永久重定向"

#: packages/admin/src/components/Redirects.tsx:157
msgid "302 Temporary"
msgstr "302 临时重定向"

#: packages/admin/src/components/Redirects.tsx:158
msgid "307 Temporary (Strict)"
msgstr "307 临时（严格）"

#: packages/admin/src/components/Redirects.tsx:159
msgid "308 Permanent (Strict)"
msgstr "308 永久（严格）"

#: packages/admin/src/components/WordPressImport.tsx:1296
msgid "4. Click \"Download Export File\""
msgstr "4. 点击 \"下载导出文件\""

#: packages/admin/src/components/WordPressImport.tsx:1541
msgid "4. Enter \"EmDash\" and click \"Add New\""
msgstr "4. 输入 \"EmDash\" 并点击 \"添加新密码\""

#: packages/admin/src/components/Redirects.tsx:402
msgid "404 Errors"
msgstr "404 错误"

#: packages/admin/src/components/Redirects.tsx:160
msgid "410 Content Deleted (Gone)"
msgstr "410 内容已删除（已移除）"

#: packages/admin/src/components/Redirects.tsx:161
msgid "451 Unavailable for legal reasons"
msgstr "451 因法律原因不可用"

#: packages/admin/src/components/WordPressImport.tsx:1542
msgid "5. Copy the generated password"
msgstr "5. 复制生成的密码"

#: packages/admin/src/components/WordPressImport.tsx:1297
msgid "5. Upload the file here"
msgstr "5. 在此处上传文件"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:34
msgid "7 days"
msgstr "7 天"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:36
msgid "90 days"
msgstr "90 天"

#: packages/admin/src/components/ContentTypeEditor.tsx:417
msgid "A brief description of this content type"
msgstr "此内容类型的简要描述"

#: packages/admin/src/components/Sections.tsx:203
msgid "A full-width hero banner with heading, text, and CTA button"
msgstr "带标题、文字和 CTA 按钮的全宽主视觉横幅"

#: packages/admin/src/components/MediaFolderDialog.tsx:86
msgid "A media folder with this name already exists"
msgstr ""

#: packages/admin/src/components/settings/GeneralSettings.tsx:176
msgid "A short description of your site"
msgstr "您网站的简短描述"

#: packages/admin/src/components/TaxonomySidebar.tsx:455
msgid "A source and target locale are required"
msgstr ""

#: packages/admin/src/components/BylineFilter.tsx:184
msgid "About inferred bylines"
msgstr ""

#: packages/admin/src/components/CapabilityConsentDialog.tsx:201
msgid "Accept & Install"
msgstr "接受并安装"

#: packages/admin/src/components/CapabilityConsentDialog.tsx:200
msgid "Accept & Update"
msgstr "接受并更新"

#: packages/admin/src/components/InviteAcceptPage.tsx:240
msgid "Accept Invite"
msgstr "接受邀请"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:305
#: packages/admin/src/routes/byline-schema.tsx:174
msgid "Access denied"
msgstr "访问被拒绝"

#: packages/admin/src/router.tsx:1809
msgid "Access Denied"
msgstr "访问被拒绝"

#: packages/admin/src/lib/api/marketplace.ts:282
#: packages/admin/src/lib/api/marketplace.ts:290
msgid "Access your media library"
msgstr "访问您的媒体库"

#: packages/admin/src/components/SetupWizard.tsx:354
msgid "Account"
msgstr "账户"

#: packages/admin/src/components/InviteAcceptPage.tsx:154
msgid "Account already exists"
msgstr "账户已存在"

#: packages/admin/src/components/SignupPage.tsx:277
msgid "Account exists"
msgstr "账户已存在"

#: packages/admin/src/components/users/UserDetail.tsx:216
msgid "Account Info"
msgstr "账户信息"

#: packages/admin/src/components/WordPressImport.tsx:1176
msgid "ACF Fields"
msgstr ""

#: packages/admin/src/components/comments/CommentInbox.tsx:291
#: packages/admin/src/components/ContentList.tsx:636
#: packages/admin/src/components/ContentList.tsx:762
#: packages/admin/src/components/ContentTypeList.tsx:190
#: packages/admin/src/components/TaxonomyManager.tsx:1056
#: packages/admin/src/routes/byline-schema.tsx:249
msgid "Actions"
msgstr "操作"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:334
msgid "Activation cannot be confirmed. Keep editing paused and refresh the status."
msgstr ""

#: packages/admin/src/components/users/UserDetail.tsx:206
#: packages/admin/src/components/users/UserList.tsx:210
msgid "Active"
msgstr "活跃"

#: packages/admin/src/components/AllowedTypesEditor.tsx:174
#: packages/admin/src/components/BylineCreditsEditor.tsx:501
#: packages/admin/src/components/MenuEditor.tsx:441
#: packages/admin/src/components/TaxonomySidebar.tsx:619
msgid "Add"
msgstr "添加"

#. placeholder {0}: field.item_label
#. placeholder {0}: option.byline.displayName
#. placeholder {0}: taxonomyDef.labelSingular || t`Term`
#: packages/admin/src/components/BylineCreditsEditor.tsx:498
#: packages/admin/src/components/PortableTextEditor.tsx:2142
#: packages/admin/src/components/TaxonomyManager.tsx:545
#: packages/admin/src/components/TaxonomyManager.tsx:1047
msgid "Add {0}"
msgstr "添加 {0}"

#: packages/admin/src/components/TaxonomySidebar.tsx:316
msgid "Add {label}"
msgstr "添加 {label}"

#: packages/admin/src/components/settings/SecuritySettings.tsx:160
msgid "Add a new passkey"
msgstr "添加新的通行密钥"

#: packages/admin/src/components/BylineCreditsEditor.tsx:564
msgid "Add another byline"
msgstr ""

#: packages/admin/src/components/FieldEditor.tsx:573
msgid "Add at least one sub-field to define the repeater structure."
msgstr "添加至少一个子字段以定义重复器结构。"

#: packages/admin/src/components/BylineCreditsEditor.tsx:420
msgid "Add byline"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:3757
msgid "Add column after"
msgstr "在后面添加列"

#: packages/admin/src/components/PortableTextEditor.tsx:3751
msgid "Add column before"
msgstr "在前面添加列"

#: packages/admin/src/components/MenuEditor.tsx:378
#: packages/admin/src/components/MenuEditor.tsx:493
msgid "Add Content"
msgstr "添加内容"

#: packages/admin/src/components/MenuEditor.tsx:390
#: packages/admin/src/components/MenuEditor.tsx:397
#: packages/admin/src/components/MenuEditor.tsx:496
msgid "Add Custom Link"
msgstr "添加自定义链接"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:220
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:315
msgid "Add Domain"
msgstr "添加域名"

#: packages/admin/src/components/ContentTypeEditor.tsx:606
#: packages/admin/src/components/FieldEditor.tsx:368
#: packages/admin/src/components/FieldEditor.tsx:689
msgid "Add Field"
msgstr "添加字段"

#: packages/admin/src/components/WordPressImport.tsx:2000
msgid "Add fields"
msgstr "添加字段"

#: packages/admin/src/routes/byline-schema.tsx:293
msgid "Add fields like \"Job title\" or \"Pronouns\" to enrich every byline."
msgstr "添加如\"职位\"或\"代词\"等字段来丰富每个署名。"

#: packages/admin/src/components/ContentTypeEditor.tsx:628
msgid "Add fields to define the structure of your content"
msgstr "添加字段以定义您的内容结构"

#: packages/admin/src/components/ContentTypeEditor.tsx:631
msgid "Add First Field"
msgstr "添加第一个字段"

#: packages/admin/src/components/RepeaterField.tsx:174
msgid "Add First Item"
msgstr "添加第一个项目"

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:204
msgid "Add Images"
msgstr ""

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:251
msgid "Add images to gallery"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:2142
msgid "Add item"
msgstr "添加项目"

#: packages/admin/src/components/RepeaterField.tsx:158
msgid "Add Item"
msgstr "添加项目"

#: packages/admin/src/components/PortableTextEditor.tsx:3686
msgid "Add link"
msgstr "添加链接"

#: packages/admin/src/components/MenuEditor.tsx:486
msgid "Add links to build your navigation menu"
msgstr "添加链接以构建您的导航菜单"

#: packages/admin/src/components/AllowedTypesEditor.tsx:165
msgid "Add MIME type or extension"
msgstr "添加 MIME 类型或扩展名"

#: packages/admin/src/components/ContentList.tsx:431
msgid "Add New"
msgstr "添加新内容"

#. placeholder {0}: (taxonomy.labelSingular || taxonomy.label).toLowerCase()
#: packages/admin/src/components/TaxonomySidebar.tsx:631
msgid "Add new {0}"
msgstr "添加新{0}"

#: packages/admin/src/components/MediaFolderDialog.tsx:127
#: packages/admin/src/components/MediaLibrary.tsx:858
#: packages/admin/src/components/MediaLibrary.tsx:863
msgid "Add new folder"
msgstr ""

#: packages/admin/src/components/SeoPanel.tsx:240
msgid "Add noindex meta tag"
msgstr "添加 noindex 元标签"

#: packages/admin/src/components/settings/SecuritySettings.tsx:187
msgid "Add Passkey"
msgstr "添加通行密钥"

#: packages/admin/src/components/PluginManager.tsx:217
msgid "Add plugins to your astro.config.mjs to extend EmDash functionality."
msgstr "在 astro.config.mjs 中添加插件以扩展 EmDash 功能。"

#: packages/admin/src/components/PortableTextEditor.tsx:3778
msgid "Add row after"
msgstr "在下面添加行"

#: packages/admin/src/components/PortableTextEditor.tsx:3772
msgid "Add row before"
msgstr "在上面添加行"

#: packages/admin/src/components/ContentTypeEditor.tsx:489
msgid "Add SEO metadata fields (title, description, image) and include in sitemap"
msgstr "添加 SEO 元数据字段（标题、描述、图片）并包含在站点地图中"

#: packages/admin/src/components/FieldEditor.tsx:567
msgid "Add Sub-Field"
msgstr "添加子字段"

#: packages/admin/src/components/TaxonomySidebar.tsx:318
msgid "Add tags..."
msgstr "添加标签..."

#: packages/admin/src/components/Widgets.tsx:403
msgid "Add Widget Area"
msgstr "添加小部件区域"

#: packages/admin/src/components/settings/SocialSettings.tsx:135
msgid "Add your social media profiles. These are available to your site's theme and can be displayed in headers, footers, or author bios."
msgstr "添加您的社交媒体资料。这些可供您站点的主题使用，并可以显示在页眉、页脚或作者简介中。"

#: packages/admin/src/components/MenuEditor.tsx:441
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:315
msgid "Adding..."
msgstr "添加中..."

#: packages/admin/src/components/WordPressImport.tsx:1769
msgid "Additional data to import."
msgstr "要导入的其他数据。"

#: packages/admin/src/components/WordPressImport.tsx:1499
msgid "admin"
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:102
#: packages/admin/src/components/Sidebar.tsx:426
#: packages/admin/src/components/users/roleDefinitions.ts:42
msgid "Admin"
msgstr "管理员"

#: packages/admin/src/components/Sidebar.tsx:372
msgid "Admin navigation"
msgstr "管理员导航"

#: packages/admin/src/components/WelcomeModal.tsx:25
msgid "Administrator"
msgstr "管理员"

#: packages/admin/src/components/BylineCreditsEditor.tsx:990
msgid "Advanced"
msgstr ""

#: packages/admin/src/components/settings/EmailSettings.tsx:191
msgid "After send:"
msgstr "发送后："

#: packages/admin/src/components/PluginManager.tsx:547
msgid "Agent access"
msgstr ""

#. placeholder {0}: plugin.name
#: packages/admin/src/components/PluginManager.tsx:341
msgid "Agent access for {0} has been updated"
msgstr ""

#: packages/admin/src/components/CapabilityConsentDialog.tsx:139
msgid "Agent-callable MCP tools"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:4154
msgid "Align Center"
msgstr "居中对齐"

#: packages/admin/src/components/PortableTextEditor.tsx:4147
msgid "Align Left"
msgstr "左对齐"

#: packages/admin/src/components/PortableTextEditor.tsx:4161
msgid "Align Right"
msgstr "右对齐"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:324
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:513
msgid "Alignment"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:443
msgid "All"
msgstr "全部"

#: packages/admin/src/components/ContentList.tsx:911
#: packages/admin/src/components/ContentList.tsx:915
msgid "All authors"
msgstr "所有作者"

#: packages/admin/src/components/BylineFilter.tsx:103
#: packages/admin/src/routes/bylines.tsx:412
msgid "All bylines"
msgstr "所有署名"

#: packages/admin/src/components/MarketplaceBrowse.tsx:110
msgid "All capabilities"
msgstr "所有权限"

#: packages/admin/src/components/comments/CommentInbox.tsx:135
msgid "All collections"
msgstr "所有合集"

#: packages/admin/src/components/ContentTypeEditor.tsx:63
msgid "All comments require approval"
msgstr "所有评论需要审核"

#: packages/admin/src/components/WordPressImport.tsx:2534
msgid "All imported content will be unassigned. You can reassign authors later from the content editor."
msgstr "所有导入的内容将被取消分配。您可以稍后在内容编辑器中重新分配作者。"

#: packages/admin/src/components/LocaleSwitcher.tsx:68
msgid "All locales"
msgstr "所有语言"

#: packages/admin/src/components/users/UserList.tsx:43
#: packages/admin/src/components/users/UserList.tsx:47
msgid "All roles"
msgstr "所有角色"

#: packages/admin/src/components/Sections.tsx:240
msgid "All Sources"
msgstr "所有来源"

#: packages/admin/src/components/ContentList.tsx:850
#: packages/admin/src/components/Redirects.tsx:426
msgid "All statuses"
msgstr "所有状态"

#: packages/admin/src/components/MediaLibrary.tsx:988
#: packages/admin/src/components/Redirects.tsx:432
msgid "All types"
msgstr "所有类型"

#: packages/admin/src/components/MediaUploadDialog.tsx:377
msgid "All uploads finished"
msgstr ""

#: packages/admin/src/components/PluginManager.tsx:549
msgid "Allow MCP tokens with plugin-tool scope to invoke these routes."
msgstr ""

#: packages/admin/src/components/Settings.tsx:92
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:159
msgid "Allow users from specific domains to sign up"
msgstr "允许来自特定域的用户注册"

#: packages/admin/src/components/ContentTypeEditor.tsx:510
msgid "Allow visitors to leave comments on this collection's content"
msgstr "允许访客在此合集的内容上留下评论"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:204
msgid "Allowed Domains"
msgstr "允许的域名"

#: packages/admin/src/components/AllowedTypesEditor.tsx:105
msgid "Allowed types"
msgstr "允许的类型"

#: packages/admin/src/components/SignupPage.tsx:454
msgid "Already have an account?"
msgstr "已经有账户了？"

#: packages/admin/src/components/PluginManager.tsx:723
msgid "Also delete plugin storage data"
msgstr "同时删除插件存储数据"

#: packages/admin/src/components/BylineFilter.tsx:183
msgid "Also match the byline linked to an entry's author when it has none assigned."
msgstr ""

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:381
#: packages/admin/src/components/editor/ImageNode.tsx:244
#: packages/admin/src/components/MediaLibrary.tsx:1210
msgid "Alt text"
msgstr "替代文本"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:344
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:533
#: packages/admin/src/components/MediaDetailPanel.tsx:810
#: packages/admin/src/components/MediaDetailPanel.tsx:827
msgid "Alt Text"
msgstr "替代文本"

#: packages/admin/src/components/MediaLibrary.tsx:1543
msgid "Alt text is not applicable to folders"
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:1817
#: packages/admin/src/components/MediaLibrary.tsx:1874
msgid "Alt text set"
msgstr "替代文本已设置"

#: packages/admin/src/components/WordPressImport.tsx:1411
msgid "Alternatively, you can export from WordPress (Tools → Export) and upload the file."
msgstr "或者，您可以从 WordPress 导出（工具 → 导出）并上传文件。"

#: packages/admin/src/components/DialogError.tsx:14
#: packages/admin/src/components/MarketplaceBrowse.tsx:135
#: packages/admin/src/components/PluginManager.tsx:114
#: packages/admin/src/components/PluginManager.tsx:133
#: packages/admin/src/components/PluginSettings.tsx:75
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:85
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:108
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:125
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:217
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:218
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:476
#: packages/admin/src/components/settings/BackupSettings.tsx:103
#: packages/admin/src/components/settings/BackupSettings.tsx:123
#: packages/admin/src/components/settings/BackupSettings.tsx:166
#: packages/admin/src/components/settings/EmailSettings.tsx:45
#: packages/admin/src/components/settings/GeneralSettings.tsx:78
#: packages/admin/src/components/settings/GeneralSettings.tsx:140
#: packages/admin/src/components/settings/GeneralSettings.tsx:141
#: packages/admin/src/components/settings/SecuritySettings.tsx:51
#: packages/admin/src/components/settings/SecuritySettings.tsx:67
#: packages/admin/src/components/settings/SecuritySettings.tsx:124
#: packages/admin/src/components/settings/SeoSettings.tsx:77
#: packages/admin/src/components/settings/SeoSettings.tsx:139
#: packages/admin/src/components/settings/SeoSettings.tsx:140
#: packages/admin/src/components/settings/SocialSettings.tsx:67
#: packages/admin/src/components/settings/SocialSettings.tsx:111
#: packages/admin/src/components/settings/SocialSettings.tsx:112
#: packages/admin/src/components/TaxonomySidebar.tsx:416
#: packages/admin/src/components/TaxonomySidebar.tsx:476
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:114
#: packages/admin/src/router.tsx:462
#: packages/admin/src/router.tsx:477
#: packages/admin/src/router.tsx:491
#: packages/admin/src/router.tsx:505
#: packages/admin/src/router.tsx:729
#: packages/admin/src/router.tsx:1012
#: packages/admin/src/router.tsx:1072
#: packages/admin/src/router.tsx:1090
#: packages/admin/src/router.tsx:1108
#: packages/admin/src/router.tsx:1129
#: packages/admin/src/router.tsx:1150
#: packages/admin/src/router.tsx:1171
#: packages/admin/src/router.tsx:1202
#: packages/admin/src/router.tsx:1222
#: packages/admin/src/router.tsx:1754
#: packages/admin/src/router.tsx:1770
#: packages/admin/src/router.tsx:1795
#: packages/admin/src/router.tsx:2301
#: packages/admin/src/routes/byline-schema.tsx:103
#: packages/admin/src/routes/byline-schema.tsx:123
#: packages/admin/src/routes/byline-schema.tsx:139
#: packages/admin/src/routes/byline-schema.tsx:153
msgid "An error occurred"
msgstr "发生错误"

#: packages/admin/src/routes/byline-schema.tsx:272
msgid "An unexpected error occurred."
msgstr "发生意外错误。"

#: packages/admin/src/components/InviteAcceptPage.tsx:251
msgid "An unknown error occurred"
msgstr "发生了未知错误。"

#: packages/admin/src/components/WordPressImport.tsx:1591
msgid "Analyzing export file..."
msgstr "正在分析导出文件..."

#: packages/admin/src/components/WordPressImport.tsx:828
msgid "Analyzing WordPress site..."
msgstr "正在分析 WordPress 站点..."

#: packages/admin/src/components/AllowedTypesEditor.tsx:108
msgid "Any media type allowed (subject to global limits)."
msgstr "允许任何媒体类型（受全局限制）。"

#: packages/admin/src/components/Settings.tsx:97
#: packages/admin/src/components/Settings.tsx:101
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:195
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:333
msgid "API Tokens"
msgstr "API 令牌"

#: packages/admin/src/components/Widgets.tsx:440
msgid "Appears on posts and pages"
msgstr "显示在文章和页面上"

#: packages/admin/src/components/WordPressImport.tsx:1506
msgid "Application Password"
msgstr "应用程序密码"

#: packages/admin/src/components/PortableTextEditor.tsx:4243
msgid "Apply"
msgstr "应用"

#: packages/admin/src/components/editor/CodeBlockNode.tsx:299
#: packages/admin/src/components/editor/CodeBlockNode.tsx:300
msgid "Apply language"
msgstr "应用语言"

#: packages/admin/src/components/PortableTextEditor.tsx:3612
#: packages/admin/src/components/PortableTextEditor.tsx:3613
msgid "Apply link"
msgstr "应用链接"

#: packages/admin/src/components/comments/CommentDetail.tsx:148
#: packages/admin/src/components/comments/CommentInbox.tsx:229
#: packages/admin/src/components/comments/CommentInbox.tsx:481
msgid "Approve"
msgstr "批准"

#: packages/admin/src/components/comments/CommentDetail.tsx:195
msgid "approved"
msgstr "已批准"

#: packages/admin/src/components/comments/CommentInbox.tsx:176
msgid "Approved"
msgstr "已批准"

#: packages/admin/src/components/FieldEditor.tsx:252
msgid "Arbitrary JSON data"
msgstr "任意 JSON 数据"

#: packages/admin/src/components/ContentList.tsx:854
#: packages/admin/src/components/ContentStatusBadge.tsx:65
msgid "Archived"
msgstr "已归档"

#: packages/admin/src/components/AllowedTypesEditor.tsx:68
#: packages/admin/src/components/Widgets.tsx:158
msgid "Archives"
msgstr "归档"

#. placeholder {0}: deletingField.label
#: packages/admin/src/routes/byline-schema.tsx:375
msgid "Are you sure you want to delete \"{0}\"? No stored values reference this field."
msgstr "您确定要删除\"{0}\"吗？没有存储值引用此字段。"

#. placeholder {0}: deleteTarget.label
#: packages/admin/src/components/ContentTypeList.tsx:233
msgid "Are you sure you want to delete \"{0}\"? This will also delete all content in this collection."
msgstr "您确定要删除 \"{0}\" 吗？这也将删除该合集中的所有内容。"

#. placeholder {0}: deleteFieldTarget.label
#: packages/admin/src/components/ContentTypeEditor.tsx:684
msgid "Are you sure you want to delete the \"{0}\" field?"
msgstr "您确定要删除 \"{0}\" 字段吗？"

#: packages/admin/src/components/MenuList.tsx:257
msgid "Are you sure you want to delete this menu? This will also delete all menu items. This action cannot be undone."
msgstr "您确定要删除此菜单吗？这也将删除所有菜单项。此操作无法撤销。"

#: packages/admin/src/components/WelcomeModal.tsx:59
msgid "As an administrator, you can invite other users from the Users section."
msgstr "作为管理员，您可以从\"用户\"部分邀请其他用户。"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:307
msgid "Ask an administrator to complete this setup."
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:2472
msgid "Assign WordPress authors to EmDash users. Posts will be attributed to the selected user."
msgstr "将 WordPress 作者分配给 EmDash 用户。文章将归属于所选用户。"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:27
msgid "Astro"
msgstr "Astro"

#: packages/admin/src/components/AllowedTypesEditor.tsx:69
#: packages/admin/src/components/MediaLibrary.tsx:991
msgid "Audio"
msgstr "音频"

#. placeholder {0}: error.message
#: packages/admin/src/components/auth/PasskeyLogin.tsx:278
#: packages/admin/src/components/auth/PasskeyRegistration.tsx:279
msgid "Authentication error: {0}"
msgstr "认证错误：{0}"

#: packages/admin/src/components/LoginPage.tsx:197
msgid "Authentication error: {error}"
msgstr "认证错误：{error}"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:255
msgid "Authentication failed"
msgstr "身份验证失败"

#. placeholder {0}: manifest?.authMode
#: packages/admin/src/components/settings/SecuritySettings.tsx:111
msgid "Authentication is managed by an external provider ({0}). Passkey settings are not available when using external authentication."
msgstr "认证由外部提供商管理（{0}）。使用外部认证时，通行密钥设置不可用。"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:262
msgid "Authentication was cancelled or timed out. Please try again."
msgstr "认证已取消或超时。请重试。"

#: packages/admin/src/components/comments/CommentDetail.tsx:77
#: packages/admin/src/components/comments/CommentInbox.tsx:279
#: packages/admin/src/components/ContentSettingsPanel.tsx:889
#: packages/admin/src/components/users/roleDefinitions.ts:30
#: packages/admin/src/components/WelcomeModal.tsx:27
msgid "Author"
msgstr "作者"

#: packages/admin/src/components/WordPressImport.tsx:2487
msgid "Author Mapping"
msgstr "作者映射"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:197
msgid "Authorization denied"
msgstr "授权已拒绝"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:105
msgid "Authorization failed"
msgstr "授权失败"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:259
msgid "Authorize"
msgstr "授权"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:176
msgid "Authorize Device"
msgstr "授权设备"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:259
msgid "Authorizing..."
msgstr "授权中..."

#: packages/admin/src/components/RegistryPluginDetail.tsx:696
msgid "Authors"
msgstr "作者"

#: packages/admin/src/components/Redirects.tsx:530
msgid "auto"
msgstr "自动"

#: packages/admin/src/components/Redirects.tsx:432
msgid "Auto (slug change)"
msgstr "自动（slug 变更）"

#: packages/admin/src/components/ContentTypeEditor.tsx:554
msgid "Auto-approve authenticated users"
msgstr "自动批准已认证用户"

#: packages/admin/src/components/TaxonomyManager.tsx:591
msgid "Auto-generated from name (you can edit)"
msgstr "从名称自动生成（您可以编辑）"

#: packages/admin/src/components/BylineCreditsEditor.tsx:645
msgid "Automatic"
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:204
#: packages/admin/src/components/settings/BackupSettings.tsx:260
msgid "Automatic Backups"
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:261
#: packages/admin/src/components/settings/BackupSettings.tsx:279
msgid "Automatic backups need a storage backend (R2, S3, or local storage). Configure storage in your EmDash config to enable them."
msgstr ""

#: packages/admin/src/router.tsx:1071
msgid "Autosave failed"
msgstr "自动保存失败"

#: packages/admin/src/components/BylineCreditsEditor.tsx:457
msgid "Available bylines"
msgstr ""

#. placeholder {0}: assignment.availableLocales.map((locale) => locale.toUpperCase()).join(", ")
#: packages/admin/src/components/TaxonomySidebar.tsx:545
msgid "Available in {0}"
msgstr ""

#: packages/admin/src/components/MediaPickerModal.tsx:711
msgid "Available media"
msgstr "可用媒体"

#: packages/admin/src/components/settings/EmailSettings.tsx:202
msgid "Available Providers"
msgstr "可用提供商"

#: packages/admin/src/components/Widgets.tsx:466
msgid "Available Widgets"
msgstr "可用小部件"

#: packages/admin/src/components/BylineAvatarField.tsx:46
#: packages/admin/src/components/BylineAvatarField.tsx:71
msgid "Avatar"
msgstr "头像"

#: packages/admin/src/components/editor/BlockMenu.tsx:266
#: packages/admin/src/components/MediaLibrary.tsx:818
#: packages/admin/src/components/MenuEditor.tsx:362
#: packages/admin/src/components/WordPressImport.tsx:1526
#: packages/admin/src/components/WordPressImport.tsx:2543
msgid "Back"
msgstr "返回"

#: packages/admin/src/components/ContentEditor.tsx:685
msgid "Back to {collectionLabel} list"
msgstr "返回到 {collectionLabel} 列表"

#: packages/admin/src/components/ContentTypeEditor.tsx:337
msgid "Back to Content Types"
msgstr "返回内容类型"

#: packages/admin/src/components/InviteAcceptPage.tsx:172
#: packages/admin/src/components/LoginPage.tsx:118
#: packages/admin/src/components/LoginPage.tsx:154
#: packages/admin/src/components/LoginPage.tsx:313
#: packages/admin/src/components/SignupPage.tsx:297
msgid "Back to login"
msgstr "返回登录"

#: packages/admin/src/components/MediaLibrary.tsx:1099
msgid "Back to Main library"
msgstr ""

#: packages/admin/src/components/MarketplacePluginDetail.tsx:126
#: packages/admin/src/components/MarketplacePluginDetail.tsx:404
msgid "Back to marketplace"
msgstr "返回市场"

#: packages/admin/src/components/PluginSettings.tsx:118
#: packages/admin/src/components/RegistryPluginDetail.tsx:831
msgid "Back to plugins"
msgstr "返回插件列表"

#: packages/admin/src/components/SectionEditor.tsx:92
#: packages/admin/src/components/SectionEditor.tsx:195
msgid "Back to sections"
msgstr "返回区块列表"

#: packages/admin/src/components/settings/BackToSettingsLink.tsx:19
msgid "Back to settings"
msgstr "返回设置"

#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:86
#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:110
msgid "Back to Themes"
msgstr "返回主题列表"

#: packages/admin/src/components/settings/BackupSettings.tsx:214
msgid "Back up now"
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:214
msgid "Backing up..."
msgstr ""

#. placeholder {0}: archive.name
#: packages/admin/src/components/settings/BackupSettings.tsx:115
msgid "Backup created: {0}"
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:98
msgid "Backup settings saved"
msgstr ""

#: packages/admin/src/components/Settings.tsx:116
#: packages/admin/src/components/settings/BackupSettings.tsx:143
msgid "Backups"
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:238
msgid "Backups to keep"
msgstr ""

#: packages/admin/src/components/editor/codeBlockLanguages.ts:28
msgid "Bash"
msgstr "Bash"

#: packages/admin/src/components/settings/EmailSettings.tsx:186
msgid "Before send:"
msgstr "发送前："

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:590
msgid "Before you continue:"
msgstr ""

#: packages/admin/src/components/settings/SeoSettings.tsx:233
#: packages/admin/src/components/settings/SeoSettings.tsx:247
msgid "Bing Verification"
msgstr "Bing 验证"

#: packages/admin/src/routes/bylines.tsx:496
msgid "Bio"
msgstr "简介"

#: packages/admin/src/components/editor/DragHandleWrapper.tsx:188
msgid "Block actions - drag to reorder, click for menu"
msgstr "操作块 —— 拖动重新排序，点击打开菜单"

#: packages/admin/src/components/PortableTextEditor.tsx:3636
#: packages/admin/src/components/PortableTextEditor.tsx:4041
msgid "Bold"
msgstr "粗体"

#: packages/admin/src/components/BylineFieldEditor.tsx:55
#: packages/admin/src/components/FieldEditor.tsx:203
#: packages/admin/src/components/FieldEditor.tsx:612
msgid "Boolean"
msgstr "布尔值"

#: packages/admin/src/components/SeoPanel.tsx:195
msgid "Brief summary shown below the title in search results"
msgstr "在搜索结果中标题下方显示简短摘要"

#: packages/admin/src/components/RegistryBrowse.tsx:92
msgid "Browse and install plugins published to the decentralized registry."
msgstr "浏览并安装发布到去中心化插件仓库的插件。"

#: packages/admin/src/components/MarketplaceBrowse.tsx:89
msgid "Browse and install plugins to extend your site."
msgstr "浏览并安装插件以扩展您的网站。"

#: packages/admin/src/components/MediaUploadDialog.tsx:445
msgid "Browse files"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1142
#: packages/admin/src/components/WordPressImport.tsx:1610
msgid "Browse Files"
msgstr "浏览文件"

#: packages/admin/src/components/MediaUploadDialog.tsx:454
msgid "Browse files to upload"
msgstr ""

#: packages/admin/src/components/PluginManager.tsx:61
msgid "Browse the <0>marketplace</0> to install plugins, or add them to your astro.config.mjs."
msgstr ""

#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:79
msgid "Browse themes and preview them with your own content."
msgstr "浏览主题并使用您自己的内容预览。"

#: packages/admin/src/components/editor/BlockMenu.tsx:127
#: packages/admin/src/components/PortableTextEditor.tsx:1458
#: packages/admin/src/components/PortableTextEditor.tsx:4089
msgid "Bullet List"
msgstr "无序列表"

#: packages/admin/src/components/BylineCreditsEditor.tsx:290
msgid "Byline"
msgstr ""

#: packages/admin/src/routes/byline-schema.tsx:218
#: packages/admin/src/routes/bylines.tsx:383
msgid "Byline schema"
msgstr "署名架构"

#: packages/admin/src/components/Sidebar.tsx:295
msgid "Byline Schema"
msgstr ""

#: packages/admin/src/components/BylineFilter.tsx:145
#: packages/admin/src/components/ContentSettingsPanel.tsx:669
#: packages/admin/src/components/ContentSettingsPanel.tsx:673
#: packages/admin/src/components/Sidebar.tsx:285
#: packages/admin/src/routes/bylines.tsx:375
msgid "Bylines"
msgstr "署名"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:29
msgid "C"
msgstr "C"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:31
msgid "C#"
msgstr "C#"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:30
msgid "C++"
msgstr "C++"

#: packages/admin/src/components/users/roleDefinitions.ts:25
msgid "Can create content"
msgstr "可以创建内容"

#: packages/admin/src/components/users/roleDefinitions.ts:37
msgid "Can manage all content"
msgstr "可以管理所有内容"

#: packages/admin/src/components/users/roleDefinitions.ts:31
msgid "Can publish own content"
msgstr "可以发布自己的内容"

#: packages/admin/src/components/users/roleDefinitions.ts:19
msgid "Can view content"
msgstr "可以查看内容"

#: packages/admin/src/components/BylineCreditsEditor.tsx:1016
#: packages/admin/src/components/BylineFieldEditor.tsx:315
#: packages/admin/src/components/CapabilityConsentDialog.tsx:192
#: packages/admin/src/components/ConfirmDialog.tsx:83
#: packages/admin/src/components/ContentList.tsx:544
#: packages/admin/src/components/ContentList.tsx:1363
#: packages/admin/src/components/ContentList.tsx:1531
#: packages/admin/src/components/ContentPickerModal.tsx:240
#: packages/admin/src/components/ContentSettingsPanel.tsx:96
#: packages/admin/src/components/ContentSettingsPanel.tsx:590
#: packages/admin/src/components/ContentSettingsPanel.tsx:851
#: packages/admin/src/components/editor/CodeBlockNode.tsx:311
#: packages/admin/src/components/editor/CodeBlockNode.tsx:312
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:586
#: packages/admin/src/components/editor/ImageNode.tsx:265
#: packages/admin/src/components/editor/ImageNode.tsx:266
#: packages/admin/src/components/editor/PluginBlockNode.tsx:406
#: packages/admin/src/components/FieldEditor.tsx:678
#: packages/admin/src/components/MediaDetailPanel.tsx:925
#: packages/admin/src/components/MediaFolderDialog.tsx:152
#: packages/admin/src/components/MediaPickerModal.tsx:806
#: packages/admin/src/components/MenuEditor.tsx:438
#: packages/admin/src/components/MenuEditor.tsx:623
#: packages/admin/src/components/MenuList.tsx:175
#: packages/admin/src/components/PluginManager.tsx:729
#: packages/admin/src/components/PortableTextEditor.tsx:4227
#: packages/admin/src/components/Redirects.tsx:183
#: packages/admin/src/components/SectionPickerModal.tsx:131
#: packages/admin/src/components/Sections.tsx:209
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:216
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:234
#: packages/admin/src/components/settings/SecuritySettings.tsx:166
#: packages/admin/src/components/TaxonomyManager.tsx:374
#: packages/admin/src/components/TaxonomyManager.tsx:661
#: packages/admin/src/components/TaxonomyManager.tsx:876
#: packages/admin/src/components/users/InviteUserModal.tsx:198
#: packages/admin/src/components/Widgets.tsx:451
#: packages/admin/src/components/WordPressImport.tsx:1933
msgid "Cancel"
msgstr "取消"

#: packages/admin/src/components/editor/PluginBlockNode.tsx:405
msgid "Cancel (Esc)"
msgstr "取消 (Esc)"

#. placeholder {0}: row.file.name
#: packages/admin/src/components/MediaUploadDialog.tsx:162
msgid "Cancel {0}"
msgstr ""

#: packages/admin/src/components/MediaUploadDialog.tsx:508
msgid "Cancel remaining"
msgstr ""

#: packages/admin/src/components/settings/PasskeyItem.tsx:141
msgid "Cancel rename"
msgstr "取消重命名"

#: packages/admin/src/components/Sections.tsx:407
msgid "Cannot delete theme sections"
msgstr "无法删除主题区块"

#: packages/admin/src/components/MediaPickerModal.tsx:457
msgid "Cannot determine MIME type from URL. Use a URL ending in a recognized image extension (e.g. .jpg, .png, .webp)."
msgstr "无法从 URL 确定 MIME 类型。请使用以可识别的图片扩展名结尾的 URL（例如 .jpg、.png、.webp）。"

#: packages/admin/src/components/SeoPanel.tsx:225
#: packages/admin/src/components/SeoPanel.tsx:229
msgid "Canonical URL"
msgstr "规范 URL"

#: packages/admin/src/components/PluginManager.tsx:523
msgid "Capabilities"
msgstr "权限"

#: packages/admin/src/components/CapabilityConsentDialog.tsx:69
msgid "Capability consent"
msgstr "权限同意"

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:387
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:352
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:541
#: packages/admin/src/components/MediaDetailPanel.tsx:837
msgid "Caption"
msgstr "说明文字"

#: packages/admin/src/components/AllowedTypesEditor.tsx:71
msgid "Captions / Subtitles"
msgstr "字幕 / 对白字幕"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:461
msgid "Capture is being prepared. Keep editing paused until setup is complete."
msgstr ""

#: packages/admin/src/components/AdminCommandPalette.tsx:192
#: packages/admin/src/components/Widgets.tsx:135
msgid "Categories"
msgstr "分类"

#. placeholder {0}: analysis.categories
#: packages/admin/src/components/WordPressImport.tsx:1801
msgid "Categories ({0})"
msgstr "分类 ({0})"

#: packages/admin/src/components/WordPressImport.tsx:1164
msgid "Categories & Tags"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:161
msgid "Center"
msgstr ""

#: packages/admin/src/components/BlockKitMediaPickerField.tsx:76
#: packages/admin/src/components/BlockKitMediaPickerField.tsx:107
#: packages/admin/src/components/ContentEditor.tsx:1785
#: packages/admin/src/components/FieldEditor.tsx:428
#: packages/admin/src/components/ImageFieldRenderer.tsx:215
#: packages/admin/src/components/ImageFieldRenderer.tsx:245
#: packages/admin/src/components/SeoImageField.tsx:53
msgid "Change"
msgstr "更改"

#. placeholder {0}: selectedUser?.name || selectedUser?.email
#. placeholder {1}: getRoleLabel(selectedUser?.role ?? 0)
#. placeholder {2}: getRoleLabel(pendingSaveData?.role ?? 0)
#: packages/admin/src/routes/users.tsx:296
msgid "Change <0>{0}</0> from <1>{1}</1> to <2>{2}</2>? They will lose access to higher-level features."
msgstr "将 <0>{0}</0> 从 <1>{1}</1> 更改为 <2>{2}</2>？他们将失去对高级功能的访问权限。"

#: packages/admin/src/components/settings/GeneralSettings.tsx:280
msgid "Change Favicon"
msgstr "更改网站图标"

#: packages/admin/src/components/settings/SeoSettings.tsx:203
msgid "Change Image"
msgstr "更换图片"

#: packages/admin/src/components/settings/GeneralSettings.tsx:220
msgid "Change Logo"
msgstr "更改徽标"

#: packages/admin/src/components/RegistryPluginDetail.tsx:819
msgid "Changelog"
msgstr "更新日志"

#: packages/admin/src/components/BylineCreditsEditor.tsx:975
msgid "Changes apply everywhere this byline appears."
msgstr ""

#: packages/admin/src/router.tsx:1122
msgid "Changes discarded"
msgstr "更改已丢弃"

#: packages/admin/src/components/settings/SeoSettings.tsx:167
msgid "Character between page title and site name (e.g., \"My Post | My Site\")"
msgstr "页面标题和网站名称之间的分隔符（例如，\"My Post | My Site\"）"

#: packages/admin/src/components/PluginManager.tsx:183
msgid "Check for updates"
msgstr "检查更新"

#: packages/admin/src/components/WordPressImport.tsx:1113
msgid "Check Site"
msgstr "检查站点"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:476
msgid "Check the server logs, then use the media usage recovery API for the failed work."
msgstr ""

#: packages/admin/src/components/LoginPage.tsx:102
#: packages/admin/src/components/SignupPage.tsx:148
#: packages/admin/src/components/SignupPage.tsx:417
msgid "Check your email"
msgstr "查看您的邮箱"

#: packages/admin/src/components/WordPressImport.tsx:794
msgid "Checking {urlInput}..."
msgstr "正在检查 {urlInput}..."

#: packages/admin/src/components/DeviceAuthorizePage.tsx:155
msgid "Checking authentication..."
msgstr "正在检查认证..."

#. placeholder {0}: deletingField.label
#: packages/admin/src/routes/byline-schema.tsx:362
msgid "Checking how many stored values reference \"{0}\"…"
msgstr "正在检查有多少存储值引用了 \"{0}\"…"

#: packages/admin/src/components/ContentList.tsx:1037
#: packages/admin/src/components/ContentList.tsx:1043
msgid "Choose a date range"
msgstr ""

#: packages/admin/src/components/BylineCreditsEditor.tsx:662
#: packages/admin/src/components/BylineCreditsEditor.tsx:680
msgid "Choose bylines"
msgstr ""

#: packages/admin/src/components/SetupWizard.tsx:288
msgid "Choose how to sign in"
msgstr "选择登录方式"

#: packages/admin/src/components/MediaDetailPanel.tsx:864
msgid "Choose the part that should remain visible when this image is cropped."
msgstr ""

#: packages/admin/src/components/Settings.tsx:134
msgid "Choose your preferred admin language"
msgstr "选择您的首选管理语言"

#: packages/admin/src/components/BylineCreditsEditor.tsx:651
msgid "Choosing a byline replaces this automatic credit."
msgstr ""

#: packages/admin/src/components/ContentList.tsx:570
#: packages/admin/src/components/ContentList.tsx:1051
msgid "Clear"
msgstr ""

#: packages/admin/src/components/MediaUploadDialog.tsx:493
msgid "Clear completed"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:956
#: packages/admin/src/components/MediaLibrary.tsx:1088
#: packages/admin/src/components/users/UserList.tsx:122
msgid "Clear filters"
msgstr "清除筛选"

#: packages/admin/src/components/MediaLibrary.tsx:1088
#: packages/admin/src/components/MediaLibrary.tsx:1123
msgid "Clear search"
msgstr ""

#: packages/admin/src/components/PluginSettings.tsx:354
msgid "Clear stored value"
msgstr ""

#: packages/admin/src/components/PluginSettings.tsx:352
msgid "Clear stored value for {fieldKey}"
msgstr ""

#: packages/admin/src/components/SignupPage.tsx:155
msgid "Click the link in the email to continue setting up your account."
msgstr "点击邮件中的链接以继续设置您的账户。"

#: packages/admin/src/components/LoginPage.tsx:113
msgid "Click the link in the email to sign in."
msgstr "点击邮件中的链接即可登录。"

#: packages/admin/src/components/BylineFieldEditor.tsx:212
#: packages/admin/src/components/BylineFieldEditor.tsx:218
#: packages/admin/src/components/BylineFieldEditor.tsx:222
#: packages/admin/src/components/comments/CommentDetail.tsx:59
#: packages/admin/src/components/ContentPickerModal.tsx:120
#: packages/admin/src/components/ContentPickerModal.tsx:126
#: packages/admin/src/components/ContentPickerModal.tsx:130
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:227
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:229
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:412
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:414
#: packages/admin/src/components/FieldEditor.tsx:371
#: packages/admin/src/components/FieldEditor.tsx:377
#: packages/admin/src/components/FieldEditor.tsx:381
#: packages/admin/src/components/MarketplacePluginDetail.tsx:449
#: packages/admin/src/components/MediaDetailPanel.tsx:486
#: packages/admin/src/components/MediaDetailPanel.tsx:925
#: packages/admin/src/components/MediaPickerModal.tsx:530
#: packages/admin/src/components/MediaPickerModal.tsx:536
#: packages/admin/src/components/MediaPickerModal.tsx:540
#: packages/admin/src/components/MediaUploadDialog.tsx:414
#: packages/admin/src/components/MenuEditor.tsx:400
#: packages/admin/src/components/MenuEditor.tsx:406
#: packages/admin/src/components/MenuEditor.tsx:410
#: packages/admin/src/components/MenuEditor.tsx:576
#: packages/admin/src/components/MenuEditor.tsx:582
#: packages/admin/src/components/MenuEditor.tsx:586
#: packages/admin/src/components/MenuList.tsx:139
#: packages/admin/src/components/MenuList.tsx:145
#: packages/admin/src/components/MenuList.tsx:149
#: packages/admin/src/components/PortableTextEditor.tsx:1926
#: packages/admin/src/components/PortableTextEditor.tsx:1932
#: packages/admin/src/components/PortableTextEditor.tsx:1936
#: packages/admin/src/components/Redirects.tsx:115
#: packages/admin/src/components/Redirects.tsx:121
#: packages/admin/src/components/SectionPickerModal.tsx:61
#: packages/admin/src/components/SectionPickerModal.tsx:67
#: packages/admin/src/components/SectionPickerModal.tsx:71
#: packages/admin/src/components/Sections.tsx:153
#: packages/admin/src/components/Sections.tsx:159
#: packages/admin/src/components/Sections.tsx:163
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:337
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:343
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:347
#: packages/admin/src/components/TaxonomyManager.tsx:351
#: packages/admin/src/components/TaxonomyManager.tsx:554
#: packages/admin/src/components/TaxonomyManager.tsx:560
#: packages/admin/src/components/TaxonomyManager.tsx:564
#: packages/admin/src/components/TaxonomyManager.tsx:795
#: packages/admin/src/components/TaxonomyManager.tsx:801
#: packages/admin/src/components/TaxonomyManager.tsx:805
#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:298
#: packages/admin/src/components/users/InviteUserModal.tsx:88
#: packages/admin/src/components/users/InviteUserModal.tsx:94
#: packages/admin/src/components/users/InviteUserModal.tsx:98
#: packages/admin/src/components/WelcomeModal.tsx:60
#: packages/admin/src/components/Widgets.tsx:413
#: packages/admin/src/components/Widgets.tsx:419
#: packages/admin/src/components/Widgets.tsx:423
msgid "Close"
msgstr "关闭"

#: packages/admin/src/components/BylineCreditsEditor.tsx:430
msgid "Close byline search"
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:533
msgid "Close comments after (days)"
msgstr "关闭评论后（天）"

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:182
msgid "Close gallery settings"
msgstr ""

#: packages/admin/src/components/users/UserDetail.tsx:121
msgid "Close panel"
msgstr "关闭面板"

#: packages/admin/src/components/ContentEditor.tsx:1158
msgid "Close settings"
msgstr ""

#: packages/admin/src/components/ContentTypeList.tsx:356
#: packages/admin/src/components/PortableTextEditor.tsx:3678
#: packages/admin/src/components/Redirects.tsx:478
msgid "Code"
msgstr "代码"

#: packages/admin/src/components/editor/BlockMenu.tsx:119
#: packages/admin/src/components/PortableTextEditor.tsx:1488
#: packages/admin/src/components/PortableTextEditor.tsx:4128
msgid "Code Block"
msgstr "代码块"

#: packages/admin/src/components/editor/CodeBlockNode.tsx:229
msgid "Code block actions"
msgstr ""

#: packages/admin/src/components/PluginManager.tsx:506
#: packages/admin/src/components/PluginManager.tsx:511
msgid "Collapse details"
msgstr "收起详情"

#: packages/admin/src/components/users/InviteUserModal.tsx:156
msgid "colleague@example.com"
msgstr "colleague@example.com"

#: packages/admin/src/components/ContentPickerModal.tsx:156
msgid "Collection"
msgstr "合集"

#: packages/admin/src/components/comments/CommentDetail.tsx:106
msgid "Collection:"
msgstr "合集："

#: packages/admin/src/components/TaxonomyManager.tsx:846
msgid "Collections"
msgstr "合集"

#: packages/admin/src/components/WordPressImport.tsx:2343
msgid "Collections created:"
msgstr "已创建的合集："

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:189
msgid "Columns"
msgstr ""

#: packages/admin/src/components/SectionEditor.tsx:309
msgid "Comma-separated keywords for search."
msgstr "逗号分隔的搜索关键词。"

#: packages/admin/src/components/comments/CommentDetail.tsx:95
#: packages/admin/src/components/comments/CommentInbox.tsx:282
msgid "Comment"
msgstr "评论"

#: packages/admin/src/components/comments/CommentDetail.tsx:58
msgid "Comment Detail"
msgstr "评论详情"

#: packages/admin/src/components/comments/CommentInbox.tsx:148
#: packages/admin/src/components/ContentTypeEditor.tsx:500
#: packages/admin/src/components/Sidebar.tsx:261
msgid "Comments"
msgstr "评论"

#: packages/admin/src/components/ContentTypeEditor.tsx:557
msgid "Comments from logged-in CMS users are approved automatically"
msgstr "登录用户的评论将自动批准"

#: packages/admin/src/components/MediaUploadDialog.tsx:94
msgid "Complete"
msgstr ""

#: packages/admin/src/components/SignupPage.tsx:418
msgid "Complete signup"
msgstr "完成注册"

#: packages/admin/src/components/Widgets.tsx:931
msgid "Component"
msgstr "组件"

#: packages/admin/src/components/FieldEditor.tsx:368
msgid "Configure Field"
msgstr "配置字段"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:416
msgid "Confirm"
msgstr "确认"

#: packages/admin/src/components/WordPressImport.tsx:719
#: packages/admin/src/components/WordPressImport.tsx:1072
msgid "Connect"
msgstr "连接"

#: packages/admin/src/components/WordPressImport.tsx:1523
msgid "Connect & Analyze"
msgstr "连接并分析"

#. placeholder {0}: siteTitle || "WordPress"
#: packages/admin/src/components/WordPressImport.tsx:1473
msgid "Connect to {0}"
msgstr "连接到 {0}"

#: packages/admin/src/components/WordPressImport.tsx:1389
msgid "Connect with WordPress"
msgstr "连接 WordPress"

#. placeholder {0}: new Date(account.createdAt).toLocaleDateString()
#: packages/admin/src/components/users/UserDetail.tsx:286
msgid "Connected {0}"
msgstr "已连接 {0}"

#: packages/admin/src/components/ContentSettingsPanel.tsx:189
msgid "content"
msgstr ""

#: packages/admin/src/components/AdminCommandPalette.tsx:378
#: packages/admin/src/components/comments/CommentDetail.tsx:103
#: packages/admin/src/components/comments/CommentInbox.tsx:285
#: packages/admin/src/components/Dashboard.tsx:269
#: packages/admin/src/components/PortableTextEditor.tsx:2746
#: packages/admin/src/components/SectionEditor.tsx:215
#: packages/admin/src/components/Sidebar.tsx:408
#: packages/admin/src/components/Widgets.tsx:899
msgid "Content"
msgstr "内容"

#: packages/admin/src/components/Widgets.tsx:98
msgid "Content Block"
msgstr "内容块"

#. placeholder {0}: result.errors.length
#: packages/admin/src/components/WordPressImport.tsx:2398
msgid "Content Errors ({0})"
msgstr "内容错误 ({0})"

#: packages/admin/src/components/WordPressImport.tsx:1333
msgid "Content found:"
msgstr "找到的内容："

#: packages/admin/src/router.tsx:1144
msgid "Content has been scheduled for publishing"
msgstr "内容已安排发布"

#: packages/admin/src/components/RevisionHistory.tsx:130
msgid "Content has been updated to the selected revision."
msgstr "内容已更新到所选修订版本。"

#: packages/admin/src/components/comments/CommentDetail.tsx:110
msgid "Content ID:"
msgstr "内容 ID："

#: packages/admin/src/router.tsx:1085
msgid "Content is now live"
msgstr "内容现已上线"

#: packages/admin/src/components/ContentSettingsPanel.tsx:497
msgid "Content locale"
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:47
msgid "Content Read"
msgstr "内容读取"

#: packages/admin/src/router.tsx:1103
msgid "Content removed from public view"
msgstr "内容已从公开视图中移除"

#: packages/admin/src/router.tsx:1165
msgid "Content reverted to draft"
msgstr "内容已恢复为草稿"

#: packages/admin/src/components/RevisionHistory.tsx:314
msgid "Content snapshot:"
msgstr "内容快照："

#: packages/admin/src/components/WordPressImport.tsx:1747
msgid "Content to Import"
msgstr "要导入的内容"

#: packages/admin/src/components/AdminCommandPalette.tsx:184
#: packages/admin/src/components/ContentTypeList.tsx:116
#: packages/admin/src/components/Sidebar.tsx:291
msgid "Content Types"
msgstr "内容类型"

#: packages/admin/src/components/WordPressImport.tsx:2326
msgid "Content was skipped because it already exists"
msgstr "内容已跳过，因为它已存在"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:52
msgid "Content Write"
msgstr "内容写入"

#: packages/admin/src/components/SignupPage.tsx:109
msgid "Continue"
msgstr "继续"

#: packages/admin/src/components/SetupWizard.tsx:150
#: packages/admin/src/components/SetupWizard.tsx:233
msgid "Continue →"
msgstr "继续 →"

#: packages/admin/src/components/WordPressImport.tsx:2545
msgid "Continue Import"
msgstr "继续导入"

#: packages/admin/src/components/PortableTextEditor.tsx:4105
msgid "Continue numbering"
msgstr ""

#: packages/admin/src/components/users/roleDefinitions.ts:24
#: packages/admin/src/components/WelcomeModal.tsx:28
msgid "Contributor"
msgstr "贡献者"

#: packages/admin/src/components/editor/CodeBlockNode.tsx:246
#: packages/admin/src/components/editor/CodeBlockNode.tsx:270
msgid "Copied"
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:305
#: packages/admin/src/components/users/InviteUserModal.tsx:133
msgid "Copied to clipboard"
msgstr "已复制到剪贴板"

#. placeholder {0}: section.slug
#: packages/admin/src/components/Sections.tsx:399
msgid "Copy {0} to clipboard"
msgstr "复制 {0} 到剪贴板"

#: packages/admin/src/components/editor/CodeBlockNode.tsx:246
#: packages/admin/src/components/editor/CodeBlockNode.tsx:253
msgid "Copy code"
msgstr ""

#: packages/admin/src/components/editor/CodeBlockNode.tsx:270
msgid "Copy failed"
msgstr ""

#: packages/admin/src/components/users/InviteUserModal.tsx:124
msgid "Copy invite link"
msgstr "复制邀请链接"

#: packages/admin/src/components/Sections.tsx:398
msgid "Copy slug"
msgstr "复制 slug"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:258
msgid "Copy this token now — it won't be shown again."
msgstr "立即复制此令牌 — 它将不再显示。"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:289
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:296
msgid "Copy token"
msgstr "复制令牌"

#: packages/admin/src/components/editor/PluginBlockNode.tsx:322
#: packages/admin/src/components/editor/PluginBlockNode.tsx:323
#: packages/admin/src/components/MediaDetailPanel.tsx:634
msgid "Copy URL"
msgstr "复制 URL"

#: packages/admin/src/components/users/InviteUserModal.tsx:136
msgid "Could not copy automatically. Please select the URL above and copy manually."
msgstr "无法自动复制。请选择上面的 URL 并手动复制。"

#: packages/admin/src/components/PortableTextEditor.tsx:3375
msgid "Could not insert section"
msgstr ""

#: packages/admin/src/components/Dashboard.tsx:124
msgid "Could not load dashboard data"
msgstr ""

#: packages/admin/src/components/MediaPickerModal.tsx:487
msgid "Could not load image from URL"
msgstr "无法从 URL 加载图片"

#: packages/admin/src/components/MediaDetailPanel.tsx:372
msgid "Couldn’t confirm whether the media item or selected folder still exists. Try again."
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1280
msgid "Couldn't detect WordPress"
msgstr "无法检测到 WordPress"

#: packages/admin/src/routes/byline-schema.tsx:268
msgid "Couldn't load byline fields."
msgstr "无法加载署名字段。"

#: packages/admin/src/routes/bylines.tsx:547
msgid "Couldn't load custom fields."
msgstr "无法加载自定义字段。"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:349
msgid "Couldn’t load media usage tracking settings."
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:186
msgid "Couldn’t load more usage."
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:224
msgid "Couldn’t load usage."
msgstr ""

#: packages/admin/src/components/AllowedTypesEditor.tsx:91
msgid "Couldn't map \"{draft}\" to a MIME type. Type the MIME directly."
msgstr "无法将 \"{draft}\" 映射到 MIME 类型。请直接输入 MIME。"

#: packages/admin/src/components/MediaLibrary.tsx:650
msgid "Couldn’t move file"
msgstr ""

#: packages/admin/src/components/BylineCreditsEditor.tsx:469
msgid "Couldn’t search bylines."
msgstr ""

#. placeholder {0}: deletingField.label
#: packages/admin/src/routes/byline-schema.tsx:369
msgid "Couldn't verify how many values reference \"{0}\". Deleting will still remove every stored value for this field — but the count above could not be checked."
msgstr "无法验证有多少值引用了 \"{0}\"。删除仍将移除此字段的所有存储值 — 但上方的计数无法被检查。"

#: packages/admin/src/components/TaxonomyManager.tsx:1055
msgid "Count"
msgstr "数量"

#: packages/admin/src/components/BylineCreditsEditor.tsx:525
#: packages/admin/src/components/MediaFolderDialog.tsx:171
#: packages/admin/src/components/MenuList.tsx:178
#: packages/admin/src/components/Redirects.tsx:192
#: packages/admin/src/components/Sections.tsx:212
#: packages/admin/src/components/TaxonomyManager.tsx:668
#: packages/admin/src/components/Widgets.tsx:454
#: packages/admin/src/routes/bylines.tsx:579
msgid "Create"
msgstr "创建"

#. placeholder {0}: option.label
#: packages/admin/src/components/BylineCreditsEditor.tsx:511
msgid "Create “{0}”"
msgstr ""

#: packages/admin/src/components/TaxonomySidebar.tsx:339
msgid "Create \"{trimmedInput}\""
msgstr "创建 \"{trimmedInput}\""

#. placeholder {0}: option.label
#: packages/admin/src/components/BylineCreditsEditor.tsx:522
msgid "Create {0}"
msgstr ""

#. placeholder {0}: resolvedEntryLocale.toUpperCase()
#: packages/admin/src/components/TaxonomySidebar.tsx:556
msgid "Create {0} translation"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:1459
msgid "Create a bullet list"
msgstr "创建无序列表"

#. placeholder {0}: taxonomyDef.labelSingular?.toLowerCase() || "term"
#: packages/admin/src/components/TaxonomyManager.tsx:550
msgid "Create a new {0}"
msgstr "创建新的 {0}"

#: packages/admin/src/components/PortableTextEditor.tsx:1469
msgid "Create a numbered list"
msgstr "创建有序列表"

#: packages/admin/src/components/BylineCreditsEditor.tsx:974
msgid "Create a reusable public profile, then add it to this post."
msgstr ""

#: packages/admin/src/components/InviteAcceptPage.tsx:84
#: packages/admin/src/components/SignupPage.tsx:236
msgid "Create Account"
msgstr "创建账户"

#: packages/admin/src/components/SignupPage.tsx:416
msgid "Create an account"
msgstr "创建账户"

#: packages/admin/src/components/BylineCreditsEditor.tsx:1019
msgid "Create and add"
msgstr ""

#: packages/admin/src/components/BylineCreditsEditor.tsx:970
#: packages/admin/src/routes/bylines.tsx:476
msgid "Create byline"
msgstr "创建署名"

#: packages/admin/src/components/ContentTypeEditor.tsx:575
msgid "Create Content Type"
msgstr "创建内容类型"

#: packages/admin/src/components/BylineFieldEditor.tsx:318
msgid "Create field"
msgstr "创建字段"

#: packages/admin/src/components/MenuList.tsx:129
#: packages/admin/src/components/MenuList.tsx:192
msgid "Create Menu"
msgstr "创建菜单"

#: packages/admin/src/components/MenuList.tsx:136
msgid "Create New Menu"
msgstr "创建新菜单"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:229
msgid "Create New Token"
msgstr "创建新令牌"

#: packages/admin/src/components/WordPressImport.tsx:1517
msgid "Create one in WordPress: Users → Profile → Application Passwords"
msgstr "在 WordPress 中创建：用户 → 个人资料 → 应用程序密码"

#: packages/admin/src/components/SetupWizard.tsx:298
msgid "Create Passkey"
msgstr "创建通行密钥"

#: packages/admin/src/components/Settings.tsx:102
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:196
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:230
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:326
msgid "Create personal access tokens for programmatic API access"
msgstr "创建个人访问令牌以通过程序访问 API"

#. placeholder {0}: item.path
#: packages/admin/src/components/Redirects.tsx:248
msgid "Create redirect for {0}"
msgstr "为 {0} 创建重定向"

#: packages/admin/src/components/Redirects.tsx:247
msgid "Create redirect for this path"
msgstr "为此路径创建重定向"

#: packages/admin/src/components/Redirects.tsx:469
msgid "Create redirect rules to manage URL changes."
msgstr "创建重定向规则以管理 URL 更改。"

#: packages/admin/src/components/WordPressImport.tsx:1937
msgid "Create Schema & Import"
msgstr "创建架构并导入"

#: packages/admin/src/components/Sections.tsx:150
#: packages/admin/src/components/Sections.tsx:270
msgid "Create Section"
msgstr "创建区块"

#: packages/admin/src/components/SectionPickerModal.tsx:110
msgid "Create sections in the Sections library to use them here"
msgstr "在区块库中创建区块以便在此使用"

#: packages/admin/src/components/TaxonomyManager.tsx:788
#: packages/admin/src/components/TaxonomyManager.tsx:879
msgid "Create Taxonomy"
msgstr "创建分类"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:238
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:540
msgid "Create Token"
msgstr "创建令牌"

#: packages/admin/src/components/Widgets.tsx:410
msgid "Create Widget Area"
msgstr "创建小部件区域"

#: packages/admin/src/components/SetupWizard.tsx:560
msgid "Create your account"
msgstr "创建您的账户"

#: packages/admin/src/components/ContentTypeList.tsx:206
msgid "Create your first content type"
msgstr ""

#: packages/admin/src/components/MenuList.tsx:190
msgid "Create your first navigation menu to get started"
msgstr "创建您的第一个导航菜单以开始使用"

#: packages/admin/src/components/ContentList.tsx:664
msgid "Create your first one"
msgstr "创建第一个内容"

#: packages/admin/src/components/Sections.tsx:267
msgid "Create your first reusable content section to get started."
msgstr "创建您的第一个可重用内容区块以开始使用。"

#: packages/admin/src/components/InviteAcceptPage.tsx:75
#: packages/admin/src/components/SignupPage.tsx:227
msgid "Create your passkey"
msgstr "创建您的通行密钥"

#: packages/admin/src/lib/api/marketplace.ts:280
#: packages/admin/src/lib/api/marketplace.ts:289
msgid "Create, update, and delete content"
msgstr "创建、更新和删除内容"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:83
msgid "Create, update, and delete navigation menus"
msgstr "创建、更新、删除导航菜单"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:78
msgid "Create, update, and delete taxonomy terms"
msgstr "创建、更新、删除分类词条"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:53
msgid "Create, update, delete content"
msgstr "创建、更新、删除内容"

#: packages/admin/src/components/ContentList.tsx:860
#: packages/admin/src/components/ContentSettingsPanel.tsx:641
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:358
#: packages/admin/src/components/users/UserDetail.tsx:219
msgid "Created"
msgstr "已创建"

#. placeholder {0}: field.label
#: packages/admin/src/routes/byline-schema.tsx:96
msgid "Created \"{0}\"."
msgstr "已创建 \"{0}\"."

#. placeholder {0}: new Date(cred.createdAt).toLocaleDateString()
#: packages/admin/src/components/users/UserDetail.tsx:260
msgid "Created {0}"
msgstr "创建于 {0}"

#. placeholder {0}: result.locale?.toUpperCase() ?? t`new`
#: packages/admin/src/router.tsx:1196
msgid "Created {0} translation"
msgstr "已创建 {0} 翻译"

#: packages/admin/src/components/ContentTypeEditor.tsx:123
msgid "Created At"
msgstr "创建时间"

#: packages/admin/src/components/WordPressImport.tsx:905
msgid "Creating collections and fields..."
msgstr "正在创建合集和字段..."

#: packages/admin/src/components/MenuList.tsx:178
#: packages/admin/src/components/Redirects.tsx:189
#: packages/admin/src/components/Sections.tsx:212
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:540
#: packages/admin/src/components/TaxonomyManager.tsx:879
#: packages/admin/src/components/TaxonomySidebar.tsx:339
msgid "Creating..."
msgstr "创建中..."

#: packages/admin/src/components/editor/codeBlockLanguages.ts:32
msgid "CSS"
msgstr "CSS"

#: packages/admin/src/components/TranslationsPanel.tsx:83
msgid "current"
msgstr "当前"

#: packages/admin/src/components/RevisionHistory.tsx:282
msgid "Current"
msgstr "当前版本"

#: packages/admin/src/components/PluginSettings.tsx:340
msgid "Currently set — enter a new value to replace"
msgstr ""

#: packages/admin/src/components/Sections.tsx:46
msgid "Custom"
msgstr "自定义"

#: packages/admin/src/components/ContentTypeEditor.tsx:638
msgid "Custom Fields"
msgstr "自定义字段"

#: packages/admin/src/components/settings/SeoSettings.tsx:262
msgid "Custom robots.txt content. Leave empty to use the default."
msgstr "自定义 robots.txt 内容。留空则使用默认值。"

#: packages/admin/src/components/SectionEditor.tsx:205
msgid "Custom Section"
msgstr "自定义区块"

#: packages/admin/src/components/WordPressImport.tsx:1165
msgid "Custom Taxonomies"
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:223
msgid "Daily automatic backups"
msgstr ""

#: packages/admin/src/components/ThemeToggle.tsx:22
msgid "dark"
msgstr "深色"

#: packages/admin/src/components/ThemeToggle.tsx:24
msgid "Dark"
msgstr "深色"

#: packages/admin/src/components/AdminCommandPalette.tsx:130
#: packages/admin/src/components/ContentTypeList.tsx:358
#: packages/admin/src/components/Dashboard.tsx:56
#: packages/admin/src/components/Sidebar.tsx:246
#: packages/admin/src/components/Sidebar.tsx:399
msgid "Dashboard"
msgstr "仪表板"

#: packages/admin/src/components/comments/CommentInbox.tsx:288
#: packages/admin/src/components/ContentList.tsx:625
msgid "Date"
msgstr "日期"

#: packages/admin/src/components/FieldEditor.tsx:209
#: packages/admin/src/components/FieldEditor.tsx:613
msgid "Date & Time"
msgstr "日期和时间"

#: packages/admin/src/components/FieldEditor.tsx:210
msgid "Date and time picker"
msgstr "日期和时间选择器"

#: packages/admin/src/components/ContentList.tsx:933
msgid "Date field to filter on"
msgstr "用于筛选的日期字段"

#: packages/admin/src/components/settings/GeneralSettings.tsx:324
msgid "Date Format"
msgstr "日期格式"

#: packages/admin/src/components/ContentList.tsx:983
msgid "Date range"
msgstr ""

#: packages/admin/src/components/FieldEditor.tsx:192
msgid "Decimal number"
msgstr "十进制数字"

#: packages/admin/src/components/RegistryPluginDetail.tsx:761
msgid "Declared permissions"
msgstr "声明的权限"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:299
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:354
msgid "Default Role"
msgstr "默认角色"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:250
msgid "Default role:"
msgstr "默认角色："

#: packages/admin/src/components/settings/SeoSettings.tsx:181
msgid "Default social image"
msgstr "默认社交图片"

#: packages/admin/src/components/settings/SeoSettings.tsx:172
msgid "Default Social Image"
msgstr "默认社交图片"

#: packages/admin/src/components/TaxonomyManager.tsx:791
msgid "Define a new taxonomy for classifying content"
msgstr "定义新的分类以对内容进行分类"

#: packages/admin/src/routes/byline-schema.tsx:220
msgid "Define custom fields stored on every byline — job title, pronouns, social handles, and more."
msgstr "定义存储在每个署名上的自定义字段 — 职位、代词、社交账号等。"

#: packages/admin/src/components/ContentTypeList.tsx:118
msgid "Define the structure of your content"
msgstr "定义您的内容结构"

#: packages/admin/src/components/ContentTypeEditor.tsx:361
msgid "Defined in code"
msgstr "代码定义"

#: packages/admin/src/components/comments/CommentInbox.tsx:259
#: packages/admin/src/components/comments/CommentInbox.tsx:399
#: packages/admin/src/components/ContentTypeEditor.tsx:687
#: packages/admin/src/components/ContentTypeList.tsx:236
#: packages/admin/src/components/editor/BlockMenu.tsx:318
#: packages/admin/src/components/editor/HtmlBlockNode.tsx:130
#: packages/admin/src/components/editor/PluginBlockNode.tsx:378
#: packages/admin/src/components/MediaDetailPanel.tsx:919
#: packages/admin/src/components/MediaDetailPanel.tsx:965
#: packages/admin/src/components/MenuEditor.tsx:549
#: packages/admin/src/components/MenuList.tsx:258
#: packages/admin/src/components/Redirects.tsx:603
#: packages/admin/src/components/Sections.tsx:308
#: packages/admin/src/components/Sections.tsx:407
#: packages/admin/src/components/settings/BackupSettings.tsx:352
#: packages/admin/src/components/TaxonomyManager.tsx:1118
#: packages/admin/src/components/Widgets.tsx:716
#: packages/admin/src/routes/byline-schema.tsx:378
#: packages/admin/src/routes/bylines.tsx:588
#: packages/admin/src/routes/bylines.tsx:624
msgid "Delete"
msgstr "删除"

#. placeholder {0}: folder.name
#: packages/admin/src/components/MediaFolderDialog.tsx:182
msgid "Delete “{0}”?"
msgstr ""

#. placeholder {0}: item.filename
#: packages/admin/src/components/MediaDetailPanel.tsx:964
msgid "Delete \"{0}\"? This cannot be undone."
msgstr "删除 \"{0}\"？此操作无法撤销。"

#. placeholder {0}: archive.name
#. placeholder {0}: collection.label
#. placeholder {0}: domain.domain
#: packages/admin/src/components/ContentTypeList.tsx:341
#: packages/admin/src/components/Sections.tsx:408
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:275
#: packages/admin/src/components/settings/BackupSettings.tsx:312
#: packages/admin/src/components/TaxonomyManager.tsx:285
#: packages/admin/src/components/Widgets.tsx:817
#: packages/admin/src/routes/byline-schema.tsx:458
msgid "Delete {0}"
msgstr "删除 {0}"

#. placeholder {0}: field.label
#: packages/admin/src/components/ContentTypeEditor.tsx:764
msgid "Delete {0} field"
msgstr "删除 {0} 字段"

#. placeholder {0}: menu.name
#: packages/admin/src/components/MenuList.tsx:240
msgid "Delete {0} menu"
msgstr "删除 {0} 菜单"

#. placeholder {0}: area.label
#: packages/admin/src/components/Widgets.tsx:664
msgid "Delete {0} widget area"
msgstr "删除 {0} 小部件区域"

#. placeholder {0}: taxonomyDef.labelSingular || "Term"
#: packages/admin/src/components/TaxonomyManager.tsx:1114
msgid "Delete {0}?"
msgstr "删除 {0}？"

#: packages/admin/src/components/settings/BackupSettings.tsx:350
msgid "Delete backup?"
msgstr ""

#: packages/admin/src/routes/byline-schema.tsx:358
msgid "Delete byline field?"
msgstr "删除署名字段？"

#: packages/admin/src/routes/bylines.tsx:622
msgid "Delete Byline?"
msgstr "删除署名？"

#: packages/admin/src/components/PortableTextEditor.tsx:3763
msgid "Delete column"
msgstr "删除列"

#: packages/admin/src/components/comments/CommentInbox.tsx:397
msgid "Delete Comment?"
msgstr "删除评论？"

#: packages/admin/src/components/ContentTypeList.tsx:230
msgid "Delete Content Type?"
msgstr "删除内容类型？"

#: packages/admin/src/components/editor/PluginBlockNode.tsx:379
msgid "Delete embed"
msgstr "删除嵌入内容"

#: packages/admin/src/components/ContentTypeEditor.tsx:681
msgid "Delete Field?"
msgstr "删除字段？"

#: packages/admin/src/components/MediaFolderDialog.tsx:167
#: packages/admin/src/components/MediaFolderDialog.tsx:184
msgid "Delete folder"
msgstr ""

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:241
#: packages/admin/src/components/editor/GalleryNode.tsx:223
#: packages/admin/src/components/editor/GalleryNode.tsx:224
msgid "Delete gallery"
msgstr ""

#: packages/admin/src/components/editor/HtmlBlockNode.tsx:131
msgid "Delete HTML block"
msgstr "删除 HTML 块"

#: packages/admin/src/components/editor/ImageNode.tsx:233
#: packages/admin/src/components/editor/ImageNode.tsx:234
msgid "Delete image"
msgstr "删除图片"

#: packages/admin/src/components/MediaDetailPanel.tsx:963
msgid "Delete Media?"
msgstr "删除媒体？"

#: packages/admin/src/components/MenuList.tsx:256
msgid "Delete Menu"
msgstr "删除菜单"

#: packages/admin/src/components/comments/CommentInbox.tsx:517
msgid "Delete permanently"
msgstr "永久删除"

#: packages/admin/src/components/comments/CommentDetail.tsx:182
#: packages/admin/src/components/ContentList.tsx:1542
msgid "Delete Permanently"
msgstr "永久删除"

#: packages/admin/src/components/ContentList.tsx:1522
msgid "Delete Permanently?"
msgstr "永久删除？"

#: packages/admin/src/components/Redirects.tsx:544
msgid "Delete redirect"
msgstr "删除重定向"

#. placeholder {0}: r.source
#: packages/admin/src/components/Redirects.tsx:545
msgid "Delete redirect {0}"
msgstr "删除重定向 {0}"

#: packages/admin/src/components/Redirects.tsx:601
msgid "Delete Redirect?"
msgstr "删除重定向？"

#: packages/admin/src/components/PortableTextEditor.tsx:3782
msgid "Delete row"
msgstr "删除行"

#: packages/admin/src/components/Sections.tsx:296
msgid "Delete Section?"
msgstr "删除区块？"

#: packages/admin/src/components/PortableTextEditor.tsx:3797
msgid "Delete table"
msgstr "删除表格"

#: packages/admin/src/components/Widgets.tsx:714
msgid "Delete Widget Area?"
msgstr "删除小部件区域？"

#: packages/admin/src/components/ContentList.tsx:759
msgid "Deleted"
msgstr "已删除"

#. placeholder {0}: deletingField.label
#. placeholder {1}: deleteUsageQuery.data.totalAffectedRows
#: packages/admin/src/routes/byline-schema.tsx:371
msgid "Deleting \"{0}\" will also remove {1, plural, one {# stored value} other {# stored values}} across all bylines. This cannot be undone."
msgstr "删除 \"{0}\" 将同时移除所有署名中的 {1, plural, one {# 个存储值} other {# 个存储值}}。此操作无法撤销。"

#: packages/admin/src/components/comments/CommentInbox.tsx:400
#: packages/admin/src/components/ContentTypeEditor.tsx:688
#: packages/admin/src/components/ContentTypeList.tsx:237
#: packages/admin/src/components/MediaDetailPanel.tsx:919
#: packages/admin/src/components/MediaDetailPanel.tsx:966
#: packages/admin/src/components/MediaFolderDialog.tsx:185
#: packages/admin/src/components/MenuList.tsx:259
#: packages/admin/src/components/Redirects.tsx:604
#: packages/admin/src/components/Sections.tsx:309
#: packages/admin/src/components/settings/BackupSettings.tsx:353
#: packages/admin/src/components/TaxonomyManager.tsx:1119
#: packages/admin/src/components/Widgets.tsx:717
#: packages/admin/src/routes/bylines.tsx:625
msgid "Deleting..."
msgstr "删除中..."

#: packages/admin/src/routes/byline-schema.tsx:379
msgid "Deleting…"
msgstr "删除中…"

#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:254
#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:147
msgid "Demo"
msgstr "演示"

#: packages/admin/src/routes/users.tsx:303
msgid "Demote User"
msgstr "降级用户"

#: packages/admin/src/routes/users.tsx:294
msgid "Demote User?"
msgstr "降级用户？"

#: packages/admin/src/routes/users.tsx:304
msgid "Demoting..."
msgstr "正在降级..."

#: packages/admin/src/components/DeviceAuthorizePage.tsx:270
msgid "Deny"
msgstr "拒绝"

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:384
#: packages/admin/src/components/editor/ImageNode.tsx:251
msgid "Describe the image..."
msgstr "描述图片..."

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:347
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:536
#: packages/admin/src/components/MediaDetailPanel.tsx:830
msgid "Describe this image for accessibility"
msgstr "描述此图片以供无障碍访问"

#: packages/admin/src/components/SectionEditor.tsx:298
msgid "Describe what this section is for..."
msgstr "描述此区块的用途..."

#: packages/admin/src/components/ContentTypeEditor.tsx:414
#: packages/admin/src/components/RegistryPluginDetail.tsx:816
#: packages/admin/src/components/SectionEditor.tsx:295
#: packages/admin/src/components/Sections.tsx:200
#: packages/admin/src/components/Widgets.tsx:438
msgid "Description"
msgstr "描述"

#: packages/admin/src/components/TaxonomyManager.tsx:623
msgid "Description (optional)"
msgstr "描述（可选）"

#: packages/admin/src/components/Redirects.tsx:477
msgid "Destination"
msgstr "目标"

#: packages/admin/src/components/Redirects.tsx:141
msgid "Destination path"
msgstr "目标路径"

#: packages/admin/src/components/CapabilityConsentDialog.tsx:153
#: packages/admin/src/components/PluginManager.tsx:568
msgid "Destructive"
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:504
#: packages/admin/src/components/MediaDetailPanel.tsx:520
msgid "Details"
msgstr ""

#: packages/admin/src/components/DeviceAuthorizePage.tsx:186
msgid "Device authorized"
msgstr "设备已授权"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:229
msgid "Device code"
msgstr "设备代码"

#: packages/admin/src/components/users/UserDetail.tsx:256
msgid "Device-bound"
msgstr "设备绑定"

#: packages/admin/src/components/settings/PasskeyItem.tsx:98
msgid "Device-bound passkey"
msgstr "设备绑定通行密钥"

#: packages/admin/src/components/SignupPage.tsx:160
msgid "Didn't receive the email?"
msgstr "未收到邮件？"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:33
msgid "Diff"
msgstr "Diff"

#: packages/admin/src/components/MediaDetailPanel.tsx:595
msgid "Dimensions:"
msgstr "尺寸："

#: packages/admin/src/components/users/UserDetail.tsx:319
msgid "Disable"
msgstr "禁用"

#: packages/admin/src/components/PluginManager.tsx:500
msgid "Disable plugin"
msgstr "禁用插件"

#: packages/admin/src/components/PluginManager.tsx:558
msgid "Disable plugin MCP tools"
msgstr ""

#: packages/admin/src/components/Redirects.tsx:513
msgid "Disable redirect"
msgstr "禁用重定向"

#: packages/admin/src/routes/users.tsx:279
msgid "Disable User"
msgstr "禁用用户"

#: packages/admin/src/routes/users.tsx:272
msgid "Disable User?"
msgstr "禁用用户？"

#: packages/admin/src/components/PluginManager.tsx:389
#: packages/admin/src/components/Redirects.tsx:426
#: packages/admin/src/components/users/UserDetail.tsx:201
#: packages/admin/src/components/users/UserList.tsx:205
msgid "Disabled"
msgstr "已禁用"

#: packages/admin/src/components/PluginManager.tsx:618
msgid "Disabled:"
msgstr "已禁用："

#. placeholder {0}: selectedUser?.name || selectedUser?.email
#: packages/admin/src/routes/users.tsx:274
msgid "Disabling <0>{0}</0> will prevent them from logging in until re-enabled. Their content will be preserved."
msgstr "禁用 <0>{0}</0> 将阻止其登录，直到重新启用。其内容将被保留。"

#: packages/admin/src/routes/users.tsx:280
msgid "Disabling..."
msgstr "正在禁用..."

#: packages/admin/src/components/MediaDetailPanel.tsx:950
msgid "Discard"
msgstr ""

#: packages/admin/src/components/ContentSettingsPanel.tsx:83
#: packages/admin/src/components/ContentSettingsPanel.tsx:103
msgid "Discard changes"
msgstr "放弃更改"

#: packages/admin/src/components/MediaDetailPanel.tsx:948
msgid "Discard changes?"
msgstr ""

#: packages/admin/src/components/ContentSettingsPanel.tsx:88
msgid "Discard draft changes?"
msgstr "放弃草稿更改？"

#: packages/admin/src/components/MediaDetailPanel.tsx:951
msgid "Discarding..."
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:267
msgid "Dismiss"
msgstr "关闭"

#. placeholder {0}: row.file.name
#: packages/admin/src/components/MediaUploadDialog.tsx:164
msgid "Dismiss completed {0}"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:3389
msgid "Dismiss section error"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:127
msgid "Display a list of recent posts"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:105
msgid "Display a navigation menu"
msgstr "显示导航菜单"

#: packages/admin/src/components/Widgets.tsx:136
msgid "Display category list"
msgstr ""

#: packages/admin/src/routes/bylines.tsx:481
msgid "Display name"
msgstr "显示名称"

#: packages/admin/src/components/MenuList.tsx:170
msgid "Display name for admin interface"
msgstr "管理界面的显示名称"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:269
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:458
msgid "Display Size"
msgstr "显示尺寸"

#: packages/admin/src/components/Widgets.tsx:144
msgid "Display tag cloud"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:356
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:545
msgid "Displayed below the image as a visible caption."
msgstr "显示在图片下方作为可见说明。"

#: packages/admin/src/components/ContentEditor.tsx:746
msgid "Distraction-free mode (⌘⇧\\)"
msgstr "无干扰模式（⌘⇧\\）"

#: packages/admin/src/components/PortableTextEditor.tsx:1506
msgid "Divider"
msgstr "分隔线"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:34
msgid "Dockerfile"
msgstr "Dockerfile"

#: packages/admin/src/components/AllowedTypesEditor.tsx:66
#: packages/admin/src/components/MediaLibrary.tsx:992
msgid "Documents"
msgstr "文档"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:293
msgid "Domain"
msgstr "域名"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:80
msgid "Domain added successfully"
msgstr "域名添加成功"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:120
msgid "Domain removed"
msgstr "域名已移除"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:103
msgid "Domain updated"
msgstr "域名已更新"

#: packages/admin/src/components/LoginPage.tsx:334
msgid "Don't have an account? <0>Sign up</0>"
msgstr "还没有账号？<0>立即注册</0>"

#: packages/admin/src/components/BylineCreditsEditor.tsx:915
#: packages/admin/src/components/ContentList.tsx:1059
#: packages/admin/src/components/MediaUploadDialog.tsx:512
#: packages/admin/src/components/users/InviteUserModal.tsx:142
#: packages/admin/src/components/WordPressImport.tsx:2144
msgid "Done"
msgstr "完成"

#. placeholder {0}: archive.name
#: packages/admin/src/components/settings/BackupSettings.tsx:304
msgid "Download {0}"
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:191
msgid "Download a complete backup of your site: all content (including drafts and trash), collections, taxonomies, menus, widgets, media metadata, and site settings. User accounts and secrets are never included."
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:195
msgid "Download backup"
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:187
msgid "Download Backup"
msgstr ""

#: packages/admin/src/components/Settings.tsx:117
#: packages/admin/src/components/settings/BackupSettings.tsx:144
msgid "Download backups and schedule automatic backups to storage"
msgstr ""

#: packages/admin/src/components/RegistryPluginDetail.tsx:529
msgid "Download SBOM"
msgstr "下载 SBOM"

#: packages/admin/src/components/WordPressImport.tsx:2142
msgid "Downloading"
msgstr "下载中"

#: packages/admin/src/components/ContentList.tsx:852
#: packages/admin/src/components/ContentStatusBadge.tsx:61
msgid "Draft"
msgstr "草稿"

#: packages/admin/src/components/ContentTypeEditor.tsx:119
msgid "draft, published, or archived"
msgstr "草稿、已发布或已归档"

#: packages/admin/src/components/ContentTypeEditor.tsx:71
#: packages/admin/src/components/Dashboard.tsx:303
msgid "Drafts"
msgstr "草稿"

#: packages/admin/src/components/WordPressImport.tsx:1184
msgid "Drafts & Private"
msgstr ""

#: packages/admin/src/components/MediaUploadDialog.tsx:433
msgid "Drag and drop files here"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1137
msgid "Drag and drop or click to browse (.xml)"
msgstr "拖放或点击浏览 (.xml)"

#: packages/admin/src/components/Widgets.tsx:700
msgid "Drag here to add"
msgstr "拖动到此处添加"

#: packages/admin/src/components/PortableTextEditor.tsx:2318
msgid "Drag to reorder"
msgstr "拖动以重新排序"

#. placeholder {0}: field.label
#. placeholder {0}: widget.title ?? t`widget`
#: packages/admin/src/components/ContentTypeEditor.tsx:731
#: packages/admin/src/components/Widgets.tsx:802
msgid "Drag to reorder {0}"
msgstr "拖动以重新排序 {0}"

#: packages/admin/src/components/SortableContentSettingsSections.tsx:219
#: packages/admin/src/components/SortableContentSettingsSections.tsx:220
msgid "Drag to reorder {label}"
msgstr ""

#: packages/admin/src/components/editor/BlockMenu.tsx:355
msgid "Drag to reorder block"
msgstr "拖动以重新排序块"

#: packages/admin/src/components/Widgets.tsx:704
msgid "Drag widgets here to add them"
msgstr "将小部件拖动到此处添加"

#: packages/admin/src/components/Widgets.tsx:467
msgid "Drag widgets into an area to add them"
msgstr "将小部件拖动到区域中以添加它们"

#: packages/admin/src/components/MediaLibrary.tsx:798
msgid "Drop files to upload"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:700
msgid "Drop to add widget"
msgstr "放置以添加小部件"

#: packages/admin/src/components/WordPressImport.tsx:1604
msgid "Drop your WordPress export file here"
msgstr "将 WordPress 导出文件拖放到此处"

#: packages/admin/src/components/editor/BlockMenu.tsx:309
msgid "Duplicate"
msgstr "复制"

#: packages/admin/src/components/ContentList.tsx:1336
msgid "Duplicate {title}"
msgstr "复制 {title}"

#: packages/admin/src/components/AllowedTypesEditor.tsx:164
msgid "e.g. application/zip or .pdf"
msgstr "例如 application/zip 或 .pdf"

#: packages/admin/src/components/Redirects.tsx:168
msgid "e.g. import, blog"
msgstr "例如 import、blog"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:484
msgid "e.g., CI/CD Pipeline"
msgstr "例如：CI/CD 流水线"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:325
msgid "e.g., MacBook Pro, iPhone"
msgstr "例如：MacBook Pro、iPhone"

#: packages/admin/src/components/editor/PluginBlockNode.tsx:367
#: packages/admin/src/components/editor/PluginBlockNode.tsx:368
#: packages/admin/src/components/MenuEditor.tsx:544
#: packages/admin/src/components/MenuList.tsx:234
#: packages/admin/src/components/Sections.tsx:392
#: packages/admin/src/components/TranslationsPanel.tsx:93
msgid "Edit"
msgstr "编辑"

#. placeholder {0}: block?.label || ""
#. placeholder {0}: collection.label
#. placeholder {0}: domain.domain
#: packages/admin/src/components/ContentTypeList.tsx:332
#: packages/admin/src/components/PortableTextEditor.tsx:1923
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:263
#: packages/admin/src/components/TaxonomyManager.tsx:277
#: packages/admin/src/components/TaxonomyManager.tsx:544
#: packages/admin/src/routes/byline-schema.tsx:449
#: packages/admin/src/routes/bylines.tsx:476
msgid "Edit {0}"
msgstr "编辑 {0}"

#. placeholder {0}: field.label
#: packages/admin/src/components/ContentTypeEditor.tsx:756
msgid "Edit {0} field"
msgstr "编辑 {0} 字段"

#: packages/admin/src/components/ContentEditor.tsx:692
msgid "Edit {itemLabel}"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:1328
msgid "Edit {title}"
msgstr "编辑 {title}"

#: packages/admin/src/components/BylineFieldEditor.tsx:209
msgid "Edit byline field"
msgstr "编辑署名字段"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:330
msgid "Edit Domain"
msgstr "编辑域名"

#: packages/admin/src/components/FieldEditor.tsx:368
msgid "Edit Field"
msgstr "编辑字段"

#: packages/admin/src/components/MediaFolderDialog.tsx:127
msgid "Edit folder"
msgstr ""

#. placeholder {0}: folder.name
#: packages/admin/src/components/MediaLibrary.tsx:1458
#: packages/admin/src/components/MediaLibrary.tsx:1525
msgid "Edit folder {0}"
msgstr ""

#. placeholder {0}: index + 1
#: packages/admin/src/components/editor/GalleryNode.tsx:181
msgid "Edit image {0}"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:3686
msgid "Edit link"
msgstr "编辑链接"

#: packages/admin/src/components/MenuEditor.tsx:573
msgid "Edit Menu Item"
msgstr "编辑菜单项"

#: packages/admin/src/components/MenuEditor.tsx:369
msgid "Edit menu items"
msgstr "编辑菜单项"

#: packages/admin/src/components/BylineCreditsEditor.tsx:876
#: packages/admin/src/components/BylineCreditsEditor.tsx:970
msgid "Edit name and slug"
msgstr ""

#: packages/admin/src/components/Redirects.tsx:536
msgid "Edit redirect"
msgstr "编辑重定向"

#: packages/admin/src/components/Redirects.tsx:106
msgid "Edit Redirect"
msgstr "编辑重定向"

#. placeholder {0}: r.source
#: packages/admin/src/components/Redirects.tsx:537
msgid "Edit redirect {0}"
msgstr "编辑重定向 {0}"

#: packages/admin/src/components/BylineCreditsEditor.tsx:868
msgid "Edit role"
msgstr ""

#: packages/admin/src/components/editor/PluginBlockNode.tsx:367
#: packages/admin/src/components/editor/PluginBlockNode.tsx:368
msgid "Edit URL"
msgstr "编辑 URL"

#: packages/admin/src/components/users/roleDefinitions.ts:36
#: packages/admin/src/components/WelcomeModal.tsx:26
msgid "Editor"
msgstr "编辑"

#: packages/admin/src/components/BylineFieldEditor.tsx:305
msgid ""
"Editor\n"
"Reporter\n"
"Photographer"
msgstr ""
"编辑\n"
"记者\n"
"摄影师"

#: packages/admin/src/components/WordPressImport.tsx:1062
msgid "em1.…"
msgstr ""

#: packages/admin/src/components/InviteAcceptPage.tsx:62
#: packages/admin/src/components/Settings.tsx:110
#: packages/admin/src/components/SignupPage.tsx:213
#: packages/admin/src/components/users/UserDetail.tsx:154
msgid "Email"
msgstr "邮箱"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:322
msgid "Email (optional)"
msgstr "邮箱（可选）"

#: packages/admin/src/components/LoginPage.tsx:127
#: packages/admin/src/components/SignupPage.tsx:84
#: packages/admin/src/components/users/InviteUserModal.tsx:152
msgid "Email address"
msgstr "邮箱地址"

#: packages/admin/src/components/SetupWizard.tsx:179
#: packages/admin/src/components/SignupPage.tsx:67
msgid "Email is required"
msgstr "邮箱为必填项"

#: packages/admin/src/components/settings/EmailSettings.tsx:183
msgid "Email Middleware"
msgstr "邮件中间件"

#: packages/admin/src/components/settings/EmailSettings.tsx:91
msgid "Email Pipeline"
msgstr "邮件管道"

#: packages/admin/src/components/settings/EmailSettings.tsx:165
msgid "Email provider active"
msgstr "邮件提供商已激活"

#: packages/admin/src/components/Settings.tsx:106
#: packages/admin/src/components/settings/EmailSettings.tsx:58
msgid "Email Settings"
msgstr "邮件设置"

#: packages/admin/src/components/users/UserDetail.tsx:235
msgid "Email verified"
msgstr "邮箱已验证"

#: packages/admin/src/components/SignupPage.tsx:206
msgid "Email verified!"
msgstr "邮箱已验证！"

#. placeholder {0}: block.label
#: packages/admin/src/components/PortableTextEditor.tsx:2760
msgid "Embed a {0}"
msgstr "嵌入 {0}"

#: packages/admin/src/components/PortableTextEditor.tsx:2763
msgid "Embeds"
msgstr "嵌入"

#: packages/admin/src/components/WordPressImport.tsx:1323
msgid "EmDash Exporter plugin detected! You can import directly."
msgstr "检测到 EmDash 导出器插件！您可以直接导入。"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:487
msgid "EmDash is scanning existing content."
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:575
msgid "EmDash will continue setup and resume scanning existing content."
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:576
msgid "EmDash will scan existing content to show where media is used."
msgstr ""

#: packages/admin/src/components/editor/GalleryNode.tsx:163
msgid "Empty gallery — open settings to add images"
msgstr ""

#: packages/admin/src/components/users/UserDetail.tsx:319
msgid "Enable"
msgstr "启用"

#: packages/admin/src/components/ContentTypeEditor.tsx:508
msgid "Enable comments"
msgstr "启用评论"

#: packages/admin/src/components/ContentTypeEditor.tsx:87
msgid "Enable full-text search on this collection"
msgstr "在此合集上启用全文搜索"

#: packages/admin/src/components/PluginManager.tsx:500
msgid "Enable plugin"
msgstr "启用插件"

#: packages/admin/src/components/PluginManager.tsx:559
msgid "Enable plugin MCP tools"
msgstr ""

#: packages/admin/src/components/Redirects.tsx:513
msgid "Enable redirect"
msgstr "启用重定向"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:417
msgid "Enable tracking"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:454
msgid "Enable tracking to index existing content and keep references up to date."
msgstr ""

#: packages/admin/src/components/Redirects.tsx:176
#: packages/admin/src/components/Redirects.tsx:426
msgid "Enabled"
msgstr "已启用"

#: packages/admin/src/components/ContentSettingsPanel.tsx:503
msgid "English is used because no content locale is configured. Content locale is stored with the entry and is separate from your admin language."
msgstr ""

#: packages/admin/src/components/BylineCreditsEditor.tsx:312
msgid "Enter a name."
msgstr ""

#: packages/admin/src/components/MenuEditor.tsx:423
#: packages/admin/src/components/MenuEditor.tsx:601
msgid "Enter a URL (https://…) or a relative path (/…)"
msgstr "输入 URL (https://…) 或相对路径 (/…)"

#: packages/admin/src/components/ContentEditor.tsx:1566
msgid "Enter a valid URL (e.g. https://example.com)"
msgstr "输入有效的 URL（例如 https://example.com）"

#: packages/admin/src/components/WordPressImport.tsx:1396
msgid "Enter credentials manually"
msgstr "手动输入凭据"

#: packages/admin/src/components/ContentEditor.tsx:745
msgid "Enter distraction-free mode"
msgstr "进入无干扰模式"

#: packages/admin/src/components/users/UserDetail.tsx:158
msgid "Enter email"
msgstr "输入邮箱"

#: packages/admin/src/components/editor/HtmlBlockNode.tsx:144
msgid "Enter HTML..."
msgstr "输入 HTML..."

#: packages/admin/src/components/ContentEditor.tsx:1339
msgid "Enter markdown content..."
msgstr "输入 Markdown 内容..."

#: packages/admin/src/components/users/UserDetail.tsx:151
msgid "Enter name"
msgstr "输入名称"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:177
msgid "Enter the code from your terminal"
msgstr "输入终端中的代码"

#: packages/admin/src/components/editor/PluginBlockNode.tsx:123
#: packages/admin/src/components/editor/PluginBlockNode.tsx:132
msgid "Enter URL..."
msgstr "输入 URL..."

#: packages/admin/src/components/LoginPage.tsx:327
msgid "Enter your handle to sign in."
msgstr "输入您的账号以登录。"

#: packages/admin/src/components/WordPressImport.tsx:1475
msgid "Enter your WordPress credentials to import content directly."
msgstr "输入您的 WordPress 凭据以直接导入内容。"

#: packages/admin/src/components/WordPressImport.tsx:1100
msgid "Enter your WordPress site URL"
msgstr "输入您的 WordPress 站点 URL"

#: packages/admin/src/components/MenuEditor.tsx:155
#: packages/admin/src/components/MenuEditor.tsx:193
#: packages/admin/src/components/MenuEditor.tsx:233
#: packages/admin/src/components/SetupWizard.tsx:539
#: packages/admin/src/components/TaxonomyManager.tsx:947
#: packages/admin/src/components/Widgets.tsx:769
#: packages/admin/src/router.tsx:2516
msgid "Error"
msgstr "错误"

#: packages/admin/src/components/Widgets.tsx:236
msgid "Error adding widget"
msgstr "添加小部件时出错"

#: packages/admin/src/components/Widgets.tsx:297
msgid "Error reordering widgets"
msgstr "重新排序小部件时出错"

#: packages/admin/src/components/SectionEditor.tsx:71
msgid "Error saving section"
msgstr "保存区块时出错"

#: packages/admin/src/components/Widgets.tsx:784
msgid "Error updating widget"
msgstr "更新小部件时出错"

#: packages/admin/src/components/RegistryPluginDetail.tsx:607
msgid "Every published release of this plugin has been withdrawn or could not be verified. Check back later, or contact the publisher."
msgstr "此插件的每个已发布版本均已撤回或无法验证。请稍后查看，或联系发布者。"

#. placeholder {0}: formData.dateFormat ?? "MMMM d, yyyy"
#: packages/admin/src/components/settings/GeneralSettings.tsx:327
msgid "Example: {0} → January 23, 2026"
msgstr ""

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:294
msgid "example.com"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:478
msgid "Existing content is indexed. New changes are tracked automatically."
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:2026
msgid "Exists"
msgstr "已存在"

#: packages/admin/src/components/ContentEditor.tsx:804
msgid "Exit distraction-free mode"
msgstr "退出无干扰模式"

#: packages/admin/src/components/PortableTextEditor.tsx:4279
msgid "Exit Spotlight Mode"
msgstr "退出聚焦模式"

#: packages/admin/src/components/PluginManager.tsx:506
#: packages/admin/src/components/PluginManager.tsx:511
msgid "Expand details"
msgstr "展开详情"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:365
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:526
msgid "Expiry"
msgstr "过期时间"

#: packages/admin/src/components/WordPressImport.tsx:1289
msgid "Export from WordPress manually"
msgstr "从 WordPress 手动导出"

#: packages/admin/src/components/WordPressImport.tsx:1413
msgid "Export your content from WordPress to import everything including drafts."
msgstr "从 WordPress 导出您的内容，以导入所有内容（包括草稿）。"

#: packages/admin/src/components/settings/SocialSettings.tsx:155
msgid "Facebook"
msgstr "Facebook"

#: packages/admin/src/components/MarketplaceBrowse.tsx:345
msgid "Fail"
msgstr "失败"

#: packages/admin/src/components/WordPressImport.tsx:2146
msgid "Failed"
msgstr "失败"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:199
msgid "Failed security audit"
msgstr "安全审计失败"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:84
msgid "Failed to add domain"
msgstr "添加域名失败"

#: packages/admin/src/components/settings/SecuritySettings.tsx:175
msgid "Failed to add passkey"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:431
msgid "Failed to analyze WordPress site"
msgstr "分析 WordPress 站点失败"

#: packages/admin/src/components/SandboxedPluginPage.tsx:54
msgid "Failed to communicate with plugin"
msgstr "与插件通信失败"

#: packages/admin/src/lib/api/media.ts:360
msgid "Failed to confirm upload"
msgstr "确认上传失败"

#: packages/admin/src/components/SetupWizard.tsx:493
msgid "Failed to create admin"
msgstr "创建管理员失败"

#: packages/admin/src/components/settings/BackupSettings.tsx:122
#: packages/admin/src/lib/api/backups.ts:51
msgid "Failed to create backup"
msgstr ""

#: packages/admin/src/lib/api/byline-fields.ts:120
msgid "Failed to create byline field"
msgstr "创建署名字段失败"

#: packages/admin/src/routes/byline-schema.tsx:102
msgid "Failed to create field"
msgstr "创建字段失败"

#: packages/admin/src/lib/api/media.ts:237
msgid "Failed to create media folder"
msgstr ""

#: packages/admin/src/lib/api/sections.ts:88
msgid "Failed to create section"
msgstr "创建分区失败"

#: packages/admin/src/components/WordPressImport.tsx:1730
msgid "Failed to create some collections"
msgstr "创建部分合集失败"

#: packages/admin/src/components/TaxonomySidebar.tsx:638
msgid "Failed to create term"
msgstr "创建词条失败"

#: packages/admin/src/components/TaxonomySidebar.tsx:475
#: packages/admin/src/router.tsx:1201
msgid "Failed to create translation"
msgstr "创建翻译失败"

#: packages/admin/src/router.tsx:461
#: packages/admin/src/router.tsx:490
#: packages/admin/src/router.tsx:573
#: packages/admin/src/router.tsx:1221
msgid "Failed to delete"
msgstr "删除失败"

#: packages/admin/src/lib/api/users.ts:345
msgid "Failed to delete allowed domain"
msgstr "删除允许的域名失败"

#: packages/admin/src/lib/api/backups.ts:58
msgid "Failed to delete backup"
msgstr ""

#: packages/admin/src/lib/api/bylines.ts:143
msgid "Failed to delete byline"
msgstr "删除署名失败"

#: packages/admin/src/lib/api/byline-fields.ts:143
msgid "Failed to delete byline field"
msgstr "删除署名字段失败"

#: packages/admin/src/lib/api/schema.ts:244
msgid "Failed to delete collection"
msgstr "删除合集失败"

#: packages/admin/src/lib/api/comments.ts:111
#: packages/admin/src/router.tsx:1769
msgid "Failed to delete comment"
msgstr "删除评论失败"

#: packages/admin/src/lib/api/content.ts:303
msgid "Failed to delete content"
msgstr "删除内容失败"

#: packages/admin/src/lib/api/schema.ts:300
#: packages/admin/src/routes/byline-schema.tsx:138
msgid "Failed to delete field"
msgstr "删除字段失败"

#: packages/admin/src/lib/api/media.ts:639
msgid "Failed to delete from provider"
msgstr "从提供商处删除失败"

#: packages/admin/src/lib/api/media.ts:499
msgid "Failed to delete media"
msgstr "删除媒体失败"

#: packages/admin/src/lib/api/media.ts:259
msgid "Failed to delete media folder"
msgstr ""

#: packages/admin/src/lib/api/menus.ts:163
msgid "Failed to delete menu"
msgstr "删除菜单失败"

#: packages/admin/src/lib/api/menus.ts:217
msgid "Failed to delete menu item"
msgstr "删除菜单项失败"

#: packages/admin/src/lib/api/users.ts:256
msgid "Failed to delete passkey"
msgstr "删除通行密钥失败"

#: packages/admin/src/lib/api/redirects.ts:111
msgid "Failed to delete redirect"
msgstr "删除重定向失败"

#: packages/admin/src/lib/api/sections.ts:110
msgid "Failed to delete section"
msgstr "删除分区失败"

#: packages/admin/src/lib/api/taxonomies.ts:221
msgid "Failed to delete term"
msgstr "删除词条失败"

#: packages/admin/src/lib/api/widgets.ts:146
msgid "Failed to delete widget"
msgstr "删除小部件失败"

#: packages/admin/src/lib/api/widgets.ts:108
msgid "Failed to delete widget area"
msgstr "删除小部件区域失败"

#: packages/admin/src/components/PluginManager.tsx:132
#: packages/admin/src/lib/api/plugins.ts:160
msgid "Failed to disable plugin"
msgstr "禁用插件失败"

#: packages/admin/src/lib/api/search.ts:32
msgid "Failed to disable search"
msgstr "禁用搜索失败"

#: packages/admin/src/lib/api/users.ts:118
msgid "Failed to disable user"
msgstr "禁用用户失败"

#: packages/admin/src/router.tsx:1128
msgid "Failed to discard changes"
msgstr "丢弃更改失败"

#: packages/admin/src/components/WelcomeModal.tsx:76
msgid "Failed to dismiss welcome"
msgstr "关闭欢迎页面失败"

#: packages/admin/src/router.tsx:504
msgid "Failed to duplicate"
msgstr "复制失败"

#: packages/admin/src/components/PluginManager.tsx:113
#: packages/admin/src/lib/api/plugins.ts:146
msgid "Failed to enable plugin"
msgstr "启用插件失败"

#: packages/admin/src/lib/api/search.ts:31
msgid "Failed to enable search"
msgstr "启用搜索失败"

#: packages/admin/src/lib/api/users.ts:138
msgid "Failed to enable user"
msgstr "启用用户失败"

#: packages/admin/src/components/WordPressImport.tsx:358
msgid "Failed to execute import"
msgstr "执行导入失败"

#: packages/admin/src/lib/api/client.ts:289
msgid "Failed to fetch auth mode"
msgstr "获取认证模式失败"

#: packages/admin/src/lib/api/backups.ts:37
msgid "Failed to fetch backup settings"
msgstr ""

#: packages/admin/src/lib/api/schema.ts:192
#: packages/admin/src/lib/api/schema.ts:196
msgid "Failed to fetch collection"
msgstr "获取合集失败"

#: packages/admin/src/lib/api/dashboard.ts:47
msgid "Failed to fetch dashboard stats"
msgstr "获取仪表盘统计数据失败"

#: packages/admin/src/lib/api/email-settings.ts:34
msgid "Failed to fetch email settings"
msgstr "获取邮件设置失败"

#: packages/admin/src/components/TaxonomySidebar.tsx:140
msgid "Failed to fetch entry terms"
msgstr "获取条目词条失败"

#: packages/admin/src/lib/api/client.ts:272
msgid "Failed to fetch manifest"
msgstr "获取清单失败"

#: packages/admin/src/lib/api/media.ts:159
msgid "Failed to fetch media"
msgstr "获取媒体失败"

#: packages/admin/src/lib/api/media.ts:224
msgid "Failed to fetch media folder"
msgstr ""

#: packages/admin/src/lib/api/media.ts:216
msgid "Failed to fetch media folders"
msgstr ""

#: packages/admin/src/lib/api/media.ts:177
msgid "Failed to fetch media item"
msgstr "获取媒体项失败"

#: packages/admin/src/lib/api/media.ts:572
msgid "Failed to fetch media providers"
msgstr "获取媒体提供者失败"

#: packages/admin/src/lib/api/media.ts:200
msgid "Failed to fetch media usage details"
msgstr ""

#: packages/admin/src/lib/api/plugins.ts:70
#: packages/admin/src/lib/api/plugins.ts:74
msgid "Failed to fetch plugin"
msgstr "获取插件失败"

#: packages/admin/src/lib/api/plugins.ts:114
msgid "Failed to fetch plugin settings"
msgstr ""

#: packages/admin/src/lib/api/plugins.ts:56
msgid "Failed to fetch plugins"
msgstr "获取插件失败"

#: packages/admin/src/lib/api/media.ts:602
msgid "Failed to fetch provider media"
msgstr "获取提供者媒体失败"

#: packages/admin/src/lib/api/content.ts:580
#: packages/admin/src/lib/api/content.ts:585
msgid "Failed to fetch revision"
msgstr "获取版本失败"

#: packages/admin/src/lib/api/sections.ts:76
msgid "Failed to fetch section"
msgstr "获取分区失败"

#: packages/admin/src/lib/api/sections.ts:68
msgid "Failed to fetch sections"
msgstr "获取分区列表失败"

#: packages/admin/src/lib/api/settings.ts:50
msgid "Failed to fetch settings"
msgstr "获取设置失败"

#: packages/admin/src/components/SetupWizard.tsx:446
msgid "Failed to fetch setup status"
msgstr "获取设置状态失败"

#: packages/admin/src/components/TaxonomySidebar.tsx:124
msgid "Failed to fetch terms"
msgstr "获取词条失败"

#: packages/admin/src/lib/api/current-user.ts:22
#: packages/admin/src/lib/api/users.ts:88
#: packages/admin/src/lib/api/users.ts:93
#: packages/admin/src/router.tsx:921
#: packages/admin/src/router.tsx:1700
msgid "Failed to fetch user"
msgstr "获取用户失败"

#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:263
msgid "Failed to generate preview"
msgstr "生成预览失败"

#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:157
msgid "Failed to generate preview URL"
msgstr "生成预览 URL 失败"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:177
msgid "Failed to get authentication options"
msgstr "获取身份验证选项失败"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:181
msgid "Failed to get registration options"
msgstr "获取注册选项失败"

#: packages/admin/src/lib/api/media.ts:332
msgid "Failed to get upload URL"
msgstr "获取上传 URL 失败"

#: packages/admin/src/components/WordPressImport.tsx:454
msgid "Failed to import from WordPress"
msgstr "从 WordPress 导入失败"

#: packages/admin/src/components/WordPressImport.tsx:383
#: packages/admin/src/lib/api/import.ts:422
msgid "Failed to import media"
msgstr "导入媒体失败"

#: packages/admin/src/lib/api/marketplace.ts:208
#: packages/admin/src/lib/api/registry.ts:760
msgid "Failed to install plugin"
msgstr "安装插件失败"

#: packages/admin/src/lib/api/byline-fields.ts:98
msgid "Failed to list byline fields"
msgstr "列出署名字段失败"

#: packages/admin/src/router.tsx:301
msgid "Failed to load admin"
msgstr "加载管理后台失败"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:193
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:194
msgid "Failed to load allowed domains"
msgstr "加载允许域名失败"

#: packages/admin/src/components/settings/BackupSettings.tsx:165
msgid "Failed to load backup settings"
msgstr ""

#. placeholder {0}: error.message
#: packages/admin/src/routes/bylines.tsx:365
msgid "Failed to load bylines: {0}"
msgstr "加载署名失败：{0}"

#: packages/admin/src/components/settings/EmailSettings.tsx:80
#: packages/admin/src/components/settings/EmailSettings.tsx:81
msgid "Failed to load email settings"
msgstr "加载邮件设置失败"

#: packages/admin/src/components/MediaPickerModal.tsx:466
msgid "Failed to load image"
msgstr "加载图片失败"

#: packages/admin/src/components/settings/SecuritySettings.tsx:123
msgid "Failed to load passkeys"
msgstr "加载通行密钥失败"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:121
msgid "Failed to load plugin"
msgstr "加载插件失败"

#: packages/admin/src/components/PluginSettings.tsx:146
msgid "Failed to load plugin settings"
msgstr ""

#. placeholder {0}: error.message
#: packages/admin/src/components/PluginManager.tsx:161
msgid "Failed to load plugins: {0}"
msgstr "加载插件失败：{0}"

#: packages/admin/src/components/RegistryBrowse.tsx:117
msgid "Failed to load plugins. The registry aggregator may be unreachable."
msgstr "加载插件失败。仓库聚合服务可能无法访问。"

#: packages/admin/src/components/RevisionHistory.tsx:198
msgid "Failed to load revisions"
msgstr "加载修订历史失败"

#: packages/admin/src/components/SetupWizard.tsx:541
msgid "Failed to load setup"
msgstr "加载设置失败"

#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:89
msgid "Failed to load theme"
msgstr "加载主题失败"

#. placeholder {0}: usersQuery.error.message
#: packages/admin/src/routes/users.tsx:205
msgid "Failed to load users: {0}"
msgstr "加载用户失败：{0}"

#: packages/admin/src/components/SandboxedPluginWidget.tsx:46
msgid "Failed to load widget"
msgstr "加载小部件失败"

#: packages/admin/src/router.tsx:1794
msgid "Failed to perform bulk action"
msgstr "执行批量操作失败"

#: packages/admin/src/lib/api/content.ts:346
msgid "Failed to permanently delete content"
msgstr "永久删除内容失败"

#: packages/admin/src/components/WordPressImport.tsx:339
msgid "Failed to prepare import"
msgstr "准备导入失败"

#: packages/admin/src/router.tsx:529
#: packages/admin/src/router.tsx:1089
msgid "Failed to publish"
msgstr "发布失败"

#: packages/admin/src/lib/api/byline-fields.ts:106
msgid "Failed to read byline field usage"
msgstr "读取署名字段使用情况失败"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:124
msgid "Failed to remove domain"
msgstr "移除域名失败"

#: packages/admin/src/components/settings/PasskeyItem.tsx:93
#: packages/admin/src/components/settings/SecuritySettings.tsx:66
msgid "Failed to remove passkey"
msgstr "移除通行密钥失败"

#: packages/admin/src/lib/api/media.ts:250
msgid "Failed to rename media folder"
msgstr ""

#: packages/admin/src/components/settings/SecuritySettings.tsx:50
msgid "Failed to rename passkey"
msgstr "重命名通行密钥失败"

#: packages/admin/src/lib/api/byline-fields.ts:156
msgid "Failed to reorder byline fields"
msgstr "重新排序署名字段失败"

#: packages/admin/src/lib/api/schema.ts:332
msgid "Failed to reorder content types"
msgstr ""

#: packages/admin/src/lib/api/schema.ts:315
#: packages/admin/src/routes/byline-schema.tsx:152
msgid "Failed to reorder fields"
msgstr "重新排序字段失败"

#: packages/admin/src/lib/api/widgets.ts:158
msgid "Failed to reorder widgets"
msgstr "重新排序小部件失败"

#: packages/admin/src/router.tsx:476
msgid "Failed to restore"
msgstr "恢复失败"

#: packages/admin/src/lib/api/content.ts:335
msgid "Failed to restore content"
msgstr "恢复内容失败"

#: packages/admin/src/lib/api/content.ts:602
#: packages/admin/src/lib/api/content.ts:607
msgid "Failed to restore revision"
msgstr "恢复版本失败"

#: packages/admin/src/lib/api/api-tokens.ts:99
msgid "Failed to revoke API token"
msgstr "撤销 API 令牌失败"

#: packages/admin/src/components/WordPressImport.tsx:396
msgid "Failed to rewrite URLs"
msgstr "重写 URL 失败"

#: packages/admin/src/router.tsx:728
#: packages/admin/src/router.tsx:1011
#: packages/admin/src/router.tsx:2300
msgid "Failed to save"
msgstr "保存失败"

#: packages/admin/src/components/settings/BackupSettings.tsx:102
msgid "Failed to save backup settings"
msgstr ""

#: packages/admin/src/routes/byline-schema.tsx:122
msgid "Failed to save field"
msgstr "保存字段失败"

#: packages/admin/src/components/PluginSettings.tsx:74
#: packages/admin/src/components/settings/GeneralSettings.tsx:77
#: packages/admin/src/components/settings/SeoSettings.tsx:76
#: packages/admin/src/components/settings/SocialSettings.tsx:66
msgid "Failed to save settings"
msgstr "保存设置失败"

#: packages/admin/src/router.tsx:1149
msgid "Failed to schedule"
msgstr "安排发布失败"

#: packages/admin/src/components/LoginPage.tsx:71
#: packages/admin/src/components/LoginPage.tsx:76
msgid "Failed to send magic link"
msgstr "发送免密登录链接失败"

#: packages/admin/src/lib/api/users.ts:128
msgid "Failed to send recovery link"
msgstr "发送恢复链接失败"

#: packages/admin/src/components/settings/EmailSettings.tsx:44
#: packages/admin/src/lib/api/email-settings.ts:45
msgid "Failed to send test email"
msgstr "发送测试邮件失败"

#: packages/admin/src/components/SignupPage.tsx:366
msgid "Failed to send verification email"
msgstr "发送验证邮件失败"

#: packages/admin/src/components/TaxonomySidebar.tsx:159
msgid "Failed to set entry terms"
msgstr "设置条目词条失败"

#: packages/admin/src/lib/api/marketplace.ts:249
#: packages/admin/src/lib/api/registry.ts:916
msgid "Failed to uninstall plugin"
msgstr "卸载插件失败"

#: packages/admin/src/router.tsx:1107
msgid "Failed to unpublish"
msgstr "取消发布失败"

#: packages/admin/src/router.tsx:1170
msgid "Failed to unschedule"
msgstr "取消安排发布失败"

#: packages/admin/src/router.tsx:552
msgid "Failed to update"
msgstr ""

#. placeholder {0}: taxonomy.label.toLowerCase()
#: packages/admin/src/components/TaxonomySidebar.tsx:415
msgid "Failed to update {0}"
msgstr "更新 {0} 失败"

#: packages/admin/src/lib/api/backups.ts:46
msgid "Failed to update backup settings"
msgstr ""

#: packages/admin/src/lib/api/byline-fields.ts:135
msgid "Failed to update byline field"
msgstr "更新署名字段失败"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:107
msgid "Failed to update domain"
msgstr "更新域名失败"

#: packages/admin/src/lib/api/media.ts:523
msgid "Failed to update media"
msgstr "更新媒体失败"

#: packages/admin/src/lib/api/marketplace.ts:232
#: packages/admin/src/lib/api/registry.ts:834
msgid "Failed to update plugin"
msgstr "更新插件失败"

#: packages/admin/src/lib/api/plugins.ts:172
msgid "Failed to update plugin MCP access"
msgstr ""

#: packages/admin/src/lib/api/plugins.ts:133
msgid "Failed to update plugin settings"
msgstr ""

#: packages/admin/src/lib/api/sections.ts:100
msgid "Failed to update section"
msgstr "更新分区失败"

#: packages/admin/src/lib/api/settings.ts:64
msgid "Failed to update settings"
msgstr "更新设置失败"

#: packages/admin/src/router.tsx:1753
msgid "Failed to update status"
msgstr "更新状态失败"

#: packages/admin/src/lib/api/media.ts:383
msgid "Failed to upload file"
msgstr "上传文件失败"

#: packages/admin/src/lib/api/media.ts:450
msgid "Failed to upload media"
msgstr "上传媒体失败"

#: packages/admin/src/lib/api/media.ts:627
msgid "Failed to upload to provider"
msgstr "上传到提供者失败"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:249
msgid "Failed to verify authentication"
msgstr "验证身份认证失败"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:254
msgid "Failed to verify registration"
msgstr "验证注册失败"

#: packages/admin/src/components/RegistryPluginDetail.tsx:818
msgid "FAQ"
msgstr "常见问题"

#: packages/admin/src/components/settings/GeneralSettings.tsx:251
#: packages/admin/src/components/settings/GeneralSettings.tsx:258
msgid "Favicon"
msgstr "网站图标"

#: packages/admin/src/components/WordPressImport.tsx:1198
msgid "Feature"
msgstr "功能"

#: packages/admin/src/components/WordPressImport.tsx:1166
msgid "Featured Images"
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:455
#: packages/admin/src/components/ContentTypeList.tsx:187
msgid "Features"
msgstr "功能"

#: packages/admin/src/components/WordPressImport.tsx:829
msgid "Fetching content from the EmDash Exporter API."
msgstr "正在从 EmDash Exporter API 获取内容。"

#: packages/admin/src/routes/byline-schema.tsx:95
msgid "Field created"
msgstr "字段已创建"

#: packages/admin/src/routes/byline-schema.tsx:133
msgid "Field deleted"
msgstr "字段已删除"

#: packages/admin/src/components/FieldEditor.tsx:596
msgid "Field label"
msgstr "字段标签"

#: packages/admin/src/components/FieldEditor.tsx:440
msgid "Field Label"
msgstr "字段标签"

#: packages/admin/src/components/FieldEditor.tsx:452
msgid "Field slugs cannot be changed after creation"
msgstr "字段别名创建后无法更改"

#: packages/admin/src/components/BylineFieldEditor.tsx:268
msgid "Field type cannot be changed after creation."
msgstr "字段类型在创建后无法更改。"

#: packages/admin/src/routes/byline-schema.tsx:115
msgid "Field updated"
msgstr "字段已更新"

#: packages/admin/src/components/ContentTypeEditor.tsx:596
msgid "Fields"
msgstr "字段"

#: packages/admin/src/components/WordPressImport.tsx:2349
msgid "Fields created:"
msgstr "已创建字段："

#: packages/admin/src/components/FieldEditor.tsx:239
msgid "File"
msgstr "文件"

#. placeholder {0}: progress.current
#: packages/admin/src/components/WordPressImport.tsx:2174
msgid "File {0}"
msgstr "文件 {0}"

#: packages/admin/src/components/FieldEditor.tsx:240
msgid "File from media library"
msgstr "来自媒体库的文件"

#: packages/admin/src/components/MediaDetailPanel.tsx:666
#: packages/admin/src/components/MediaDetailPanel.tsx:683
#: packages/admin/src/components/MediaLibrary.tsx:1207
msgid "Filename"
msgstr "文件名"

#: packages/admin/src/components/MediaDetailPanel.tsx:208
msgid "Filename cannot be changed after upload"
msgstr "文件名上传后无法更改"

#: packages/admin/src/components/MediaUploadDialog.tsx:405
msgid "Files upload as soon as you add them."
msgstr ""

#: packages/admin/src/components/ContentList.tsx:907
msgid "Filter by author"
msgstr "按作者筛选"

#: packages/admin/src/components/BylineFilter.tsx:116
msgid "Filter by byline"
msgstr ""

#: packages/admin/src/components/MarketplaceBrowse.tsx:115
msgid "Filter by capability"
msgstr "按功能筛选"

#: packages/admin/src/components/comments/CommentInbox.tsx:211
msgid "Filter by collection"
msgstr "按合集筛选"

#: packages/admin/src/components/ContentList.tsx:1029
msgid "Filter by date range: {rangeLabel}"
msgstr ""

#: packages/admin/src/components/users/UserList.tsx:75
msgid "Filter by role"
msgstr "按角色筛选"

#: packages/admin/src/components/Sections.tsx:245
msgid "Filter by source"
msgstr "按来源筛选"

#: packages/admin/src/components/ContentList.tsx:889
#: packages/admin/src/components/Redirects.tsx:427
msgid "Filter by status"
msgstr "按状态筛选"

#: packages/admin/src/components/MediaLibrary.tsx:994
#: packages/admin/src/components/Redirects.tsx:433
msgid "Filter by type"
msgstr "按类型筛选"

#: packages/admin/src/routes/bylines.tsx:408
msgid "Filter byline type"
msgstr "按署名类型筛选"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:592
msgid "Finish any current edits."
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:1313
msgid "First page"
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:64
msgid "First-time commenters only"
msgstr "仅首次评论者"

#: packages/admin/src/components/MediaDetailPanel.tsx:507
#: packages/admin/src/components/MediaDetailPanel.tsx:520
#: packages/admin/src/components/MediaDetailPanel.tsx:862
msgid "Focal point"
msgstr ""

#: packages/admin/src/components/FocalPointEditor.tsx:141
msgid "Focal point. Use arrow keys to move it."
msgstr ""

#: packages/admin/src/components/MediaFolderDialog.tsx:67
msgid "Folder deleted"
msgstr ""

#: packages/admin/src/components/MediaFolderDialog.tsx:84
#: packages/admin/src/components/MediaFolderDialog.tsx:96
msgid "Folder name must be between 1 and 200 characters"
msgstr ""

#: packages/admin/src/router.tsx:1423
msgid "Folder no longer exists"
msgstr ""

#: packages/admin/src/components/MediaFolderDialog.tsx:50
msgid "Folder successfully created"
msgstr ""

#: packages/admin/src/components/MediaFolderDialog.tsx:50
msgid "Folder successfully edited"
msgstr ""

#: packages/admin/src/components/MediaFolderDialog.tsx:62
msgid "Folder unavailable"
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:1021
msgid "Folders"
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:772
#: packages/admin/src/components/MediaLibrary.tsx:1031
#: packages/admin/src/components/MediaLibrary.tsx:1555
msgid "Folders could not be loaded."
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:829
msgid "Folders navigation"
msgstr ""

#: packages/admin/src/components/AllowedTypesEditor.tsx:72
msgid "Fonts"
msgstr "字体"

#: packages/admin/src/components/WordPressImport.tsx:1414
msgid "For a complete import including drafts and all content, export from WordPress."
msgstr "如需完整导入（包括草稿和所有内容），请从 WordPress 导出。"

#: packages/admin/src/components/WordPressImport.tsx:67
msgid "For the best import experience, install the <0>EmDash Exporter</0> plugin on your WordPress site."
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:618
msgid "Format:"
msgstr ""

#. placeholder {0}: formatter.format(from)
#: packages/admin/src/components/ContentList.tsx:980
msgid "From {0}"
msgstr ""

#: packages/admin/src/components/BylineCreditsEditor.tsx:648
msgid "From the post owner"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:164
#: packages/admin/src/components/WordPressImport.tsx:1173
msgid "Full"
msgstr ""

#: packages/admin/src/components/users/roleDefinitions.ts:43
msgid "Full access"
msgstr "完全访问权限"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:103
msgid "Full admin access"
msgstr "完全管理员访问权限"

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:175
#: packages/admin/src/components/PortableTextEditor.tsx:2727
msgid "Gallery"
msgstr ""

#: packages/admin/src/components/editor/GalleryNode.tsx:211
#: packages/admin/src/components/editor/GalleryNode.tsx:212
msgid "Gallery settings"
msgstr ""

#: packages/admin/src/components/Settings.tsx:52
msgid "General"
msgstr "常规"

#: packages/admin/src/components/settings/GeneralSettings.tsx:118
msgid "General Settings"
msgstr "常规设置"

#: packages/admin/src/components/BylineCreditsEditor.tsx:997
msgid "Generated automatically."
msgstr ""

#: packages/admin/src/components/TaxonomyManager.tsx:816
msgid "Genres"
msgstr "类型"

#: packages/admin/src/components/WelcomeModal.tsx:154
msgid "Get Started"
msgstr "开始使用"

#: packages/admin/src/components/settings/SocialSettings.tsx:147
msgid "GitHub"
msgstr "GitHub"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:329
msgid "Give this passkey a name to help you identify it later."
msgstr "为此通行密钥命名以便日后识别。"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:35
msgid "Go"
msgstr "Go"

#: packages/admin/src/components/WordPressImport.tsx:2434
#: packages/admin/src/router.tsx:2536
msgid "Go to Dashboard"
msgstr "前往仪表板"

#: packages/admin/src/components/settings/SeoSettings.tsx:233
#: packages/admin/src/components/settings/SeoSettings.tsx:239
msgid "Google Verification"
msgstr "Google 验证"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:36
msgid "GraphQL"
msgstr "GraphQL"

#: packages/admin/src/components/MediaLibrary.tsx:950
msgid "Grid view"
msgstr "网格视图"

#: packages/admin/src/components/Redirects.tsx:167
msgid "Group (optional)"
msgstr "组（可选）"

#: packages/admin/src/components/Widgets.tsx:162
msgid "Group by"
msgstr ""

#: packages/admin/src/routes/bylines.tsx:555
msgid "Guest byline"
msgstr "访客署名"

#: packages/admin/src/routes/bylines.tsx:413
msgid "Guest only"
msgstr "仅访客"

#: packages/admin/src/components/editor/BlockMenu.tsx:63
#: packages/admin/src/components/editor/HeadingDropdownMenu.tsx:32
#: packages/admin/src/components/PortableTextEditor.tsx:1398
msgid "Heading 1"
msgstr "标题 1"

#: packages/admin/src/components/editor/BlockMenu.tsx:71
#: packages/admin/src/components/editor/HeadingDropdownMenu.tsx:33
#: packages/admin/src/components/PortableTextEditor.tsx:1408
msgid "Heading 2"
msgstr "标题 2"

#: packages/admin/src/components/editor/BlockMenu.tsx:79
#: packages/admin/src/components/editor/HeadingDropdownMenu.tsx:34
#: packages/admin/src/components/PortableTextEditor.tsx:1418
msgid "Heading 3"
msgstr "标题 3"

#: packages/admin/src/components/editor/BlockMenu.tsx:87
#: packages/admin/src/components/editor/HeadingDropdownMenu.tsx:35
#: packages/admin/src/components/PortableTextEditor.tsx:1428
msgid "Heading 4"
msgstr ""

#: packages/admin/src/components/editor/BlockMenu.tsx:95
#: packages/admin/src/components/editor/HeadingDropdownMenu.tsx:36
#: packages/admin/src/components/PortableTextEditor.tsx:1438
msgid "Heading 5"
msgstr ""

#: packages/admin/src/components/editor/BlockMenu.tsx:103
#: packages/admin/src/components/editor/HeadingDropdownMenu.tsx:37
#: packages/admin/src/components/PortableTextEditor.tsx:1448
msgid "Heading 6"
msgstr ""

#: packages/admin/src/components/editor/HeadingDropdownMenu.tsx:142
#: packages/admin/src/components/editor/HeadingDropdownMenu.tsx:158
msgid "Headings"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:308
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:497
msgid "Height"
msgstr "高度"

#: packages/admin/src/components/Sections.tsx:180
msgid "Hero Banner"
msgstr "主视觉横幅"

#: packages/admin/src/components/SectionEditor.tsx:307
msgid "hero, banner, cta"
msgstr "主视觉, 横幅, CTA 按钮"

#: packages/admin/src/components/SeoPanel.tsx:243
#: packages/admin/src/components/SeoPanel.tsx:246
msgid "Hide from search engines"
msgstr "对搜索引擎隐藏"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:276
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:283
msgid "Hide token"
msgstr "隐藏令牌"

#: packages/admin/src/components/TaxonomyManager.tsx:839
msgid "Hierarchical (like categories, with parent/child relationships)"
msgstr "层级式（类似分类，具有父子关系）"

#: packages/admin/src/components/Redirects.tsx:226
#: packages/admin/src/components/Redirects.tsx:479
msgid "Hits"
msgstr "点击量"

#: packages/admin/src/components/MenuEditor.tsx:416
msgid "Home"
msgstr "首页"

#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:231
msgid "Homepage"
msgstr "主页"

#: packages/admin/src/components/PluginManager.tsx:420
msgid "Hooks"
msgstr "钩子"

#. placeholder {0}: Math.round(next.focalX * 100)
#. placeholder {1}: Math.round(next.focalY * 100)
#: packages/admin/src/components/FocalPointEditor.tsx:73
msgid "Horizontal {0}%, vertical {1}%"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1536
msgid "How to create an Application Password"
msgstr "如何创建应用程序密码"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:37
#: packages/admin/src/components/editor/HtmlBlockNode.tsx:114
#: packages/admin/src/components/PortableTextEditor.tsx:1498
msgid "HTML"
msgstr "HTML"

#: packages/admin/src/components/editor/HtmlBlockNode.tsx:147
msgid "HTML source"
msgstr "HTML 源代码"

#: packages/admin/src/components/PortableTextEditor.tsx:3599
#: packages/admin/src/components/PortableTextEditor.tsx:4209
msgid "https://..."
msgstr ""

#: packages/admin/src/components/MenuEditor.tsx:424
msgid "https://example.com or /about"
msgstr "https://example.com 或 /about"

#: packages/admin/src/components/MediaPickerModal.tsx:556
msgid "https://example.com/image.jpg"
msgstr "https://example.com/image.jpg"

#: packages/admin/src/components/WordPressImport.tsx:1107
msgid "https://yoursite.com"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:604
msgid "I’ve completed these steps and understand tracking can’t be turned off."
msgstr ""

#: packages/admin/src/components/MarketplaceBrowse.tsx:243
#: packages/admin/src/components/MarketplacePluginDetail.tsx:153
msgid "Icon blurred due to image audit"
msgstr "由于图像审计，图标已模糊"

#: packages/admin/src/components/ContentTypeEditor.tsx:105
msgid "ID"
msgstr "ID"

#: packages/admin/src/components/LoginPage.tsx:104
msgid "If an account exists for <0>{email}</0>, we've sent a sign-in link."
msgstr "如果存在与 <0>{email}</0> 关联的账号，我们已发送登录链接。"

#: packages/admin/src/components/FieldEditor.tsx:233
#: packages/admin/src/components/FieldEditor.tsx:616
#: packages/admin/src/components/PortableTextEditor.tsx:2712
msgid "Image"
msgstr "图片"

#. placeholder {0}: index + 1
#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:298
msgid "Image {0}"
msgstr ""

#: packages/admin/src/components/FieldEditor.tsx:234
msgid "Image from media library"
msgstr "来自媒体库的图片"

#: packages/admin/src/components/BlockKitMediaPickerField.tsx:67
#: packages/admin/src/components/ImageFieldRenderer.tsx:137
#: packages/admin/src/components/ImageFieldRenderer.tsx:206
msgid "Image not found"
msgstr "未找到图片"

#: packages/admin/src/components/editor/ImageNode.tsx:221
#: packages/admin/src/components/editor/ImageNode.tsx:222
msgid "Image settings"
msgstr "图片设置"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:225
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:410
msgid "Image Settings"
msgstr "图片设置"

#: packages/admin/src/components/SeoImageField.tsx:43
msgid "Image shown when this page is shared on social media"
msgstr "当此页面在社交媒体上分享时显示的图片"

#: packages/admin/src/components/MediaPickerModal.tsx:557
msgid "Image URL"
msgstr "图片 URL"

#: packages/admin/src/components/AllowedTypesEditor.tsx:64
#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:196
#: packages/admin/src/components/MediaLibrary.tsx:989
msgid "Images"
msgstr "图片"

#: packages/admin/src/components/AdminCommandPalette.tsx:226
#: packages/admin/src/components/Sidebar.tsx:333
#: packages/admin/src/components/WordPressImport.tsx:756
msgid "Import"
msgstr "导入"

#. placeholder {0}: postType.name
#: packages/admin/src/components/WordPressImport.tsx:1974
msgid "Import {0}"
msgstr "导入 {0}"

#: packages/admin/src/components/WordPressImport.tsx:1382
msgid "Import all content directly including drafts, custom post types, ACF fields, and SEO data. No file download needed."
msgstr "直接导入所有内容，包括草稿、自定义文章类型、ACF 字段和 SEO 数据。无需下载文件。"

#: packages/admin/src/components/WordPressImport.tsx:2432
msgid "Import Another File"
msgstr "导入另一个文件"

#: packages/admin/src/components/WordPressImport.tsx:1192
msgid "Import Capabilities"
msgstr "导入功能"

#: packages/admin/src/components/WordPressImport.tsx:2320
msgid "Import Complete"
msgstr "导入完成"

#: packages/admin/src/components/WordPressImport.tsx:2321
msgid "Import Completed with Errors"
msgstr "导入完成但有错误"

#: packages/admin/src/components/WordPressImport.tsx:1715
msgid "Import failed"
msgstr "导入失败"

#: packages/admin/src/components/WordPressImport.tsx:709
msgid "Import from WordPress"
msgstr "从 WordPress 导入"

#: packages/admin/src/components/WordPressImport.tsx:2123
msgid "Import Media"
msgstr "导入媒体"

#: packages/admin/src/components/WordPressImport.tsx:2076
msgid "Import Media Files"
msgstr "导入媒体文件"

#: packages/admin/src/components/WordPressImport.tsx:711
msgid "Import posts, pages, and custom post types from WordPress."
msgstr "从 WordPress 导入文章、页面和自定义文章类型。"

#: packages/admin/src/components/WordPressImport.tsx:1830
msgid "Import site configuration from WordPress."
msgstr "从 WordPress 导入站点配置。"

#: packages/admin/src/components/WordPressImport.tsx:1380
msgid "Import via EmDash Exporter"
msgstr "通过 EmDash Exporter 导入"

#: packages/admin/src/components/Sections.tsx:47
msgid "Imported"
msgstr "已导入"

#: packages/admin/src/components/WordPressImport.tsx:2360
msgid "Imported by Collection"
msgstr "按合集导入"

#. placeholder {0}: wpImportProgress.comments
#: packages/admin/src/components/WordPressImport.tsx:921
msgid "Importing comments... {0}"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:938
msgid "Importing content..."
msgstr "正在导入内容..."

#. placeholder {0}: wpImportProgress.processed
#: packages/admin/src/components/WordPressImport.tsx:919
msgid "Importing content... {0}"
msgstr ""

#. placeholder {0}: wpImportProgress.processed
#: packages/admin/src/components/WordPressImport.tsx:918
msgid "Importing content... {0} of {totalSelectedPosts}"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:2155
msgid "Importing Media"
msgstr "正在导入媒体"

#: packages/admin/src/components/WordPressImport.tsx:922
msgid "Importing menus and site settings..."
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:265
msgid "In trash"
msgstr ""

#: packages/admin/src/components/BylineFilter.tsx:187
#: packages/admin/src/components/BylineFilter.tsx:193
msgid "Include inferred bylines"
msgstr ""

#: packages/admin/src/components/SetupWizard.tsx:138
msgid "Include sample content (recommended for new sites)"
msgstr "包含示例内容（推荐新站点使用）"

#: packages/admin/src/components/WordPressImport.tsx:1996
msgid "Incompatible"
msgstr "不兼容"

#: packages/admin/src/components/MediaLibrary.tsx:891
msgid "Index existing content and keep Used in results up to date."
msgstr ""

#: packages/admin/src/components/FieldEditor.tsx:481
#: packages/admin/src/components/RegistryPluginDetail.tsx:543
msgid "Indexed"
msgstr "已索引"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:495
msgid "Indexing"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:472
msgid "Indexing existing content"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:4069
msgid "Inline Code"
msgstr "行内代码"

#: packages/admin/src/components/MediaPickerModal.tsx:568
#: packages/admin/src/components/MediaPickerModal.tsx:812
msgid "Insert"
msgstr "插入"

#. placeholder {0}: block?.label || ""
#: packages/admin/src/components/PortableTextEditor.tsx:1923
msgid "Insert {0}"
msgstr "插入 {0}"

#: packages/admin/src/components/PortableTextEditor.tsx:1479
msgid "Insert a blockquote"
msgstr "插入引用块"

#: packages/admin/src/components/PortableTextEditor.tsx:1489
msgid "Insert a code block"
msgstr "插入代码块"

#: packages/admin/src/components/PortableTextEditor.tsx:1507
msgid "Insert a horizontal rule"
msgstr "插入水平分隔线"

#: packages/admin/src/components/PortableTextEditor.tsx:2743
msgid "Insert a reusable section"
msgstr "插入可复用区块"

#: packages/admin/src/components/PortableTextEditor.tsx:1517
msgid "Insert a table"
msgstr "插入表格"

#: packages/admin/src/components/PortableTextEditor.tsx:2713
msgid "Insert an image"
msgstr "插入图片"

#: packages/admin/src/components/PortableTextEditor.tsx:2728
msgid "Insert an image gallery"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:1751
msgid "Insert block"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:4021
#: packages/admin/src/components/PortableTextEditor.tsx:4031
msgid "Insert block after current block"
msgstr ""

#: packages/admin/src/components/editor/DragHandleWrapper.tsx:170
msgid "Insert block below"
msgstr ""

#: packages/admin/src/components/MediaPickerModal.tsx:550
msgid "Insert from URL"
msgstr "从 URL 插入"

#: packages/admin/src/components/PortableTextEditor.tsx:4135
msgid "Insert HTML"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:4132
msgid "Insert Image"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:4179
#: packages/admin/src/components/PortableTextEditor.tsx:4193
msgid "Insert Link"
msgstr "插入链接"

#: packages/admin/src/components/PortableTextEditor.tsx:1499
msgid "Insert raw HTML"
msgstr "插入原始 HTML"

#: packages/admin/src/components/SectionPickerModal.tsx:58
msgid "Insert Section"
msgstr "插入区块"

#: packages/admin/src/components/settings/SocialSettings.tsx:163
msgid "Instagram"
msgstr "Instagram"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:203
#: packages/admin/src/components/RegistryPluginDetail.tsx:591
msgid "Install"
msgstr "安装"

#: packages/admin/src/components/settings/EmailSettings.tsx:147
msgid "Install and activate an email provider plugin to enable email features like invitations, magic links, and password recovery."
msgstr "安装并激活电子邮件提供商插件以启用电子邮件功能，如邀请、免密登录链接和密码恢复。"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:197
msgid "Install blocked"
msgstr "安装被阻止"

#: packages/admin/src/components/WordPressImport.tsx:1057
msgid "Install the EmDash Exporter plugin on your WordPress site and generate a key under Tools → EmDash Migration."
msgstr ""

#: packages/admin/src/components/RegistryPluginDetail.tsx:817
msgid "Installation"
msgstr "安装"

#: packages/admin/src/components/MarketplaceBrowse.tsx:263
#: packages/admin/src/components/MarketplacePluginDetail.tsx:184
#: packages/admin/src/components/RegistryBrowse.tsx:207
#: packages/admin/src/components/RegistryPluginDetail.tsx:583
msgid "Installed"
msgstr "已安装"

#. placeholder {0}: plugin.marketplaceVersion || plugin.version
#: packages/admin/src/components/PluginManager.tsx:587
msgid "Installed from marketplace (v{0})"
msgstr "已从市场安装 (v{0})"

#: packages/admin/src/components/PluginManager.tsx:606
msgid "Installed:"
msgstr "已安装："

#: packages/admin/src/components/CapabilityConsentDialog.tsx:198
msgid "Installing..."
msgstr "正在安装..."

#: packages/admin/src/components/FieldEditor.tsx:197
#: packages/admin/src/components/FieldEditor.tsx:611
msgid "Integer"
msgstr "整数"

#: packages/admin/src/components/InviteAcceptPage.tsx:152
msgid "Invalid invite link"
msgstr "无效的邀请链接"

#: packages/admin/src/components/ContentEditor.tsx:1635
msgid "Invalid JSON"
msgstr "无效的 JSON"

#: packages/admin/src/components/SignupPage.tsx:275
msgid "Invalid link"
msgstr "链接无效"

#: packages/admin/src/components/InviteAcceptPage.tsx:241
msgid "Invite Error"
msgstr "邀请错误"

#: packages/admin/src/components/InviteAcceptPage.tsx:150
msgid "Invite expired"
msgstr "邀请已过期"

#: packages/admin/src/components/users/InviteUserModal.tsx:79
msgid "Invite Link Created"
msgstr "邀请链接已创建"

#: packages/admin/src/components/users/InviteUserModal.tsx:79
#: packages/admin/src/components/users/UserList.tsx:57
msgid "Invite User"
msgstr "邀请用户"

#: packages/admin/src/components/users/UserList.tsx:133
msgid "Invite your first team member"
msgstr "邀请您的第一位团队成员"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:98
msgid "Invoke MCP tools from all enabled plugins"
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:517
msgid "Invoke only this plugin's enabled MCP tools"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:3643
#: packages/admin/src/components/PortableTextEditor.tsx:4048
msgid "Italic"
msgstr "斜体"

#. placeholder {0}: index + 1
#: packages/admin/src/components/PortableTextEditor.tsx:2304
#: packages/admin/src/components/RepeaterField.tsx:239
msgid "Item {0}"
msgstr "项目 {0}"

#: packages/admin/src/components/MenuEditor.tsx:175
msgid "Item added"
msgstr "项目已添加"

#: packages/admin/src/components/MenuEditor.tsx:187
msgid "Item deleted"
msgstr "项目已删除"

#: packages/admin/src/components/MenuEditor.tsx:212
msgid "Item updated"
msgstr "项目已更新"

#: packages/admin/src/components/RegistryPluginDetail.tsx:455
msgid "Its listing has not been approved for display. Check back later."
msgstr ""

#: packages/admin/src/components/SetupWizard.tsx:213
#: packages/admin/src/components/SignupPage.tsx:221
msgid "Jane Doe"
msgstr "张三"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:38
msgid "Java"
msgstr "Java"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:39
msgid "JavaScript"
msgstr "JavaScript"

#: packages/admin/src/components/BylineFieldEditor.tsx:235
msgid "Job title"
msgstr "职位"

#: packages/admin/src/components/BylineFieldEditor.tsx:246
msgid "job_title"
msgstr "job_title"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:40
#: packages/admin/src/components/FieldEditor.tsx:251
msgid "JSON"
msgstr "JSON"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:41
msgid "JSX"
msgstr "JSX"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:316
msgid "Keep editing paused and deploy a compatible EmDash version before continuing."
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:460
msgid "Keep editing paused, fix the server issue, then retry setup."
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:598
msgid "Keep this page open until setup finishes. If you leave, return to continue where it stopped."
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:934
msgid "Keep this tab open. The import runs in small steps and can be safely re-run if interrupted."
msgstr ""

#: packages/admin/src/components/BylineCreditsEditor.tsx:535
msgid "Keep typing to narrow the list."
msgstr ""

#: packages/admin/src/components/MarketplacePluginDetail.tsx:304
#: packages/admin/src/components/SectionEditor.tsx:304
#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:189
msgid "Keywords"
msgstr "关键词"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:42
msgid "Kotlin"
msgstr "Kotlin"

#: packages/admin/src/components/BylineFieldEditor.tsx:232
#: packages/admin/src/components/FieldEditor.tsx:437
#: packages/admin/src/components/FieldEditor.tsx:582
#: packages/admin/src/components/MenuEditor.tsx:416
#: packages/admin/src/components/MenuEditor.tsx:593
#: packages/admin/src/components/MenuList.tsx:169
#: packages/admin/src/components/TaxonomyManager.tsx:813
#: packages/admin/src/components/Widgets.tsx:436
#: packages/admin/src/routes/byline-schema.tsx:234
msgid "Label"
msgstr "标签"

#: packages/admin/src/components/ContentTypeEditor.tsx:393
msgid "Label (Plural)"
msgstr "标签（复数）"

#: packages/admin/src/components/ContentTypeEditor.tsx:385
msgid "Label (Singular)"
msgstr "标签（单数）"

#: packages/admin/src/components/FocalPointEditor.tsx:32
msgid "Landscape"
msgstr ""

#: packages/admin/src/components/editor/CodeBlockNode.tsx:280
#: packages/admin/src/components/LoginPage.tsx:347
#: packages/admin/src/components/Settings.tsx:122
#: packages/admin/src/components/Settings.tsx:132
#: packages/admin/src/components/Settings.tsx:146
msgid "Language"
msgstr "语言"

#: packages/admin/src/components/PortableTextEditor.tsx:1399
msgid "Large section heading"
msgstr "大章节标题"

#: packages/admin/src/components/PluginManager.tsx:612
msgid "Last enabled:"
msgstr "最后启用："

#: packages/admin/src/components/users/UserDetail.tsx:227
msgid "Last login"
msgstr "最后登录"

#: packages/admin/src/components/users/UserList.tsx:100
msgid "Last Login"
msgstr "上次登录"

#: packages/admin/src/components/MediaLibrary.tsx:1316
msgid "Last page"
msgstr ""

#: packages/admin/src/components/Redirects.tsx:227
msgid "Last seen"
msgstr "最后访问"

#: packages/admin/src/components/users/UserDetail.tsx:223
msgid "Last updated"
msgstr "最后更新"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:373
#: packages/admin/src/components/settings/PasskeyItem.tsx:154
msgid "Last used"
msgstr "最后使用"

#. placeholder {0}: new Date(cred.lastUsedAt).toLocaleDateString()
#: packages/admin/src/components/users/UserDetail.tsx:262
msgid "Last used {0}"
msgstr "最后使用于 {0}"

#: packages/admin/src/components/settings/BackupSettings.tsx:337
msgid "Learn more"
msgstr ""

#: packages/admin/src/components/auth/PasskeyLogin.tsx:331
msgid "Leave blank to use a discoverable passkey."
msgstr "留空以使用可发现的通行密钥。"

#: packages/admin/src/components/WordPressImport.tsx:2513
msgid "Leave unassigned"
msgstr "不分配"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:160
msgid "Left"
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:330
#: packages/admin/src/components/MediaLibrary.tsx:489
#: packages/admin/src/components/MediaLibrary.tsx:762
#: packages/admin/src/components/MediaLibrary.tsx:1357
#: packages/admin/src/components/MediaPickerModal.tsx:212
#: packages/admin/src/components/MediaPickerModal.tsx:510
msgid "Library"
msgstr "库"

#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:203
msgid "License"
msgstr "许可证"

#: packages/admin/src/components/ThemeToggle.tsx:22
msgid "light"
msgstr "浅色"

#: packages/admin/src/components/ThemeToggle.tsx:24
msgid "Light"
msgstr "浅色"

#: packages/admin/src/components/Widgets.tsx:165
msgid "Limit"
msgstr ""

#: packages/admin/src/components/SignupPage.tsx:273
msgid "Link expired"
msgstr "链接已过期"

#: packages/admin/src/components/FieldEditor.tsx:246
msgid "Link to another content item"
msgstr "链接到另一个内容项"

#. placeholder {0}: user.oauthAccounts.length
#: packages/admin/src/components/users/UserDetail.tsx:276
msgid "Linked Accounts ({0})"
msgstr "已关联账户 ({0})"

#: packages/admin/src/routes/bylines.tsx:414
msgid "Linked only"
msgstr "仅已关联"

#: packages/admin/src/routes/bylines.tsx:506
msgid "Linked user"
msgstr "已关联用户"

#: packages/admin/src/components/settings/SocialSettings.tsx:171
msgid "LinkedIn"
msgstr "LinkedIn"

#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:210
msgid "Links"
msgstr "链接"

#: packages/admin/src/components/MediaLibrary.tsx:959
msgid "List view"
msgstr "列表视图"

#: packages/admin/src/components/ContentEditor.tsx:726
#: packages/admin/src/components/ContentEditor.tsx:769
#: packages/admin/src/components/ContentSettingsPanel.tsx:262
msgid "Live View"
msgstr "实时预览"

#: packages/admin/src/components/ContentPickerModal.tsx:228
#: packages/admin/src/components/MarketplaceBrowse.tsx:200
#: packages/admin/src/components/MediaUsedIn.tsx:198
#: packages/admin/src/components/Redirects.tsx:560
#: packages/admin/src/components/RegistryBrowse.tsx:165
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:170
#: packages/admin/src/routes/bylines.tsx:468
msgid "Load more"
msgstr "加载更多"

#: packages/admin/src/components/ContentList.tsx:743
#: packages/admin/src/components/ContentList.tsx:801
#: packages/admin/src/components/MediaLibrary.tsx:1350
#: packages/admin/src/components/MediaPickerModal.tsx:776
#: packages/admin/src/components/users/UserList.tsx:162
msgid "Load More"
msgstr "加载更多"

#: packages/admin/src/components/MediaDetailPanel.tsx:791
#: packages/admin/src/components/MediaLibrary.tsx:1061
#: packages/admin/src/components/MediaLibrary.tsx:1251
msgid "Load more folders"
msgstr ""

#: packages/admin/src/router.tsx:2491
msgid "Loading"
msgstr ""

#: packages/admin/src/routes/byline-schema.tsx:257
msgid "Loading byline fields…"
msgstr "正在加载署名字段…"

#: packages/admin/src/components/ContentTypeList.tsx:198
msgid "Loading collections..."
msgstr "正在加载合集..."

#: packages/admin/src/components/comments/CommentInbox.tsx:299
msgid "Loading comments..."
msgstr "正在加载评论..."

#: packages/admin/src/router.tsx:2493
#: packages/admin/src/router.tsx:2505
msgid "Loading configuration..."
msgstr "正在加载配置..."

#: packages/admin/src/components/ContentPickerModal.tsx:164
msgid "Loading content..."
msgstr "正在加载内容..."

#: packages/admin/src/components/PortableTextEditor.tsx:3362
msgid "Loading editor..."
msgstr "正在加载编辑器..."

#: packages/admin/src/components/MediaLibrary.tsx:1005
#: packages/admin/src/components/MediaLibrary.tsx:1219
msgid "Loading folders"
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:748
msgid "Loading folders..."
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:619
msgid "Loading media usage tracking settings…"
msgstr ""

#: packages/admin/src/components/MenuEditor.tsx:342
msgid "Loading menu..."
msgstr "正在加载菜单..."

#: packages/admin/src/components/MenuList.tsx:95
msgid "Loading menus..."
msgstr "正在加载菜单..."

#: packages/admin/src/components/PluginManager.tsx:152
msgid "Loading plugins..."
msgstr "正在加载插件..."

#: packages/admin/src/components/Redirects.tsx:464
msgid "Loading redirects..."
msgstr "正在加载重定向..."

#: packages/admin/src/components/SectionPickerModal.tsx:95
#: packages/admin/src/components/Sections.tsx:252
msgid "Loading sections..."
msgstr "正在加载区块..."

#: packages/admin/src/components/PluginSettings.tsx:131
#: packages/admin/src/components/settings/GeneralSettings.tsx:129
#: packages/admin/src/components/settings/SeoSettings.tsx:128
#: packages/admin/src/components/settings/SocialSettings.tsx:100
msgid "Loading settings..."
msgstr "正在加载设置..."

#: packages/admin/src/components/SetupWizard.tsx:528
msgid "Loading setup..."
msgstr "正在加载设置..."

#: packages/admin/src/components/TaxonomyManager.tsx:1060
msgid "Loading terms..."
msgstr "正在加载词条..."

#: packages/admin/src/components/MediaUsedIn.tsx:111
msgid "Loading usage"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:372
msgid "Loading widgets..."
msgstr "正在加载小部件..."

#: packages/admin/src/components/ContentList.tsx:646
#: packages/admin/src/components/ContentList.tsx:743
#: packages/admin/src/components/ContentList.tsx:772
#: packages/admin/src/components/ContentList.tsx:801
#: packages/admin/src/components/ContentPickerModal.tsx:225
#: packages/admin/src/components/MarketplaceBrowse.tsx:200
#: packages/admin/src/components/MediaDetailPanel.tsx:271
#: packages/admin/src/components/MediaDetailPanel.tsx:287
#: packages/admin/src/components/MediaDetailPanel.tsx:289
#: packages/admin/src/components/MediaLibrary.tsx:1350
#: packages/admin/src/components/MediaPickerModal.tsx:776
#: packages/admin/src/components/MediaUsedIn.tsx:195
#: packages/admin/src/components/PortableTextEditor.tsx:2431
#: packages/admin/src/components/Redirects.tsx:560
#: packages/admin/src/components/RegistryBrowse.tsx:165
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:169
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:206
#: packages/admin/src/components/settings/BackupSettings.tsx:154
#: packages/admin/src/components/settings/EmailSettings.tsx:69
#: packages/admin/src/components/settings/SecuritySettings.tsx:99
#: packages/admin/src/components/TaxonomyManager.tsx:1014
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:170
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:244
#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:143
#: packages/admin/src/components/users/UserList.tsx:149
#: packages/admin/src/routes/bylines.tsx:468
msgid "Loading..."
msgstr "加载中..."

#: packages/admin/src/components/BylineFilter.tsx:147
msgid "Loading…"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:618
#: packages/admin/src/components/LocaleSwitcher.tsx:60
msgid "Locale"
msgstr "语言区域"

#: packages/admin/src/components/MediaDetailPanel.tsx:694
#: packages/admin/src/components/MediaDetailPanel.tsx:722
#: packages/admin/src/components/MediaDetailPanel.tsx:799
msgid "Location"
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:272
#: packages/admin/src/components/MediaDetailPanel.tsx:289
msgid "Location unavailable"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:296
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:297
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:485
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:486
msgid "Lock aspect ratio"
msgstr "锁定宽高比"

#: packages/admin/src/components/BylineFieldEditor.tsx:291
msgid "Locked because this field has stored values. Delete the values (or the field) to change this."
msgstr "已锁定，因为此字段有存储值。删除这些值（或删除该字段）才能更改。"

#: packages/admin/src/components/Header.tsx:109
msgid "Log out"
msgstr "退出登录"

#: packages/admin/src/components/settings/GeneralSettings.tsx:191
#: packages/admin/src/components/settings/GeneralSettings.tsx:198
msgid "Logo"
msgstr "徽标"

#: packages/admin/src/components/WordPressImport.tsx:1848
msgid "Logo & favicon"
msgstr "徽标和网站图标"

#: packages/admin/src/components/BylineFieldEditor.tsx:53
msgid "Long text"
msgstr "长文本"

#: packages/admin/src/components/FieldEditor.tsx:185
#: packages/admin/src/components/FieldEditor.tsx:609
msgid "Long Text"
msgstr "长文本"

#: packages/admin/src/components/Sections.tsx:193
msgid "Lowercase letters, numbers, and hyphens only"
msgstr "仅限小写字母、数字和连字符"

#: packages/admin/src/components/TaxonomyManager.tsx:831
msgid "Lowercase letters, numbers, and underscores only, starting with a letter"
msgstr "仅限小写字母、数字和下划线，以字母开头"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:43
msgid "Lua"
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:240
msgid "Main library"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:436
msgid "Main Sidebar"
msgstr "主侧边栏"

#: packages/admin/src/lib/api/marketplace.ts:285
#: packages/admin/src/lib/api/marketplace.ts:293
msgid "Make network requests"
msgstr "发起网络请求"

#: packages/admin/src/lib/api/marketplace.ts:286
#: packages/admin/src/lib/api/marketplace.ts:294
msgid "Make network requests to any host (unrestricted)"
msgstr "向任何主机发起网络请求（不受限制）"

#: packages/admin/src/components/Sidebar.tsx:418
msgid "Manage"
msgstr "管理"

#. placeholder {0}: taxonomyDef.label.toLowerCase()
#. placeholder {1}: taxonomyDef.collections.join(", ")
#: packages/admin/src/components/TaxonomyManager.tsx:1031
msgid "Manage {0} for {1}"
msgstr "管理 {1} 的 {0}"

#: packages/admin/src/components/BylineCreditsEditor.tsx:698
msgid "Manage bylines in {entryLocale}"
msgstr "在 {entryLocale} 中管理署名"

#: packages/admin/src/components/Widgets.tsx:390
msgid "Manage content widgets in your widget areas"
msgstr "管理您的小部件区域中的内容小部件"

#: packages/admin/src/components/PluginManager.tsx:172
msgid "Manage installed plugins. Enable or disable plugins to control their functionality."
msgstr "管理已安装的插件。启用或禁用插件以控制其功能。"

#: packages/admin/src/components/MenuList.tsx:106
msgid "Manage navigation menus for your site"
msgstr "管理您站点的导航菜单"

#: packages/admin/src/components/Redirects.tsx:366
msgid "Manage URL redirects and view 404 errors."
msgstr "管理 URL 重定向并查看 404 错误。"

#: packages/admin/src/components/Settings.tsx:86
#: packages/admin/src/components/settings/SecuritySettings.tsx:89
msgid "Manage your passkeys and authentication"
msgstr "管理您的通行密钥和认证"

#: packages/admin/src/components/MediaDetailPanel.tsx:651
msgid "Managed by {providerName}"
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:652
msgid "Managed by an external media provider"
msgstr ""

#: packages/admin/src/components/Redirects.tsx:432
msgid "Manual"
msgstr "手动"

#: packages/admin/src/components/WordPressImport.tsx:2470
msgid "Map Authors"
msgstr "映射作者"

#. placeholder {0}: mapping.wpLogin
#: packages/admin/src/components/WordPressImport.tsx:2518
msgid "Map WordPress user {0} to EmDash user"
msgstr "将 WordPress 用户 {0} 映射到 EmDash 用户"

#. placeholder {0}: item.path
#: packages/admin/src/components/Redirects.tsx:256
msgid "Mark {0} as Gone (410)"
msgstr "标记 {0} 已删除（410）"

#: packages/admin/src/components/Redirects.tsx:255
msgid "Mark as Gone (410) — tells search engines it was permanently deleted"
msgstr "标记为已删除（410）— 告知搜索引擎该内容已被永久删除"

#: packages/admin/src/components/comments/CommentInbox.tsx:493
msgid "Mark as spam"
msgstr "标记为垃圾"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:44
msgid "Markdown"
msgstr "Markdown"

#: packages/admin/src/components/MarketplaceBrowse.tsx:87
#: packages/admin/src/components/PluginManager.tsx:188
#: packages/admin/src/components/PluginManager.tsx:390
#: packages/admin/src/components/Sidebar.tsx:315
msgid "Marketplace"
msgstr "市场"

#: packages/admin/src/components/FieldEditor.tsx:656
msgid "Max Items"
msgstr "最大项目数"

#: packages/admin/src/components/FieldEditor.tsx:499
msgid "Max Length"
msgstr "最大长度"

#: packages/admin/src/components/FieldEditor.tsx:529
msgid "Max Value"
msgstr "最大值"

#: packages/admin/src/components/Widgets.tsx:147
msgid "Maximum tags"
msgstr ""

#: packages/admin/src/components/editor/codeBlockLanguages.ts:45
msgid "MDX"
msgstr "MDX"

#: packages/admin/src/components/PortableTextEditor.tsx:2716
#: packages/admin/src/components/PortableTextEditor.tsx:2731
#: packages/admin/src/components/Settings.tsx:70
#: packages/admin/src/components/Sidebar.tsx:256
#: packages/admin/src/components/WordPressImport.tsx:770
#: packages/admin/src/components/WordPressImport.tsx:1163
#: packages/admin/src/components/WordPressImport.tsx:1350
msgid "Media"
msgstr "媒体"

#: packages/admin/src/components/MediaDetailPanel.tsx:479
msgid "Media Details"
msgstr "媒体详情"

#. placeholder {0}: mediaResult.failed.length
#: packages/admin/src/components/WordPressImport.tsx:2416
msgid "Media Errors ({0})"
msgstr "媒体错误 ({0})"

#: packages/admin/src/components/WordPressImport.tsx:2378
msgid "Media Import"
msgstr "媒体导入"

#: packages/admin/src/components/WordPressImport.tsx:2319
msgid "Media Import Complete"
msgstr "媒体导入完成"

#: packages/admin/src/components/WordPressImport.tsx:2330
msgid "Media import was skipped"
msgstr "媒体导入已跳过"

#: packages/admin/src/components/MediaFolderDialog.tsx:183
msgid "Media in this folder will return to Main library. No files will be deleted."
msgstr ""

#: packages/admin/src/components/AdminCommandPalette.tsx:153
#: packages/admin/src/components/MediaLibrary.tsx:826
#: packages/admin/src/components/MediaLibrary.tsx:841
msgid "Media Library"
msgstr "媒体库"

#: packages/admin/src/components/MediaLibrary.tsx:1312
msgid "Media pagination"
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:57
msgid "Media Read"
msgstr "媒体读取"

#: packages/admin/src/components/Settings.tsx:74
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:299
msgid "Media usage tracking"
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:888
msgid "Media usage tracking is indexing existing content"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:453
msgid "Media usage tracking is off"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:469
msgid "Media usage tracking is ready"
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:889
msgid "Media usage tracking is setting up"
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:886
msgid "Media usage tracking needs attention"
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:62
msgid "Media Write"
msgstr "媒体写入"

#: packages/admin/src/components/PortableTextEditor.tsx:1409
msgid "Medium section heading"
msgstr "中章节标题"

#: packages/admin/src/components/Widgets.tsx:104
#: packages/admin/src/components/Widgets.tsx:914
msgid "Menu"
msgstr "菜单"

#. placeholder {0}: translated.label
#. placeholder {1}: translated.locale.toUpperCase()
#: packages/admin/src/components/MenuEditor.tsx:144
msgid "Menu \"{0}\" ({1}) created."
msgstr "菜单 \"{0}\" ({1}) 已创建。"

#. placeholder {0}: menu.label
#: packages/admin/src/components/MenuList.tsx:56
msgid "Menu \"{0}\" has been created."
msgstr "菜单 \"{0}\" 已创建。"

#: packages/admin/src/components/MenuList.tsx:55
msgid "Menu created"
msgstr "菜单已创建"

#: packages/admin/src/components/MenuList.tsx:75
msgid "Menu deleted"
msgstr "菜单已删除"

#: packages/admin/src/components/MenuEditor.tsx:175
msgid "Menu item has been added."
msgstr "菜单项已添加。"

#: packages/admin/src/components/MenuEditor.tsx:188
msgid "Menu item has been deleted."
msgstr "菜单项已删除。"

#: packages/admin/src/components/MenuEditor.tsx:213
msgid "Menu item has been updated."
msgstr "菜单项已更新。"

#: packages/admin/src/components/MenuEditor.tsx:350
msgid "Menu not found"
msgstr "菜单未找到"

#: packages/admin/src/components/MenuEditor.tsx:228
msgid "Menu order has been updated."
msgstr "菜单顺序已更新。"

#: packages/admin/src/components/AdminCommandPalette.tsx:160
#: packages/admin/src/components/MenuList.tsx:104
#: packages/admin/src/components/Sidebar.tsx:266
#: packages/admin/src/components/WordPressImport.tsx:1167
msgid "Menus"
msgstr "菜单"

#. placeholder {0}: navMenus.length
#: packages/admin/src/components/WordPressImport.tsx:1783
msgid "Menus ({0})"
msgstr "菜单 ({0})"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:82
msgid "Menus Manage"
msgstr "菜单管理"

#: packages/admin/src/components/SeoPanel.tsx:199
#: packages/admin/src/components/SeoPanel.tsx:203
msgid "Meta Description"
msgstr "Meta 描述"

#: packages/admin/src/components/settings/SeoSettings.tsx:250
msgid "Meta tag content for Bing Webmaster Tools verification"
msgstr "Bing 网站管理员工具验证的元标签内容"

#: packages/admin/src/components/settings/SeoSettings.tsx:242
msgid "Meta tag content for Google Search Console verification"
msgstr "Google Search Console 验证的元标签内容"

#: packages/admin/src/components/WordPressImport.tsx:1861
msgid "Meta titles, descriptions, and social images"
msgstr "元标题、描述和社交图片"

#: packages/admin/src/components/WordPressImport.tsx:1069
msgid "Migration key"
msgstr ""

#: packages/admin/src/components/FieldEditor.tsx:649
msgid "Min Items"
msgstr "最小项目数"

#: packages/admin/src/components/FieldEditor.tsx:492
msgid "Min Length"
msgstr "最小长度"

#: packages/admin/src/components/FieldEditor.tsx:522
msgid "Min Value"
msgstr "最小值"

#: packages/admin/src/components/PortableTextEditor.tsx:1439
msgid "Minor section heading"
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:519
msgid "Moderation"
msgstr "审核"

#: packages/admin/src/components/comments/CommentDetail.tsx:129
msgid "Moderation Signals"
msgstr "审核信号"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:73
msgid "Modify collection schemas"
msgstr "修改合集模式"

#: packages/admin/src/components/Widgets.tsx:163
msgid "Monthly"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:159
msgid "Monthly/yearly archives"
msgstr ""

#. placeholder {0}: byline.displayName
#: packages/admin/src/components/BylineCreditsEditor.tsx:857
msgid "More actions for {0}"
msgstr ""

#: packages/admin/src/components/ImageFieldRenderer.tsx:191
msgid "More information about {label}"
msgstr ""

#: packages/admin/src/components/MarketplaceBrowse.tsx:42
msgid "Most Popular"
msgstr "最受欢迎"

#. placeholder {0}: field.label
#: packages/admin/src/routes/byline-schema.tsx:439
msgid "Move \"{0}\" down"
msgstr "将 \"{0}\" 下移"

#. placeholder {0}: field.label
#: packages/admin/src/routes/byline-schema.tsx:429
msgid "Move \"{0}\" up"
msgstr "将 \"{0}\" 上移"

#: packages/admin/src/components/ContentList.tsx:1357
msgid "Move \"{title}\" to trash? You can restore it later."
msgstr "将「{title}」移至回收站？您可以稍后恢复它。"

#. placeholder {0}: term.label
#: packages/admin/src/components/TaxonomyManager.tsx:256
msgid "Move {0} down"
msgstr ""

#. placeholder {0}: term.label
#: packages/admin/src/components/TaxonomyManager.tsx:255
msgid "Move {0} down — unavailable, its parent has no translation in this locale"
msgstr ""

#. placeholder {0}: term.label
#: packages/admin/src/components/TaxonomyManager.tsx:243
msgid "Move {0} up"
msgstr ""

#. placeholder {0}: term.label
#: packages/admin/src/components/TaxonomyManager.tsx:242
msgid "Move {0} up — unavailable, its parent has no translation in this locale"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:1348
msgid "Move {title} to trash"
msgstr "将 {title} 移至回收站"

#: packages/admin/src/components/MenuEditor.tsx:537
msgid "Move down"
msgstr "下移"

#: packages/admin/src/components/MediaLibrary.tsx:1096
msgid "Move media here from Media Details."
msgstr ""

#: packages/admin/src/components/ContentList.tsx:528
msgid "Move to trash"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:555
#: packages/admin/src/components/ContentList.tsx:1370
#: packages/admin/src/components/ContentSettingsPanel.tsx:838
#: packages/admin/src/components/ContentSettingsPanel.tsx:858
msgid "Move to Trash"
msgstr "移至回收站"

#: packages/admin/src/components/ContentList.tsx:533
#: packages/admin/src/components/ContentList.tsx:1355
#: packages/admin/src/components/ContentSettingsPanel.tsx:843
msgid "Move to Trash?"
msgstr "移至回收站？"

#: packages/admin/src/components/MenuEditor.tsx:528
msgid "Move up"
msgstr "上移"

#: packages/admin/src/router.tsx:549
msgid "Moved {total} items to draft"
msgstr ""

#: packages/admin/src/router.tsx:570
msgid "Moved {total} items to trash"
msgstr ""

#. placeholder {0}: folder.name
#: packages/admin/src/components/MediaLibrary.tsx:643
msgid "Moved to {0}"
msgstr ""

#: packages/admin/src/components/FieldEditor.tsx:221
msgid "Multi Select"
msgstr "多选"

#: packages/admin/src/components/FieldEditor.tsx:186
msgid "Multi-line plain text"
msgstr "多行纯文本"

#: packages/admin/src/components/FieldEditor.tsx:222
msgid "Multiple choices from options"
msgstr "从选项中选择多个"

#: packages/admin/src/components/SetupWizard.tsx:120
msgid "My Awesome Blog"
msgstr "我的精彩博客"

#: packages/admin/src/components/BylineCreditsEditor.tsx:982
#: packages/admin/src/components/ContentTypeList.tsx:178
#: packages/admin/src/components/MarketplaceBrowse.tsx:45
#: packages/admin/src/components/MediaFolderDialog.tsx:131
#: packages/admin/src/components/MenuList.tsx:157
#: packages/admin/src/components/TaxonomyManager.tsx:572
#: packages/admin/src/components/TaxonomyManager.tsx:822
#: packages/admin/src/components/TaxonomyManager.tsx:1054
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:37
#: packages/admin/src/components/users/UserDetail.tsx:148
#: packages/admin/src/components/Widgets.tsx:430
msgid "Name"
msgstr "名称"

#: packages/admin/src/components/TaxonomyManager.tsx:748
msgid "Name and label are required"
msgstr "名称和标签为必填项"

#: packages/admin/src/components/TaxonomyManager.tsx:754
msgid "Name must start with a letter and contain only lowercase letters, numbers, and underscores"
msgstr "名称必须以字母开头，且仅包含小写字母、数字和下划线"

#: packages/admin/src/components/AdminCommandPalette.tsx:340
msgid "Navigation"
msgstr "导航"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:458
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:462
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:467
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:471
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:490
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:494
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:505
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:507
msgid "Needs attention"
msgstr ""

#: packages/admin/src/components/users/UserDetail.tsx:231
#: packages/admin/src/components/users/UserList.tsx:178
msgid "Never"
msgstr "从未"

#: packages/admin/src/router.tsx:1196
msgid "new"
msgstr "新建"

#: packages/admin/src/routes/bylines.tsx:426
msgid "New"
msgstr "新建"

#: packages/admin/src/components/CapabilityConsentDialog.tsx:111
msgid "NEW"
msgstr "新"

#. placeholder {0}: (taxonomy.labelSingular || taxonomy.label).toLowerCase()
#: packages/admin/src/components/TaxonomySidebar.tsx:607
msgid "New {0}"
msgstr "新{0}"

#: packages/admin/src/components/ContentEditor.tsx:692
msgid "New {itemLabel}"
msgstr ""

#: packages/admin/src/components/BylineFieldEditor.tsx:209
msgid "New byline field"
msgstr "新建署名字段"

#: packages/admin/src/components/WordPressImport.tsx:1998
msgid "New collection"
msgstr "新合集"

#: packages/admin/src/components/ContentTypeEditor.tsx:356
#: packages/admin/src/components/ContentTypeList.tsx:122
msgid "New Content Type"
msgstr "新内容类型"

#: packages/admin/src/routes/byline-schema.tsx:224
msgid "New field"
msgstr "新建字段"

#: packages/admin/src/components/MediaLibrary.tsx:862
msgid "New folder"
msgstr ""

#: packages/admin/src/components/CapabilityConsentDialog.tsx:122
msgid "New public routes"
msgstr "新增公共路由"

#: packages/admin/src/components/Redirects.tsx:106
#: packages/admin/src/components/Redirects.tsx:370
msgid "New Redirect"
msgstr "新重定向"

#: packages/admin/src/components/BylineCreditsEditor.tsx:514
msgid "New reusable profile"
msgstr ""

#: packages/admin/src/components/Sections.tsx:143
msgid "New Section"
msgstr "新区块"

#: packages/admin/src/components/AdminCommandPalette.tsx:479
msgid "new tab"
msgstr "新标签页"

#: packages/admin/src/components/TaxonomyManager.tsx:1044
msgid "New Taxonomy"
msgstr "新分类"

#: packages/admin/src/components/MenuEditor.tsx:430
#: packages/admin/src/components/MenuEditor.tsx:433
#: packages/admin/src/components/MenuEditor.tsx:609
#: packages/admin/src/components/MenuEditor.tsx:612
msgid "New window"
msgstr "新窗口"

#: packages/admin/src/components/MarketplaceBrowse.tsx:44
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:36
msgid "Newest"
msgstr "最新"

#: packages/admin/src/components/TaxonomyManager.tsx:575
msgid "News"
msgstr "新闻"

#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:315
msgid "Next"
msgstr "下一步"

#: packages/admin/src/components/comments/CommentInbox.tsx:363
#: packages/admin/src/components/ContentList.tsx:731
#: packages/admin/src/components/MediaLibrary.tsx:1315
msgid "Next page"
msgstr "下一页"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:476
msgid "Next screenshot"
msgstr "下一张截图"

#: packages/admin/src/components/ContentList.tsx:1393
#: packages/admin/src/components/users/UserDetail.tsx:236
#: packages/admin/src/routes/byline-schema.tsx:422
msgid "No"
msgstr "否"

#: packages/admin/src/routes/byline-schema.tsx:420
msgid "No (shared across translations)"
msgstr "否（跨翻译共享）"

#. placeholder {0}: taxonomy.label.toLowerCase()
#: packages/admin/src/components/TaxonomySidebar.tsx:576
msgid "No {0} available."
msgstr "暂无{0}。"

#. placeholder {0}: collectionLabel.toLowerCase()
#: packages/admin/src/components/ContentList.tsx:657
msgid "No {0} yet."
msgstr "暂无 {0}。"

#. placeholder {0}: taxonomyDef.label.toLowerCase()
#: packages/admin/src/components/TaxonomyManager.tsx:1063
msgid "No {0} yet. Create one to get started."
msgstr "暂无{0}。创建一个以开始使用。"

#: packages/admin/src/components/Redirects.tsx:218
msgid "No 404 errors recorded yet."
msgstr "暂无 404 错误记录。"

#: packages/admin/src/components/MediaLibrary.tsx:1817
#: packages/admin/src/components/MediaLibrary.tsx:1874
msgid "No alt text"
msgstr "无替代文本"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:402
msgid "No API tokens yet. Create one to get started."
msgstr "暂无 API 令牌。创建一个以开始使用。"

#: packages/admin/src/components/comments/CommentInbox.tsx:539
msgid "No approved comments yet."
msgstr "暂无已审核评论。"

#: packages/admin/src/components/BylineFilter.tsx:101
msgid "No byline"
msgstr ""

#: packages/admin/src/components/BylineFilter.tsx:138
msgid "No byline assigned"
msgstr ""

#: packages/admin/src/routes/byline-schema.tsx:291
msgid "No byline fields yet."
msgstr "暂无署名字段。"

#: packages/admin/src/components/BylineCreditsEditor.tsx:670
msgid "No byline is shown on this post."
msgstr ""

#: packages/admin/src/components/BylineCreditsEditor.tsx:690
msgid "No bylines available in {entryLocale}. Create a variant from the Bylines page before crediting one on this entry."
msgstr "在 {entryLocale} 中没有可用的署名。请先从署名页面创建一个变体，然后再在此条目中署名。"

#: packages/admin/src/components/BylineCreditsEditor.tsx:542
msgid "No bylines available."
msgstr ""

#: packages/admin/src/components/BylineFilter.tsx:150
#: packages/admin/src/routes/bylines.tsx:452
msgid "No bylines found"
msgstr "未找到署名"

#: packages/admin/src/components/Dashboard.tsx:275
msgid "No collections configured"
msgstr "未配置任何合集"

#: packages/admin/src/components/comments/CommentInbox.tsx:538
msgid "No comments awaiting moderation."
msgstr "暂无待审核评论。"

#: packages/admin/src/components/comments/CommentInbox.tsx:534
msgid "No comments match your search."
msgstr "暂无评论符合您的搜索。"

#: packages/admin/src/components/SandboxedPluginWidget.tsx:82
msgid "No content"
msgstr "无内容"

#: packages/admin/src/components/ContentPickerModal.tsx:171
msgid "No content found"
msgstr "未找到内容"

#: packages/admin/src/components/ContentPickerModal.tsx:177
msgid "No content in this collection"
msgstr "此合集中无内容"

#: packages/admin/src/components/ContentTypeList.tsx:204
msgid "No content types yet."
msgstr "暂无内容类型。"

#: packages/admin/src/components/ContentTypeEditor.tsx:627
msgid "No custom fields yet"
msgstr "尚无自定义字段"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:275
msgid "No detailed description available."
msgstr "暂无详细描述。"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:285
msgid "No domains configured. Users must be invited individually."
msgstr "未配置域名。必须单独邀请用户。"

#: packages/admin/src/components/settings/EmailSettings.tsx:144
msgid "No email provider configured"
msgstr "未配置邮件提供商"

#: packages/admin/src/components/users/InviteUserModal.tsx:83
msgid "No email provider configured. Share this link manually."
msgstr "未配置邮件提供商。请手动分享此链接。"

#: packages/admin/src/components/WordPressImport.tsx:2532
msgid "No EmDash users found"
msgstr "未找到 EmDash 用户"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:33
msgid "No expiry"
msgstr "永不过期"

#: packages/admin/src/components/RevisionHistory.tsx:345
msgid "No fields to compare"
msgstr "无字段可比较"

#: packages/admin/src/components/MediaUploadDialog.tsx:488
msgid "No files added"
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:756
msgid "No folders found"
msgstr ""

#: packages/admin/src/components/editor/DocumentOutline.tsx:213
msgid "No headings in document"
msgstr "文档中无标题"

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:209
msgid "No images in this gallery yet."
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:179
msgid "No indexed references are currently available."
msgstr ""

#: packages/admin/src/components/RegistryPluginDetail.tsx:605
msgid "No installable releases"
msgstr "无可安装的版本"

#: packages/admin/src/components/InviteAcceptPage.tsx:193
msgid "No invite token provided"
msgstr "未提供邀请令牌"

#: packages/admin/src/components/PortableTextEditor.tsx:2227
#: packages/admin/src/components/RepeaterField.tsx:165
#: packages/admin/src/components/settings/BackupSettings.tsx:283
msgid "No items yet"
msgstr "暂无项目"

#: packages/admin/src/components/FieldEditor.tsx:660
msgid "No limit"
msgstr "无限制"

#: packages/admin/src/routes/bylines.tsx:517
msgid "No linked user"
msgstr "无关联用户"

#: packages/admin/src/components/editor/CodeBlockNode.tsx:289
msgid "No matches"
msgstr "无匹配项"

#: packages/admin/src/components/BylineCreditsEditor.tsx:542
msgid "No matching bylines."
msgstr "没有匹配的署名。"

#: packages/admin/src/components/MediaLibrary.tsx:1080
#: packages/admin/src/components/MediaLibrary.tsx:1119
msgid "No matching media"
msgstr ""

#: packages/admin/src/components/auth/PasskeyLogin.tsx:265
msgid "No matching passkey found for this account."
msgstr "未找到与此账户匹配的通行密钥。"

#: packages/admin/src/components/FieldEditor.tsx:503
#: packages/admin/src/components/FieldEditor.tsx:533
msgid "No maximum"
msgstr "无最大值"

#: packages/admin/src/components/MediaPickerModal.tsx:695
msgid "No media available from this provider"
msgstr "此提供商无可用媒体"

#: packages/admin/src/components/MediaLibrary.tsx:1142
msgid "No media available from this provider."
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:1141
#: packages/admin/src/components/MediaPickerModal.tsx:689
msgid "No media found"
msgstr "未找到媒体"

#: packages/admin/src/components/MenuEditor.tsx:485
msgid "No menu items yet"
msgstr "暂无菜单项"

#: packages/admin/src/components/MenuList.tsx:189
msgid "No menus yet"
msgstr "暂无菜单"

#: packages/admin/src/components/FieldEditor.tsx:496
#: packages/admin/src/components/FieldEditor.tsx:526
msgid "No minimum"
msgstr "无最小值"

#: packages/admin/src/components/ContentTypeEditor.tsx:65
msgid "No moderation (auto-approve all)"
msgstr "无审核（自动批准所有）"

#: packages/admin/src/components/MenuEditor.tsx:329
msgid "No parent (top level)"
msgstr ""

#: packages/admin/src/components/users/UserDetail.tsx:248
msgid "No passkeys registered"
msgstr "未注册通行密钥"

#: packages/admin/src/components/settings/SecuritySettings.tsx:154
msgid "No passkeys registered yet."
msgstr "暂无已注册的通行密钥。"

#: packages/admin/src/components/PluginManager.tsx:212
msgid "No plugins configured"
msgstr "未配置插件"

#: packages/admin/src/components/MarketplaceBrowse.tsx:175
msgid "No plugins found"
msgstr "未找到插件"

#: packages/admin/src/components/RegistryBrowse.tsx:139
msgid "No plugins have been published to this registry yet."
msgstr "此仓库尚未发布任何插件。"

#: packages/admin/src/components/RegistryBrowse.tsx:138
msgid "No plugins match \"{debouncedQuery}\"."
msgstr "没有匹配 \"{debouncedQuery}\" 的插件。"

#: packages/admin/src/components/Sections.tsx:343
msgid "No preview"
msgstr "无预览"

#: packages/admin/src/components/MediaDetailPanel.tsx:637
msgid "No public URL available"
msgstr ""

#: packages/admin/src/components/Dashboard.tsx:354
msgid "No recent activity"
msgstr "暂无最近活动"

#: packages/admin/src/components/Redirects.tsx:468
msgid "No redirects yet"
msgstr "暂无重定向"

#: packages/admin/src/components/PortableTextEditor.tsx:1776
#: packages/admin/src/components/RepeaterField.tsx:374
msgid "No results"
msgstr "无结果"

#: packages/admin/src/components/ContentList.tsx:654
#: packages/admin/src/components/ContentList.tsx:673
msgid "No results for \"{activeSearch}\""
msgstr "没有 \"{activeSearch}\"的搜索结果"

#: packages/admin/src/components/MarketplaceBrowse.tsx:178
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:152
msgid "No results for \"{debouncedQuery}\". Try a different search term."
msgstr "「{debouncedQuery}」无结果。请尝试其他搜索词。"

#: packages/admin/src/components/AdminCommandPalette.tsx:465
#: packages/admin/src/components/Settings.tsx:156
msgid "No results found"
msgstr "未找到结果"

#: packages/admin/src/components/RevisionHistory.tsx:201
msgid "No revisions yet"
msgstr "暂无修订历史"

#: packages/admin/src/components/SectionPickerModal.tsx:108
msgid "No sections available"
msgstr "无可用区块"

#: packages/admin/src/components/SectionPickerModal.tsx:102
#: packages/admin/src/components/Sections.tsx:259
msgid "No sections found"
msgstr "未找到区块"

#: packages/admin/src/components/Sections.tsx:265
msgid "No sections yet"
msgstr "暂无区块"

#: packages/admin/src/components/comments/CommentInbox.tsx:540
msgid "No spam comments."
msgstr "无垃圾评论。"

#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:149
msgid "No themes found"
msgstr "未找到主题"

#: packages/admin/src/components/MediaUsedIn.tsx:178
msgid "No usage found in EmDash-managed content fields."
msgstr ""

#: packages/admin/src/components/users/UserList.tsx:113
msgid "No users found matching your filters."
msgstr "未找到匹配您筛选条件的用户。"

#: packages/admin/src/components/users/UserList.tsx:127
msgid "No users yet."
msgstr "尚无用户。"

#: packages/admin/src/components/Widgets.tsx:504
msgid "No widget areas yet. Create one to get started."
msgstr "暂无小部件区域。创建一个以开始使用。"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:159
msgid "None"
msgstr ""

#: packages/admin/src/components/TaxonomyManager.tsx:601
#: packages/admin/src/components/TaxonomyManager.tsx:610
msgid "None (top level)"
msgstr "无（顶级）"

#: packages/admin/src/components/RegistryPluginDetail.tsx:640
msgid "Not compatible with this environment"
msgstr "与此环境不兼容"

#: packages/admin/src/components/ContentList.tsx:1392
#: packages/admin/src/components/PluginSettings.tsx:341
msgid "Not set"
msgstr ""

#: packages/admin/src/components/FieldEditor.tsx:191
#: packages/admin/src/components/FieldEditor.tsx:610
msgid "Number"
msgstr "数字"

#: packages/admin/src/components/Widgets.tsx:129
msgid "Number of posts"
msgstr ""

#: packages/admin/src/components/settings/GeneralSettings.tsx:319
msgid "Number of posts to show per page on list views"
msgstr "列表视图每页显示的文章数量"

#: packages/admin/src/components/editor/BlockMenu.tsx:135
#: packages/admin/src/components/PortableTextEditor.tsx:1468
#: packages/admin/src/components/PortableTextEditor.tsx:4096
msgid "Numbered List"
msgstr "有序列表"

#: packages/admin/src/components/WordPressImport.tsx:512
msgid "OAuth authorization requires HTTPS. Please use manual credentials."
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:455
msgid "Off"
msgstr ""

#: packages/admin/src/components/SeoImageField.tsx:46
msgid "OG Image"
msgstr "OG 图片"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:278
msgid "Only authorize codes you recognize."
msgstr "仅授权您认识的代码。"

#: packages/admin/src/components/SignupPage.tsx:114
msgid "Only email addresses from allowed domains can sign up."
msgstr "仅允许来自允许域名的邮箱注册。"

#: packages/admin/src/components/MenuList.tsx:162
msgid "Only lowercase letters, numbers, and hyphens"
msgstr "仅限小写字母、数字和连字符"

#: packages/admin/src/components/AllowedTypesEditor.tsx:109
msgid "Only the listed MIME types will be accepted for this field."
msgstr "此字段将只接受列出的 MIME 类型。"

#: packages/admin/src/components/SignupPage.tsx:419
msgid "Oops!"
msgstr "哎呀！"

#. placeholder {0}: folder.name
#: packages/admin/src/components/MediaLibrary.tsx:1442
#: packages/admin/src/components/MediaLibrary.tsx:1513
msgid "Open folder {0}"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:379
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:380
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:568
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:569
#: packages/admin/src/components/editor/PluginBlockNode.tsx:333
#: packages/admin/src/components/editor/PluginBlockNode.tsx:334
msgid "Open in new tab"
msgstr "在新标签页中打开"

#: packages/admin/src/components/MediaLibrary.tsx:894
msgid "Open setup"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1550
msgid "Open WordPress Profile"
msgstr "打开 WordPress 个人资料"

#: packages/admin/src/components/FieldEditor.tsx:544
msgid ""
"Option 1\n"
"Option 2\n"
"Option 3"
msgstr ""
"选项 1\n"
"选项 2\n"
"选项 3"

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:390
msgid "Optional caption"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:355
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:544
msgid "Optional caption displayed below the image"
msgstr "显示在图片下方的可选说明"

#: packages/admin/src/components/MediaDetailPanel.tsx:840
msgid "Optional caption for display"
msgstr "用于显示的可选说明"

#: packages/admin/src/components/TaxonomyManager.tsx:626
msgid "Optional description"
msgstr "可选描述"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:364
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:553
msgid "Optional tooltip on hover"
msgstr "悬停时的可选工具提示"

#: packages/admin/src/components/BylineFieldEditor.tsx:302
#: packages/admin/src/components/FieldEditor.tsx:541
msgid "Options (one per line)"
msgstr "选项（每行一个）"

#: packages/admin/src/components/MediaUploadDialog.tsx:435
msgid "Or browse files from your computer"
msgstr ""

#: packages/admin/src/components/MediaPickerModal.tsx:580
msgid "or choose from library"
msgstr "或从库中选择"

#: packages/admin/src/components/WordPressImport.tsx:1606
msgid "Or click to browse. Accepts .xml files exported from WordPress."
msgstr "或点击浏览。接受从 WordPress 导出的 .xml 文件。"

#: packages/admin/src/components/WordPressImport.tsx:1089
msgid "or connect by URL"
msgstr ""

#: packages/admin/src/components/InviteAcceptPage.tsx:97
#: packages/admin/src/components/LoginPage.tsx:263
#: packages/admin/src/components/SetupWizard.tsx:310
msgid "Or continue with"
msgstr "或继续使用"

#: packages/admin/src/components/WordPressImport.tsx:1407
msgid "Or upload an export file"
msgstr "或上传导出文件"

#: packages/admin/src/components/WordPressImport.tsx:1125
msgid "or upload directly"
msgstr "或直接上传"

#: packages/admin/src/components/MenuEditor.tsx:227
msgid "Order saved"
msgstr "顺序已保存"

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:374
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:257
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:446
msgid "Original:"
msgstr "原始："

#: packages/admin/src/components/ContentSettingsPanel.tsx:802
#: packages/admin/src/components/editor/DocumentOutline.tsx:191
msgid "Outline"
msgstr "大纲"

#: packages/admin/src/components/SeoPanel.tsx:174
msgid "Overrides the page title in search engine results"
msgstr "覆盖搜索引擎结果中的页面标题"

#: packages/admin/src/components/ContentSettingsPanel.tsx:654
#: packages/admin/src/components/ContentSettingsPanel.tsx:657
msgid "Ownership"
msgstr "所有权"

#: packages/admin/src/components/PluginManager.tsx:596
msgid "Package"
msgstr "包"

#: packages/admin/src/router.tsx:2531
msgid "Page Not Found"
msgstr "页面未找到"

#: packages/admin/src/components/MediaLibrary.tsx:1317
msgid "Page number"
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:1318
msgid "Page size"
msgstr ""

#: packages/admin/src/components/PluginManager.tsx:408
#: packages/admin/src/components/WordPressImport.tsx:1344
msgid "Pages"
msgstr "页面"

#: packages/admin/src/components/editor/BlockMenu.tsx:55
msgid "Paragraph"
msgstr "段落"

#: packages/admin/src/components/MenuEditor.tsx:615
#: packages/admin/src/components/TaxonomyManager.tsx:597
msgid "Parent"
msgstr "父级"

#: packages/admin/src/components/Redirects.tsx:518
#: packages/admin/src/components/Redirects.tsx:524
msgid "Part of a redirect loop"
msgstr "重定向循环的一部分"

#: packages/admin/src/components/WordPressImport.tsx:1171
msgid "Partial"
msgstr ""

#: packages/admin/src/components/MarketplaceBrowse.tsx:324
msgid "Pass"
msgstr "通过"

#: packages/admin/src/components/settings/SecuritySettings.tsx:85
msgid "Passkey added successfully"
msgstr "通行密钥添加成功"

#: packages/admin/src/components/settings/PasskeyItem.tsx:123
#: packages/admin/src/components/settings/PasskeyItem.tsx:124
msgid "Passkey name"
msgstr "通行密钥名称"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:321
msgid "Passkey Name (optional)"
msgstr "通行密钥名称（可选）"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:344
msgid "Passkey registered successfully!"
msgstr "通行密钥注册成功！"

#: packages/admin/src/components/settings/SecuritySettings.tsx:62
msgid "Passkey removed"
msgstr "通行密钥已移除"

#: packages/admin/src/components/settings/SecuritySettings.tsx:46
msgid "Passkey renamed"
msgstr "通行密钥已重命名"

#: packages/admin/src/components/settings/SecuritySettings.tsx:135
#: packages/admin/src/components/users/UserList.tsx:103
msgid "Passkeys"
msgstr "通行密钥"

#. placeholder {0}: user.credentials.length
#: packages/admin/src/components/users/UserDetail.tsx:245
msgid "Passkeys ({0})"
msgstr "通行密钥 ({0})"

#: packages/admin/src/components/settings/SecuritySettings.tsx:136
msgid "Passkeys are a secure, passwordless way to sign in to your account. You can register multiple passkeys for different devices."
msgstr "通行密钥是一种安全的无密码登录方式。您可以为不同设备注册多个通行密钥。"

#: packages/admin/src/components/InviteAcceptPage.tsx:77
#: packages/admin/src/components/SignupPage.tsx:229
msgid "Passkeys are a secure, passwordless way to sign in using your device's biometrics, PIN, or security key."
msgstr "通行密钥是一种安全的无密码登录方式，使用设备的生物识别、PIN 码或安全密钥登录。"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:302
#: packages/admin/src/components/auth/PasskeyRegistration.tsx:301
msgid "Passkeys Not Available Here"
msgstr "此处不提供通行密钥"

#: packages/admin/src/components/auth/PasskeyContextMessage.tsx:5
msgid "Passkeys require a <0>secure context</0>: use <1>HTTPS</1>, or open the admin at <2>http://localhost</2> (with your dev port). Plain <3>http://</3> on a custom hostname is not treated as secure, even on loopback."
msgstr ""

#: packages/admin/src/components/auth/PasskeyLogin.tsx:159
msgid "Passkeys require HTTPS or http://localhost (with your port); this hostname is not a secure browser context."
msgstr "通行密钥需要 HTTPS 或 http://localhost（带您的端口）；此主机名不是安全的浏览器上下文。"

#: packages/admin/src/components/WordPressImport.tsx:1055
msgid "Paste your migration key"
msgstr ""

#: packages/admin/src/components/Redirects.tsx:225
msgid "Path"
msgstr "路径"

#: packages/admin/src/components/FieldEditor.tsx:508
msgid "Pattern (Regex)"
msgstr "模式（正则表达式）"

#. placeholder {0}: "{slug}"
#: packages/admin/src/components/ContentTypeEditor.tsx:450
msgid "Pattern for generating URLs, e.g. /blog/{0}"
msgstr "生成 URL 的模式，例如 /blog/{0}"

#. placeholder {0}: "{slug}"
#: packages/admin/src/components/ContentTypeEditor.tsx:446
msgid "Pattern must include a {0} placeholder"
msgstr "模式必须包含一个 {0} 占位符"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:593
msgid "Pause other tools that update content."
msgstr ""

#: packages/admin/src/components/AllowedTypesEditor.tsx:65
msgid "PDF"
msgstr "PDF"

#: packages/admin/src/components/comments/CommentDetail.tsx:196
msgid "pending"
msgstr "待处理"

#: packages/admin/src/components/comments/CommentInbox.tsx:171
msgid "Pending"
msgstr "待处理"

#: packages/admin/src/components/ContentStatusBadge.tsx:67
msgid "Pending changes"
msgstr "待处理的更改"

#: packages/admin/src/components/BylineCreditsEditor.tsx:640
#: packages/admin/src/components/BylineCreditsEditor.tsx:669
msgid "People shown publicly on this post."
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:1332
msgid "Per page"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:1525
msgid "Permanently delete \"{title}\"? This cannot be undone."
msgstr "永久删除「{title}」？此操作无法撤销。"

#: packages/admin/src/components/ContentList.tsx:1514
msgid "Permanently delete {title}"
msgstr "永久删除 {title}"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:284
msgid "Permissions"
msgstr "权限"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:46
msgid "PHP"
msgstr "PHP"

#: packages/admin/src/components/SetupWizard.tsx:290
msgid "Pick any method to create your admin account."
msgstr "选择任意方式创建您的管理员账户。"

#: packages/admin/src/components/Widgets.tsx:154
msgid "Placeholder text"
msgstr ""

#: packages/admin/src/components/editor/codeBlockLanguages.ts:26
#: packages/admin/src/components/editor/codeBlockLanguages.ts:121
msgid "Plain text"
msgstr "纯文本"

#: packages/admin/src/components/InviteAcceptPage.tsx:166
msgid "Please ask your administrator to send a new invite."
msgstr "请让您的管理员发送新的邀请。"

#: packages/admin/src/components/SetupWizard.tsx:181
msgid "Please enter a valid email"
msgstr "请输入有效的邮箱"

#: packages/admin/src/components/SignupPage.tsx:72
msgid "Please enter a valid email address"
msgstr "请输入有效的邮箱地址"

#: packages/admin/src/components/MediaPickerModal.tsx:443
msgid "Please enter a valid URL"
msgstr "请输入有效的 URL"

#: packages/admin/src/components/WordPressImport.tsx:1200
msgid "Plugin"
msgstr "插件"

#: packages/admin/src/lib/api/plugins.ts:68
msgid "Plugin \"{pluginId}\" not found"
msgstr "插件 \"{pluginId}\" 未找到"

#: packages/admin/src/lib/content-list-columns.tsx:236
msgid "Plugin column unavailable"
msgstr ""

#: packages/admin/src/components/RegistryPluginDetail.tsx:773
msgid "Plugin details"
msgstr "插件详情"

#: packages/admin/src/components/PluginManager.tsx:126
msgid "Plugin disabled"
msgstr "插件已禁用"

#: packages/admin/src/components/PluginManager.tsx:107
msgid "Plugin enabled"
msgstr "插件已启用"

#: packages/admin/src/components/SandboxedPluginPage.tsx:89
msgid "Plugin Error"
msgstr "插件错误"

#. placeholder {0}: response.status
#: packages/admin/src/components/SandboxedPluginWidget.tsx:37
msgid "Plugin error ({0})"
msgstr "插件错误（{0}）"

#: packages/admin/src/components/PluginManager.tsx:340
msgid "Plugin MCP access updated"
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:97
msgid "Plugin MCP Tools"
msgstr ""

#: packages/admin/src/lib/api/marketplace.ts:108
msgid "Plugin MCP tools require explicit consent"
msgstr ""

#: packages/admin/src/components/MarketplacePluginDetail.tsx:123
msgid "Plugin not found"
msgstr "未找到插件"

#: packages/admin/src/components/RegistryPluginDetail.tsx:470
msgid "Plugin not found. The publisher or slug may be incorrect."
msgstr ""

#: packages/admin/src/components/PluginManager.tsx:489
msgid "Plugin pages"
msgstr ""

#: packages/admin/src/lib/content-editor-panels.tsx:192
msgid "Plugin panel unavailable."
msgstr ""

#: packages/admin/src/components/CapabilityConsentDialog.tsx:79
msgid "Plugin Permissions"
msgstr "插件权限"

#: packages/admin/src/components/RegistryBrowse.tsx:90
msgid "Plugin Registry"
msgstr "插件仓库"

#. placeholder {0}: response.status
#: packages/admin/src/components/SandboxedPluginPage.tsx:40
msgid "Plugin responded with {0}: {text}"
msgstr "插件响应：{0}：{text}"

#. placeholder {0}: plugin.name
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:512
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:515
msgid "Plugin tools: {0}"
msgstr ""

#: packages/admin/src/components/PluginManager.tsx:329
msgid "Plugin uninstalled"
msgstr "插件已卸载"

#: packages/admin/src/lib/api/registry.ts:868
msgid "Plugin update requires re-consent"
msgstr "插件更新需要重新授权"

#: packages/admin/src/components/PluginManager.tsx:275
msgid "Plugin updated"
msgstr "插件已更新"

#: packages/admin/src/components/PluginFieldErrorBoundary.tsx:34
msgid "Plugin widget error"
msgstr "插件组件错误"

#: packages/admin/src/components/AdminCommandPalette.tsx:218
#: packages/admin/src/components/PluginManager.tsx:151
#: packages/admin/src/components/PluginManager.tsx:160
#: packages/admin/src/components/PluginManager.tsx:170
#: packages/admin/src/components/Sidebar.tsx:299
#: packages/admin/src/components/Sidebar.tsx:434
msgid "Plugins"
msgstr "插件"

#: packages/admin/src/components/settings/BackupSettings.tsx:327
msgid "Point-in-Time Restore"
msgstr ""

#: packages/admin/src/components/SeoPanel.tsx:221
msgid "Points search engines to the original version of this page, if it's duplicated from another URL"
msgstr "如果此页面是从另一个 URL 复制的，则引导搜索引擎到原始版本"

#: packages/admin/src/components/FocalPointEditor.tsx:30
msgid "Portrait"
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:388
msgid "Post"
msgstr "文章"

#: packages/admin/src/components/ContentTypeEditor.tsx:396
#: packages/admin/src/components/WordPressImport.tsx:1338
msgid "Posts"
msgstr "文章"

#: packages/admin/src/components/WordPressImport.tsx:1162
msgid "Posts & Pages"
msgstr ""

#: packages/admin/src/components/settings/GeneralSettings.tsx:313
msgid "Posts Per Page"
msgstr "每页文章数"

#: packages/admin/src/components/RegistryPluginDetail.tsx:515
msgid "Pre-release"
msgstr "预发布"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:171
msgid "Preparing registration..."
msgstr "正在准备注册..."

#: packages/admin/src/components/WordPressImport.tsx:2195
msgid "Preparing to download files from WordPress..."
msgstr "正在准备从 WordPress 下载文件..."

#: packages/admin/src/components/auth/PasskeyLogin.tsx:167
#: packages/admin/src/components/SetupWizard.tsx:233
msgid "Preparing..."
msgstr "正在准备..."

#: packages/admin/src/components/ContentSettingsPanel.tsx:164
#: packages/admin/src/components/ContentTypeEditor.tsx:81
#: packages/admin/src/components/MediaDetailPanel.tsx:880
#: packages/admin/src/components/MediaLibrary.tsx:1206
msgid "Preview"
msgstr "预览"

#: packages/admin/src/components/ContentTypeEditor.tsx:82
msgid "Preview content before publishing"
msgstr "发布前预览内容"

#: packages/admin/src/components/ContentSettingsPanel.tsx:164
msgid "Preview draft"
msgstr "预览草稿"

#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:308
msgid "Previous"
msgstr "上一步"

#: packages/admin/src/components/comments/CommentInbox.tsx:344
#: packages/admin/src/components/ContentList.tsx:719
#: packages/admin/src/components/MediaLibrary.tsx:1314
msgid "Previous page"
msgstr "上一页"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:458
msgid "Previous screenshot"
msgstr "上一张截图"

#: packages/admin/src/components/MenuList.tsx:169
msgid "Primary Navigation"
msgstr "主导航"

#: packages/admin/src/components/ContentStatusBadge.tsx:69
msgid "Private"
msgstr ""

#: packages/admin/src/components/settings/EmailSettings.tsx:167
msgid "Provider:"
msgstr "提供商："

#: packages/admin/src/components/ContentList.tsx:504
#: packages/admin/src/components/ContentSettingsPanel.tsx:195
#: packages/admin/src/components/ContentSettingsPanel.tsx:202
#: packages/admin/src/components/ContentSettingsPanel.tsx:483
#: packages/admin/src/components/ContentSettingsPanel.tsx:486
msgid "Publish"
msgstr "发布"

#: packages/admin/src/components/ContentSettingsPanel.tsx:611
msgid "Publish date"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:851
#: packages/admin/src/components/ContentList.tsx:862
#: packages/admin/src/components/ContentStatusBadge.tsx:59
#: packages/admin/src/components/Dashboard.tsx:297
#: packages/admin/src/router.tsx:1085
msgid "Published"
msgstr "已发布"

#. placeholder {0}: new Date(latest.publishedAt).toLocaleDateString()
#: packages/admin/src/components/MarketplacePluginDetail.tsx:337
msgid "Published {0}"
msgstr "发布于 {0}"

#: packages/admin/src/router.tsx:526
msgid "Published {total} items"
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:135
msgid "Published At"
msgstr "发布时间"

#: packages/admin/src/components/RegistryPluginDetail.tsx:507
msgid "Published by <0/>"
msgstr ""

#: packages/admin/src/components/editor/codeBlockLanguages.ts:47
msgid "Python"
msgstr "Python"

#: packages/admin/src/components/MediaUploadDialog.tsx:106
msgid "Queued"
msgstr ""

#: packages/admin/src/components/editor/ImageNode.tsx:209
#: packages/admin/src/components/editor/ImageNode.tsx:210
msgid "Quick edit alt text"
msgstr "快速编辑替代文本"

#: packages/admin/src/components/editor/BlockMenu.tsx:111
#: packages/admin/src/components/PortableTextEditor.tsx:1478
#: packages/admin/src/components/PortableTextEditor.tsx:4121
msgid "Quote"
msgstr "引用"

#: packages/admin/src/components/WordPressImport.tsx:1180
msgid "Raw meta"
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:68
msgid "Read collection schemas"
msgstr "读取合集模式"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:48
msgid "Read content entries"
msgstr "读取内容条目"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:58
msgid "Read media files"
msgstr "读取媒体文件"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:88
msgid "Read site settings"
msgstr "读取网站设置"

#: packages/admin/src/lib/api/marketplace.ts:284
#: packages/admin/src/lib/api/marketplace.ts:292
msgid "Read user accounts"
msgstr "读取用户账户"

#: packages/admin/src/lib/api/marketplace.ts:279
#: packages/admin/src/lib/api/marketplace.ts:288
msgid "Read your content"
msgstr "读取您的内容"

#: packages/admin/src/lib/api/marketplace.ts:281
msgid "Read your taxonomies and terms"
msgstr ""

#: packages/admin/src/components/settings/GeneralSettings.tsx:310
msgid "Reading"
msgstr "阅读"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:481
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:492
#: packages/admin/src/components/WordPressImport.tsx:2002
msgid "Ready"
msgstr "就绪"

#: packages/admin/src/components/Dashboard.tsx:348
msgid "Recent Activity"
msgstr "最近活动"

#: packages/admin/src/components/Widgets.tsx:126
msgid "Recent Posts"
msgstr ""

#: packages/admin/src/components/MarketplaceBrowse.tsx:43
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:35
msgid "Recently Updated"
msgstr "最近更新"

#: packages/admin/src/components/settings/EmailSettings.tsx:107
msgid "Recipient email"
msgstr "收件人邮箱"

#. placeholder {0}: user.email
#: packages/admin/src/components/users/UserDetail.tsx:336
msgid "Recovery link sent to {0}"
msgstr "恢复链接已发送至 {0}"

#: packages/admin/src/components/Redirects.tsx:450
msgid "Redirect loop detected"
msgstr "检测到重定向循环"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:163
msgid "Redirecting to login..."
msgstr "正在重定向到登录..."

#: packages/admin/src/components/Redirects.tsx:364
#: packages/admin/src/components/Redirects.tsx:385
#: packages/admin/src/components/Sidebar.tsx:269
msgid "Redirects"
msgstr "重定向"

#: packages/admin/src/components/PortableTextEditor.tsx:4266
msgid "Redo"
msgstr "重做"

#: packages/admin/src/components/FieldEditor.tsx:245
msgid "Reference"
msgstr "引用"

#: packages/admin/src/components/settings/GeneralSettings.tsx:269
msgid "Referenced favicon unavailable."
msgstr "引用的网站图标无法使用。"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:337
msgid "Refresh status"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:506
msgid "Refresh status before continuing."
msgstr ""

#: packages/admin/src/components/Dashboard.tsx:125
msgid "Refresh the page or try again."
msgstr ""

#: packages/admin/src/components/ContentTypeList.tsx:156
msgid "Register"
msgstr "注册"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:147
#: packages/admin/src/components/settings/SecuritySettings.tsx:182
msgid "Register Passkey"
msgstr "注册通行密钥"

#: packages/admin/src/components/comments/CommentDetail.tsx:83
msgid "Registered user"
msgstr "已注册用户"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:260
msgid "Registration failed"
msgstr "注册失败"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:267
msgid "Registration was cancelled or timed out. Please try again."
msgstr "注册已取消或超时。请重试。"

#: packages/admin/src/components/Sidebar.tsx:308
msgid "Registry"
msgstr "插件仓库"

#: packages/admin/src/components/RegistryPluginDetail.tsx:621
msgid "Release is too new to install"
msgstr "版本太新，无法安装"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:325
msgid "Reload after updating EmDash before trying again."
msgstr ""

#: packages/admin/src/components/BlockKitMediaPickerField.tsx:84
#: packages/admin/src/components/BlockKitMediaPickerField.tsx:115
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:199
#: packages/admin/src/components/ImageFieldRenderer.tsx:179
#: packages/admin/src/components/PortableTextEditor.tsx:4239
#: packages/admin/src/components/settings/GeneralSettings.tsx:229
#: packages/admin/src/components/settings/GeneralSettings.tsx:289
#: packages/admin/src/components/settings/PasskeyItem.tsx:180
#: packages/admin/src/components/settings/PasskeyItem.tsx:202
#: packages/admin/src/components/settings/SeoSettings.tsx:212
msgid "Remove"
msgstr "移除"

#. placeholder {0}: passkey.name
#. placeholder {0}: row.file.name
#. placeholder {0}: term.label
#: packages/admin/src/components/MediaUploadDialog.tsx:165
#: packages/admin/src/components/settings/PasskeyItem.tsx:181
#: packages/admin/src/components/TaxonomySidebar.tsx:294
msgid "Remove {0}"
msgstr "移除 {0}"

#: packages/admin/src/components/AllowedTypesEditor.tsx:148
msgid "Remove {entry}"
msgstr "移除 {entry}"

#: packages/admin/src/components/ContentEditor.tsx:1793
msgid "Remove {label}"
msgstr "移除 {label}"

#: packages/admin/src/components/TaxonomySidebar.tsx:565
msgid "Remove assignment"
msgstr ""

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:383
msgid "Remove Domain"
msgstr "移除域名"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:381
msgid "Remove Domain?"
msgstr "移除域名？"

#: packages/admin/src/components/BylineCreditsEditor.tsx:886
msgid "Remove from post"
msgstr ""

#: packages/admin/src/components/ImageFieldRenderer.tsx:177
#: packages/admin/src/components/ImageFieldRenderer.tsx:223
#: packages/admin/src/components/ImageFieldRenderer.tsx:253
#: packages/admin/src/components/SeoImageField.tsx:61
msgid "Remove image"
msgstr "移除图片"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:392
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:582
msgid "Remove Image"
msgstr "移除图片"

#. placeholder {0}: index + 1
#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:325
msgid "Remove image {0}"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:197
msgid "Remove Image?"
msgstr "移除图片？"

#. placeholder {0}: index + 1
#: packages/admin/src/components/PortableTextEditor.tsx:2343
#: packages/admin/src/components/RepeaterField.tsx:275
msgid "Remove item {0}"
msgstr "移除项目 {0}"

#: packages/admin/src/components/PortableTextEditor.tsx:3624
#: packages/admin/src/components/PortableTextEditor.tsx:3625
msgid "Remove link"
msgstr "移除链接"

#: packages/admin/src/components/settings/PasskeyItem.tsx:181
msgid "Remove passkey"
msgstr "移除通行密钥"

#: packages/admin/src/components/settings/PasskeyItem.tsx:196
msgid "Remove passkey?"
msgstr "移除通行密钥？"

#: packages/admin/src/components/FieldEditor.tsx:640
msgid "Remove sub-field"
msgstr "移除子字段"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:198
msgid "Remove this image from the document?"
msgstr "从文档中移除此图片？"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:200
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:384
#: packages/admin/src/components/settings/PasskeyItem.tsx:203
msgid "Removing..."
msgstr "正在移除..."

#: packages/admin/src/components/settings/PasskeyItem.tsx:169
msgid "Rename"
msgstr "重命名"

#. placeholder {0}: passkey.name
#: packages/admin/src/components/settings/PasskeyItem.tsx:170
msgid "Rename {0}"
msgstr "重命名 {0}"

#: packages/admin/src/components/settings/PasskeyItem.tsx:170
msgid "Rename passkey"
msgstr "重命名通行密钥"

#: packages/admin/src/components/ContentTypeList.tsx:174
msgid "Reorder"
msgstr ""

#. placeholder {0}: byline.displayName
#. placeholder {0}: collection.label
#: packages/admin/src/components/BylineCreditsEditor.tsx:831
#: packages/admin/src/components/ContentTypeList.tsx:281
msgid "Reorder {0}"
msgstr ""

#: packages/admin/src/components/FieldEditor.tsx:269
msgid "Repeater"
msgstr "重复器"

#: packages/admin/src/components/FieldEditor.tsx:270
msgid "Repeating group of fields"
msgstr "重复的字段组"

#: packages/admin/src/components/ImageFieldRenderer.tsx:169
msgid "Replace"
msgstr ""

#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:368
#: packages/admin/src/components/editor/GalleryDetailPanel.tsx:401
msgid "Replace image"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:213
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:248
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:435
msgid "Replace Image"
msgstr "替换图片"

#: packages/admin/src/components/comments/CommentDetail.tsx:117
msgid "Reply to:"
msgstr "回复："

#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:220
msgid "Repository"
msgstr "仓库"

#: packages/admin/src/components/SignupPage.tsx:289
msgid "Request a new link"
msgstr "请求新链接"

#: packages/admin/src/lib/api/client.ts:260
msgid "Request failed"
msgstr "请求失败"

#: packages/admin/src/components/ContentTypeEditor.tsx:430
msgid "Require a slug before content can be published"
msgstr ""

#: packages/admin/src/components/BylineFieldEditor.tsx:280
#: packages/admin/src/components/ContentTypeEditor.tsx:745
#: packages/admin/src/components/FieldEditor.tsx:463
#: packages/admin/src/components/FieldEditor.tsx:622
#: packages/admin/src/routes/byline-schema.tsx:246
msgid "Required"
msgstr "必填"

#: packages/admin/src/components/WordPressImport.tsx:2015
msgid "Required fields:"
msgstr "必填字段："

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:348
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:537
msgid "Required for accessibility. Describes the image for screen readers."
msgstr "无障碍访问必需。为屏幕阅读器描述图片。"

#. placeholder {0}: latest.minEmDashVersion
#: packages/admin/src/components/MarketplacePluginDetail.tsx:335
msgid "Requires EmDash {0}"
msgstr "需要 EmDash {0}"

#: packages/admin/src/components/SignupPage.tsx:171
msgid "Resend email"
msgstr "重新发送邮件"

#: packages/admin/src/components/SignupPage.tsx:170
msgid "Resend in {resendCooldown}s"
msgstr "{resendCooldown}秒后重发"

#: packages/admin/src/components/MediaDetailPanel.tsx:875
msgid "Reset"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:277
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:466
msgid "Reset to original"
msgstr "重置为原始"

#: packages/admin/src/components/ContentEditor.tsx:980
msgid "Resize settings panel"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:4112
msgid "Restart numbering"
msgstr ""

#: packages/admin/src/components/RevisionHistory.tsx:238
msgid "Restore"
msgstr "恢复"

#: packages/admin/src/components/ContentList.tsx:1502
msgid "Restore {title}"
msgstr "恢复 {title}"

#: packages/admin/src/components/RevisionHistory.tsx:135
msgid "Restore failed"
msgstr "恢复失败"

#: packages/admin/src/components/RevisionHistory.tsx:232
msgid "Restore Revision?"
msgstr "恢复修订版本？"

#: packages/admin/src/components/RevisionHistory.tsx:299
#: packages/admin/src/components/RevisionHistory.tsx:300
msgid "Restore this version"
msgstr "恢复此版本"

#. placeholder {0}: formatFullDate(restoreTarget.createdAt)
#: packages/admin/src/components/RevisionHistory.tsx:235
msgid "Restore this version from {0}? This will update the current content to this revision's data."
msgstr "从 {0} 恢复此版本？这将把当前内容更新为此修订版本的数据。"

#: packages/admin/src/components/RevisionHistory.tsx:239
msgid "Restoring..."
msgstr "正在恢复..."

#: packages/admin/src/components/BylineCreditsEditor.tsx:471
#: packages/admin/src/components/MarketplaceBrowse.tsx:143
#: packages/admin/src/components/MediaDetailPanel.tsx:778
#: packages/admin/src/components/MediaLibrary.tsx:1025
#: packages/admin/src/components/MediaLibrary.tsx:1558
#: packages/admin/src/components/PluginFieldErrorBoundary.tsx:44
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:122
#: packages/admin/src/lib/content-editor-panels.tsx:201
#: packages/admin/src/router.tsx:2519
#: packages/admin/src/routes/byline-schema.tsx:280
msgid "Retry"
msgstr "重试"

#. placeholder {0}: row.file.name
#: packages/admin/src/components/MediaUploadDialog.tsx:151
msgid "Retry {0}"
msgstr ""

#: packages/admin/src/components/editor/CodeBlockNode.tsx:246
#: packages/admin/src/components/editor/CodeBlockNode.tsx:253
msgid "Retry copy"
msgstr ""

#: packages/admin/src/components/MediaUploadDialog.tsx:503
msgid "Retry failed"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:417
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:578
msgid "Retry setup"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:572
msgid "Retry setup?"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:579
msgid "Retrying…"
msgstr ""

#: packages/admin/src/components/Sections.tsx:136
msgid "Reusable content blocks you can insert into any content"
msgstr "可重用的内容区块，可插入到任何内容中"

#: packages/admin/src/router.tsx:1123
msgid "Reverted to published version"
msgstr "已恢复到发布版本"

#: packages/admin/src/components/WordPressImport.tsx:742
msgid "Review"
msgstr "审核"

#: packages/admin/src/components/CapabilityConsentDialog.tsx:79
msgid "Review New Permissions"
msgstr "查看新权限"

#: packages/admin/src/components/RevisionHistory.tsx:129
msgid "Revision restored"
msgstr "修订版本已恢复"

#: packages/admin/src/components/ContentSettingsPanel.tsx:810
#: packages/admin/src/components/ContentTypeEditor.tsx:76
#: packages/admin/src/components/RevisionHistory.tsx:168
msgid "Revisions"
msgstr "修订版本"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:190
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:193
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:394
msgid "Revoke token"
msgstr "撤销令牌"

#. placeholder {0}: token.name
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:392
msgid "Revoke token {0}"
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:414
msgid "Revoke?"
msgstr "撤销？"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:417
msgid "Revoking..."
msgstr "撤销中..."

#: packages/admin/src/components/FieldEditor.tsx:227
msgid "Rich Text"
msgstr "富文本"

#: packages/admin/src/components/Widgets.tsx:99
msgid "Rich text content"
msgstr "富文本内容"

#: packages/admin/src/components/FieldEditor.tsx:228
msgid "Rich text editor"
msgstr "富文本编辑器"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:162
msgid "Right"
msgstr ""

#. placeholder {0}: latest.audit.riskScore
#: packages/admin/src/components/MarketplacePluginDetail.tsx:322
msgid "Risk score: {0}/100"
msgstr "风险评分：{0}/100"

#: packages/admin/src/components/settings/SeoSettings.tsx:255
#: packages/admin/src/components/settings/SeoSettings.tsx:258
msgid "robots.txt"
msgstr ""

#: packages/admin/src/components/users/InviteUserModal.tsx:164
#: packages/admin/src/components/users/UserDetail.tsx:169
#: packages/admin/src/components/users/UserDetail.tsx:181
#: packages/admin/src/components/users/UserList.tsx:94
msgid "Role"
msgstr "角色"

#: packages/admin/src/components/users/roleDefinitions.ts:61
msgid "Role {role}"
msgstr "角色 {role}"

#: packages/admin/src/components/BylineCreditsEditor.tsx:901
msgid "Role on this post (optional)"
msgstr ""

#. placeholder {0}: byline.displayName
#: packages/admin/src/components/BylineCreditsEditor.tsx:611
msgid "Role updated for {0}."
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:428
msgid "Routable"
msgstr ""

#. placeholder {0}: tool.route
#. placeholder {1}: tool.permission
#: packages/admin/src/components/CapabilityConsentDialog.tsx:149
#: packages/admin/src/components/PluginManager.tsx:572
msgid "Route: {0} · Permission: {1}"
msgstr ""

#: packages/admin/src/components/editor/codeBlockLanguages.ts:48
msgid "Ruby"
msgstr "Ruby"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:49
msgid "Rust"
msgstr "Rust"

#: packages/admin/src/components/MenuEditor.tsx:430
#: packages/admin/src/components/MenuEditor.tsx:432
#: packages/admin/src/components/MenuEditor.tsx:609
#: packages/admin/src/components/MenuEditor.tsx:611
msgid "Same window"
msgstr "同一窗口"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:395
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:589
#: packages/admin/src/components/editor/ImageNode.tsx:277
#: packages/admin/src/components/editor/PluginBlockNode.tsx:417
#: packages/admin/src/components/MediaDetailPanel.tsx:934
#: packages/admin/src/components/MediaFolderDialog.tsx:171
#: packages/admin/src/components/MenuEditor.tsx:626
#: packages/admin/src/components/Redirects.tsx:191
#: packages/admin/src/components/SaveButton.tsx:32
#: packages/admin/src/components/Widgets.tsx:983
#: packages/admin/src/routes/bylines.tsx:579
msgid "Save"
msgstr "保存"

#: packages/admin/src/components/editor/PluginBlockNode.tsx:416
msgid "Save (Enter)"
msgstr "保存 (Enter)"

#: packages/admin/src/components/editor/ImageNode.tsx:278
msgid "Save alt text"
msgstr "保存替代文本"

#: packages/admin/src/components/BylineCreditsEditor.tsx:1019
#: packages/admin/src/components/BylineFieldEditor.tsx:318
msgid "Save changes"
msgstr "保存更改"

#: packages/admin/src/components/users/UserDetail.tsx:311
msgid "Save Changes"
msgstr "保存更改"

#: packages/admin/src/components/ContentTypeEditor.tsx:72
msgid "Save content as draft before publishing"
msgstr "发布前将内容保存为草稿"

#: packages/admin/src/components/settings/PasskeyItem.tsx:132
msgid "Save name"
msgstr "保存名称"

#: packages/admin/src/components/PluginSettings.tsx:166
#: packages/admin/src/components/PluginSettings.tsx:209
msgid "Save Settings"
msgstr "保存设置"

#: packages/admin/src/components/SaveButton.tsx:34
msgid "Saved"
msgstr "已保存"

#. placeholder {0}: field.label
#: packages/admin/src/routes/byline-schema.tsx:116
msgid "Saved \"{0}\"."
msgstr "已保存 \"{0}\"."

#: packages/admin/src/components/FieldEditor.tsx:689
#: packages/admin/src/components/MediaDetailPanel.tsx:934
#: packages/admin/src/components/MediaFolderDialog.tsx:171
#: packages/admin/src/components/MenuEditor.tsx:626
#: packages/admin/src/components/PluginSettings.tsx:166
#: packages/admin/src/components/PluginSettings.tsx:209
#: packages/admin/src/components/Redirects.tsx:188
#: packages/admin/src/components/SaveButton.tsx:33
#: packages/admin/src/components/TaxonomyManager.tsx:665
#: packages/admin/src/components/users/UserDetail.tsx:311
#: packages/admin/src/components/Widgets.tsx:983
#: packages/admin/src/routes/bylines.tsx:579
msgid "Saving..."
msgstr "保存中..."

#: packages/admin/src/components/BylineFieldEditor.tsx:318
msgid "Saving…"
msgstr "保存中…"

#: packages/admin/src/components/RegistryPluginDetail.tsx:519
msgid "SBOM"
msgstr "SBOM"

#. placeholder {0}: sbom.format
#: packages/admin/src/components/RegistryPluginDetail.tsx:517
msgid "SBOM · {0}"
msgstr "SBOM · {0}"

#: packages/admin/src/components/ContentSettingsPanel.tsx:579
msgid "Schedule"
msgstr "定时发布"

#: packages/admin/src/components/ContentSettingsPanel.tsx:565
msgid "Schedule for"
msgstr "定时发布于"

#: packages/admin/src/components/ContentSettingsPanel.tsx:602
msgid "Schedule for later"
msgstr "稍后定时发布"

#: packages/admin/src/components/ContentList.tsx:853
#: packages/admin/src/components/ContentStatusBadge.tsx:63
#: packages/admin/src/router.tsx:1143
msgid "Scheduled"
msgstr "已定时"

#. placeholder {0}: formatScheduledDate(item.scheduledAt)
#: packages/admin/src/components/ContentSettingsPanel.tsx:553
msgid "Scheduled for: {0}"
msgstr "计划发布于：{0}"

#: packages/admin/src/components/Dashboard.tsx:111
msgid "Scheduled publishing needs attention"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:2338
msgid "Schema Changes"
msgstr "架构更改"

#: packages/admin/src/components/WordPressImport.tsx:1715
msgid "Schema preparation failed"
msgstr "架构准备失败"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:67
msgid "Schema Read"
msgstr "模式读取"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:72
msgid "Schema Write"
msgstr "模式写入"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:351
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:490
msgid "Scopes"
msgstr "权限范围"

#. placeholder {0}: i + 1
#. placeholder {0}: index + 1
#: packages/admin/src/components/MarketplacePluginDetail.tsx:254
#: packages/admin/src/components/RegistryPluginDetail.tsx:666
#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:174
#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:293
msgid "Screenshot {0}"
msgstr "截图 {0}"

#. placeholder {0}: index + 1
#. placeholder {1}: screenshots.length
#: packages/admin/src/components/MarketplacePluginDetail.tsx:466
msgid "Screenshot {0} of {1}"
msgstr "截图 {0} / {1}"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:257
msgid "Screenshot blurred due to image audit"
msgstr "由于图像审计，截图已模糊"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:444
msgid "Screenshot viewer"
msgstr "截图查看器"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:244
#: packages/admin/src/components/RegistryPluginDetail.tsx:660
#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:164
msgid "Screenshots"
msgstr "截图"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:50
msgid "SCSS"
msgstr "SCSS"

#: packages/admin/src/components/ContentTypeEditor.tsx:86
#: packages/admin/src/components/Settings.tsx:155
#: packages/admin/src/components/Settings.tsx:155
#: packages/admin/src/components/Widgets.tsx:151
msgid "Search"
msgstr "搜索"

#. placeholder {0}: collectionLabel.toLowerCase()
#: packages/admin/src/components/ContentList.tsx:465
msgid "Search {0}"
msgstr "搜索 {0}"

#. placeholder {0}: collectionLabel.toLowerCase()
#: packages/admin/src/components/ContentList.tsx:464
msgid "Search {0}..."
msgstr "搜索 {0}..."

#: packages/admin/src/components/MediaLibrary.tsx:970
#: packages/admin/src/components/MediaPickerModal.tsx:627
msgid "Search by filename..."
msgstr "按文件名搜索..."

#: packages/admin/src/components/users/UserList.tsx:63
msgid "Search by name or email..."
msgstr "按名称或邮箱搜索..."

#: packages/admin/src/components/BylineCreditsEditor.tsx:439
#: packages/admin/src/components/BylineFilter.tsx:128
#: packages/admin/src/routes/bylines.tsx:401
msgid "Search bylines"
msgstr "搜索署名"

#: packages/admin/src/components/BylineCreditsEditor.tsx:440
msgid "Search bylines to add…"
msgstr ""

#: packages/admin/src/components/BylineFilter.tsx:129
msgid "Search bylines…"
msgstr ""

#: packages/admin/src/components/comments/CommentInbox.tsx:201
msgid "Search comments"
msgstr "搜索评论"

#: packages/admin/src/components/comments/CommentInbox.tsx:200
msgid "Search comments..."
msgstr "搜索评论..."

#: packages/admin/src/components/ContentPickerModal.tsx:141
msgid "Search content..."
msgstr "搜索内容..."

#: packages/admin/src/components/settings/SeoSettings.tsx:161
msgid "Search Engine Optimization"
msgstr "搜索引擎优化"

#: packages/admin/src/components/Settings.tsx:65
#: packages/admin/src/components/settings/SeoSettings.tsx:118
msgid "Search engine optimization and verification"
msgstr "搜索引擎优化和验证"

#: packages/admin/src/components/MediaDetailPanel.tsx:736
#: packages/admin/src/components/MediaDetailPanel.tsx:737
msgid "Search folders"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:152
msgid "Search form"
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:971
#: packages/admin/src/components/MediaPickerModal.tsx:628
msgid "Search media"
msgstr "搜索媒体"

#: packages/admin/src/components/AdminCommandPalette.tsx:438
msgid "Search pages and content..."
msgstr "搜索页面和内容..."

#: packages/admin/src/components/MarketplaceBrowse.tsx:103
#: packages/admin/src/components/RegistryBrowse.tsx:106
msgid "Search plugins"
msgstr "搜索插件"

#: packages/admin/src/components/MarketplaceBrowse.tsx:99
#: packages/admin/src/components/RegistryBrowse.tsx:102
msgid "Search plugins..."
msgstr "搜索插件..."

#: packages/admin/src/components/BylineCreditsEditor.tsx:421
msgid "Search reusable public profiles."
msgstr ""

#: packages/admin/src/components/SectionPickerModal.tsx:82
#: packages/admin/src/components/Sections.tsx:226
msgid "Search sections..."
msgstr "搜索区块..."

#: packages/admin/src/components/Redirects.tsx:417
msgid "Search source or destination..."
msgstr "搜索源或目标..."

#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:93
msgid "Search themes"
msgstr "搜索主题"

#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:89
msgid "Search themes..."
msgstr "搜索主题..."

#: packages/admin/src/components/BylineFilter.tsx:169
msgid "Search to narrow the list"
msgstr ""

#: packages/admin/src/components/users/UserList.tsx:66
msgid "Search users"
msgstr "搜索用户"

#: packages/admin/src/components/MediaLibrary.tsx:970
#: packages/admin/src/components/MediaPickerModal.tsx:627
msgid "Search..."
msgstr "搜索..."

#: packages/admin/src/components/ContentTypeEditor.tsx:747
#: packages/admin/src/components/FieldEditor.tsx:474
msgid "Searchable"
msgstr "可搜索"

#: packages/admin/src/components/BylineCreditsEditor.tsx:465
#: packages/admin/src/components/BylineCreditsEditor.tsx:548
msgid "Searching…"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:2742
msgid "Section"
msgstr "区块"

#: packages/admin/src/components/SectionEditor.tsx:101
msgid "Section \"{slug}\" could not be found."
msgstr "未找到区块 \"{slug}\"。"

#: packages/admin/src/components/Sections.tsx:93
msgid "Section created"
msgstr "区块已创建"

#: packages/admin/src/components/Sections.tsx:107
msgid "Section deleted"
msgstr "区块已删除"

#: packages/admin/src/components/SectionEditor.tsx:269
msgid "Section Details"
msgstr "区块详情"

#: packages/admin/src/components/SectionEditor.tsx:97
msgid "Section Not Found"
msgstr "未找到区块"

#: packages/admin/src/components/SectionEditor.tsx:275
msgid "Section title"
msgstr "区块标题"

#: packages/admin/src/components/AdminCommandPalette.tsx:176
#: packages/admin/src/components/Sections.tsx:134
#: packages/admin/src/components/Sidebar.tsx:274
msgid "Sections"
msgstr "区块"

#: packages/admin/src/components/SetupWizard.tsx:561
msgid "Secure your account"
msgstr "保护您的账户"

#: packages/admin/src/components/RegistryPluginDetail.tsx:820
#: packages/admin/src/components/Settings.tsx:85
msgid "Security"
msgstr "安全"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:318
msgid "Security Audit"
msgstr "安全审计"

#: packages/admin/src/components/MarketplaceBrowse.tsx:342
msgid "Security audit failed"
msgstr "安全审计失败"

#: packages/admin/src/components/MarketplaceBrowse.tsx:332
msgid "Security audit flagged concerns"
msgstr "安全审计标记了问题"

#: packages/admin/src/components/CapabilityConsentDialog.tsx:179
msgid "Security audit flagged potential concerns with this plugin."
msgstr "安全审计标记了此插件的潜在问题。"

#: packages/admin/src/components/CapabilityConsentDialog.tsx:180
msgid "Security audit flagged this plugin as potentially unsafe."
msgstr "安全审计标记此插件为可能不安全。"

#: packages/admin/src/components/MarketplaceBrowse.tsx:321
msgid "Security audit passed"
msgstr "安全审计通过"

#: packages/admin/src/components/RegistryPluginDetail.tsx:729
msgid "Security contacts"
msgstr "安全联系方式"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:271
#: packages/admin/src/components/auth/PasskeyRegistration.tsx:276
msgid "Security error. Make sure you're on a secure connection."
msgstr "安全错误。请确保您使用的是安全连接。"

#: packages/admin/src/components/AdminCommandPalette.tsx:242
#: packages/admin/src/components/Header.tsx:93
#: packages/admin/src/components/Settings.tsx:81
#: packages/admin/src/components/settings/SecuritySettings.tsx:88
#: packages/admin/src/components/settings/SecuritySettings.tsx:110
msgid "Security Settings"
msgstr "安全设置"

#: packages/admin/src/components/BylineFieldEditor.tsx:56
#: packages/admin/src/components/FieldEditor.tsx:215
#: packages/admin/src/components/FieldEditor.tsx:614
#: packages/admin/src/components/Settings.tsx:149
msgid "Select"
msgstr "选择"

#: packages/admin/src/components/BlockKitMediaPickerField.tsx:140
#: packages/admin/src/components/ContentEditor.tsx:1805
#: packages/admin/src/components/ContentEditor.tsx:1821
#: packages/admin/src/components/ImageFieldRenderer.tsx:281
msgid "Select {label}"
msgstr "选择 {label}"

#: packages/admin/src/components/ContentList.tsx:1253
msgid "Select {title}"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:956
msgid "Select a component..."
msgstr "选择组件..."

#: packages/admin/src/components/MediaDetailPanel.tsx:727
msgid "Select a location"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:919
msgid "Select a menu..."
msgstr "选择菜单..."

#: packages/admin/src/components/comments/CommentInbox.tsx:275
msgid "Select all"
msgstr "全选"

#: packages/admin/src/components/ContentList.tsx:586
msgid "Select all on this page"
msgstr ""

#. placeholder {0}: comment.authorName
#: packages/admin/src/components/comments/CommentInbox.tsx:448
msgid "Select comment by {0}"
msgstr "选择 {0} 的评论"

#: packages/admin/src/components/ContentPickerModal.tsx:117
msgid "Select Content"
msgstr "选择内容"

#: packages/admin/src/components/settings/SeoSettings.tsx:284
msgid "Select Default Social Image"
msgstr "选择默认社交图片"

#: packages/admin/src/components/settings/GeneralSettings.tsx:301
#: packages/admin/src/components/settings/GeneralSettings.tsx:364
msgid "Select Favicon"
msgstr "选择网站图标"

#: packages/admin/src/components/ContentEditor.tsx:1809
msgid "Select file"
msgstr "选择文件"

#: packages/admin/src/components/MediaPickerModal.tsx:151
msgid "Select File"
msgstr "选择文件"

#: packages/admin/src/components/PortableTextEditor.tsx:3465
msgid "Select Gallery Images"
msgstr ""

#: packages/admin/src/components/ImageFieldRenderer.tsx:269
msgid "Select image"
msgstr "选择图片"

#: packages/admin/src/components/MediaPickerModal.tsx:151
#: packages/admin/src/components/PortableTextEditor.tsx:3451
#: packages/admin/src/components/settings/SeoSettings.tsx:223
msgid "Select Image"
msgstr "选择图片"

#: packages/admin/src/components/settings/GeneralSettings.tsx:241
#: packages/admin/src/components/settings/GeneralSettings.tsx:356
msgid "Select Logo"
msgstr "选择徽标"

#: packages/admin/src/components/BlockKitMediaPickerField.tsx:131
msgid "Select media"
msgstr "选择媒体"

#: packages/admin/src/components/SeoImageField.tsx:76
msgid "Select OG image"
msgstr "选择 OG 图片"

#: packages/admin/src/components/SeoImageField.tsx:85
msgid "Select OG Image"
msgstr "选择 OG 图片"

#: packages/admin/src/components/WordPressImport.tsx:1748
msgid "Select which content types to import."
msgstr "选择要导入的内容类型。"

#: packages/admin/src/components/BlockKitFieldWidget.tsx:108
#: packages/admin/src/components/PortableTextEditor.tsx:2438
#: packages/admin/src/components/RepeaterField.tsx:372
msgid "Select..."
msgstr "选择..."

#: packages/admin/src/components/PortableTextEditor.tsx:1767
msgid "Selected {selectedItemTitle}"
msgstr ""

#: packages/admin/src/components/ImageFieldRenderer.tsx:120
msgid "Selected image"
msgstr ""

#: packages/admin/src/components/MediaPickerModal.tsx:796
msgid "Selected:"
msgstr "已选择："

#: packages/admin/src/components/Settings.tsx:91
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:158
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:180
msgid "Self-Signup Domains"
msgstr "自助注册域"

#: packages/admin/src/components/settings/EmailSettings.tsx:98
msgid "Send a test email through the full pipeline to verify your email configuration."
msgstr "通过完整管道发送测试邮件以验证您的邮件配置。"

#: packages/admin/src/components/users/InviteUserModal.tsx:84
msgid "Send an invitation email to a new team member."
msgstr "向新团队成员发送邀请邮件。"

#: packages/admin/src/components/users/InviteUserModal.tsx:201
msgid "Send Invite"
msgstr "发送邀请"

#: packages/admin/src/components/LoginPage.tsx:150
msgid "Send magic link"
msgstr "发送免密登录链接"

#: packages/admin/src/components/users/UserDetail.tsx:332
msgid "Send Recovery Link"
msgstr "发送恢复链接"

#: packages/admin/src/components/settings/EmailSettings.tsx:122
msgid "Send Test"
msgstr "发送测试"

#: packages/admin/src/components/settings/EmailSettings.tsx:97
msgid "Send Test Email"
msgstr "发送测试邮件"

#: packages/admin/src/components/LoginPage.tsx:150
#: packages/admin/src/components/settings/EmailSettings.tsx:122
#: packages/admin/src/components/SignupPage.tsx:106
#: packages/admin/src/components/SignupPage.tsx:168
#: packages/admin/src/components/users/InviteUserModal.tsx:201
#: packages/admin/src/components/users/UserDetail.tsx:332
msgid "Sending..."
msgstr "发送中..."

#: packages/admin/src/components/ContentSettingsPanel.tsx:753
#: packages/admin/src/components/ContentSettingsPanel.tsx:756
#: packages/admin/src/components/ContentTypeEditor.tsx:487
#: packages/admin/src/components/Settings.tsx:64
msgid "SEO"
msgstr "SEO"

#: packages/admin/src/components/settings/SeoSettings.tsx:117
msgid "SEO Settings"
msgstr "SEO 设置"

#: packages/admin/src/components/WordPressImport.tsx:1859
msgid "SEO settings (Yoast)"
msgstr "SEO 设置（Yoast）"

#: packages/admin/src/components/settings/SeoSettings.tsx:72
msgid "SEO settings saved"
msgstr "SEO 设置已保存"

#: packages/admin/src/components/SeoPanel.tsx:178
#: packages/admin/src/components/SeoPanel.tsx:182
msgid "SEO Title"
msgstr "SEO 标题"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:316
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:505
msgid "Set a custom display size for this image instance."
msgstr "为此图片实例设置自定义显示尺寸。"

#: packages/admin/src/components/editor/CodeBlockNode.tsx:239
msgid "Set language"
msgstr "设置语言"

#: packages/admin/src/components/editor/CodeBlockNode.tsx:236
msgid "Set language (current: {label})"
msgstr "设置语言（当前：{label}）"

#: packages/admin/src/components/BylineCreditsEditor.tsx:868
msgid "Set role"
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:544
msgid "Set to 0 to never close comments automatically."
msgstr "设置为 0 以永不自动关闭评论。"

#: packages/admin/src/components/ContentList.tsx:514
msgid "Set to draft"
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:884
msgid "Set up media usage tracking"
msgstr ""

#: packages/admin/src/components/SetupWizard.tsx:559
msgid "Set up your site"
msgstr "设置您的站点"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:458
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:462
msgid "Setting up"
msgstr ""

#: packages/admin/src/components/SetupWizard.tsx:150
msgid "Setting up..."
msgstr "正在设置..."

#: packages/admin/src/components/AdminCommandPalette.tsx:234
#: packages/admin/src/components/ContentEditor.tsx:860
#: packages/admin/src/components/ContentEditor.tsx:1144
#: packages/admin/src/components/ContentTypeEditor.tsx:382
#: packages/admin/src/components/Header.tsx:101
#: packages/admin/src/components/PluginManager.tsx:478
#: packages/admin/src/components/Settings.tsx:44
#: packages/admin/src/components/Sidebar.tsx:337
#: packages/admin/src/components/WordPressImport.tsx:1827
msgid "Settings"
msgstr "设置"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:92
msgid "Settings Manage"
msgstr "设置管理"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:87
msgid "Settings Read"
msgstr "设置读取"

#: packages/admin/src/components/PluginSettings.tsx:68
#: packages/admin/src/components/settings/GeneralSettings.tsx:70
msgid "Settings saved successfully"
msgstr "设置保存成功"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:474
msgid "Setup couldn’t continue. Try again."
msgstr ""

#: packages/admin/src/components/SetupWizard.tsx:468
msgid "Setup failed"
msgstr "设置失败"

#: packages/admin/src/components/users/InviteUserModal.tsx:109
msgid "Share this link with the invited user"
msgstr "与此邀请用户分享此链接"

#: packages/admin/src/components/BylineFieldEditor.tsx:294
msgid "Shared across all translations of the same byline."
msgstr "同一署名的所有翻译共享。"

#: packages/admin/src/components/BylineFieldEditor.tsx:52
msgid "Short text"
msgstr "短文本"

#: packages/admin/src/components/FieldEditor.tsx:179
#: packages/admin/src/components/FieldEditor.tsx:608
msgid "Short Text"
msgstr "短文本"

#: packages/admin/src/components/Widgets.tsx:146
msgid "Show count"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:131
msgid "Show date"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:139
msgid "Show hierarchy"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:138
msgid "Show post count"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:130
msgid "Show thumbnails"
msgstr ""

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:276
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:283
msgid "Show token"
msgstr "显示令牌"

#. placeholder {0}: totalCount ?? 0
#: packages/admin/src/components/MediaLibrary.tsx:1323
msgid "Showing {pageShowingRange} of {0}"
msgstr ""

#: packages/admin/src/components/ContentSettingsPanel.tsx:678
msgid "Shown to readers in this order."
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:365
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:554
msgid "Shown when hovering over the image."
msgstr "悬停在图片上时显示。"

#: packages/admin/src/components/SignupPage.tsx:456
msgid "Sign in"
msgstr "登录"

#: packages/admin/src/components/SetupWizard.tsx:355
msgid "Sign In"
msgstr "登录"

#: packages/admin/src/components/InviteAcceptPage.tsx:162
#: packages/admin/src/components/SignupPage.tsx:285
msgid "Sign in instead"
msgstr "改为登录"

#: packages/admin/src/components/LoginPage.tsx:234
msgid "Sign in to your site"
msgstr "登录到您的网站"

#. placeholder {0}: authProviderList.find((p) => p.id === activeProvider)?.label ?? activeProvider
#. placeholder {0}: provider.label
#: packages/admin/src/components/LoginPage.tsx:233
#: packages/admin/src/components/SetupWizard.tsx:264
msgid "Sign in with {0}"
msgstr "使用 {0} 登录"

#: packages/admin/src/components/LoginPage.tsx:231
msgid "Sign in with email"
msgstr "使用邮箱登录"

#: packages/admin/src/components/LoginPage.tsx:292
msgid "Sign in with email link"
msgstr "使用邮箱链接登录"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:137
#: packages/admin/src/components/LoginPage.tsx:254
msgid "Sign in with Passkey"
msgstr "使用通行密钥登录"

#. placeholder {0}: user.email
#: packages/admin/src/components/DeviceAuthorizePage.tsx:190
msgid "Signed in as {0}"
msgstr "已作为 {0} 登录"

#: packages/admin/src/components/FieldEditor.tsx:216
msgid "Single choice from options"
msgstr "从选项中选择一个"

#: packages/admin/src/components/FieldEditor.tsx:180
msgid "Single line text input"
msgstr "单行文本输入"

#: packages/admin/src/components/Settings.tsx:48
#: packages/admin/src/components/SetupWizard.tsx:353
msgid "Site"
msgstr "站点"

#: packages/admin/src/components/settings/GeneralSettings.tsx:162
msgid "Site Identity"
msgstr "站点标识"

#: packages/admin/src/components/WordPressImport.tsx:2286
msgid "site identity applied (title, tagline, logo)"
msgstr ""

#: packages/admin/src/components/Settings.tsx:53
#: packages/admin/src/components/settings/GeneralSettings.tsx:119
msgid "Site identity, logo, favicon, and reading preferences"
msgstr "站点标识、徽标、网站图标和阅读偏好"

#: packages/admin/src/components/SetupWizard.tsx:351
#: packages/admin/src/components/WordPressImport.tsx:1169
msgid "Site Settings"
msgstr "站点设置"

#: packages/admin/src/components/settings/GeneralSettings.tsx:165
#: packages/admin/src/components/SetupWizard.tsx:116
msgid "Site Title"
msgstr "站点标题"

#: packages/admin/src/components/WordPressImport.tsx:1839
msgid "Site title & tagline"
msgstr "站点标题和副标题"

#: packages/admin/src/components/SetupWizard.tsx:100
msgid "Site title is required"
msgstr "站点标题为必填项"

#: packages/admin/src/components/settings/GeneralSettings.tsx:181
msgid "Site URL"
msgstr "站点 URL"

#: packages/admin/src/components/settings/BackupSettings.tsx:330
msgid "Sites on Cloudflare D1 can additionally restore the database to any minute within the last 30 days using D1 Time Travel — always on, no setup required."
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:1209
msgid "Size"
msgstr "大小"

#: packages/admin/src/components/MediaLibrary.tsx:1539
msgid "Size is not applicable to folders"
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:585
msgid "Size:"
msgstr "大小："

#: packages/admin/src/components/WordPressImport.tsx:2120
msgid "Skip Media Import"
msgstr "跳过媒体导入"

#: packages/admin/src/components/WordPressImport.tsx:2145
msgid "Skipped"
msgstr "已跳过"

#: packages/admin/src/components/BylineFieldEditor.tsx:239
#: packages/admin/src/components/ContentSettingsPanel.tsx:490
#: packages/admin/src/components/ContentTypeEditor.tsx:111
#: packages/admin/src/components/ContentTypeEditor.tsx:403
#: packages/admin/src/components/ContentTypeList.tsx:181
#: packages/admin/src/components/FieldEditor.tsx:257
#: packages/admin/src/components/FieldEditor.tsx:444
#: packages/admin/src/components/SectionEditor.tsx:280
#: packages/admin/src/components/Sections.tsx:184
#: packages/admin/src/components/TaxonomyManager.tsx:581
#: packages/admin/src/routes/byline-schema.tsx:237
#: packages/admin/src/routes/bylines.tsx:486
msgid "Slug"
msgstr "别名"

#: packages/admin/src/components/Sections.tsx:124
msgid "Slug copied to clipboard"
msgstr "别名已复制到剪贴板"

#: packages/admin/src/components/BylineFieldEditor.tsx:251
msgid "Slugs cannot be changed after the field is created."
msgstr "字段创建后无法更改标识符。"

#: packages/admin/src/components/PortableTextEditor.tsx:1419
msgid "Small section heading"
msgstr "小章节标题"

#: packages/admin/src/components/PortableTextEditor.tsx:1429
msgid "Smaller section heading"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:1449
msgid "Smallest section heading"
msgstr ""

#: packages/admin/src/components/Settings.tsx:58
#: packages/admin/src/components/settings/SocialSettings.tsx:89
msgid "Social Links"
msgstr "社交链接"

#: packages/admin/src/components/settings/SocialSettings.tsx:62
msgid "Social links saved"
msgstr "社交链接已保存"

#: packages/admin/src/components/Settings.tsx:59
#: packages/admin/src/components/settings/SocialSettings.tsx:90
msgid "Social media profile links"
msgstr "社交媒体个人资料链接"

#: packages/admin/src/components/settings/SocialSettings.tsx:134
msgid "Social Profiles"
msgstr "社交资料"

#: packages/admin/src/components/MediaUsedIn.tsx:93
msgid "Some content may not appear here yet."
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1876
msgid "Some content types cannot be imported"
msgstr "某些内容类型无法导入"

#: packages/admin/src/components/InviteAcceptPage.tsx:155
#: packages/admin/src/components/SignupPage.tsx:278
msgid "Something went wrong"
msgstr "出现问题"

#: packages/admin/src/components/MarketplaceBrowse.tsx:125
msgid "Sort plugins"
msgstr "排序插件"

#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:104
msgid "Sort themes"
msgstr "排序主题"

#: packages/admin/src/components/ContentTypeList.tsx:184
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:371
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:560
#: packages/admin/src/components/MarketplacePluginDetail.tsx:225
#: packages/admin/src/components/PluginManager.tsx:584
#: packages/admin/src/components/Redirects.tsx:475
#: packages/admin/src/components/SectionEditor.tsx:315
msgid "Source"
msgstr "来源"

#: packages/admin/src/components/Redirects.tsx:132
msgid "Source path"
msgstr "源路径"

#: packages/admin/src/components/comments/CommentDetail.tsx:197
msgid "spam"
msgstr "垃圾"

#: packages/admin/src/components/comments/CommentDetail.tsx:159
#: packages/admin/src/components/comments/CommentInbox.tsx:181
#: packages/admin/src/components/comments/CommentInbox.tsx:239
msgid "Spam"
msgstr "垃圾"

#: packages/admin/src/components/PortableTextEditor.tsx:4279
msgid "Spotlight Mode"
msgstr "聚焦模式"

#: packages/admin/src/components/AllowedTypesEditor.tsx:67
msgid "Spreadsheets"
msgstr "电子表格"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:51
msgid "SQL"
msgstr "SQL"

#: packages/admin/src/components/FocalPointEditor.tsx:31
msgid "Square"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1938
msgid "Start Import"
msgstr "开始导入"

#: packages/admin/src/components/ContentEditor.tsx:1313
#: packages/admin/src/components/PortableTextEditor.tsx:2597
#: packages/admin/src/components/PortableTextEditor.tsx:2598
msgid "Start writing, or type '/' for commands"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:611
#: packages/admin/src/components/ContentSettingsPanel.tsx:525
#: packages/admin/src/components/ContentTypeEditor.tsx:117
#: packages/admin/src/components/Redirects.tsx:480
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:382
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:615
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:641
#: packages/admin/src/components/users/UserList.tsx:97
msgid "Status"
msgstr "状态"

#: packages/admin/src/components/Redirects.tsx:152
msgid "Status code"
msgstr "状态码"

#: packages/admin/src/components/Dashboard.tsx:401
msgid "Status: {status}"
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:205
msgid "Store a daily backup in your site's storage bucket. Old backups are removed automatically."
msgstr ""

#: packages/admin/src/components/settings/BackupSettings.tsx:270
msgid "Stored Backups"
msgstr ""

#: packages/admin/src/components/BylineFieldEditor.tsx:293
msgid "Stored per locale — each translation of a byline gets its own value."
msgstr "按语言环境存储 — 署名的每个翻译都有各自的值。"

#: packages/admin/src/components/PortableTextEditor.tsx:3657
#: packages/admin/src/components/PortableTextEditor.tsx:4062
msgid "Strikethrough"
msgstr "删除线"

#: packages/admin/src/components/WordPressImport.tsx:1768
msgid "Structure"
msgstr "结构"

#: packages/admin/src/components/WordPressImport.tsx:1182
msgid "Structured"
msgstr ""

#: packages/admin/src/components/FieldEditor.tsx:552
msgid "Sub-Fields"
msgstr "子字段"

#: packages/admin/src/components/users/roleDefinitions.ts:18
#: packages/admin/src/components/WelcomeModal.tsx:29
msgid "Subscriber"
msgstr "订阅者"

#: packages/admin/src/components/PortableTextEditor.tsx:3664
msgid "Subscript"
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:3671
msgid "Superscript"
msgstr ""

#: packages/admin/src/components/editor/codeBlockLanguages.ts:52
msgid "Svelte"
msgstr "Svelte"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:53
msgid "Swift"
msgstr "Swift"

#: packages/admin/src/components/users/UserDetail.tsx:256
msgid "Synced"
msgstr "已同步"

#: packages/admin/src/components/settings/PasskeyItem.tsx:98
msgid "Synced passkey"
msgstr "已同步通行密钥"

#: packages/admin/src/components/ContentTypeEditor.tsx:792
msgid "System"
msgstr "系统"

#: packages/admin/src/components/ThemeToggle.tsx:24
msgid "System ({resolvedLabel})"
msgstr "跟随系统（{resolvedLabel}）"

#: packages/admin/src/components/ContentTypeEditor.tsx:614
msgid "System Fields"
msgstr "系统字段"

#: packages/admin/src/components/PortableTextEditor.tsx:1516
msgid "Table"
msgstr "表格"

#: packages/admin/src/components/PortableTextEditor.tsx:3746
msgid "Table controls"
msgstr ""

#: packages/admin/src/components/settings/GeneralSettings.tsx:173
#: packages/admin/src/components/SetupWizard.tsx:127
msgid "Tagline"
msgstr "副标题"

#: packages/admin/src/components/AdminCommandPalette.tsx:201
#: packages/admin/src/components/Widgets.tsx:143
msgid "Tags"
msgstr "标签"

#. placeholder {0}: analysis.tags
#: packages/admin/src/components/WordPressImport.tsx:1813
msgid "Tags ({0})"
msgstr "标签 ({0})"

#: packages/admin/src/components/MenuEditor.tsx:427
#: packages/admin/src/components/MenuEditor.tsx:606
msgid "Target"
msgstr "目标"

#: packages/admin/src/components/TaxonomyManager.tsx:359
msgid "Target locale"
msgstr "目标语言区域"

#: packages/admin/src/components/ContentSettingsPanel.tsx:740
#: packages/admin/src/components/TaxonomySidebar.tsx:683
msgid "Taxonomies"
msgstr "分类"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:77
msgid "Taxonomies Manage"
msgstr "分类管理"

#: packages/admin/src/components/TaxonomyManager.tsx:1130
msgid "Taxonomy created"
msgstr "分类已创建"

#: packages/admin/src/components/TaxonomyManager.tsx:35
msgid "Taxonomy not found: {taxonomyName}"
msgstr ""

#: packages/admin/src/components/TaxonomyManager.tsx:346
msgid "Taxonomy: {taxonomyName}"
msgstr "分类：{taxonomyName}"

#: packages/admin/src/components/SetupWizard.tsx:155
msgid "Template:"
msgstr "模板："

#: packages/admin/src/components/TaxonomyManager.tsx:544
#: packages/admin/src/components/TaxonomyManager.tsx:545
#: packages/admin/src/components/TaxonomyManager.tsx:1047
msgid "Term"
msgstr "词条"

#. placeholder {0}: term.label
#. placeholder {1}: term.locale.toUpperCase()
#: packages/admin/src/components/TaxonomyManager.tsx:994
msgid "Term \"{0}\" created in {1}."
msgstr "词条 \"{0}\" 已在 {1} 中创建。"

#: packages/admin/src/components/TaxonomyManager.tsx:934
msgid "Term deleted"
msgstr "词条已删除"

#: packages/admin/src/components/settings/EmailSettings.tsx:111
msgid "test@example.com"
msgstr "test@example.com"

#: packages/admin/src/components/PortableTextEditor.tsx:4013
msgid "Text formatting"
msgstr "文本格式化"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:198
msgid "The device will not be granted access."
msgstr "设备将不会被授予访问权限。"

#: packages/admin/src/components/WordPressImport.tsx:1878
msgid "The existing collection has fields with incompatible types."
msgstr "现有合集包含类型不兼容的字段。"

#: packages/admin/src/components/MediaLibrary.tsx:653
msgid "The file or folder no longer exists."
msgstr ""

#: packages/admin/src/components/ContentTypeList.tsx:136
msgid "The following tables contain content but aren't registered as collections. Register them to manage this content in the admin."
msgstr "以下表格包含内容但未注册为合集。注册它们以便在管理后台中管理此内容。"

#: packages/admin/src/components/users/InviteUserModal.tsx:179
msgid "The invited user will have this role once they complete registration."
msgstr "被邀请的用户完成注册后将拥有此角色。"

#: packages/admin/src/components/LoginPage.tsx:114
#: packages/admin/src/components/SignupPage.tsx:156
msgid "The link will expire in 15 minutes."
msgstr "链接将在 15 分钟后过期。"

#: packages/admin/src/components/MarketplaceBrowse.tsx:179
msgid "The marketplace is empty. Check back later for new plugins."
msgstr "市场为空。请稍后查看新插件。"

#: packages/admin/src/components/MenuList.tsx:76
msgid "The menu has been deleted."
msgstr "菜单已删除。"

#: packages/admin/src/components/settings/GeneralSettings.tsx:168
msgid "The name of your site, used in the header and metadata"
msgstr "您站点的名称，用于页眉和元数据"

#: packages/admin/src/router.tsx:2533
msgid "The page you're looking for doesn't exist."
msgstr "您查找的页面不存在。"

#: packages/admin/src/components/PluginFieldErrorBoundary.tsx:37
msgid "The plugin field widget failed to render."
msgstr "插件字段组件渲染失败。"

#: packages/admin/src/components/settings/GeneralSettings.tsx:185
msgid "The public URL of your site (used for canonical links and sitemaps)"
msgstr "您站点的公共 URL（用于规范链接和站点地图）"

#: packages/admin/src/components/settings/SeoSettings.tsx:192
msgid "The referenced image is no longer available. Pick a new one or remove the reference."
msgstr "引用的图片已不可用。请选择新图片或移除该引用。"

#: packages/admin/src/components/settings/GeneralSettings.tsx:209
msgid "The referenced logo is no longer available. Pick a new one or remove the reference."
msgstr "引用的徽标已不可用。请选择新标志或移除该引用。"

#: packages/admin/src/components/MediaDetailPanel.tsx:373
msgid "The selected folder no longer exists. Choose another location and save again."
msgstr ""

#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:153
msgid "The theme marketplace is empty. Check back later."
msgstr "主题市场为空。请稍后再来。"

#: packages/admin/src/components/Sections.tsx:45
msgid "Theme"
msgstr "主题"

#. placeholder {0}: section.themeId
#: packages/admin/src/components/SectionEditor.tsx:328
msgid "Theme ID: {0}"
msgstr "主题 ID：{0}"

#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:91
msgid "Theme not found"
msgstr "未找到主题"

#: packages/admin/src/components/SectionEditor.tsx:205
msgid "Theme Section"
msgstr "主题区块"

#: packages/admin/src/components/Sections.tsx:300
msgid "Theme-provided sections cannot be deleted. Edit the section to create a custom copy, then delete that."
msgstr "主题提供的区块无法删除。编辑区块以创建自定义副本，然后删除该副本。"

#: packages/admin/src/components/ThemeToggle.tsx:33
msgid "Theme: {label}"
msgstr "主题：{label}"

#: packages/admin/src/components/Sidebar.tsx:324
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:77
msgid "Themes"
msgstr "主题"

#: packages/admin/src/components/CapabilityConsentDialog.tsx:141
msgid "These tools remain disabled after installation until you explicitly enable agent access."
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:371
msgid "This collection is defined in code. Some settings cannot be changed here. Edit your live.config.ts file to modify the schema."
msgstr "此合集在代码中定义。某些设置无法在此处更改。请编辑您的 live.config.ts 文件以修改架构。"

#: packages/admin/src/components/PortableTextEditor.tsx:3348
msgid "This content cannot be edited safely"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1077
msgid "This doesn't look like a valid migration key. Generate a new one in the plugin and paste the full string starting with \"em1.\"."
msgstr ""

#: packages/admin/src/components/PortableTextEditor.tsx:3350
msgid "This field contains unsupported Portable Text marks: <0>{markList}</0>. Remove them through the API before editing or saving this content."
msgstr ""

#: packages/admin/src/components/MediaPickerModal.tsx:462
msgid "This field does not accept {sniffedMime} files."
msgstr "此字段不接受 {sniffedMime} 文件。"

#: packages/admin/src/components/ContentEditor.tsx:1824
#: packages/admin/src/components/ImageFieldRenderer.tsx:284
msgid "This field is required"
msgstr "此字段为必填项"

#: packages/admin/src/components/MediaLibrary.tsx:1095
msgid "This folder is empty"
msgstr ""

#: packages/admin/src/components/SectionEditor.tsx:322
msgid "This is a custom section."
msgstr "这是自定义区块。"

#: packages/admin/src/components/WordPressImport.tsx:1324
msgid "This is a WordPress site."
msgstr "这是一个 WordPress 站点。"

#: packages/admin/src/components/users/InviteUserModal.tsx:112
msgid "This link expires in 7 days and can only be used once."
msgstr "此链接将在 7 天后过期，且只能使用一次。"

#: packages/admin/src/components/WordPressImport.tsx:939
msgid "This may take a while for large exports."
msgstr "对于大型导出，这可能需要一些时间。"

#: packages/admin/src/components/MediaDetailPanel.tsx:367
msgid "This media item no longer exists."
msgstr ""

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:270
msgid "This passkey is already registered on this device."
msgstr "此通行密钥已在此设备上注册。"

#. placeholder {0}: archiveToDelete?.name ?? ""
#: packages/admin/src/components/settings/BackupSettings.tsx:351
msgid "This permanently deletes {0} from storage."
msgstr ""

#: packages/admin/src/components/PluginSettings.tsx:177
msgid "This plugin has no configurable settings."
msgstr ""

#: packages/admin/src/components/RegistryPluginDetail.tsx:453
msgid "This plugin is not available yet"
msgstr ""

#: packages/admin/src/components/MarketplacePluginDetail.tsx:287
msgid "This plugin requires no special permissions."
msgstr "此插件不需要特殊权限。"

#: packages/admin/src/components/Redirects.tsx:602
msgid "This redirect rule will be permanently removed."
msgstr "此重定向规则将被永久移除。"

#: packages/admin/src/components/RegistryPluginDetail.tsx:642
msgid "This release requires a newer environment than your site currently runs. Upgrade before installing."
msgstr "此版本需要比您站点当前运行的更新版本的环境。请在安装前升级。"

#: packages/admin/src/routes/bylines.tsx:623
msgid "This removes the byline profile. Content byline links are removed and lead pointers are cleared."
msgstr "这将删除署名配置文件。内容署名链接将被移除，主要指针将被清除。"

#. placeholder {0}: sectionInsertErrorMarks.join(", ")
#: packages/admin/src/components/PortableTextEditor.tsx:3377
msgid "This section contains unsupported Portable Text marks: <0>{0}</0>. Update the section before inserting it."
msgstr ""

#: packages/admin/src/components/SectionEditor.tsx:319
msgid "This section is provided by the theme. Editing will create a custom copy that overrides the theme version."
msgstr "此区块由主题提供。编辑将创建一个自定义副本以覆盖主题版本。"

#: packages/admin/src/components/SectionEditor.tsx:324
msgid "This section was imported from another system."
msgstr "此区块是从另一个系统导入的。"

#: packages/admin/src/components/CapabilityConsentDialog.tsx:125
msgid "This update exposes the following routes without authentication:"
msgstr "此更新暴露了以下无需身份验证的路由："

#: packages/admin/src/components/Widgets.tsx:715
msgid "This will delete the widget area and all its widgets. This action cannot be undone."
msgstr "这将删除小部件区域及其所有小部件。此操作无法撤销。"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:276
msgid "This will grant CLI access with your permissions."
msgstr "这将授予 CLI 访问权限以及您的权限。"

#: packages/admin/src/components/ContentSettingsPanel.tsx:845
msgid "This will move the item to trash. You can restore it later from the trash."
msgstr "这将把项目移至回收站。您可以稍后从回收站恢复它。"

#. placeholder {0}: deleteTarget?.label
#: packages/admin/src/components/TaxonomyManager.tsx:1116
msgid "This will permanently delete \"{0}\" and remove it from all content."
msgstr "这将永久删除「{0}」并将其从所有内容中移除。"

#. placeholder {0}: sectionToDelete?.title
#: packages/admin/src/components/Sections.tsx:304
msgid "This will permanently delete \"{0}\". This action cannot be undone."
msgstr "这将永久删除「{0}」。此操作无法撤销。"

#: packages/admin/src/components/comments/CommentInbox.tsx:398
msgid "This will permanently delete this comment. This action cannot be undone."
msgstr "这将永久删除此评论。此操作无法撤销。"

#: packages/admin/src/components/PluginManager.tsx:718
msgid "This will remove the plugin and its bundle from your site."
msgstr "这将从您的站点移除插件及其包。"

#: packages/admin/src/components/ContentSettingsPanel.tsx:90
msgid "This will revert to the published version. Your draft changes will be lost."
msgstr "这将恢复到已发布的版本。您的草稿更改将会丢失。"

#: packages/admin/src/components/SetupWizard.tsx:131
msgid "Thoughts, tutorials, and more"
msgstr "想法、教程等"

#: packages/admin/src/components/settings/GeneralSettings.tsx:332
msgid "Timezone"
msgstr "时区"

#: packages/admin/src/components/settings/GeneralSettings.tsx:335
msgid "Timezone for displaying dates (e.g., America/New_York)"
msgstr "用于显示日期的时区（例如：America/New_York）"

#: packages/admin/src/components/ContentList.tsx:596
#: packages/admin/src/components/ContentList.tsx:756
#: packages/admin/src/components/SectionEditor.tsx:272
#: packages/admin/src/components/Sections.tsx:170
#: packages/admin/src/components/Widgets.tsx:891
msgid "Title"
msgstr "标题"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:361
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:550
msgid "Title (Tooltip)"
msgstr "标题（工具提示）"

#: packages/admin/src/components/settings/SeoSettings.tsx:164
msgid "Title Separator"
msgstr "标题分隔符"

#: packages/admin/src/components/AdminCommandPalette.tsx:483
msgid "to close"
msgstr "关闭"

#: packages/admin/src/components/AdminCommandPalette.tsx:473
msgid "to select"
msgstr "选择"

#: packages/admin/src/components/PortableTextEditor.tsx:3791
msgid "Toggle header row"
msgstr "切换表头行"

#: packages/admin/src/components/ThemeToggle.tsx:31
#: packages/admin/src/components/ThemeToggle.tsx:42
msgid "Toggle theme (current: {label})"
msgstr "切换主题（当前：{label}）"

#. placeholder {0}: newToken.info.name
#: packages/admin/src/components/settings/ApiTokenSettings.tsx:255
msgid "Token created: {0}"
msgstr "令牌已创建：{0}"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:481
msgid "Token Name"
msgstr "令牌名称"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:54
msgid "TOML"
msgstr "TOML"

#: packages/admin/src/components/ContentTypeEditor.tsx:77
msgid "Track content history"
msgstr "跟踪内容历史"

#: packages/admin/src/components/Settings.tsx:75
msgid "Track where media is used across your content"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:300
msgid "Track where media is used across your content."
msgstr ""

#: packages/admin/src/components/BylineFieldEditor.tsx:287
#: packages/admin/src/routes/byline-schema.tsx:243
msgid "Translatable"
msgstr "可翻译"

#: packages/admin/src/components/TaxonomyManager.tsx:271
#: packages/admin/src/components/TaxonomyManager.tsx:381
#: packages/admin/src/components/TranslationsPanel.tsx:104
msgid "Translate"
msgstr "翻译"

#. placeholder {0}: term.label
#: packages/admin/src/components/TaxonomyManager.tsx:343
msgid "Translate \"{0}\""
msgstr "翻译 \"{0}\""

#. placeholder {0}: term.label
#: packages/admin/src/components/TaxonomyManager.tsx:268
msgid "Translate {0}"
msgstr "翻译 {0}"

#: packages/admin/src/components/TaxonomyManager.tsx:381
#: packages/admin/src/components/TranslationsPanel.tsx:104
msgid "Translating..."
msgstr "翻译中..."

#: packages/admin/src/components/MenuEditor.tsx:143
#: packages/admin/src/components/TaxonomyManager.tsx:993
#: packages/admin/src/components/TaxonomySidebar.tsx:471
#: packages/admin/src/router.tsx:1195
msgid "Translation created"
msgstr "翻译已创建"

#: packages/admin/src/components/ContentSettingsPanel.tsx:718
#: packages/admin/src/components/TranslationsPanel.tsx:60
msgid "Translations"
msgstr "翻译"

#: packages/admin/src/components/comments/CommentDetail.tsx:198
msgid "trash"
msgstr "回收站"

#: packages/admin/src/components/comments/CommentDetail.tsx:170
#: packages/admin/src/components/comments/CommentInbox.tsx:190
#: packages/admin/src/components/comments/CommentInbox.tsx:249
#: packages/admin/src/components/comments/CommentInbox.tsx:505
#: packages/admin/src/components/ContentList.tsx:449
msgid "Trash"
msgstr "回收站"

#: packages/admin/src/components/ContentList.tsx:779
msgid "Trash is empty"
msgstr "回收站为空"

#: packages/admin/src/components/comments/CommentInbox.tsx:541
msgid "Trash is empty."
msgstr "回收站为空。"

#: packages/admin/src/components/FieldEditor.tsx:204
msgid "True/false toggle"
msgstr "真/假切换"

#: packages/admin/src/components/MediaLibrary.tsx:1084
msgid "Try a broader media type or clear your filters."
msgstr ""

#: packages/admin/src/components/MediaPickerModal.tsx:692
msgid "Try a different search term"
msgstr "尝试其他搜索词"

#: packages/admin/src/components/ContentPickerModal.tsx:172
#: packages/admin/src/components/SectionPickerModal.tsx:103
msgid "Try adjusting your search"
msgstr "尝试调整您的搜索"

#: packages/admin/src/components/Sections.tsx:260
msgid "Try adjusting your search or filters."
msgstr "尝试调整您的搜索或筛选条件。"

#: packages/admin/src/components/MediaUsedIn.tsx:197
#: packages/admin/src/components/MediaUsedIn.tsx:227
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:352
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:386
#: packages/admin/src/components/settings/MediaUsageSettings.tsx:397
#: packages/admin/src/routes/users.tsx:210
msgid "Try again"
msgstr "重试"

#: packages/admin/src/components/WordPressImport.tsx:1598
msgid "Try Again"
msgstr "重试"

#: packages/admin/src/components/MediaLibrary.tsx:660
msgid "Try again."
msgstr ""

#: packages/admin/src/components/DeviceAuthorizePage.tsx:207
msgid "Try another code"
msgstr "尝试其他代码"

#: packages/admin/src/components/MediaLibrary.tsx:1120
msgid "Try another filename or clear your search."
msgstr ""

#: packages/admin/src/components/MediaLibrary.tsx:1083
msgid "Try another filename, or clear your search and filters."
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1302
#: packages/admin/src/components/WordPressImport.tsx:1424
msgid "Try Another URL"
msgstr "尝试其他 URL"

#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:244
#: packages/admin/src/components/ThemeMarketplaceDetail.tsx:143
msgid "Try with my data"
msgstr "使用我的数据尝试"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:55
msgid "TSX"
msgstr "TSX"

#: packages/admin/src/components/editor/BlockMenu.tsx:297
msgid "Turn into"
msgstr "转换为"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:578
msgid "Turn on"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:572
msgid "Turn on media usage tracking?"
msgstr ""

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:579
msgid "Turning on…"
msgstr ""

#: packages/admin/src/components/settings/SocialSettings.tsx:139
msgid "Twitter"
msgstr "Twitter"

#: packages/admin/src/components/BylineFieldEditor.tsx:260
#: packages/admin/src/components/FieldEditor.tsx:600
#: packages/admin/src/components/MediaLibrary.tsx:1208
#: packages/admin/src/routes/byline-schema.tsx:240
msgid "Type"
msgstr "类型"

#. placeholder {0}: status.existingType
#: packages/admin/src/components/WordPressImport.tsx:2034
msgid "Type mismatch ({0})"
msgstr "类型不匹配 ({0})"

#: packages/admin/src/components/MediaLibrary.tsx:1535
msgid "Type: Folder"
msgstr ""

#: packages/admin/src/components/editor/codeBlockLanguages.ts:56
msgid "TypeScript"
msgstr "TypeScript"

#: packages/admin/src/components/MarketplaceBrowse.tsx:133
#: packages/admin/src/components/ThemeMarketplaceBrowse.tsx:112
msgid "Unable to reach marketplace"
msgstr "无法访问市场"

#: packages/admin/src/components/ContentSettingsPanel.tsx:881
#: packages/admin/src/components/ContentSettingsPanel.tsx:898
msgid "Unassigned"
msgstr "未分配"

#: packages/admin/src/components/PortableTextEditor.tsx:3650
#: packages/admin/src/components/PortableTextEditor.tsx:4055
msgid "Underline"
msgstr "下划线"

#: packages/admin/src/components/PortableTextEditor.tsx:4259
msgid "Undo"
msgstr "撤销"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:191
#: packages/admin/src/components/PluginManager.tsx:634
#: packages/admin/src/components/PluginManager.tsx:732
msgid "Uninstall"
msgstr "卸载"

#: packages/admin/src/components/PluginManager.tsx:716
msgid "Uninstall {pluginName}?"
msgstr "卸载 {pluginName}？"

#: packages/admin/src/components/PluginManager.tsx:711
msgid "Uninstall confirmation"
msgstr "卸载确认"

#: packages/admin/src/components/PluginManager.tsx:732
msgid "Uninstalling..."
msgstr "卸载中..."

#: packages/admin/src/components/ContentTypeEditor.tsx:746
#: packages/admin/src/components/FieldEditor.tsx:468
msgid "Unique"
msgstr "唯一"

#: packages/admin/src/components/ContentTypeEditor.tsx:107
msgid "Unique identifier (ULID)"
msgstr "唯一标识符 (ULID)"

#: packages/admin/src/components/settings/EmailSettings.tsx:169
#: packages/admin/src/components/users/useRolesConfig.ts:7
msgid "Unknown"
msgstr "未知"

#: packages/admin/src/components/users/roleDefinitions.ts:62
msgid "Unknown role"
msgstr "未知角色"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:296
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:297
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:485
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:486
msgid "Unlock aspect ratio"
msgstr "解锁宽高比"

#: packages/admin/src/components/settings/PasskeyItem.tsx:147
#: packages/admin/src/components/users/UserDetail.tsx:254
msgid "Unnamed passkey"
msgstr "未命名通行密钥"

#: packages/admin/src/components/ContentSettingsPanel.tsx:208
msgid "Unpublish {itemLabel}"
msgstr ""

#: packages/admin/src/router.tsx:1103
msgid "Unpublished"
msgstr "已取消发布"

#: packages/admin/src/components/ContentTypeList.tsx:133
msgid "Unregistered Content Tables Found"
msgstr "发现未注册的内容表"

#: packages/admin/src/components/TaxonomySidebar.tsx:543
msgid "Unresolved assignment"
msgstr ""

#: packages/admin/src/components/ContentSettingsPanel.tsx:555
msgid "Unschedule"
msgstr "取消定时发布"

#: packages/admin/src/router.tsx:1164
msgid "Unscheduled"
msgstr "已取消安排"

#. placeholder {0}: (element as { type: string }).type
#: packages/admin/src/components/BlockKitFieldWidget.tsx:128
msgid "Unsupported widget element type: {0}"
msgstr "不支持的小部件元素类型：{0}"

#. placeholder {0}: formatter.format(to)
#: packages/admin/src/components/ContentList.tsx:982
msgid "Until {0}"
msgstr ""

#: packages/admin/src/components/Dashboard.tsx:368
#: packages/admin/src/components/MediaUsedIn.tsx:246
msgid "Untitled"
msgstr "无标题"

#: packages/admin/src/components/ContentEditor.tsx:1727
msgid "Untitled file"
msgstr "无标题文件"

#: packages/admin/src/components/Widgets.tsx:536
#: packages/admin/src/components/Widgets.tsx:809
msgid "Untitled Widget"
msgstr "无标题小部件"

#: packages/admin/src/components/BylineFilter.tsx:175
msgid "Up to {MAX_SELECTED} bylines can be selected"
msgstr ""

#: packages/admin/src/components/TaxonomyManager.tsx:667
msgid "Update"
msgstr "更新"

#: packages/admin/src/components/FieldEditor.tsx:689
msgid "Update Field"
msgstr "更新字段"

#: packages/admin/src/components/ContentSettingsPanel.tsx:629
msgid "Update publish date"
msgstr ""

#. placeholder {0}: editingDomain?.domain
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:333
msgid "Update settings for {0}"
msgstr "更新 {0} 的设置"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:93
msgid "Update site settings"
msgstr "更新网站设置"

#. placeholder {0}: taxonomyDef.labelSingular?.toLowerCase() || "term"
#: packages/admin/src/components/TaxonomyManager.tsx:549
msgid "Update the {0} details"
msgstr "更新{0}详情"

#: packages/admin/src/components/Redirects.tsx:110
msgid "Update this redirect rule."
msgstr "更新此重定向规则。"

#. placeholder {0}: updateInfo.latest
#: packages/admin/src/components/PluginManager.tsx:458
msgid "Update to v{0}"
msgstr "更新至 v{0}"

#: packages/admin/src/components/ContentList.tsx:861
#: packages/admin/src/components/ContentSettingsPanel.tsx:645
#: packages/admin/src/components/RegistryPluginDetail.tsx:538
msgid "Updated"
msgstr "已更新"

#: packages/admin/src/components/ContentTypeEditor.tsx:129
msgid "Updated At"
msgstr "更新时间"

#: packages/admin/src/components/WordPressImport.tsx:964
msgid "Updating content URLs..."
msgstr "正在更新内容 URL..."

#: packages/admin/src/components/MediaUsedIn.tsx:112
msgid "Updating usage"
msgstr ""

#: packages/admin/src/components/CapabilityConsentDialog.tsx:197
#: packages/admin/src/components/PluginManager.tsx:458
msgid "Updating..."
msgstr "更新中..."

#: packages/admin/src/components/MediaLibrary.tsx:873
#: packages/admin/src/components/MediaPickerModal.tsx:650
msgid "Upload"
msgstr "上传"

#: packages/admin/src/components/MediaPickerModal.tsx:153
msgid "Upload a file to get started"
msgstr "上传文件以开始使用"

#: packages/admin/src/components/WordPressImport.tsx:1407
msgid "Upload an export file"
msgstr "上传导出文件"

#: packages/admin/src/components/MediaPickerModal.tsx:154
msgid "Upload an image to get started"
msgstr "上传图片以开始使用"

#: packages/admin/src/components/settings/ApiTokenSettings.tsx:63
msgid "Upload and delete media"
msgstr "上传和删除媒体"

#: packages/admin/src/lib/api/marketplace.ts:283
#: packages/admin/src/lib/api/marketplace.ts:291
msgid "Upload and manage media"
msgstr "上传和管理媒体"

#: packages/admin/src/components/WordPressImport.tsx:1300
#: packages/admin/src/components/WordPressImport.tsx:1421
msgid "Upload Export File"
msgstr "上传导出文件"

#: packages/admin/src/components/MediaUploadDialog.tsx:102
msgid "Upload failed"
msgstr ""

#: packages/admin/src/components/MediaPickerModal.tsx:670
msgid "Upload failed: {uploadError}"
msgstr "上传失败：{uploadError}"

#: packages/admin/src/components/MediaPickerModal.tsx:662
msgid "Upload file"
msgstr "上传文件"

#: packages/admin/src/components/MediaPickerModal.tsx:155
msgid "Upload File"
msgstr "上传文件"

#: packages/admin/src/components/MediaLibrary.tsx:761
#: packages/admin/src/components/MediaLibrary.tsx:1110
#: packages/admin/src/components/MediaLibrary.tsx:1134
msgid "Upload Files"
msgstr "上传文件"

#: packages/admin/src/components/MediaPickerModal.tsx:155
msgid "Upload Image"
msgstr "上传图片"

#: packages/admin/src/components/MediaLibrary.tsx:1107
msgid "Upload images, videos, and documents to keep reusable assets in one place."
msgstr ""

#: packages/admin/src/components/Dashboard.tsx:163
msgid "Upload Media"
msgstr "上传媒体"

#: packages/admin/src/components/MediaLibrary.tsx:1131
msgid "Upload media to keep reusable assets in one place."
msgstr ""

#. placeholder {0}: activeProviderInfo?.name || t`Library`
#: packages/admin/src/components/MediaLibrary.tsx:762
msgid "Upload to {0}"
msgstr "上传至 {0}"

#: packages/admin/src/components/MediaUploadDialog.tsx:402
msgid "Upload to {providerName}"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1136
msgid "Upload WordPress export file"
msgstr "上传 WordPress 导出文件"

#: packages/admin/src/components/MediaDetailPanel.tsx:608
msgid "Uploaded:"
msgstr "已上传："

#: packages/admin/src/components/MediaUploadDialog.tsx:86
#: packages/admin/src/components/WordPressImport.tsx:2143
msgid "Uploading"
msgstr "上传中"

#: packages/admin/src/components/MediaPickerModal.tsx:650
msgid "Uploading..."
msgstr "上传中..."

#: packages/admin/src/components/BylineFieldEditor.tsx:54
#: packages/admin/src/components/FieldEditor.tsx:263
#: packages/admin/src/components/FieldEditor.tsx:615
#: packages/admin/src/components/MenuEditor.tsx:418
#: packages/admin/src/components/MenuEditor.tsx:596
#: packages/admin/src/components/PortableTextEditor.tsx:3604
#: packages/admin/src/components/PortableTextEditor.tsx:4204
#: packages/admin/src/components/PortableTextEditor.tsx:4214
msgid "URL"
msgstr "URL"

#: packages/admin/src/components/ContentTypeEditor.tsx:438
msgid "URL Pattern"
msgstr "URL 模式"

#: packages/admin/src/components/BylineCreditsEditor.tsx:996
msgid "URL slug"
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:113
#: packages/admin/src/components/FieldEditor.tsx:258
msgid "URL-friendly identifier"
msgstr "URL 友好的标识符"

#: packages/admin/src/components/MenuList.tsx:165
msgid "URL-friendly identifier (e.g., \"primary\", \"footer\")"
msgstr "URL 友好的标识符（例如：\"primary\"、\"footer\"）"

#: packages/admin/src/components/MediaDetailPanel.tsx:627
msgid "URL:"
msgstr "URL:"

#: packages/admin/src/components/MediaUsedIn.tsx:103
msgid "Usage completeness couldn’t be verified."
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:152
msgid "Usage details aren’t available for your account."
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:110
msgid "Usage details unavailable"
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:98
msgid "Usage indexing couldn’t finish."
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:83
msgid "Usage indexing hasn’t started."
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:72
msgid "Usage is updating. Some content may not appear here yet."
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:114
msgid "Usage loaded"
msgstr ""

#: packages/admin/src/components/MediaUsedIn.tsx:88
msgid "Usage may be out of date."
msgstr ""

#: packages/admin/src/components/Redirects.tsx:111
msgid "Use [param] or [...rest] in paths for pattern matching."
msgstr "在路径中使用 [param] 或 [...rest] 进行模式匹配。"

#: packages/admin/src/components/ContentList.tsx:1056
msgid "Use as end date"
msgstr ""

#: packages/admin/src/components/BylineCreditsEditor.tsx:314
msgid "Use lowercase letters, numbers, and hyphens, starting with a letter."
msgstr ""

#: packages/admin/src/components/auth/PasskeyLogin.tsx:356
msgid "Use your device's biometric authentication, security key, or PIN to sign in."
msgstr "使用设备的生物识别认证、安全密钥或 PIN 码登录。"

#: packages/admin/src/components/LoginPage.tsx:328
msgid "Use your registered passkey to sign in securely."
msgstr "使用您注册的通行密钥安全登录。"

#: packages/admin/src/components/settings/SeoSettings.tsx:173
msgid "Used as the fallback Open Graph image when a page has none. Recommended size: 1200×630."
msgstr "当页面没有 Open Graph 图片时作为默认图片。推荐尺寸：1200×630。"

#: packages/admin/src/components/TaxonomyManager.tsx:834
msgid "Used as the identifier. Lowercase letters, numbers, and underscores only."
msgstr "用作标识符。仅限小写字母、数字和下划线。"

#: packages/admin/src/components/ContentEditor.tsx:1416
msgid "Used as the main visual for this post on listing pages and at the top of the post"
msgstr "用于在列表页和文章顶部作为主要视觉展示"

#: packages/admin/src/components/MediaDetailPanel.tsx:210
msgid "Used by screen readers and when image fails to load"
msgstr "供屏幕阅读器使用，并在图片加载失败时显示"

#: packages/admin/src/components/MediaUsedIn.tsx:125
msgid "Used in"
msgstr ""

#: packages/admin/src/components/ContentTypeEditor.tsx:409
msgid "Used in URLs and API endpoints"
msgstr "用于 URL 和 API 端点"

#: packages/admin/src/components/SectionEditor.tsx:290
#: packages/admin/src/components/Sections.tsx:196
msgid "Used to identify this section. Lowercase letters, numbers, and hyphens only."
msgstr "用于标识此区块。仅限小写字母、数字和连字符。"

#: packages/admin/src/components/DeviceAuthorizePage.tsx:223
#: packages/admin/src/components/Header.tsx:43
#: packages/admin/src/components/Header.tsx:83
#: packages/admin/src/components/users/UserList.tsx:91
msgid "User"
msgstr "用户"

#. placeholder {0}: manifest?.authMode
#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:181
msgid "User access is managed by an external provider ({0}). Self-signup domain settings are not available when using external authentication."
msgstr "用户访问由外部提供商管理 ({0})。使用外部认证时，自助注册域设置不可用。"

#: packages/admin/src/components/users/UserDetail.tsx:116
msgid "User Details"
msgstr "用户详情"

#: packages/admin/src/components/users/UserDetail.tsx:296
msgid "User not found"
msgstr "未找到用户"

#: packages/admin/src/components/AdminCommandPalette.tsx:210
#: packages/admin/src/components/Sidebar.tsx:296
#: packages/admin/src/components/users/UserList.tsx:55
msgid "Users"
msgstr "用户"

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:38
msgid "Users from <0>{domain}</0> will no longer be able to sign up without an invite. Existing users are not affected."
msgstr ""

#: packages/admin/src/components/settings/AllowedDomainsSettings.tsx:205
msgid "Users with email addresses from these domains can sign up without an invite. They will be assigned the specified role automatically."
msgstr "来自这些域名的邮箱地址的用户可以无需邀请即可注册。他们将自动被分配指定的角色。"

#. placeholder {0}: updateInfo.latest
#: packages/admin/src/components/PluginManager.tsx:393
msgid "v{0} available"
msgstr "v{0} 可用"

#: packages/admin/src/components/FieldEditor.tsx:489
#: packages/admin/src/components/FieldEditor.tsx:519
msgid "Validation"
msgstr "验证"

#: packages/admin/src/components/InviteAcceptPage.tsx:228
msgid "Verifying your invite..."
msgstr "正在验证您的邀请..."

#: packages/admin/src/components/SignupPage.tsx:403
msgid "Verifying your link..."
msgstr "正在验证您的链接..."

#: packages/admin/src/components/auth/PasskeyLogin.tsx:212
#: packages/admin/src/components/auth/PasskeyRegistration.tsx:216
msgid "Verifying..."
msgstr "验证中..."

#: packages/admin/src/components/MarketplacePluginDetail.tsx:331
#: packages/admin/src/components/RegistryPluginDetail.tsx:552
msgid "Version"
msgstr "版本"

#. placeholder {0}: release.version
#: packages/admin/src/components/RegistryPluginDetail.tsx:514
msgid "Version {0}"
msgstr "版本 {0}"

#: packages/admin/src/components/AllowedTypesEditor.tsx:70
#: packages/admin/src/components/MediaLibrary.tsx:990
msgid "Video"
msgstr "视频"

#: packages/admin/src/components/Settings.tsx:111
#: packages/admin/src/components/settings/EmailSettings.tsx:59
msgid "View email provider status and send test emails"
msgstr "查看邮件提供商状态并发送测试邮件"

#: packages/admin/src/components/PluginManager.tsx:470
msgid "View in Marketplace"
msgstr "在市场查看"

#: packages/admin/src/components/MediaLibrary.tsx:937
msgid "View mode"
msgstr "查看模式"

#: packages/admin/src/components/ContentList.tsx:1320
msgid "View published {title}"
msgstr "查看已发布的 {title}"

#: packages/admin/src/components/MediaLibrary.tsx:894
msgid "View setup"
msgstr ""

#: packages/admin/src/components/Header.tsx:59
msgid "View Site"
msgstr "查看站点"

#: packages/admin/src/components/RegistryPluginDetail.tsx:687
msgid "View source"
msgstr "查看源码"

#: packages/admin/src/components/RegistryPluginDetail.tsx:923
msgid "View the {license} license on spdx.org"
msgstr "在 spdx.org 上查看 {license} 许可证"

#: packages/admin/src/components/Redirects.tsx:456
msgid "Visitors hitting these paths will see an error."
msgstr "访问这些路径的用户将看到错误。"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:57
msgid "Vue"
msgstr "Vue"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:594
msgid "Wait for updates already in progress to finish."
msgstr ""

#: packages/admin/src/components/auth/PasskeyLogin.tsx:181
#: packages/admin/src/components/auth/PasskeyRegistration.tsx:185
msgid "Waiting for passkey..."
msgstr "等待通行密钥..."

#: packages/admin/src/components/MarketplaceBrowse.tsx:335
msgid "Warn"
msgstr "警告"

#. placeholder {0}: result.url
#: packages/admin/src/components/WordPressImport.tsx:1282
msgid "We couldn't connect to a WordPress site at {0}. This could mean the site isn't WordPress, the REST API is disabled, or the site isn't accessible."
msgstr "我们无法连接到位于 {0} 的 WordPress 站点。这可能意味着该站点不是 WordPress、REST API 被禁用或站点无法访问。"

#: packages/admin/src/components/WordPressImport.tsx:1102
msgid "We'll check what import options are available for your site."
msgstr "我们将检查您的站点有哪些导入选项可用。"

#: packages/admin/src/components/LoginPage.tsx:325
msgid "We'll send you a link to sign in without a password."
msgstr "我们将向您发送一个无需密码即可登录的链接。"

#: packages/admin/src/components/SignupPage.tsx:26
msgid "We've sent a verification link to <0>{email}</0>"
msgstr ""

#: packages/admin/src/components/FieldEditor.tsx:264
msgid "Web address"
msgstr "网址"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:160
#: packages/admin/src/components/auth/PasskeyRegistration.tsx:164
msgid "WebAuthn is not supported in this browser"
msgstr "此浏览器不支持 WebAuthn"

#: packages/admin/src/components/MarketplacePluginDetail.tsx:236
#: packages/admin/src/components/RegistryPluginDetail.tsx:712
msgid "Website"
msgstr "网站"

#: packages/admin/src/routes/bylines.tsx:491
msgid "Website URL"
msgstr "网站 URL"

#: packages/admin/src/components/WelcomeModal.tsx:102
msgid "Welcome to EmDash, {firstName}!"
msgstr "欢迎使用 EmDash，{firstName}！"

#: packages/admin/src/components/WelcomeModal.tsx:102
msgid "Welcome to EmDash!"
msgstr "欢迎使用 EmDash！"

#: packages/admin/src/components/WordPressImport.tsx:2107
msgid "What happens when you import:"
msgstr "导入时会发生什么："

#: packages/admin/src/components/WordPressImport.tsx:1890
msgid "What will happen when you import"
msgstr "导入时会发生什么"

#: packages/admin/src/components/ContentTypeEditor.tsx:125
msgid "When the entry was created"
msgstr "条目创建时间"

#: packages/admin/src/components/ContentTypeEditor.tsx:131
msgid "When the entry was last modified"
msgstr "条目最后修改时间"

#: packages/admin/src/components/ContentTypeEditor.tsx:137
msgid "When the entry was published"
msgstr "条目发布时间"

#: packages/admin/src/components/TaxonomyManager.tsx:848
msgid "Which content types can use this taxonomy"
msgstr "哪些内容类型可以使用此分类"

#: packages/admin/src/components/FieldEditor.tsx:198
msgid "Whole number"
msgstr "整数"

#: packages/admin/src/components/ContentSettingsPanel.tsx:691
msgid "Why are bylines shown in this order?"
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:209
msgid "Why can't this be changed?"
msgstr ""

#: packages/admin/src/components/ContentSettingsPanel.tsx:516
msgid "Why English is used"
msgstr ""

#: packages/admin/src/components/SeoPanel.tsx:222
msgid "Why is this important for duplicate pages?"
msgstr ""

#: packages/admin/src/components/SeoPanel.tsx:196
msgid "Why is this important for search result summaries?"
msgstr ""

#: packages/admin/src/components/SeoPanel.tsx:175
msgid "Why is this important for search result titles?"
msgstr ""

#: packages/admin/src/components/SeoPanel.tsx:241
msgid "Why is this important for search visibility?"
msgstr ""

#: packages/admin/src/components/SeoImageField.tsx:44
msgid "Why is this important for social sharing?"
msgstr ""

#: packages/admin/src/components/MediaDetailPanel.tsx:211
msgid "Why is this important?"
msgstr ""

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:163
msgid "Wide"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:802
#: packages/admin/src/components/Widgets.tsx:817
msgid "widget"
msgstr "小部件"

#: packages/admin/src/components/Widgets.tsx:232
msgid "Widget added"
msgstr "小部件已添加"

#: packages/admin/src/components/Widgets.tsx:220
msgid "Widget area created"
msgstr "小部件区域已创建"

#: packages/admin/src/components/Widgets.tsx:645
msgid "Widget area deleted"
msgstr "小部件区域已删除"

#: packages/admin/src/components/Widgets.tsx:765
msgid "Widget deleted"
msgstr "小部件已删除"

#: packages/admin/src/components/Widgets.tsx:894
msgid "Widget title"
msgstr "小部件标题"

#: packages/admin/src/components/Widgets.tsx:780
msgid "Widget updated"
msgstr "小部件已更新"

#: packages/admin/src/components/AdminCommandPalette.tsx:168
#: packages/admin/src/components/PluginManager.tsx:414
#: packages/admin/src/components/Sidebar.tsx:273
#: packages/admin/src/components/Widgets.tsx:388
#: packages/admin/src/components/WordPressImport.tsx:1175
msgid "Widgets"
msgstr "小部件"

#: packages/admin/src/components/editor/ImageDetailPanel.tsx:284
#: packages/admin/src/components/editor/ImageDetailPanel.tsx:473
msgid "Width"
msgstr "宽度"

#: packages/admin/src/components/PluginSettings.tsx:338
msgid "Will be cleared on save"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:2030
msgid "Will create"
msgstr "将创建"

#: packages/admin/src/components/settings/EmailSettings.tsx:148
msgid "Without an email provider, invite links must be shared manually."
msgstr "如果没有邮件提供商，必须手动分享邀请链接。"

#: packages/admin/src/components/WordPressImport.tsx:228
msgid "WordPress authorization was rejected"
msgstr ""

#: packages/admin/src/components/WordPressImport.tsx:1492
msgid "WordPress Username"
msgstr "WordPress 用户名"

#: packages/admin/src/components/ContentList.tsx:492
msgid "Working on {selectedCount} items…"
msgstr ""

#: packages/admin/src/components/Widgets.tsx:904
msgid "Write widget content..."
msgstr "编写小部件内容..."

#: packages/admin/src/components/WordPressImport.tsx:1199
msgid "WXR File"
msgstr "WXR 文件"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:58
msgid "XML"
msgstr "XML"

#: packages/admin/src/components/WordPressImport.tsx:1513
msgid "xxxx xxxx xxxx xxxx xxxx xxxx"
msgstr ""

#: packages/admin/src/components/editor/codeBlockLanguages.ts:59
msgid "YAML"
msgstr "YAML"

#: packages/admin/src/components/Widgets.tsx:163
msgid "Yearly"
msgstr ""

#: packages/admin/src/components/ContentList.tsx:1395
#: packages/admin/src/components/users/UserDetail.tsx:236
#: packages/admin/src/routes/byline-schema.tsx:420
#: packages/admin/src/routes/byline-schema.tsx:422
msgid "Yes"
msgstr "是"

#: packages/admin/src/components/WordPressImport.tsx:1178
msgid "Yoast/RankMath"
msgstr ""

#: packages/admin/src/components/DeviceAuthorizePage.tsx:188
msgid "You can close this page and return to your terminal."
msgstr "您可以关闭此页面并返回终端。"

#: packages/admin/src/components/WelcomeModal.tsx:49
msgid "You can create and edit your own content."
msgstr "您可以创建和编辑自己的内容。"

#: packages/admin/src/components/WelcomeModal.tsx:48
msgid "You can manage content, media, menus, and taxonomies."
msgstr "您可以管理内容、媒体、菜单和分类。"

#: packages/admin/src/routes/bylines.tsx:549
msgid "You can still edit the fixed fields above. Saving will not touch any stored custom-field values."
msgstr "您仍可编辑上方的固定字段。保存不会影响任何已存储的自定义字段值。"

#: packages/admin/src/components/WelcomeModal.tsx:50
msgid "You can view and contribute to the site."
msgstr "您可以查看和贡献网站内容。"

#: packages/admin/src/components/users/UserDetail.tsx:175
msgid "You cannot change your own role"
msgstr "您无法更改自己的角色"

#: packages/admin/src/components/MediaLibrary.tsx:658
msgid "You don’t have permission to move this file."
msgstr ""

#: packages/admin/src/components/WelcomeModal.tsx:47
msgid "You have full access to manage this site, including users, settings, and all content."
msgstr "您拥有完全访问权限来管理此网站，包括用户、设置和所有内容。"

#: packages/admin/src/routes/byline-schema.tsx:175
msgid "You need admin permissions to manage byline schema."
msgstr "您需要管理员权限才能管理署名架构。"

#: packages/admin/src/components/settings/MediaUsageSettings.tsx:306
msgid "You need Admin permissions to manage media usage tracking."
msgstr ""

#: packages/admin/src/router.tsx:1810
msgid "You need Editor permissions to moderate comments."
msgstr "您需要编辑权限才能审核评论。"

#. placeholder {0}: passkey.name
#: packages/admin/src/components/settings/PasskeyItem.tsx:199
msgid "You won't be able to use \"{0}\" to sign in anymore. This action cannot be undone."
msgstr "您将无法再使用「{0}」登录。此操作无法撤销。"

#: packages/admin/src/components/settings/PasskeyItem.tsx:200
msgid "You won't be able to use this passkey to sign in anymore. This action cannot be undone."
msgstr "您将无法再使用此通行密钥登录。此操作无法撤销。"

#. placeholder {0}: inviteData.roleName
#: packages/admin/src/components/InviteAcceptPage.tsx:55
msgid "You'll be joining as <0>{0}</0>"
msgstr "您将以 <0>{0}</0> 身份加入"

#: packages/admin/src/components/auth/PasskeyRegistration.tsx:361
msgid "You'll be prompted to use your device's biometric authentication, security key, or PIN."
msgstr "系统将提示您使用设备的生物识别认证、安全密钥或 PIN 码。"

#: packages/admin/src/components/WordPressImport.tsx:1385
msgid "You'll be redirected to WordPress to authorize the connection."
msgstr "您将被重定向到 WordPress 以授权连接。"

#: packages/admin/src/components/SignupPage.tsx:35
msgid "You'll be signing up as <0>{roleName}</0>"
msgstr ""

#: packages/admin/src/components/SetupWizard.tsx:564
msgid "You're signed in via Cloudflare Access"
msgstr "您已通过 Cloudflare Access 登录"

#: packages/admin/src/components/InviteAcceptPage.tsx:53
msgid "You've been invited!"
msgstr "您已被邀请！"

#: packages/admin/src/components/SignupPage.tsx:88
msgid "you@company.com"
msgstr "you@company.com"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:326
#: packages/admin/src/components/SetupWizard.tsx:201
msgid "you@example.com"
msgstr "you@example.com"

#: packages/admin/src/components/WelcomeModal.tsx:45
msgid "Your account has been created successfully."
msgstr "您的账号已成功创建。"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:308
#: packages/admin/src/components/auth/PasskeyRegistration.tsx:307
msgid "Your browser doesn't support passkeys. Please use a modern browser like Chrome, Safari, Firefox, or Edge."
msgstr "您的浏览器不支持通行密钥。请使用现代浏览器，如 Chrome、Safari、Firefox 或 Edge。"

#: packages/admin/src/components/auth/PasskeyLogin.tsx:268
#: packages/admin/src/components/auth/PasskeyRegistration.tsx:273
msgid "Your device doesn't support the required security features."
msgstr "您的设备不支持所需的安全功能。"

#: packages/admin/src/components/SetupWizard.tsx:197
msgid "Your Email"
msgstr "您的邮箱"

#: packages/admin/src/components/settings/SocialSettings.tsx:158
msgid "Your Facebook page or profile username"
msgstr "您的 Facebook 页面或个人资料用户名"

#: packages/admin/src/components/settings/SocialSettings.tsx:150
msgid "Your GitHub username"
msgstr "您的 GitHub 用户名"

#: packages/admin/src/components/settings/SocialSettings.tsx:166
msgid "Your Instagram username"
msgstr "您的 Instagram 用户名"

#: packages/admin/src/components/settings/SocialSettings.tsx:174
msgid "Your LinkedIn profile username"
msgstr "您的 LinkedIn 个人资料用户名"

#: packages/admin/src/components/MediaLibrary.tsx:1106
#: packages/admin/src/components/MediaLibrary.tsx:1130
msgid "Your media library is empty"
msgstr ""

#: packages/admin/src/components/SetupWizard.tsx:209
msgid "Your Name"
msgstr "您的姓名"

#: packages/admin/src/components/InviteAcceptPage.tsx:65
#: packages/admin/src/components/SignupPage.tsx:217
msgid "Your name (optional)"
msgstr "您的姓名（可选）"

#: packages/admin/src/components/WelcomeModal.tsx:46
msgid "Your Role"
msgstr "您的角色"

#. placeholder {0}: formatHoldback(config.policy?.minimumReleaseAgeSeconds ?? 0)
#: packages/admin/src/components/RegistryPluginDetail.tsx:623
msgid "Your site requires releases to be at least {0} old before they can be installed. This release will become installable later."
msgstr "您的站点要求插件发布至少 {0} 后才能安装。此版本稍后将可供安装。"

#: packages/admin/src/components/settings/SocialSettings.tsx:142
msgid "Your Twitter/X handle (e.g., @username)"
msgstr "您的 Twitter/X 用户名（例如：@username）"

#: packages/admin/src/components/MediaDetailPanel.tsx:949
msgid "Your unsaved media changes will be lost."
msgstr ""

#. placeholder {0}: attachments.count
#: packages/admin/src/components/WordPressImport.tsx:2078
msgid "Your WordPress export contains {0} media files."
msgstr "您的 WordPress 导出包含 {0} 个媒体文件。"

#: packages/admin/src/components/settings/SocialSettings.tsx:182
msgid "Your YouTube channel ID or handle"
msgstr "您的 YouTube 频道 ID 或用户名"

#: packages/admin/src/components/settings/SocialSettings.tsx:179
msgid "YouTube"
msgstr "YouTube"

#: packages/admin/src/components/editor/codeBlockLanguages.ts:60
msgid "Zig"
msgstr ""
