Files
afilmory/locales/dashboard/zh-CN.json
Innei 9229ad63dd feat: enhance billing error handling and upgrade prompts
- Updated error codes in the error-codes enum to better reflect billing scenarios, introducing BILLING_PLAN_QUOTA_EXCEEDED and BILLING_STORAGE_QUOTA_EXCEEDED.
- Modified the PhotoAssetService and BillingPlanService to throw specific BizExceptions for storage and plan quota exceedances.
- Implemented a new BillingUpgradeModal to prompt users for upgrades based on error categories.
- Enhanced error handling in photo upload and sync actions to present upgrade prompts when necessary.
- Updated localization files to include new strings for upgrade prompts in both English and Chinese.

Signed-off-by: Innei <tukon479@gmail.com>
2025-12-10 15:36:52 +08:00

904 lines
61 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"access-denied.default-reason": "您没有权限访问该页面",
"analytics.page.description": "追踪照片集合的统计与趋势。",
"analytics.page.title": "数据分析",
"analytics.sections.devices.description": "根据 EXIF 信息统计的热门拍摄设备。",
"analytics.sections.devices.empty": "暂无设备统计数据。",
"analytics.sections.devices.error": "无法加载设备数据,请稍后再试。",
"analytics.sections.devices.title": "热门设备",
"analytics.sections.storage.current": "本月新增",
"analytics.sections.storage.delta.compare": "{{delta}} 对比上月",
"analytics.sections.storage.delta.equal": "与上月持平",
"analytics.sections.storage.delta.first": "首次记录",
"analytics.sections.storage.description": "按存储提供方统计的容量占比。",
"analytics.sections.storage.empty": "暂无存储使用数据。",
"analytics.sections.storage.error": "无法加载存储数据,请稍后再试。",
"analytics.sections.storage.photos": "照片数量",
"analytics.sections.storage.provider-meta": "{{percent}}% · {{photoCount}} 张",
"analytics.sections.storage.title": "存储使用",
"analytics.sections.storage.total": "总占用",
"analytics.sections.tags.description": "最近上传中最常使用的标签。",
"analytics.sections.tags.empty": "暂无标签统计数据。",
"analytics.sections.tags.error": "无法加载标签数据,请稍后再试。",
"analytics.sections.tags.title": "热门标签",
"analytics.sections.upload.best": "表现最佳",
"analytics.sections.upload.compare-equal": "与上月持平",
"analytics.sections.upload.current": "本月上传",
"analytics.sections.upload.description": "近 12 个月的上传趋势。",
"analytics.sections.upload.empty": "暂无上传记录。",
"analytics.sections.upload.error": "无法加载上传趋势,请稍后再试。",
"analytics.sections.upload.first-record": "首次出现上传记录",
"analytics.sections.upload.growth-equal": "与上月持平",
"analytics.sections.upload.title": "上传趋势",
"analytics.sections.upload.tooltip": "{{month}} · {{value}} 张",
"analytics.sections.upload.total": "累计上传",
"analytics.units.photos": "{{value}} 张",
"app.name": "Afilmory 管理后台",
"auth.social.empty.description": "超级管理员尚未在系统设置中启用任何第三方登录方式,当前租户无法执行 OAuth 绑定。",
"auth.social.empty.title": "未配置可用的 OAuth Provider",
"auth.social.error.accounts": "无法查询绑定状态",
"auth.social.error.providers": "无法加载可用的 OAuth Provider",
"auth.social.provider.connect": "绑定 {{provider}}",
"auth.social.provider.connected": "已绑定 · {{time}}",
"auth.social.provider.connecting": "跳转中…",
"auth.social.provider.disconnect": "解除绑定",
"auth.social.provider.disconnecting": "解绑中…",
"auth.social.provider.last-warning": "需要至少保留一个已绑定的登录方式。",
"auth.social.provider.unconnected": "尚未绑定,点击下方按钮完成授权。",
"auth.social.section.description": "绑定后即可使用对应平台的账号快速登录后台,并同步基础资料。解除绑定不会删除原有后台账号。",
"auth.social.section.label": "登录方式",
"auth.social.section.title": "OAuth 账号绑定",
"auth.social.toast.connect-failure": "无法开启 {{provider}} 绑定",
"auth.social.toast.disconnect-failure": "解绑失败",
"auth.social.toast.disconnect-success": "已解除与 {{provider}} 的绑定",
"blocker.unsaved.before-unload": "您有未保存的更改,确定要离开吗?",
"blocker.unsaved.cancel": "留在此页",
"blocker.unsaved.confirm": "继续离开",
"blocker.unsaved.description": "离开当前页面会丢失未保存的更改,确定要继续吗?",
"blocker.unsaved.title": "您有尚未保存的变更",
"builder-settings.button.loading": "保存中…",
"builder-settings.button.save": "保存修改",
"builder-settings.error.loading": "无法加载构建器设置:{{reason}}",
"builder-settings.message.dirty": "您有尚未保存的更改",
"builder-settings.message.error": "保存失败:{{reason}}",
"builder-settings.message.idle": "所有设置已同步",
"builder-settings.message.saved": "保存成功,配置已更新",
"builder-settings.message.saving": "正在保存构建器设置…",
"builder-settings.message.unknown-error": "未知错误",
"common.retry-later": "请稍后再试",
"common.unknown": "未知",
"common.unknown-error": "未知错误",
"dashboard.overview.activity.empty": "暂无最近活动,上传照片后即可看到这里的动态。",
"dashboard.overview.activity.error": "无法获取活动数据,请稍后再试。",
"dashboard.overview.activity.id-label": "ID",
"dashboard.overview.activity.no-preview": "暂无预览",
"dashboard.overview.activity.size-unknown": "大小未知",
"dashboard.overview.activity.subtitle": "展示最近 {{count}} 次上传和同步记录",
"dashboard.overview.activity.subtitle-empty": "还没有任何上传,快来添加第一张照片吧~",
"dashboard.overview.activity.taken-at": "拍摄时间 {{time}}",
"dashboard.overview.activity.uploaded-at": "上传于 {{time}}",
"dashboard.overview.page.description": "掌握图库运行状态与最近同步活动",
"dashboard.overview.page.title": "仪表盘",
"dashboard.overview.section.activity.title": "最近活动",
"dashboard.overview.stats.month.helper.equal": "与上月持平",
"dashboard.overview.stats.month.helper.first": "首次出现上传记录",
"dashboard.overview.stats.month.helper.less": "比上月少 {{difference}} 张",
"dashboard.overview.stats.month.helper.more": "比上月多 {{difference}} 张",
"dashboard.overview.stats.month.label": "本月新增",
"dashboard.overview.stats.storage.helper.empty": "暂无照片,存储占用为 0",
"dashboard.overview.stats.storage.helper.with-photos": "平均每张 {{average}}",
"dashboard.overview.stats.storage.label": "占用存储",
"dashboard.overview.stats.sync.helper": "待处理 {{pending}} | 冲突 {{conflicts}}",
"dashboard.overview.stats.sync.helper-empty": "暂无同步任务",
"dashboard.overview.stats.sync.label": "同步完成率",
"dashboard.overview.stats.total.helper": "{{value}} 张照片",
"dashboard.overview.stats.total.label": "照片总数",
"dashboard.overview.status.conflict": "需关注",
"dashboard.overview.status.pending": "处理中",
"dashboard.overview.status.synced": "已同步",
"dashboard.overview.time.unknown": "时间未知",
"data-management.delete.badge": "账户清除(不可逆)",
"data-management.delete.button": "永久删除账户",
"data-management.delete.description": "此操作会在数据库中彻底删除当前租户、照片记录、同步日志、权限成员等所有信息。执行后将登出所有成员并无法恢复,系统会强制进行三次确认以避免误操作。",
"data-management.delete.error.fallback": "删除账户失败,请稍后再试。",
"data-management.delete.error.title": "操作失败",
"data-management.delete.loading": "正在销毁…",
"data-management.delete.note": "如需在未来重新使用本服务,需要重新注册新的租户并重新上传所有资产。该操作不会删除对象存储中的原始文件,但会移除与之关联的所有数据库记录。",
"data-management.delete.step1.cancel": "取消",
"data-management.delete.step1.confirm": "继续下一步",
"data-management.delete.step1.description": "删除后会立即清空当前租户下的所有数据并登出所有成员。此过程包含 3 次确认以确保安全。",
"data-management.delete.step1.title": "删除账户(步骤 1/3",
"data-management.delete.step2.cancel": "取消",
"data-management.delete.step2.confirm": "我已知晓风险",
"data-management.delete.step2.description": "将彻底清除当前租户的照片、设置、同步记录以及所有成员权限,且无法撤销。",
"data-management.delete.step2.title": "二次确认:删除整个账户",
"data-management.delete.step3.cancel": "返回",
"data-management.delete.step3.confirm": "永久删除",
"data-management.delete.step3.description": "请输入 DELETE 以确认。本操作会立即注销所有成员并删除不可恢复的数据。",
"data-management.delete.step3.error.description": "请输入 DELETE 以继续。",
"data-management.delete.step3.error.title": "确认失败",
"data-management.delete.step3.placeholder": "DELETE",
"data-management.delete.step3.title": "最终确认:永久删除账户",
"data-management.delete.success.description": "已清理当前租户下的全部数据,并登出所有成员。",
"data-management.delete.success.title": "账户已删除",
"data-management.delete.title": "删除当前租户与所有数据",
"data-management.summary.badge": "当前数据概况",
"data-management.summary.description": "以下统计来自数据库记录,不含对象存储中的原始文件。",
"data-management.summary.error": "无法加载数据统计,请稍后再试。",
"data-management.summary.stats.conflicts.chip": "需处理",
"data-management.summary.stats.conflicts.label": "冲突",
"data-management.summary.stats.pending.chip": "排队中",
"data-management.summary.stats.pending.label": "待同步",
"data-management.summary.stats.synced.chip": "正常",
"data-management.summary.stats.synced.label": "已同步",
"data-management.summary.stats.total.chip": "全部",
"data-management.summary.stats.total.label": "总记录",
"data-management.summary.title": "照片数据表状态",
"data-management.truncate.badge": "危险操作",
"data-management.truncate.button": "清空数据库记录",
"data-management.truncate.description": "删除数据库中的所有照片记录,仅保留对象存储文件。通常用于处理数据不一致、重新同步或迁移场景。",
"data-management.truncate.error.fallback": "无法清空数据库记录,请稍后再试。",
"data-management.truncate.error.title": "清理失败",
"data-management.truncate.loading": "清理中…",
"data-management.truncate.note": "操作完成后请立即重新执行「照片同步」,以便使用存储中的原始文件重建数据库与 manifest。",
"data-management.truncate.prompt.cancel": "取消",
"data-management.truncate.prompt.confirm": "立即清空",
"data-management.truncate.prompt.description": "该操作会删除数据库中的所有照片记录,但会保留对象存储中的原始文件。清空后需要重新执行一次照片同步。",
"data-management.truncate.prompt.title": "确认清空照片数据表?",
"data-management.truncate.success.deleted": "已标记删除 {{count}} 条照片记录。",
"data-management.truncate.success.empty": "没有可清理的数据表记录。",
"data-management.truncate.success.title": "数据库记录已清空",
"data-management.truncate.title": "清空照片数据表",
"error.boundary.description": "我们遇到了一个意料之外的错误",
"error.boundary.go-back": "返回上一页",
"error.boundary.help": "如果问题持续出现,请反馈给我们的团队。",
"error.boundary.reload": "重新加载",
"error.boundary.report": "在 GitHub 上反馈",
"error.boundary.title": "系统出现问题",
"errors.request.generic": "请求失败,请稍后重试。",
"header.plan.badge": "订阅",
"nav.analytics": "数据分析",
"nav.comments": "评论",
"nav.library": "图库",
"nav.overview": "概览",
"nav.photos": "照片",
"nav.settings": "设置",
"nav.users": "成员",
"no-access.back-to-login": "返回登录",
"no-access.description": "你当前的账号没有访问该功能所需的权限,请联系工作区管理员,或切换到拥有权限的账号后重试。",
"no-access.request-path": "请求路径:",
"no-access.retry": "重新尝试",
"no-access.title.forbidden": "权限不足",
"no-access.title.unavailable": "无法访问",
"photos.actions.conflict": "冲突",
"photos.actions.delete": "删除",
"photos.actions.error": "错误",
"photos.actions.insert": "新增",
"photos.actions.noop": "跳过",
"photos.actions.update": "更新",
"photos.conflict.generic": "冲突",
"photos.conflict.id.description": "同一个照片 ID 检测到多个对象,请选择保留的版本。",
"photos.conflict.id.label": "照片 ID 冲突",
"photos.conflict.metadata.description": "存储对象与数据库记录的元数据不一致,需要确认以哪个为准。",
"photos.conflict.metadata.label": "元数据不一致",
"photos.conflict.missing.description": "数据库存在记录,但对应的存储对象已无法访问。",
"photos.conflict.missing.label": "存储缺失",
"photos.library.actions.all-selected": "已全选",
"photos.library.actions.clear-selection": "清除选择",
"photos.library.actions.delete": "删除",
"photos.library.actions.edit-tags": "编辑标签",
"photos.library.actions.select-all": "全选",
"photos.library.actions.selected-count": "已选 {{count}} 项",
"photos.library.actions.upload": "上传文件",
"photos.library.actions.upload-short": "上传",
"photos.library.card.delete": "删除素材",
"photos.library.card.device-unknown": "未知设备",
"photos.library.card.edit-tags": "编辑标签",
"photos.library.card.no-preview": "暂无预览",
"photos.library.card.select": "选择",
"photos.library.card.selected": "已选择",
"photos.library.card.size-unknown": "大小未知",
"photos.library.card.view-exif": "查看 EXIF",
"photos.library.delete.cancel": "取消",
"photos.library.delete.confirm": "删除",
"photos.library.delete.description": "此操作无法撤销。要继续删除「{{name}}」吗?勾选下方选项可同时删除远程存储文件。",
"photos.library.delete.option.description": "勾选后会删除远程原件与缩略图。",
"photos.library.delete.option.title": "同时删除存储文件",
"photos.library.delete.title": "确定要删除该素材?",
"photos.library.empty.description": "使用上传按钮将照片添加到图库。",
"photos.library.empty.title": "还没有照片",
"photos.library.exif.empty": "该素材没有可用的 EXIF 数据。",
"photos.library.exif.file": "文件:{{value}}",
"photos.library.exif.rows.altitude": "海拔",
"photos.library.exif.rows.altitude-below": "{{value}} 米(低于海平面)",
"photos.library.exif.rows.altitude-value": "{{value}} 米",
"photos.library.exif.rows.aperture": "光圈",
"photos.library.exif.rows.aspect-ratio": "纵横比",
"photos.library.exif.rows.author": "作者",
"photos.library.exif.rows.brightness": "亮度值",
"photos.library.exif.rows.captured-at": "拍摄时间",
"photos.library.exif.rows.color-space": "色彩空间",
"photos.library.exif.rows.copyright": "版权",
"photos.library.exif.rows.device": "相机",
"photos.library.exif.rows.eq-focal-length": "等效 35mm 焦距",
"photos.library.exif.rows.exposure-compensation": "曝光补偿",
"photos.library.exif.rows.exposure-mode": "曝光模式",
"photos.library.exif.rows.exposure-program": "曝光程序",
"photos.library.exif.rows.file-format": "格式",
"photos.library.exif.rows.file-size": "文件大小",
"photos.library.exif.rows.flash": "闪光灯",
"photos.library.exif.rows.focal-length": "焦距",
"photos.library.exif.rows.iso": "ISO 感光度",
"photos.library.exif.rows.latitude": "纬度",
"photos.library.exif.rows.lens": "镜头",
"photos.library.exif.rows.light-source": "光源",
"photos.library.exif.rows.longitude": "经度",
"photos.library.exif.rows.megapixels": "像素数",
"photos.library.exif.rows.metering-mode": "测光模式",
"photos.library.exif.rows.photo-id": "照片 ID",
"photos.library.exif.rows.rating": "评级",
"photos.library.exif.rows.resolution": "分辨率",
"photos.library.exif.rows.scale-factor": "35mm 换算系数",
"photos.library.exif.rows.scene-type": "场景类型",
"photos.library.exif.rows.sensor": "传感器",
"photos.library.exif.rows.shutter": "快门速度",
"photos.library.exif.rows.software": "软件",
"photos.library.exif.rows.time-offset": "时差",
"photos.library.exif.rows.timezone": "时区",
"photos.library.exif.rows.timezone-source": "时区来源",
"photos.library.exif.rows.title": "标题",
"photos.library.exif.rows.white-balance": "白平衡",
"photos.library.exif.sections.basic": "基础信息",
"photos.library.exif.sections.capture": "拍摄参数",
"photos.library.exif.sections.fuji": "富士配方",
"photos.library.exif.sections.location": "位置信息",
"photos.library.exif.sections.metadata": "元数据",
"photos.library.sort.by-captured": "按拍摄时间排序",
"photos.library.sort.by-uploaded": "按上传时间排序",
"photos.library.sort.order-asc": "最早在前",
"photos.library.sort.order-desc": "最新在前",
"photos.library.tags.modal.asset-count": "{{count}} 个素材",
"photos.library.tags.modal.cancel": "取消",
"photos.library.tags.modal.description.multiple": "所有选中素材将使用相同标签。标签也会影响远程存储路径。",
"photos.library.tags.modal.description.single": "标签决定远程存储路径,调整标签会同时移动原始文件与 Live Photo 视频。",
"photos.library.tags.modal.input": "输入标签并按 Enter或从推荐标签中选择",
"photos.library.tags.modal.no-selection": "未选中任何素材",
"photos.library.tags.modal.path.hint": "根据标签顺序生成",
"photos.library.tags.modal.path.preview": "新的存储路径预览",
"photos.library.tags.modal.path.sample": "示例路径(首个条目)",
"photos.library.tags.modal.save": "保存",
"photos.library.tags.modal.saving": "保存中…",
"photos.library.tags.modal.title": "为「{{name}}」编辑标签",
"photos.library.tags.toast.error": "无法更新标签",
"photos.library.tags.toast.error-description": "请稍后再试。",
"photos.library.tags.toast.multi-success": "已更新 {{count}} 个素材的标签",
"photos.library.tags.toast.single-success": "标签已更新",
"photos.library.tags.toast.success-description": "已根据新标签更新存储路径。",
"photos.page.description": "在此同步和管理服务器中的照片资产。",
"photos.page.title": "照片库",
"photos.storage.managed.actions.cancel": "取消托管存储",
"photos.storage.managed.actions.current": "当前方案",
"photos.storage.managed.actions.loading": "处理中…",
"photos.storage.managed.actions.make-active": "启用",
"photos.storage.managed.actions.make-inactive": "停用",
"photos.storage.managed.actions.manage": "管理账单",
"photos.storage.managed.actions.retry": "重试",
"photos.storage.managed.actions.subscribe": "立即订阅",
"photos.storage.managed.actions.subscribed": "已订阅",
"photos.storage.managed.actions.switch": "切换到此方案",
"photos.storage.managed.actions.upgrade": "升级方案",
"photos.storage.managed.capacity.label": "可用容量:{{value}}",
"photos.storage.managed.capacity.unknown": "暂无法获取该方案的容量信息。",
"photos.storage.managed.capacity.unlimited": "容量无限制",
"photos.storage.managed.description": "订阅由平台托管的存储方案,无需自建对象存储即可扩容。",
"photos.storage.managed.empty": "当前没有可订阅的托管存储方案。",
"photos.storage.managed.error.load": "无法加载托管存储方案。",
"photos.storage.managed.price.free": "包含在当前订阅内",
"photos.storage.managed.price.label": "{{price}} / 月",
"photos.storage.managed.provider": "托管服务提供方:{{provider}}",
"photos.storage.managed.title": "托管存储",
"photos.storage.managed.toast.checkout-failure": "无法拉起支付,请稍后再试。",
"photos.storage.managed.toast.checkout-unavailable": "当前无法发起托管存储的支付。",
"photos.storage.managed.toast.error": "更新托管存储方案失败:{{reason}}",
"photos.storage.managed.toast.missing-checkout-url": "缺少结账链接,稍后再试。",
"photos.storage.managed.toast.missing-portal-url": "缺少账单门户链接,稍后再试。",
"photos.storage.managed.toast.portal-failure": "无法打开账单门户,请稍后再试。",
"photos.storage.managed.toast.success": "托管存储方案已更新。",
"photos.storage.managed.unavailable": "托管存储尚未启用,请联系管理员。",
"photos.sync.actions.button.apply": "同步照片",
"photos.sync.actions.button.preview": "预览同步",
"photos.sync.actions.toast.apply-success": "照片同步完成",
"photos.sync.actions.toast.error-description": "照片同步失败,请稍后再试。",
"photos.sync.actions.toast.error-title": "同步失败",
"photos.sync.actions.toast.preview-success": "预览同步完成",
"photos.sync.actions.toast.success-description": "新增 {{inserted}} · 更新 {{updated}} · 冲突 {{conflicts}} · 错误 {{errors}}",
"photos.sync.conflicts.actions.all-database": "全部采用数据库版本",
"photos.sync.conflicts.actions.all-storage": "全部采用存储版本",
"photos.sync.conflicts.actions.clear-selection": "清除选择",
"photos.sync.conflicts.actions.hide-details": "收起详情",
"photos.sync.conflicts.actions.open-storage": "打开",
"photos.sync.conflicts.actions.prefer-database": "保留数据库",
"photos.sync.conflicts.actions.prefer-storage": "保留存储",
"photos.sync.conflicts.actions.selected-database": "将数据库版本应用到所选项",
"photos.sync.conflicts.actions.selected-storage": "将存储版本应用到所选项",
"photos.sync.conflicts.actions.view-details": "查看详情",
"photos.sync.conflicts.actions.view-original": "查看原图",
"photos.sync.conflicts.description": "这些冲突需要人工确认,可多选条目加速处理。",
"photos.sync.conflicts.info.conflict-key": "冲突 Key",
"photos.sync.conflicts.info.first-detected": "发现时间:{{time}}",
"photos.sync.conflicts.info.last-updated": "最近更新:{{time}}",
"photos.sync.conflicts.info.photo-id-fallback": "缺少 Photo ID",
"photos.sync.conflicts.info.storage-key": "存储 Key",
"photos.sync.conflicts.preview.common.dimensions": "尺寸:",
"photos.sync.conflicts.preview.common.id": "ID",
"photos.sync.conflicts.preview.common.size": "大小:",
"photos.sync.conflicts.preview.common.updated-at": "更新时间:",
"photos.sync.conflicts.preview.database.empty": "无可用数据库记录",
"photos.sync.conflicts.preview.database.title": "数据库记录",
"photos.sync.conflicts.preview.storage.key": "Key",
"photos.sync.conflicts.preview.storage.title": "存储对象",
"photos.sync.conflicts.prompts.bulk": "是否处理 {{scope}} 并 {{strategy}}",
"photos.sync.conflicts.prompts.cancel": "取消",
"photos.sync.conflicts.prompts.confirm": "确认",
"photos.sync.conflicts.prompts.scope-all": "全部待处理冲突",
"photos.sync.conflicts.prompts.scope-selected": "所选 {{count}} 个冲突",
"photos.sync.conflicts.prompts.single": "是否处理冲突 {{identifier}} 并 {{strategy}}",
"photos.sync.conflicts.prompts.title": "确认操作",
"photos.sync.conflicts.selection.clear": "清除选择",
"photos.sync.conflicts.selection.none": "未选择任何项",
"photos.sync.conflicts.selection.selected": "已选 {{count}} 项",
"photos.sync.conflicts.strategy.database": "保留数据库版本",
"photos.sync.conflicts.strategy.storage": "保留存储版本",
"photos.sync.conflicts.title": "待处理冲突",
"photos.sync.conflicts.toast.no-original": "此记录没有原始资源预览。",
"photos.sync.conflicts.toast.none": "当前没有需要处理的冲突。",
"photos.sync.conflicts.toast.open-storage-failed": "无法打开存储对象",
"photos.sync.conflicts.toast.select-required": "请先选择需要处理的冲突。",
"photos.sync.conflicts.total": "总计:{{count}}",
"photos.sync.metadata.database": "元数据 · 数据库",
"photos.sync.metadata.etag": "ETag实体标签",
"photos.sync.metadata.hash": "元数据哈希",
"photos.sync.metadata.none": "无",
"photos.sync.metadata.size": "大小",
"photos.sync.metadata.storage": "元数据 · 存储",
"photos.sync.metadata.unknown": "未知",
"photos.sync.metadata.updated-at": "更新时间",
"photos.sync.progress.heading.error": "同步失败",
"photos.sync.progress.heading.preview": "正在运行预览同步",
"photos.sync.progress.heading.running": "正在运行同步",
"photos.sync.progress.logs.detail.error": "错误 {{value}}",
"photos.sync.progress.logs.detail.live-photo": "包含实况照片",
"photos.sync.progress.logs.detail.live-photo-absent": "无实况照片",
"photos.sync.progress.logs.detail.manifest": "包含上一份清单",
"photos.sync.progress.logs.detail.manifest-absent": "无上一份清单",
"photos.sync.progress.logs.detail.result": "结果 {{value}}",
"photos.sync.progress.logs.level.error": "错误",
"photos.sync.progress.logs.level.info": "信息",
"photos.sync.progress.logs.level.success": "成功",
"photos.sync.progress.logs.level.warn": "警告",
"photos.sync.progress.logs.recent": "最新 {{count}} 条",
"photos.sync.progress.logs.title": "同步日志",
"photos.sync.progress.recent.no-further": "无需进一步操作",
"photos.sync.progress.recent.progress": "进度:{{processed}} / {{total}}",
"photos.sync.progress.recent.title": "最近操作",
"photos.sync.progress.stage-status.completed": "已完成",
"photos.sync.progress.stage-status.pending": "待开始",
"photos.sync.progress.stage-status.running": "进行中",
"photos.sync.progress.stages.conflicts.description": "检测存储元数据与数据库记录的差异。",
"photos.sync.progress.stages.conflicts.label": "校验元数据",
"photos.sync.progress.stages.missing.description": "将存储中的新对象同步到数据库。",
"photos.sync.progress.stages.missing.label": "导入新照片",
"photos.sync.progress.stages.orphan.description": "标记数据库中对应存储对象缺失的记录。",
"photos.sync.progress.stages.orphan.label": "识别孤立记录",
"photos.sync.progress.stages.progress": "{{processed}} / {{total}} 项",
"photos.sync.progress.stages.reconciliation.description": "更新记录状态以匹配最新元数据。",
"photos.sync.progress.stages.reconciliation.label": "状态对账",
"photos.sync.progress.status.error": "已停止",
"photos.sync.progress.status.running": "进行中",
"photos.sync.progress.subtitle.error": "同步过程中发生错误,请查看日志后重试。",
"photos.sync.progress.subtitle.preview": "正在模拟同步操作,预览模式不会写入数据库。",
"photos.sync.progress.subtitle.running": "正在对比存储与数据库,请保持此页面开启以查看实时进度。",
"photos.sync.result.actions.applied": "已应用",
"photos.sync.result.actions.collapse": "收起详情",
"photos.sync.result.actions.expand": "查看详情",
"photos.sync.result.actions.pending": "未应用",
"photos.sync.result.alerts.open-original-failed": "无法打开原始照片",
"photos.sync.result.duration.less-than-second": "少于 1 秒",
"photos.sync.result.duration.minutes": "{{count}} 分钟",
"photos.sync.result.duration.seconds": "{{count}} 秒",
"photos.sync.result.filters.all": "全部",
"photos.sync.result.history.completed-at": "完成时间 {{time}}",
"photos.sync.result.history.duration": "耗时 {{duration}}",
"photos.sync.result.history.heading": "最近完成的同步",
"photos.sync.result.history.mode.live": "实时模式 · 已应用更改",
"photos.sync.result.history.mode.preview": "预览模式 · 未写入数据库",
"photos.sync.result.history.operations": "操作:{{count}}",
"photos.sync.result.info.conflict-type": "冲突类型:",
"photos.sync.result.info.photo-id": "Photo ID",
"photos.sync.result.info.storage-key": "存储 Key",
"photos.sync.result.manifest.empty": "暂无清单数据",
"photos.sync.result.operations.count": "操作:{{count}}",
"photos.sync.result.operations.filter-label": "· 筛选:",
"photos.sync.result.status.empty.description": "请在设置中配置并启用存储提供方,然后使用同步控制开始处理。预览模式安全且不会修改数据。",
"photos.sync.result.status.empty.title": "尚无同步记录",
"photos.sync.result.status.loading.description": "正在获取最新同步任务,请稍候…",
"photos.sync.result.status.loading.title": "正在加载同步状态",
"photos.sync.result.summary.description.latest": "下方展示最近一次同步结果。",
"photos.sync.result.summary.description.live": "最近一次同步以实时模式执行,并写入了数据库。",
"photos.sync.result.summary.description.preview": "最近运行的是预览模式,未对数据库写入任何更改。",
"photos.sync.result.summary.heading": "同步概览",
"photos.sync.result.summary.labels.completed": "已同步",
"photos.sync.result.summary.labels.conflicts": "冲突",
"photos.sync.result.summary.labels.database-records": "数据库记录",
"photos.sync.result.summary.labels.deleted": "已删除",
"photos.sync.result.summary.labels.errors": "错误",
"photos.sync.result.summary.labels.inserted": "新增照片",
"photos.sync.result.summary.labels.pending": "待处理",
"photos.sync.result.summary.labels.skipped": "已跳过",
"photos.sync.result.summary.labels.storage-objects": "存储对象",
"photos.sync.result.summary.labels.updated": "已更新",
"photos.sync.result.table.empty.filtered": "没有符合当前筛选条件的操作。",
"photos.sync.result.table.empty.none": "同步完成,但没有可供查看的操作。",
"photos.sync.result.table.mode.live": "实时模式 · 结果已保存",
"photos.sync.result.table.mode.preview": "预览模式 · 未应用更改",
"photos.sync.result.table.title": "同步操作详情",
"photos.sync.toasts.conflict-batch-error": "部分冲突处理失败",
"photos.sync.toasts.conflict-batch-success": "{{strategy}} 已处理 {{count}} 个冲突。",
"photos.sync.toasts.conflict-database": "已保留数据库记录,忽略存储差异。",
"photos.sync.toasts.conflict-error": "冲突处理失败",
"photos.sync.toasts.conflict-error-desc": "当前无法解决冲突,请稍后再试。",
"photos.sync.toasts.conflict-resolved": "冲突已解决",
"photos.sync.toasts.conflict-select": "请先选择至少一个冲突项。",
"photos.tabs.library": "图库管理",
"photos.tabs.storage": "素材存储",
"photos.tabs.sync": "存储同步",
"photos.tabs.usage": "用量记录",
"photos.usage.events.description": "与计费相关的最新操作,如上传、删除与同步。",
"photos.usage.events.empty.description": "上传照片或运行同步后会在此显示计费事件。",
"photos.usage.events.empty.title": "暂无使用数据",
"photos.usage.events.metadata.empty": "— / 无",
"photos.usage.events.metadata.more": "+{{count}} 项",
"photos.usage.events.metadata.value-unknown": "未知",
"photos.usage.events.title": "最近的使用事件",
"photos.usage.events.total": "{{count}} 条事件",
"photos.usage.events.unit.byte": "字节",
"photos.usage.events.unit.count": "次数",
"photos.usage.events.unit.label": "单位:{{unit}}",
"photos.usage.photo-created.description": "通过上传或同步新增的照片。",
"photos.usage.photo-created.label": "新增照片",
"photos.usage.photo-deleted.description": "从图库或存储中删除的照片。",
"photos.usage.photo-deleted.label": "删除照片",
"photos.usage.summary.description": "按事件类型汇总的累计统计。",
"photos.usage.summary.refresh": "刷新",
"photos.usage.summary.title": "使用概览",
"photos.usage.sync-completed.description": "数据同步完成时产生的汇总事件。",
"photos.usage.sync-completed.label": "同步完成",
"plan.badge.current": "当前方案",
"plan.badge.internal": "内部方案",
"plan.checkout.coming-soon": "敬请期待",
"plan.checkout.loading": "请稍候…",
"plan.checkout.upgrade": "升级此方案",
"plan.error.load-prefix": "无法加载订阅信息:",
"plan.error.unknown": "未知错误",
"plan.page.description": "查看当前订阅状态与资源限制,并在此处发起升级或管理订阅。",
"plan.page.title": "订阅计划",
"plan.portal.loading": "打开中…",
"plan.portal.manage": "管理订阅",
"plan.quotas.label.libraryItemLimit": "图库容量",
"plan.quotas.label.maxSyncObjectSizeMb": "同步素材大小",
"plan.quotas.label.maxUploadSizeMb": "单次上传大小",
"plan.quotas.label.monthlyAssetProcessLimit": "每月可新增照片",
"plan.quotas.unit.megabytes": "{{value}} MB兆字节",
"plan.quotas.unit.photos": "{{value}} 张",
"plan.quotas.unlimited": "无限制",
"plan.toast.checkout-failure": "无法创建订阅结算会话,请稍后再试。",
"plan.toast.checkout-unavailable": "该方案暂未开放,请稍后再试。",
"plan.toast.missing-checkout-url": "Creem 未返回有效的结算链接,请稍后再试。",
"plan.toast.missing-portal-account": "找不到订阅账户,请稍后再试。",
"plan.toast.missing-portal-url": "Creem 未返回订阅管理地址,请稍后再试。",
"plan.toast.portal-failure": "无法打开订阅管理,请稍后再试。",
"plan.upgrade-modal.action.later": "稍后再说",
"plan.upgrade-modal.action.upgrade": "去升级",
"plan.upgrade-modal.description": "当前上传或同步已触达套餐上限,请前往订阅页面升级后继续。",
"plan.upgrade-modal.title": "升级订阅以继续",
"schema-form.secret.helper": "出于安全考虑,仅在更新时填写新的值。",
"schema-form.secret.hide": "隐藏",
"schema-form.secret.show": "显示",
"schema-form.select.placeholder": "请选择",
"settings.account.description": "绑定第三方账号,使用 OAuth 快速登录后台。",
"settings.account.title": "账号与登录",
"settings.data.description": "执行数据库级别的维护操作,以保持照片数据与对象存储一致。",
"settings.data.title": "数据管理",
"settings.domain.actions.copy": "复制",
"settings.domain.actions.verify": "验证",
"settings.domain.banner.pending": "{{domain}} 正在验证中DNS 生效可能需要几分钟。",
"settings.domain.bound-list.empty": "还没有绑定域名,请在左侧输入后开始验证。",
"settings.domain.bound-list.title": "已绑定域名",
"settings.domain.description": "绑定自己的域名,用品牌地址访问。",
"settings.domain.dns.cname.helper": "TXT 验证通过后,将自定义域名指向此目标。",
"settings.domain.dns.cname.title": "CNAME 目标TXT 通过后)",
"settings.domain.dns.hint.ttl": "300 秒或使用默认值",
"settings.domain.dns.name": "主机名",
"settings.domain.dns.ttl": "TTL",
"settings.domain.dns.txt.title": "TXT 记录(必填)",
"settings.domain.dns.type": "记录类型",
"settings.domain.dns.value": "记录值",
"settings.domain.input.cta": "绑定域名",
"settings.domain.input.helper": "可以使用根域或子域,避免直接填写平台基础域名 {{base}}。",
"settings.domain.input.label": "自定义域名",
"settings.domain.input.placeholder": "photos.example.com",
"settings.domain.status.disabled": "已停用",
"settings.domain.status.pending": "等待 DNS",
"settings.domain.status.verified": "已生效",
"settings.domain.steps.cname.desc": "TXT 验证通过后,再把 CNAME 指向 {{base}},让流量正式路由到站点。",
"settings.domain.steps.cname.title": "将 CNAME 指向工作空间",
"settings.domain.steps.title": "验证步骤",
"settings.domain.steps.txt.desc": "创建 TXT 记录(推荐 _afilmory-verification.<你的域名>)并填写下方验证 Token。",
"settings.domain.steps.txt.title": "添加 TXT 验证(必需)",
"settings.domain.steps.verify.desc": "TXT 生效后点击“验证”即可激活域名。",
"settings.domain.steps.verify.title": "完成验证并生效",
"settings.domain.title": "自定义域名",
"settings.domain.toast.delete-failed": "移除域名失败",
"settings.domain.toast.delete-success": "域名已移除",
"settings.domain.toast.input-required": "请先输入要绑定的域名。",
"settings.domain.toast.request-failed": "绑定域名失败",
"settings.domain.toast.request-success": "域名已添加,请完成 DNS 配置后再验证。",
"settings.domain.toast.verify-failed": "验证失败,请检查 DNS 后重试。",
"settings.domain.toast.verify-success": "域名已验证并启用",
"settings.domain.token.helper": "将此 Token 写入 TXT 记录(推荐 _afilmory-verification.<你的域名>)。",
"settings.domain.token.label": "验证 Token",
"settings.nav.account": "账号与登录",
"settings.nav.data": "数据管理",
"settings.nav.domain": "自定义域名",
"settings.nav.site": "站点设置",
"settings.nav.user": "用户信息",
"settings.site.description": "配置前台站点的品牌信息、社交渠道与地图展示。",
"settings.site.title": "站点设置",
"settings.user.description": "维护展示在前台的作者资料、头像与别名。",
"settings.user.title": "用户信息",
"site.settings.banner.dirty": "{{count}} 项设置待保存",
"site.settings.banner.fail": "保存失败:",
"site.settings.banner.success": "设置已成功同步",
"site.settings.banner.synced": "所有设置均为最新状态",
"site.settings.button.save": "保存更改",
"site.settings.button.saving": "保存中…",
"site.settings.error.load-prefix": "无法加载站点设置:",
"site.settings.error.unknown": "未知错误",
"site.user.blocker.cancel": "留在此页",
"site.user.blocker.confirm": "仍然离开",
"site.user.blocker.description": "您有未保存的更改,离开将会丢失,确定继续?",
"site.user.blocker.title": "离开前请先保存",
"site.user.button.save": "保存更改",
"site.user.button.saving": "保存中…",
"site.user.error.loading": "无法加载用户资料",
"site.user.form.avatar.helper": "支持 http(s) 或 // 开头的链接,留空则回退为首字母头像。",
"site.user.form.avatar.label": "头像 URL",
"site.user.form.avatar.placeholder": "https://cdn.example.com/avatar.png示例",
"site.user.form.display.helper": "显示在头像旁。留空则使用作者姓名。",
"site.user.form.display.label": "展示名称",
"site.user.form.display.placeholder": "可选,例如 innei.photo",
"site.user.form.name.helper": "会公开展示,并写入 RSS 的作者/编辑字段。",
"site.user.form.name.label": "作者姓名",
"site.user.form.name.placeholder": "例如 Innei",
"site.user.form.username.helper": "内部用于识别作者,不会公开显示。",
"site.user.form.username.label": "用户名(可选)",
"site.user.form.username.placeholder": "例如 innei",
"site.user.header.badge": "作者资料",
"site.user.header.description": "用于站点头部、RSS 与社交卡片,请保持与个人品牌一致。",
"site.user.header.title": "公开作者身份",
"site.user.preview.avatar-alt": "作者头像预览",
"site.user.preview.fallback": "作者",
"site.user.preview.last-updated": "最近更新:{{time}}",
"site.user.preview.never-updated": "尚未更新",
"site.user.toast.error": "保存资料失败",
"site.user.toast.error-description": "请检查输入后重试。",
"site.user.toast.success": "资料已更新",
"storage.providers.actions.add": "添加存储源",
"storage.providers.actions.cancel": "取消",
"storage.providers.actions.create": "创建存储源",
"storage.providers.actions.save": "保存更改",
"storage.providers.actions.saving": "保存中…",
"storage.providers.blocker.cancel": "留在此页",
"storage.providers.blocker.confirm": "仍然离开",
"storage.providers.blocker.description": "当前存储配置尚未保存,离开页面会丢失这些修改,确定继续?",
"storage.providers.blocker.title": "请先保存存储配置",
"storage.providers.card.active": "已启用",
"storage.providers.card.edit": "编辑",
"storage.providers.card.make-active": "设为启用",
"storage.providers.card.make-inactive": "设为停用",
"storage.providers.card.preview.fallback": "存储提供方",
"storage.providers.card.preview.not-configured": "未配置",
"storage.providers.card.untitled": "未命名存储",
"storage.providers.empty.action": "添加存储源",
"storage.providers.empty.description": "添加一个存储提供方,系统才能同步并管理远程照片。",
"storage.providers.empty.title": "尚未配置存储提供方",
"storage.providers.error.load": "无法加载存储设置",
"storage.providers.fields.github.branch.description": "可选,要同步的分支。",
"storage.providers.fields.github.branch.helper": "默认 master/main如有不同请填写完整分支名。",
"storage.providers.fields.github.branch.label": "分支",
"storage.providers.fields.github.branch.placeholder": "main示例",
"storage.providers.fields.github.custom-domain.description": "用于生成公开链接的 CDN 或代理域名。",
"storage.providers.fields.github.custom-domain.helper": "留空则继续使用 raw.githubusercontent.com。",
"storage.providers.fields.github.custom-domain.label": "自定义 CDN 域名",
"storage.providers.fields.github.custom-domain.placeholder": "cdn.jsdelivr.net/gh/owner/repo@branch示例",
"storage.providers.fields.github.owner.description": "GitHub 用户或组织名称。",
"storage.providers.fields.github.owner.label": "仓库拥有者",
"storage.providers.fields.github.owner.placeholder": "afilmory示例",
"storage.providers.fields.github.path.description": "可选,限制同步的仓库路径。",
"storage.providers.fields.github.path.label": "仓库路径",
"storage.providers.fields.github.path.placeholder": "public/photos可选",
"storage.providers.fields.github.repo.description": "存放照片的仓库。",
"storage.providers.fields.github.repo.label": "仓库名称",
"storage.providers.fields.github.repo.placeholder": "photo-assets示例",
"storage.providers.fields.github.token.description": "用于私有仓库的 Personal Access Token。",
"storage.providers.fields.github.token.label": "访问令牌",
"storage.providers.fields.github.token.placeholder": "ghp_xxxxxxxxxxxxxxxxxxxx示例",
"storage.providers.fields.github.use-raw.description": "生成公开链接时使用 raw.githubusercontent.com。",
"storage.providers.fields.github.use-raw.helper": "如果通过自定义域名分发文件,请设为 false。",
"storage.providers.fields.github.use-raw.label": "使用 raw 链接",
"storage.providers.fields.github.use-raw.placeholder": "true / false布尔",
"storage.providers.fields.s3.access-key.label": "Access Key ID公钥",
"storage.providers.fields.s3.access-key.placeholder": "AKIAxxxxxxxxxxxx示例",
"storage.providers.fields.s3.bucket.description": "存放照片的 S3 Bucket 名称。",
"storage.providers.fields.s3.bucket.label": "Bucket 名称",
"storage.providers.fields.s3.bucket.placeholder": "afilmory-photos示例",
"storage.providers.fields.s3.custom-domain.description": "用于生成公开照片链接的域名。",
"storage.providers.fields.s3.custom-domain.label": "自定义公开域名",
"storage.providers.fields.s3.custom-domain.placeholder": "https://cdn.example.com示例",
"storage.providers.fields.s3.endpoint.description": "S3 兼容服务的自定义 Endpoint。",
"storage.providers.fields.s3.endpoint.helper": "使用 AWS S3 时可留空MinIO 或其他厂商需要填写。",
"storage.providers.fields.s3.endpoint.label": "自定义 Endpoint",
"storage.providers.fields.s3.endpoint.placeholder": "https://s3.example.com示例",
"storage.providers.fields.s3.exclude-regex.description": "可选,跳过匹配该正则表达式的文件。",
"storage.providers.fields.s3.exclude-regex.helper": "使用 JavaScript 兼容的正则表达式。",
"storage.providers.fields.s3.exclude-regex.label": "排除规则(正则)",
"storage.providers.fields.s3.exclude-regex.placeholder": "\\.(tmp|bak)$",
"storage.providers.fields.s3.max-files.description": "可选,每次扫描的最大文件数。",
"storage.providers.fields.s3.max-files.label": "最大文件数",
"storage.providers.fields.s3.max-files.placeholder": "1000可选",
"storage.providers.fields.s3.prefix.description": "可选,仅扫描该前缀下的对象。",
"storage.providers.fields.s3.prefix.label": "路径前缀",
"storage.providers.fields.s3.prefix.placeholder": "photos/(前缀)",
"storage.providers.fields.s3.region.description": "S3 区域代码,例如 ap-southeast-1。",
"storage.providers.fields.s3.region.label": "区域",
"storage.providers.fields.s3.region.placeholder": "ap-southeast-1示例",
"storage.providers.fields.s3.secret-key.label": "Secret Access Key私钥",
"storage.providers.fields.s3.secret-key.placeholder": "************(示例)",
"storage.providers.modal.create.description": "为照片配置新的存储后端。",
"storage.providers.modal.create.title": "添加存储提供方",
"storage.providers.modal.edit.description": "更新该提供方的凭证和选项。",
"storage.providers.modal.edit.title": "编辑存储提供方",
"storage.providers.modal.fields.name.label": "显示名称",
"storage.providers.modal.fields.name.placeholder": "例如 Production S3",
"storage.providers.modal.fields.required": "必填",
"storage.providers.modal.fields.type.label": "提供类型",
"storage.providers.modal.fields.type.placeholder": "请选择提供方",
"storage.providers.modal.sections.basic": "基础信息",
"storage.providers.modal.sections.connection": "连接配置",
"storage.providers.prompt.sync.cancel": "稍后再说",
"storage.providers.prompt.sync.confirm": "开始同步",
"storage.providers.prompt.sync.description": "存储提供方配置已保存。是否立即前往数据同步,扫描存储并更新数据库?",
"storage.providers.prompt.sync.title": "立即同步照片?",
"storage.providers.secure-access.description": "启用后将通过服务端生成短期签名链接,便于追踪与及时吊销;关闭则使用公开地址(安全性更低)。",
"storage.providers.secure-access.helper": "建议在托管存储或需要访问日志时开启,需要具备 S3 的签名下载权限。",
"storage.providers.secure-access.managed-note": "托管存储由平台统一控制此选项,如需调整请联系管理员。",
"storage.providers.secure-access.title": "安全访问代理",
"storage.providers.security.description": "密钥、令牌等敏感凭据会使用 {{algorithm}} 加密以保护数据。",
"storage.providers.security.helper": "{{algorithm}} 提供认证加密,确保数据保密且不可篡改。",
"storage.providers.security.title": "存储安全",
"storage.providers.status.dirty": "{{total}} 个存储源待保存",
"storage.providers.status.error": "保存失败:{{reason}}",
"storage.providers.status.saved": "✓ 存储配置已保存",
"storage.providers.status.summary": "{{total}} 个存储提供方 • {{active}} 个启用",
"storage.providers.types.b2": "Backblaze B2 云存储",
"storage.providers.types.cos": "腾讯云 COS",
"storage.providers.types.eagle": "Eagle 素材库",
"storage.providers.types.github": "GitHub 仓库",
"storage.providers.types.local": "本地存储",
"storage.providers.types.minio": "MinIO 存储",
"storage.providers.types.oss": "阿里云 OSS",
"storage.providers.types.s3": "AWS S3 / 兼容对象存储",
"superadmin.brand": "Afilmory · 系统管理",
"superadmin.builder-debug.actions.cancel": "取消调试",
"superadmin.builder-debug.actions.start": "开始调试",
"superadmin.builder-debug.api.missing-result": "在连接结束前未收到最终调试结果。",
"superadmin.builder-debug.api.request-failed": "调试请求失败:{{status}} {{statusText}}",
"superadmin.builder-debug.description": "在不触碰持久化数据的情况下验证单张图片的构建管线。",
"superadmin.builder-debug.input.clear": "清除",
"superadmin.builder-debug.input.file-meta": "{{size}} · {{type}}(源文件)",
"superadmin.builder-debug.input.max": "仅支持 1 张图片,大小不超过 25 MB",
"superadmin.builder-debug.input.placeholder": "点击或拖入图片",
"superadmin.builder-debug.input.subtitle": "选择一张源图片来模拟 Builder 管线。",
"superadmin.builder-debug.input.title": "调试输入",
"superadmin.builder-debug.log.level.error": "错误",
"superadmin.builder-debug.log.level.info": "信息",
"superadmin.builder-debug.log.level.success": "成功",
"superadmin.builder-debug.log.level.warn": "警告",
"superadmin.builder-debug.log.message.complete": "构建完成 · 结果 {{resultType}}",
"superadmin.builder-debug.log.message.start": "正在上传 {{filename}} · 准备运行 Builder",
"superadmin.builder-debug.log.status.complete": "完成",
"superadmin.builder-debug.log.status.error": "错误",
"superadmin.builder-debug.log.status.start": "开始",
"superadmin.builder-debug.logs.empty": "暂无日志",
"superadmin.builder-debug.logs.initializing": "正在准备调试环境…",
"superadmin.builder-debug.logs.source": "来源Builder + Data Sync Relay",
"superadmin.builder-debug.logs.subtitle": "最新 {{count}} 条消息",
"superadmin.builder-debug.logs.title": "实时日志",
"superadmin.builder-debug.notes.keep-page-open": "任务运行期间请保持此页面开启。日志来自与数据同步相同的 Builder 配置。",
"superadmin.builder-debug.output.after-run": "运行调试任务后会在此显示清单详情。",
"superadmin.builder-debug.output.copy": "复制清单",
"superadmin.builder-debug.output.no-manifest": "此次运行未产生清单数据。",
"superadmin.builder-debug.output.subtitle": "查看 Builder 返回的清单摘要。",
"superadmin.builder-debug.output.title": "调试输出",
"superadmin.builder-debug.recent.file": "文件",
"superadmin.builder-debug.recent.size": "大小",
"superadmin.builder-debug.recent.storage-key": "存储 Key",
"superadmin.builder-debug.recent.title": "最近任务",
"superadmin.builder-debug.safety.items.no-db": "不会向数据库写入照片记录",
"superadmin.builder-debug.safety.items.no-storage": "不会在存储中保留调试产物",
"superadmin.builder-debug.safety.items.realtime": "日志实时输出,方便排查",
"superadmin.builder-debug.safety.title": "⚠️ 调试以安全模式运行:",
"superadmin.builder-debug.status.error": "失败",
"superadmin.builder-debug.status.idle": "就绪",
"superadmin.builder-debug.status.running": "运行中",
"superadmin.builder-debug.status.success": "已完成",
"superadmin.builder-debug.summary.cleaned": "产物清理",
"superadmin.builder-debug.summary.cleaned-no": "否",
"superadmin.builder-debug.summary.cleaned-yes": "是",
"superadmin.builder-debug.summary.result-type": "结果类型",
"superadmin.builder-debug.summary.storage-key": "存储 Key",
"superadmin.builder-debug.summary.thumbnail": "缩略图 URL",
"superadmin.builder-debug.summary.thumbnail-missing": "未生成",
"superadmin.builder-debug.title": "Builder 调试控制台",
"superadmin.builder-debug.toast.cancelled": "调试已取消",
"superadmin.builder-debug.toast.copy-failure.description": "请手动复制内容。",
"superadmin.builder-debug.toast.copy-failure.title": "复制失败",
"superadmin.builder-debug.toast.copy-success": "清单已复制到剪贴板",
"superadmin.builder-debug.toast.failure-fallback": "调试失败,请检查后重试。",
"superadmin.builder-debug.toast.failure.title": "调试失败",
"superadmin.builder-debug.toast.manual-cancelled-log": "用户已停止调试运行",
"superadmin.builder-debug.toast.manual-cancelled-message": "调试会话已被手动取消。",
"superadmin.builder-debug.toast.pick-file": "在运行调试前请选择一张图片。",
"superadmin.builder-debug.toast.success.description": "Builder 管线运行成功并已清理产物。",
"superadmin.builder-debug.toast.success.title": "调试完成",
"superadmin.builder.title": "构建器设置",
"superadmin.nav.builder": "构建器",
"superadmin.nav.builder-debug": "Builder 调试",
"superadmin.nav.plans": "订阅计划",
"superadmin.nav.settings": "系统设置",
"superadmin.nav.tenants": "租户管理",
"superadmin.plans.description": "管理各个订阅计划的资源配额、定价信息与 Creem Product 连接,仅超级管理员可编辑。",
"superadmin.plans.storage.actions.add": "新增计划",
"superadmin.plans.storage.actions.remove": "删除",
"superadmin.plans.storage.actions.save": "保存存储计划",
"superadmin.plans.storage.description": "直接编辑托管存储方案,无需填 JSON。每个租户仅一份存储计划会与应用计划的赠送存储叠加。",
"superadmin.plans.storage.empty": "还没有存储计划,请先新增一条。",
"superadmin.plans.storage.error": "加载存储计划失败:{{reason}}",
"superadmin.plans.storage.fields.active": "在前台展示该计划",
"superadmin.plans.storage.fields.capacity": "容量 (GB)",
"superadmin.plans.storage.fields.creem": "Creem 商品 ID",
"superadmin.plans.storage.fields.currency": "币种",
"superadmin.plans.storage.fields.description": "描述",
"superadmin.plans.storage.fields.id": "计划 ID",
"superadmin.plans.storage.fields.name": "展示名称",
"superadmin.plans.storage.fields.placeholder.description": "适用人群与包含的内容",
"superadmin.plans.storage.fields.placeholder.name": "托管 B2 · 5GB",
"superadmin.plans.storage.fields.price": "月费",
"superadmin.plans.storage.saved": "存储计划已更新",
"superadmin.plans.storage.title": "存储计划",
"superadmin.plans.storage.validation.block": "请先修复校验错误后再保存。",
"superadmin.plans.storage.validation.capacity": "容量必须是数字GB。",
"superadmin.plans.storage.validation.id": "计划 ID 必填。",
"superadmin.plans.storage.validation.name": "展示名称必填。",
"superadmin.plans.storage.validation.price": "价格必须是数字。",
"superadmin.plans.tabs.app": "应用计划",
"superadmin.plans.tabs.storage": "存储计划",
"superadmin.plans.title": "订阅计划配置",
"superadmin.settings.button.loading": "保存中...",
"superadmin.settings.button.save": "保存修改",
"superadmin.settings.description": "管理整个平台的注册策略与本地登录渠道,由超级管理员统一维护。",
"superadmin.settings.error.loading": "无法加载超级管理员设置:{{reason}}",
"superadmin.settings.managed-storage.actions.edit": "编辑",
"superadmin.settings.managed-storage.actions.save": "保存托管 Provider",
"superadmin.settings.managed-storage.actions.select": "设为托管",
"superadmin.settings.managed-storage.actions.selected": "已选择",
"superadmin.settings.managed-storage.current": "托管使用",
"superadmin.settings.managed-storage.description": "配置用于内置托管存储的 Provider例如 B2。",
"superadmin.settings.managed-storage.empty": "还没有存储提供商,请先新增。",
"superadmin.settings.managed-storage.error": "加载存储提供商失败:{{reason}}",
"superadmin.settings.managed-storage.secure-access.description": "是否强制托管租户通过短期签名链接访问,以便控制与追踪。",
"superadmin.settings.managed-storage.secure-access.helper": "关闭后租户将直接返回对象存储地址,安全性会降低。",
"superadmin.settings.managed-storage.secure-access.title": "安全访问代理",
"superadmin.settings.managed-storage.title": "托管存储 Provider",
"superadmin.settings.managed-storage.type": "类型:{{type}}",
"superadmin.settings.message.dirty": "您有尚未保存的变更",
"superadmin.settings.message.error": "保存失败:{{reason}}",
"superadmin.settings.message.idle": "所有设置已同步",
"superadmin.settings.message.saved": "保存成功,设置已更新",
"superadmin.settings.message.saving": "正在保存设置...",
"superadmin.settings.message.unknown-error": "未知错误",
"superadmin.settings.stats.remaining": "剩余可注册名额",
"superadmin.settings.stats.total-users": "当前用户总数",
"superadmin.settings.stats.unlimited": "不限",
"superadmin.settings.tabs.general": "通用",
"superadmin.settings.tabs.managed-storage": "托管存储",
"superadmin.settings.title": "系统设置",
"superadmin.tenants.button.ban": "封禁",
"superadmin.tenants.button.delete": "删除",
"superadmin.tenants.button.processing": "处理中…",
"superadmin.tenants.button.unban": "解除封禁",
"superadmin.tenants.description": "为特定租户切换订阅计划或封禁违规租户。",
"superadmin.tenants.empty": "当前没有可管理的租户。",
"superadmin.tenants.error.loading": "无法加载租户数据:{{reason}}",
"superadmin.tenants.filter.all": "全部",
"superadmin.tenants.filter.status": "状态筛选",
"superadmin.tenants.modal.overview.details": "详细信息",
"superadmin.tenants.modal.overview.photos": "照片总数",
"superadmin.tenants.modal.tab.overview": "概览",
"superadmin.tenants.modal.tab.photos": "照片",
"superadmin.tenants.pagination.showing": "显示 {{start}}-{{end}} 项,共 {{total}} 项",
"superadmin.tenants.plan.placeholder": "选择订阅计划",
"superadmin.tenants.prompt.delete.cancel": "取消删除",
"superadmin.tenants.prompt.delete.confirm": "确认删除",
"superadmin.tenants.prompt.delete.description": "此操作将永久删除 {{name}} 及其所有数据。请输入租户 slug 以确认。",
"superadmin.tenants.prompt.delete.mismatch": "Slug 不匹配,已取消删除。",
"superadmin.tenants.prompt.delete.placeholder": "请输入 slug{{slug}}",
"superadmin.tenants.prompt.delete.title": "删除租户",
"superadmin.tenants.refresh.button": "刷新列表",
"superadmin.tenants.refresh.loading": "正在刷新…",
"superadmin.tenants.search.placeholder": "搜索租户...",
"superadmin.tenants.status.active": "活跃",
"superadmin.tenants.status.banned": "已封禁",
"superadmin.tenants.status.inactive": "未激活",
"superadmin.tenants.status.pending": "待处理",
"superadmin.tenants.status.suspended": "已暂停",
"superadmin.tenants.storage-plan.default": "默认(无)",
"superadmin.tenants.storage-plan.placeholder": "选择存储计划",
"superadmin.tenants.storage.columns.files": "文件数",
"superadmin.tenants.storage.columns.plan": "存储方案",
"superadmin.tenants.storage.columns.tenant": "租户",
"superadmin.tenants.storage.columns.usage": "容量",
"superadmin.tenants.storage.empty": "目前没有租户订阅托管存储方案。",
"superadmin.tenants.storage.usage.of": "{{used}} / {{total}}",
"superadmin.tenants.storage.usage.unknown": "未知",
"superadmin.tenants.storage.usage.unlimited": "无限制",
"superadmin.tenants.table.actions": "操作",
"superadmin.tenants.table.ban": "封禁",
"superadmin.tenants.table.created": "创建时间",
"superadmin.tenants.table.plan": "订阅计划",
"superadmin.tenants.table.status": "状态",
"superadmin.tenants.table.storage-plan": "存储计划",
"superadmin.tenants.table.tenant": "租户",
"superadmin.tenants.table.usage": "用量",
"superadmin.tenants.tabs.storage": "存储租户",
"superadmin.tenants.tabs.subscriptions": "订阅管理",
"superadmin.tenants.title": "租户订阅管理",
"superadmin.tenants.toast.ban-error": "更新封禁状态失败",
"superadmin.tenants.toast.ban-success": "已封禁租户 {{name}}",
"superadmin.tenants.toast.delete-error": "删除租户失败",
"superadmin.tenants.toast.delete-success": "已删除租户 {{name}}",
"superadmin.tenants.toast.plan-error": "更新订阅失败",
"superadmin.tenants.toast.plan-success": "已将 {{name}} 切换到 {{planId}} 计划",
"superadmin.tenants.toast.storage-plan-error": "更新存储计划失败",
"superadmin.tenants.toast.storage-plan-success": "已更新 {{name}} 的存储计划",
"superadmin.tenants.toast.unban-success": "已解除封禁 {{name}}",
"superadmin.tenants.usage.empty": "尚无用量记录",
"welcome.tenant-missing.code": "404",
"welcome.tenant-missing.description": "未能在该地址找到空间,可能已被删除或链接有误。请检查 URL或注册自己的空间继续使用 Afilmory。",
"welcome.tenant-missing.home": "返回首页",
"welcome.tenant-missing.register": "立即注册",
"welcome.tenant-missing.request": "请求的主机:",
"welcome.tenant-missing.title": "未找到空间",
"welcome.tenant-restricted.code": "403",
"welcome.tenant-restricted.description": "该主机名被系统保留,无法用于仪表盘或公开站点。如需继续体验 Afilmory请使用其他主机名或注册专属空间。",
"welcome.tenant-restricted.home": "返回首页",
"welcome.tenant-restricted.register": "创建新空间",
"welcome.tenant-restricted.request": "请求的主机:",
"welcome.tenant-restricted.title": "空间已被保留",
"welcome.tenant-suspended.code": "403",
"welcome.tenant-suspended.contact": "联系支持",
"welcome.tenant-suspended.description": "由于违反服务条款或其他管理原因,该空间已被暂停。如您认为这是误判,请联系客服。",
"welcome.tenant-suspended.home": "返回首页",
"welcome.tenant-suspended.title": "空间已暂停"
}