diff --git a/.changeset/pending-drafts-i18n-keys.md b/.changeset/pending-drafts-i18n-keys.md new file mode 100644 index 000000000..84dab23b4 --- /dev/null +++ b/.changeset/pending-drafts-i18n-keys.md @@ -0,0 +1,6 @@ +--- +'@object-ui/i18n': patch +'@object-ui/app-shell': patch +--- + +Follow-up to #5696: the pending-drafts bar's strings live at `console.ai.pendingDrafts.*` with en+zh locale entries — the i18n call-site key gate and ratchet flagged the original root-level keys that existed nowhere. diff --git a/packages/app-shell/src/console/ai/PendingDraftsBar.tsx b/packages/app-shell/src/console/ai/PendingDraftsBar.tsx index c2e4e973d..81d1f0ca9 100644 --- a/packages/app-shell/src/console/ai/PendingDraftsBar.tsx +++ b/packages/app-shell/src/console/ai/PendingDraftsBar.tsx @@ -99,7 +99,7 @@ export function PendingDraftsBar({ packageId, idle }: PendingDraftsBarProps) { if (!res.ok) { const message = (body as { error?: { message?: string } } | undefined)?.error?.message ?? - t('ai.pendingDrafts.failed', { defaultValue: 'Publish failed.' }); + t('console.ai.pendingDrafts.failed', { defaultValue: 'Publish failed.' }); toast.error(message); return; } @@ -107,13 +107,13 @@ export function PendingDraftsBar({ packageId, idle }: PendingDraftsBarProps) { const problems = (health?.issues ?? []).filter((i) => i.severity === 'error'); if (health?.seedError || problems.length > 0) { toast.warning( - t('ai.pendingDrafts.publishedWithFindings', { + t('console.ai.pendingDrafts.publishedWithFindings', { defaultValue: 'Published, but the runtime probes reported problems: {{detail}}', detail: [health?.seedError, ...problems.map((p) => p.message)].filter(Boolean).join('; '), }), ); } else { - toast.success(t('ai.pendingDrafts.published', { defaultValue: 'All pending changes are live.' })); + toast.success(t('console.ai.pendingDrafts.published', { defaultValue: 'All pending changes are live.' })); } // The launcher/nav may have just gained entries — refresh the shared // metadata so the user's next click finds them. @@ -136,14 +136,14 @@ export function PendingDraftsBar({ packageId, idle }: PendingDraftsBarProps) { className="pointer-events-auto flex w-full max-w-3xl items-center justify-between gap-3 rounded-lg border border-amber-500/40 bg-amber-500/10 px-3 py-2 text-sm shadow-sm backdrop-blur" > - {t('ai.pendingDrafts.count', { + {t('console.ai.pendingDrafts.count', { defaultValue: '{{count}} change(s) are not published yet — users cannot see them.', count, })} ); diff --git a/packages/i18n/src/locales/en.ts b/packages/i18n/src/locales/en.ts index 5c2929b34..157c831fa 100644 --- a/packages/i18n/src/locales/en.ts +++ b/packages/i18n/src/locales/en.ts @@ -1687,6 +1687,13 @@ const en = { createApp: 'Create New App', }, ai: { + pendingDrafts: { + count: '{{count}} change(s) are not published yet — users cannot see them.', + publish: 'Publish', + published: 'All pending changes are live.', + failed: 'Publish failed.', + publishedWithFindings: 'Published, but the runtime probes reported problems: {{detail}}', + }, usage: { title: 'AI usage', meterBuild: 'Build', diff --git a/packages/i18n/src/locales/zh.ts b/packages/i18n/src/locales/zh.ts index c852bd644..3e3fb2d79 100644 --- a/packages/i18n/src/locales/zh.ts +++ b/packages/i18n/src/locales/zh.ts @@ -1558,6 +1558,13 @@ const zh = { createApp: '创建新应用', }, ai: { + pendingDrafts: { + count: '有 {{count}} 项改动尚未发布——用户还看不到。', + publish: '发布', + published: '全部待发布改动已生效。', + failed: '发布失败。', + publishedWithFindings: '已发布,但运行时探针发现问题:{{detail}}', + }, usage: { title: 'AI 用量', meterBuild: 'AI 搭建',