Skip to content

Commit b8c17c9

Browse files
authored
feat: add Swahili translations (#244)
1 parent 0353c1c commit b8c17c9

16 files changed

+415
-3
lines changed

CONTRIBUTING.md

+5
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,8 @@ Thank you for considering contributing to this repository!
1414
> 💡 Please make sure your PR is readable for the most.
1515
> Write a good commit message.
1616
> Also, make sure that the linting is correct.
17+
18+
## Translations
19+
20+
You only need to maintain the english and french translations for you PR.
21+
Other language translations are not required to submit a PR 😉

src/constants/i18n.ts

+3
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,7 @@ export const AVAILABLE_LANGUAGES: Language[] = [
1818
dir: 'rtl',
1919
fontScale: 1.2,
2020
},
21+
{
22+
key: 'sw',
23+
},
2124
];

src/locales/ar/common.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
"languages": {
33
"en": "الإنجليزية",
44
"fr": "الفرنسية",
5-
"ar": "العربية"
5+
"ar": "العربية",
6+
"sw": "السواحيلية"
67
},
78
"actions": {
89
"activate": "تفعيل",

src/locales/en/common.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
"languages": {
33
"en": "English",
44
"fr": "French",
5-
"ar": "Arabic"
5+
"ar": "Arabic",
6+
"sw": "Swahili"
67
},
78
"actions": {
89
"activate": "Activate",

src/locales/fr/common.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
"languages": {
33
"en": "Anglais",
44
"fr": "Français",
5-
"ar": "Arabe"
5+
"ar": "Arabe",
6+
"sw": "Swahili"
67
},
78
"actions": {
89
"activate": "Activer",

src/locales/index.ts

+2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
import 'dayjs/locale/ar';
22
import 'dayjs/locale/en';
33
import 'dayjs/locale/fr';
4+
import 'dayjs/locale/sw';
45

56
export * as en from '@/locales/en';
67
export * as fr from '@/locales/fr';
78
export * as ar from '@/locales/ar';
9+
export * as sw from '@/locales/sw';

src/locales/sw/account.json

+141
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
{
2+
"nav": {
3+
"profile": "Wasifu",
4+
"password": "Nenosiri",
5+
"myAccount": "Akaunti yangu"
6+
},
7+
"profile": {
8+
"title": "Wasifu",
9+
"feedbacks": {
10+
"updateSuccess": {
11+
"title": "Imesasishwa"
12+
},
13+
"updateError": {
14+
"title": "Usasishaji haukufaulu"
15+
}
16+
},
17+
"actions": {
18+
"save": "Kulinda"
19+
}
20+
},
21+
"password": {
22+
"title": "Nenosiri",
23+
"feedbacks": {
24+
"updateSuccess": {
25+
"title": "Nenosiri lako limesasishwa"
26+
},
27+
"updateError": {
28+
"title": "Imeshindwa kusasisha nenosiri"
29+
}
30+
},
31+
"actions": {
32+
"changePassword": "Badilisha neno la siri"
33+
}
34+
},
35+
"resetPassword": {
36+
"title": "Weka upya nenosiri",
37+
"actions": {
38+
"cancel": "kurudi",
39+
"goToLogin": "Nenda kwa kuingia",
40+
"reset": "weka upya",
41+
"send": "Kutuma barua pepe"
42+
},
43+
"feedbacks": {
44+
"initSuccess": {
45+
"title": "Weka upya barua pepe iliyotumwa kwa mafanikio!",
46+
"description": "Ikiwa kuna akaunti iliyo na anwani <strong>{{email}}</strong> utapokea barua pepe ya kusasisha nenosiri lako."
47+
},
48+
"initError": {
49+
"title": "Kuweka upya nenosiri kumeshindwa"
50+
},
51+
"confirmSuccess": {
52+
"title": "Nenosiri lako limewekwa upya",
53+
"description": "Sasa unaweza kuunganisha"
54+
},
55+
"confirmError": {
56+
"title": "Kuweka upya nenosiri kumeshindwa"
57+
}
58+
}
59+
},
60+
"activate": {
61+
"feedbacks": {
62+
"activationLoading": {
63+
"title": "Uanzishaji wa Akaunti..."
64+
},
65+
"activationSuccess": {
66+
"title": "Uwezeshaji wa akaunti umefaulu"
67+
},
68+
"activationError": {
69+
"title": "Imeshindwa kuwezesha akaunti"
70+
}
71+
}
72+
},
73+
"data": {
74+
"firstname": {
75+
"label": "Jina la kwanza",
76+
"required": "Jina la kwanza linahitajika"
77+
},
78+
"lastname": {
79+
"label": "Jina la familia",
80+
"required": "Jina la familia linahitajika"
81+
},
82+
"email": {
83+
"label": "Barua pepe",
84+
"required": " Barua pepe inahitajika",
85+
"invalid": "Barua pepe ni batili",
86+
"resetHelper": "Weka barua pepe uliyotumia kujiandikisha",
87+
"alreadyUsed": "Anwani ya barua pepe tayari inatumika",
88+
"tooLong": "Barua pepe ni ndefu mno (isizidi herufi {max})",
89+
"tooShort": "Barua pepe ni fupi mno (dakika. {min} herufi)"
90+
},
91+
"language": {
92+
"label": "Lugha"
93+
},
94+
"password": {
95+
"label": "Nenosiri",
96+
"tooShort": "Nenosiri ni fupi mno",
97+
"tooLong": "Nenosiri ni refu sana (herufi {max} isizidi.)",
98+
"required": "Nenosiri linahitajika"
99+
},
100+
"currentPassword": {
101+
"incorrect": "Nenosiri batili la sasa",
102+
"label": "Nenosiri la sasa",
103+
"required": "Nenosiri la sasa linahitajika"
104+
},
105+
"newPassword": {
106+
"label": "Nenosiri Mpya",
107+
"required": "Nenosiri jipya linahitajika"
108+
},
109+
"confirmNewPassword": {
110+
"label": "Thibitisha nenosiri jipya",
111+
"required": "Uthibitishaji wa nenosiri unahitajika",
112+
"notEqual": "Nywila mpya lazima ziwe sawa"
113+
},
114+
"login": {
115+
"alreadyUsed": "Jina la mtumiaji tayari linatumika",
116+
"invalid": "Jina la mtumiaji ni batili, usitumie herufi maalum",
117+
"label": "jina la mtumiaji",
118+
"required": "Jina la mtumiaji linahitajika",
119+
"tooLong": "Jina la mtumiaji ni refu sana (isizidi herufi {max})",
120+
"tooShort": "Jina la mtumiaji ni fupi mno (dakika za herufi {{min}})"
121+
}
122+
},
123+
"register": {
124+
"actions": {
125+
"alreadyHaveAnAccount": "Je, tayari una akaunti?",
126+
"create": "Fungua akaunti",
127+
"goToLogin": "Nenda kwa kuingia",
128+
"login": "Ingia"
129+
},
130+
"feedbacks": {
131+
"registrationError": {
132+
"title": "Usajili umeshindwa"
133+
},
134+
"registrationSuccess": {
135+
"title": "Akaunti imeundwa !",
136+
"description": "Tafadhali angalia kisanduku pokezi chako cha barua pepe <strong>{{email}}</strong> ili kuamilisha akaunti yako"
137+
}
138+
},
139+
"title": "Sajili"
140+
}
141+
}

src/locales/sw/admin.json

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"nav": {
3+
"administration": "Administration",
4+
"apiDocumentation": "Nyaraka za API",
5+
"users": "Watumiaji"
6+
}
7+
}

src/locales/sw/auth.json

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
{
2+
"login": {
3+
"title": "Ingia",
4+
"feedbacks": {
5+
"loginError": {
6+
"title": "Haiwezekani kuunganisha"
7+
}
8+
},
9+
"actions": {
10+
"forgotPassword": "Umesahau nenosiri yako ?",
11+
"login": "Ingia",
12+
"needAccount": "Je, unahitaji akaunti?",
13+
"register": "Jiandikishe sasa!"
14+
}
15+
},
16+
"interceptor": {
17+
"title": "Kuingia kunahitajika",
18+
"description": "Tafadhali ingia il kuendelea"
19+
},
20+
"data": {
21+
"username": {
22+
"label": "Jina la mtumiaji",
23+
"required": "Jina la mtumiaji linahitajika"
24+
},
25+
"password": {
26+
"label": "Nenosiri",
27+
"required": "Nenosiri linahitajika"
28+
}
29+
},
30+
"mockedApi": {
31+
"loginHint": "Kuingia kwa API kumeigwa, unaweza kutumia <button>{{credentials}}</button> kuingia."
32+
}
33+
}

src/locales/sw/common.json

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"languages": {
3+
"en": "Anglais",
4+
"fr": "Français",
5+
"ar": "Arabe",
6+
"sw": "Swahili"
7+
},
8+
"actions": {
9+
"activate": "Wezesha",
10+
"cancel": "Kughairi",
11+
"deactivate": "Zima",
12+
"delete": "Ili kufuta",
13+
"edit": "Hariri"
14+
}
15+
}

src/locales/sw/components.json

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
{
2+
"dateAgo": {
3+
"format": "siku DD MMMM YYYY, HH:mm"
4+
},
5+
"actionsButton": {
6+
"label": "Hisa"
7+
},
8+
"confirmMenuItem": {
9+
"confirmText": "Bofya ili kuthibitisha"
10+
},
11+
"confirmModal": {
12+
"confirmText": "Ili kuthibitisha",
13+
"heading": "Una uhakika ?"
14+
},
15+
"confirmPopover": {
16+
"confirmText": "Ili kuthibitisha",
17+
"heading": "Una uhakika ?"
18+
},
19+
"pagination": {
20+
"firstPage": "Ukurasa wa kawanza",
21+
"lastPage": "Ukurasa wa mwisho",
22+
"loading": "<spinner></spinner> <box>Chargement...</box> <strong>{{firstItemOnPage}}</strong> <span>à</span> <strong>{{lastItemOnPage}}</strong> <span> \nsur</span> <strong>{{totalItems}}</strong> <box>résultats</box>",
23+
"nextPage": "Ukurasa unaofuata",
24+
"prevPage": "Ukurasa uliotangulia",
25+
"showing": "<box>Affichage de</box> <strong>{{firstItemOnPage}}</strong> <span>à</span> <strong>{{lastItemOnPage}}</strong> <span>sur</span> <strong \n>{{totalItems}}</strong> <box>résultats</box>"
26+
},
27+
"searchInput": {
28+
"clear": "Futa utfutaji",
29+
"placeholder": "Kuchunguza..."
30+
},
31+
"fieldDayPicker": {
32+
"invalidMessage": "Tarehe batili"
33+
},
34+
"fieldRepeater": {
35+
"invalidMessage": "Angalau kipengele kimoja ni batili"
36+
},
37+
"fieldMultiSelect": {
38+
"noOption": "Hakuna chaguo"
39+
},
40+
"sort": {
41+
"sortAscending": "Kupanda",
42+
"sortDescending": "Descendant",
43+
"sortBy": "panga kwa",
44+
"order": "Agizo"
45+
}
46+
}

src/locales/sw/dashboard.json

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"title": "Dashibodi",
3+
"welcome": {
4+
"author": "— <strong>L'équipe BearStudio</strong>",
5+
"description": "Start UI cha kweli chenye React, Chakra UI, React Query & Formiz",
6+
"title": "Karibu kwenye Start UI"
7+
},
8+
"links": {
9+
"github": "Github hazina",
10+
"openIssue": "Fungua njia ya kutoka"
11+
}
12+
}

src/locales/sw/errors.json

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
"403": {
3+
"title": "Kosa 403 ",
4+
"description": "Samahani, huwezi kufikia ukurasa huu. ",
5+
"actions": {
6+
"goBack": "Rudi"
7+
}
8+
},
9+
"404": {
10+
"title": "Kosa 404",
11+
"description": "Ukurasa haupo au URL imebadilika"
12+
}
13+
}

src/locales/sw/index.ts

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
export { default as account } from './account.json';
2+
export { default as admin } from './admin.json';
3+
export { default as auth } from './auth.json';
4+
export { default as common } from './common.json';
5+
export { default as components } from './components.json';
6+
export { default as dashboard } from './dashboard.json';
7+
export { default as errors } from './errors.json';
8+
export { default as layout } from './layout.json';
9+
export { default as users } from './users.json';

src/locales/sw/layout.json

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"mainMenu": {
3+
"dashboard": "Dashibodi",
4+
"admin": "Admin"
5+
},
6+
"accountMenu": {
7+
"version": {
8+
"copied": "Toleo lililonakiwa",
9+
"copy": "Toleo la Nakili",
10+
"label": "Toleo"
11+
},
12+
"switchColorModeDark": "Badili hadi ya giza",
13+
"switchColorModeLight": "Badilisha kwa hali ya mwanga",
14+
"myAccount": "Akauti yangu",
15+
"logout": "Ondoka"
16+
}
17+
}

0 commit comments

Comments
 (0)