feat: add Persian (Farsi) translations (#4263)

* Add Persian/Farsi (fa) language support

This PR adds support for Persian (Farsi) language with ISO 639-1 code `fa`. Translations have been added for all keys in `statCardLocales`, `repoCardLocales`, `langCardLocales`, and `wakatimeCardLocales`. The translations follow the existing style and are compatible with the project's structure. Please test the display of Persian text in the UI to ensure proper rendering.

* review

* Update src/translations.js

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/translations.js

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/translations.js

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Alexandr <qwerty541zxc@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
Amin
2025-10-25 11:47:05 +02:00
committed by martin-mfg
co-authored by Copilot Alexandr
parent 08517568d9
commit f978f29764
2 changed files with 23 additions and 0 deletions
+1
View File
@@ -338,6 +338,7 @@ Here is a list of all available locales:
| `ru` | Russian |
| `uk-ua` | Ukrainian |
| `ro` | Romanian |
| `fa` | Persian (Farsi) |
</td><td>
+22
View File
@@ -25,6 +25,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: `${encodedName}'${apostrophe} GitHub Stats`,
bn: `${encodedName} এর GitHub পরিসংখ্যান`,
es: `Estadísticas de GitHub de ${encodedName}`,
fa: `آمار گیت‌هاب ${encodedName}`,
fi: `${encodedName}:n GitHub-tilastot`,
fr: `Statistiques GitHub de ${encodedName}`,
hu: `${encodedName} GitHub statisztika`,
@@ -61,6 +62,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: `${encodedName}'${apostrophe} GitHub Rank`,
bn: `${encodedName} এর GitHub পরিসংখ্যান`,
es: `Estadísticas de GitHub de ${encodedName}`,
fa: `رتبه گیت‌هاب ${encodedName}`,
fi: `${encodedName}:n GitHub-sijoitus`,
fr: `Statistiques GitHub de ${encodedName}`,
hu: `${encodedName} GitHub statisztika`,
@@ -97,6 +99,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: "Total Stars Earned",
bn: "সর্বমোট Star",
es: "Estrellas totales",
fa: "مجموع ستاره‌های دریافت‌شده",
fi: "Ansaitut tähdet yhteensä",
fr: "Total d'étoiles",
hu: "Csillagok",
@@ -133,6 +136,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: "Total Commits",
bn: "সর্বমোট Commit",
es: "Commits totales",
fa: "مجموع کامیت‌ها",
fi: "Yhteensä committeja",
fr: "Total des Commits",
hu: "Összes commit",
@@ -169,6 +173,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: "Total PRs",
bn: "সর্বমোট PR",
es: "PRs totales",
fa: "مجموع Pull Request",
fi: "Yhteensä PR:t",
fr: "Total des PRs",
hu: "Összes PR",
@@ -205,6 +210,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: "Total Issues",
bn: "সর্বমোট Issue",
es: "Issues totales",
fa: "مجموع مسائل",
fi: "Yhteensä ongelmat",
fr: "Nombre total d'incidents",
hu: "Összes hibajegy",
@@ -241,6 +247,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: "Contributed to (last year)",
bn: "অবদান (গত বছর)",
es: "Contribuciones en (el año pasado)",
fa: "مشارکت در (سال گذشته)",
fi: "Osallistunut (viime vuonna)",
fr: "Contribué à (l'année dernière)",
hu: "Hozzájárulások (tavaly)",
@@ -277,6 +284,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: "Total PRs Reviewed",
bn: "সর্বমোট পুনরালোচনা করা PR",
es: "PR totales revisados",
fa: "مجموع درخواست‌های ادغام بررسی‌شده",
fi: "Yhteensä tarkastettuja PR:itä",
fr: "Nombre total de PR examinés",
hu: "Összes ellenőrzött PR",
@@ -313,6 +321,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: "Total Discussions Started",
bn: "সর্বমোট আলোচনা শুরু",
es: "Discusiones totales iniciadas",
fa: "مجموع بحث‌های آغازشده",
fi: "Aloitetut keskustelut yhteensä",
fr: "Nombre total de discussions lancées",
hu: "Összes megkezdett megbeszélés",
@@ -349,6 +358,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: "Total Discussions Answered",
bn: "সর্বমোট আলোচনা উত্তর",
es: "Discusiones totales respondidas",
fa: "مجموع بحث‌های پاسخ‌داده‌شده",
fi: "Vastatut keskustelut yhteensä",
fr: "Nombre total de discussions répondues",
hu: "Összes megválaszolt megbeszélés",
@@ -400,6 +410,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: "Total PRs Merged",
bn: "সর্বমোট PR একত্রীকৃত",
es: "PR totales fusionados",
fa: "مجموع درخواست‌های ادغام شده",
fi: "Yhteensä yhdistetyt PR:t",
fr: "Nombre total de PR fusionnés",
hu: "Összes egyesített PR",
@@ -435,6 +446,7 @@ const statCardLocales = ({ name, apostrophe }) => {
en: "Merged PRs Percentage",
bn: "PR একত্রীকরণের শতাংশ",
es: "Porcentaje de PR fusionados",
fa: "درصد درخواست‌های ادغام‌شده",
fi: "Yhdistettyjen PR:ien prosentti",
fr: "Pourcentage de PR fusionnés",
hu: "Egyesített PR-k százaléka",
@@ -474,6 +486,7 @@ const repoCardLocales = {
de: "Vorlage",
en: "Template",
es: "Plantilla",
fa: "الگو",
fi: "Malli",
fr: "Modèle",
hu: "Sablon",
@@ -510,6 +523,7 @@ const repoCardLocales = {
de: "Archiviert",
en: "Archived",
es: "Archivados",
fa: "بایگانی‌شده",
fi: "Arkistoitu",
fr: "Archivé",
hu: "Archivált",
@@ -564,6 +578,7 @@ const langCardLocales = {
bn: "সর্বাধিক ব্যবহৃত ভাষা সমূহ",
en: "Most Used Languages",
es: "Lenguajes más usados",
fa: "زبان‌های پرکاربرد",
fi: "Käytetyimmät kielet",
fr: "Langages les plus utilisés",
hu: "Leggyakrabban használt nyelvek",
@@ -600,6 +615,7 @@ const langCardLocales = {
bn: "কোন ভাষার ডেটা নেই।",
en: "No languages data.",
es: "Sin datos de idiomas.",
fa: "داده‌ای برای زبان‌ها وجود ندارد.",
fi: "Ei kielitietoja.",
fr: "Aucune donnée sur les langues.",
hu: "Nincsenek nyelvi adatok.",
@@ -639,6 +655,7 @@ const wakatimeCardLocales = {
en: "WakaTime Stats",
bn: "WakaTime স্ট্যাটাস",
es: "Estadísticas de WakaTime",
fa: "آمار WakaTime",
fi: "WakaTime-tilastot",
fr: "Statistiques de WakaTime",
hu: "WakaTime statisztika",
@@ -675,6 +692,7 @@ const wakatimeCardLocales = {
en: "last year",
bn: "গত বছর",
es: "El año pasado",
fa: "سال گذشته",
fi: "Viime vuosi",
fr: "L'année dernière",
hu: "Tavaly",
@@ -711,6 +729,7 @@ const wakatimeCardLocales = {
en: "last 7 days",
bn: "গত দিন",
es: "Últimos 7 días",
fa: "هفت روز گذشته",
fi: "Viimeiset 7 päivää",
fr: "7 derniers jours",
hu: "Elmúlt 7 nap",
@@ -747,6 +766,7 @@ const wakatimeCardLocales = {
en: "WakaTime user profile not public",
bn: "WakaTime ব্যবহারকারীর প্রোফাইল প্রকাশ্য নয়",
es: "Perfil de usuario de WakaTime no público",
fa: "پروفایل کاربری WakaTime عمومی نیست",
fi: "WakaTime-käyttäjäprofiili ei ole julkinen",
fr: "Profil utilisateur WakaTime non public",
hu: "A WakaTime felhasználói profilja nem nyilvános",
@@ -783,6 +803,7 @@ const wakatimeCardLocales = {
en: "User doesn't publicly share detailed code statistics",
bn: "ব্যবহারকারী বিস্তারিত কোড পরিসংখ্যান প্রকাশ করেন না",
es: "El usuario no comparte públicamente estadísticas detalladas de código",
fa: "کاربر آمار کد تفصیلی را به‌صورت عمومی به اشتراک نمی‌گذارد",
fi: "Käyttäjä ei jaa julkisesti tarkkoja kooditilastoja",
fr: "L'utilisateur ne partage pas publiquement de statistiques de code détaillées",
hu: "A felhasználó nem osztja meg nyilvánosan a részletes kódstatisztikákat",
@@ -821,6 +842,7 @@ const wakatimeCardLocales = {
en: "No coding activity this week",
bn: "এই সপ্তাহে কোন কোডিং অ্যাক্টিভিটি নেই",
es: "No hay actividad de codificación esta semana",
fa: "فعالیت کدنویسی در این هفته وجود ندارد",
fi: "Ei koodaustoimintaa tällä viikolla",
fr: "Aucune activité de codage cette semaine",
hu: "Nem volt aktivitás ezen a héten",