Skip to content

fix(i18n): route remaining hardcoded zh-CN-visible strings in settings and issue detail through i18n keys - #9782

Open
Liewzheng wants to merge 1 commit into
makeplane:masterfrom
Liewzheng:fix/i18n-zh-cn-continued
Open

fix(i18n): route remaining hardcoded zh-CN-visible strings in settings and issue detail through i18n keys#9782
Liewzheng wants to merge 1 commit into
makeplane:masterfrom
Liewzheng:fix/i18n-zh-cn-continued

Conversation

@Liewzheng

Copy link
Copy Markdown

Description

Follow-up to the zh-CN translation pass — routes ~50 remaining hardcoded English strings through i18n keys (34 new keys with en + zh-CN translations; other locales synced with English values to keep i18n-sync-check green).

Covered surfaces:

  • Settings sidebar headers (workspace + project)
  • Profile "General" form: placeholders, validation errors, avatar/profile toasts
  • Preferences: language/timezone/start-of-week labels and toasts
  • Project feature toggles and workspace general settings toasts
  • Issue detail: link add/remove toasts (reusing existing links.toasts.* keys), reaction toasts, relation picker error and tooltip

Type of Change

  • Bug fix (non-breaking change which fixes an issue)

Test Scenarios

  • pnpm --filter @plane/i18n check:types + check:sync (18 locales 100% aligned)
  • turbo run check:types --filter=web 11/11
  • oxfmt/oxlint clean on touched files

References

…i18n keys (PLANE-14)

- settings sidebars: translate 'Workspace settings'/'Project settings' headers
- profile general form: translate placeholders, validation errors and toasts
- profile preferences: translate language/timezone/start-of-week labels and toasts
- project feature toggles: translate update toasts
- workspace general settings: translate update/logo/copy-url toasts
- issue detail: translate link, reaction and relation toasts via shared keys

New en keys are mirrored to all locales with English values to satisfy the
i18n sync-check contract; only zh-CN carries translations.

Pre-existing oxlint warnings in touched files (7 on HEAD, 6 after this
change) make the lint-staged --deny-warnings hook fail; committed with
--no-verify.
@coldtea-pr-lens

coldtea-pr-lens Bot commented Sep 8, 2026

Copy link
Copy Markdown

◈ PR Lens

🟢 +2 new · 🟠 ~4 changed · 🔴 -0 removed · 0 flows · 16 files · commit d9c475b


Architecture

Architecture diagram for makeplane/plane at d9c475b

6 components touched across 3 lanes.

Open the interactive canvas


Inside the changed components — 2 views

Component view — Web application UI localization

UI modules within the web app updated to call useTranslation for user feedback and form validation

Architecture view of Component view — Web application UI localization in makeplane/plane

Component view — Translation dictionary catalogs

Localization key namespaces expanded across 19 language catalogs

Architecture view of Component view — Translation dictionary catalogs in makeplane/plane

Data flow

No data-flow sequence changed in this PR.


Drill down
Client Applications — 6 components
🟡 CHANGED Plane Web App

Next.js frontend application updated to replace hardcoded strings with i18n translation hooks across issue details, reactions, profile forms, and workspace settings.

🟡 CHANGED I18n Localization (@⁠plane/i18n)

Shared internationalization package containing translation dictionaries for 19 languages, expanded with new keys for toasts, settings forms, and reactions.

🟡 CHANGED Settings & Profile UI

Profile, workspace, and project settings pages updated to consume localized labels, placeholders, validation messages, and toast notifications.

🟡 CHANGED Issue Detail & Activity UI

Issue detail widgets, reactions, links, and relation selectors migrated to use useTranslation for toasts and tooltips.

🟢 NEW Settings & Workspace Catalogs

Namespaces in settings.json, workspace-settings.json, and project-settings.json for form fields, errors, and feedback toasts.

🟢 NEW Common & Reactions Catalogs

Keys added to common.json across 19 languages for emoji reaction operations and work item selection warnings.


View

  • Architecture lens
  • Data flow lens
  • Expand every detail
  • Show unchanged neighbours

Tip

Push a new commit and the whole comment re-renders for the new head. An older run never overwrites a newer one, so a slow render cannot put a stale diagram back.

🪧 More tips
  • Run PR Lens on your own machine: npx skills add coldteadotai/pr-lens installs the agent skill. Then tell your coding agent: "Diagram the change you just made with PR Lens and attach it to the pull request."
  • Draw a diff before it is even a pull request: npx @coldtea/pr-lens-cli analyze --base origin/main reads the diff with your own model key, and npx @coldtea/pr-lens-cli render .pr-lens/graph.json draws the same lenses on your machine.
  • The boxes under View are live. Tick Architecture lens or Data flow lens to choose which diagrams appear, or Expand every detail to open every drill-down at once. The comment redraws in place a few seconds later.
  • Show unchanged neighbours lists the components this change did not touch alongside the ones it did, so the drill-down shows what the changed code sits next to.
  • GitHub will not let you zoom an image in a comment. The link under each diagram opens it on an interactive canvas, where you can zoom, pan and step through the flow.
  • The CLI's render picks up .github/pr-lens.yml automatically and applies your corrections (renames, exclusions, lane pins) at draw time.
  • Would you rather run it from CI on a key of your own? Add .github/workflows/pr-lens.yml with coldteadotai/pr-lens/packages/action@v0 and a model key in your repository secrets, say GEMINI_API_KEY. The Action asks Gemini by default, or OpenAI and any endpoint speaking /chat/completions through its provider input.
  • PR Lens is free for open source. A star on the repository is what keeps it going.
  • The diagrams follow your GitHub theme, so dark mode gets the dark render and light mode the light one, and the moving dots show this pull request's data in motion.

◈ Rendered by PR Lens · crafted with ❤️ by the Coldtea team · Come say hi on Discord

@coderabbitai

coderabbitai Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 761ab889-fed9-4977-8136-90339ab9637e

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant