Skip to content

feat: merge community PRs (#86 Chinese, #114 Spanish) + add Arabic locale with RTL#117

Open
abdelrahmanmegaly-jpg wants to merge 5 commits into
rmyndharis:mainfrom
abdelrahmanmegaly-jpg:feature/community-merge-arabic
Open

feat: merge community PRs (#86 Chinese, #114 Spanish) + add Arabic locale with RTL#117
abdelrahmanmegaly-jpg wants to merge 5 commits into
rmyndharis:mainfrom
abdelrahmanmegaly-jpg:feature/community-merge-arabic

Conversation

@abdelrahmanmegaly-jpg
Copy link
Copy Markdown

@abdelrahmanmegaly-jpg abdelrahmanmegaly-jpg commented May 20, 2026

Summary

This PR consolidates community contributions and adds full Arabic language support with RTL.

Community Contributions Merged

New: Arabic Locale (ar)

  • Full translation across all sections (dashboard, sessions, webhooks, API keys, message tester, infrastructure, plugins, logs, login)
  • RTL support
  • Language selector updated with العربية option

UI Improvement

  • Language selector redesigned as a button with dropdown (consistent with sidebar footer buttons)

Conflict Resolution

  • Resolved merge conflicts in Layout.tsx and i18n/index.ts to include all 5 languages (en, ar, he, zh, es)

whtis and others added 5 commits May 19, 2026 01:08
Add a Simplified Chinese locale to the dashboard, following the i18n
pattern introduced in rmyndharis#64. Chinese is now available alongside English
and Hebrew via the existing sidebar language switcher.

What's included:
- New `src/i18n/locales/zh.json` mirroring the structure of `en.json`,
  covering all pages, components, and toast messages (404 keys + a new
  `common.chinese` label, identical hierarchy to `en.json`)
- `zh` registered in `src/i18n/index.ts` (`supportedLanguages`,
  `resources`) so the language detector picks up `zh-*` browsers
  automatically and the cycle-language button rotates through it
- Language label in `Layout.tsx` switched from a binary `he`/EN ternary
  to a `SupportedLanguage` lookup, so adding more languages later only
  requires extending the map; `zh` shows as `中文`
- `common.chinese` key added to `en.json` for parity with the existing
  `common.english` / `common.hebrew` entries

No code, API, schema, or styling changes outside i18n. RTL list is
unchanged (Chinese is LTR). Existing users see no behavior change
unless their browser is set to `zh-*` or they pick 中文 from the
sidebar.

Verified:
- `npm run build` passes (tsc -b clean, vite build succeeds)
- `npm run lint` reports no new errors (3 pre-existing warnings)
- Key parity check: `en.json` and `zh.json` have identical key sets
  apart from the intentional new `common.chinese`
- Chinese strings present in the production bundle (verified via grep
  on `dist/assets/index-*.js`)
…ish) + add Arabic locale with RTL

- Merge upstream PR rmyndharis#86: Chinese locale (zh.json)
- Merge upstream PR rmyndharis#114: Spanish locale (es.json) + dashboard updates
- Add Arabic translation (ar.json) with full RTL support
- Improve language selector UI (button + dropdown matching sidebar buttons)
- Add Arabic to rtlLanguages alongside Hebrew
- Resolve merge conflicts in Layout.tsx and i18n/index.ts
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.

3 participants