Skip to content

Commit 7ee9462

Browse files
navidikbrionmario
andauthored
feat(i18n): add Tamil (ta-IN) language support (#194)
* feat(i18n): add Tamil (ta-IN) language support * move the ta-IN.ts file to the new @asgardeo/i18n package * chore: add changeset 🦋. and Export the ta-IN from the index.ts: * chore: add changeset 🦋 and Export the ta-IN from the index.ts: * chore: add `/* eslint-disable @typescript-eslint/naming-convention */` * chore: remove unwanted new line --------- Co-authored-by: Brion Mario <[email protected]>
1 parent 4a2d97a commit 7ee9462

File tree

3 files changed

+167
-0
lines changed

3 files changed

+167
-0
lines changed

.changeset/twelve-meals-warn.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@asgardeo/i18n': minor
3+
---
4+
5+
chore: add `Tamil ta-IN` language support

packages/i18n/src/translations/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,5 @@
1919
export {default as en_US} from './en-US';
2020
export {default as fr_FR} from './fr-FR';
2121
export {default as hi_IN} from './hi-IN';
22+
export {default as ta_IN} from './ta-IN';
2223
export {default as si_LK} from './si-LK';
Lines changed: 161 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,161 @@
1+
/**
2+
* Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
3+
*
4+
* WSO2 LLC. licenses this file to you under the Apache License,
5+
* Version 2.0 (the "License"); you may not use this file except
6+
* in compliance with the License.
7+
* You may obtain a copy of the License at
8+
*
9+
* http://www.apache.org/licenses/LICENSE-2.0
10+
*
11+
* Unless required by applicable law or agreed to in writing,
12+
* software distributed under the License is distributed on an
13+
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
* KIND, either express or implied. See the License for the
15+
* specific language governing permissions and limitations
16+
* under the License.
17+
*/
18+
19+
/* eslint-disable sort-keys */
20+
/* eslint-disable @typescript-eslint/naming-convention */
21+
22+
import {I18nTranslations, I18nMetadata, I18nBundle} from '../models/i18n';
23+
24+
const translations: I18nTranslations = {
25+
/* |---------------------------------------------------------------| */
26+
/* | Elements | */
27+
/* |---------------------------------------------------------------| */
28+
29+
/* Buttons */
30+
'elements.buttons.signIn': 'உள்நுழை',
31+
'elements.buttons.signOut': 'வெளியேறு',
32+
'elements.buttons.signUp': 'பதிவு செய்',
33+
'elements.buttons.facebook': 'Facebook மூலம் தொடரவும்',
34+
'elements.buttons.google': 'Google மூலம் தொடரவும்',
35+
'elements.buttons.github': 'GitHub மூலம் தொடரவும்',
36+
'elements.buttons.microsoft': 'Microsoft மூலம் தொடரவும்',
37+
'elements.buttons.linkedin': 'LinkedIn மூலம் தொடரவும்',
38+
'elements.buttons.ethereum': 'Ethereum மூலம் உள்நுழை',
39+
'elements.buttons.multi.option': '{connection} மூலம் தொடரவும்',
40+
'elements.buttons.social': '{connection} மூலம் தொடரவும்',
41+
42+
/* Fields */
43+
'elements.fields.placeholder': '{field} உள்ளிடவும்',
44+
45+
/* |---------------------------------------------------------------| */
46+
/* | Widgets | */
47+
/* |---------------------------------------------------------------| */
48+
49+
/* Base Sign In */
50+
'signin.title': 'உள்நுழை',
51+
'signin.subtitle': 'தொடர உங்கள் சான்றுகளை உள்ளிடவும்.',
52+
53+
/* Base Sign Up */
54+
'signup.title': 'பதிவு செய்',
55+
'signup.subtitle': 'தொடங்க புதிய கணக்கை உருவாக்கவும்.',
56+
57+
/* Email OTP */
58+
'email.otp.title': 'OTP சரிபார்ப்பு',
59+
'email.otp.subtitle': 'உங்கள் மின்னஞ்சலுக்கு அனுப்பப்பட்ட குறியீட்டை உள்ளிடவும்.',
60+
'email.otp.submit.button': 'தொடரவும்',
61+
62+
/* Identifier First */
63+
'identifier.first.title': 'உள்நுழை',
64+
'identifier.first.subtitle': 'பயனர்பெயர் அல்லது மின்னஞ்சல் முகவரியை உள்ளிடவும்.',
65+
'identifier.first.submit.button': 'தொடரவும்',
66+
67+
/* SMS OTP */
68+
'sms.otp.title': 'OTP சரிபார்ப்பு',
69+
'sms.otp.subtitle': 'உங்கள் தொலைபேசிக்கு அனுப்பப்பட்ட குறியீட்டை உள்ளிடவும்.',
70+
'sms.otp.submit.button': 'தொடரவும்',
71+
72+
/* TOTP */
73+
'totp.title': 'உங்கள் அடையாளத்தை சரிபார்க்கவும்',
74+
'totp.subtitle': 'உங்கள் அங்கீகரிப்பு செயலியில் உள்ள குறியீட்டை உள்ளிடவும்.',
75+
'totp.submit.button': 'தொடரவும்',
76+
77+
/* Username Password */
78+
'username.password.submit.button': 'தொடரவும்',
79+
'username.password.title': 'உள்நுழை',
80+
'username.password.subtitle': 'தொடர உங்கள் பயனர்பெயர் மற்றும் கடவுச்சொல்லை உள்ளிடவும்.',
81+
82+
/* |---------------------------------------------------------------| */
83+
/* | User Profile | */
84+
/* |---------------------------------------------------------------| */
85+
86+
'user.profile.title': 'சுயவிவரம்',
87+
'user.profile.update.generic.error':
88+
'உங்கள் சுயவிவரத்தை புதுப்பிக்கும் போது பிழை ஏற்பட்டது. மீண்டும் முயற்சிக்கவும்.',
89+
90+
/* |---------------------------------------------------------------| */
91+
/* | Organization Switcher | */
92+
/* |---------------------------------------------------------------| */
93+
94+
'organization.switcher.select.organization': 'அமைப்பை தேர்ந்தெடு',
95+
'organization.switcher.switch.organization': 'அமைப்பை மாற்று',
96+
'organization.switcher.loading.organizations': 'அமைப்புகள் ஏற்றப்படுகின்றன...',
97+
'organization.switcher.members': 'உறுப்பினர்கள்',
98+
'organization.switcher.member': 'உறுப்பினர்',
99+
'organization.switcher.create.organization': 'அமைப்பை உருவாக்கு',
100+
'organization.switcher.manage.organizations': 'அமைப்புகளை நிர்வகிக்கவும்',
101+
'organization.switcher.manage.button': 'நிர்வகி',
102+
'organization.switcher.organizations.title': 'அமைப்புகள்',
103+
'organization.switcher.switch.button': 'மாற்று',
104+
'organization.switcher.no.access': 'அணுகல் இல்லை',
105+
'organization.switcher.status.label': 'நிலை:',
106+
'organization.switcher.showing.count': 'மொத்த {total} அமைப்புகளில் {showing} காட்டப்படுகிறது',
107+
'organization.switcher.refresh.button': 'புதுப்பி',
108+
'organization.switcher.load.more': 'மேலும் அமைப்புகளை ஏற்று',
109+
'organization.switcher.loading.more': 'ஏற்றப்படுகிறது...',
110+
'organization.switcher.no.organizations': 'எந்த அமைப்பும் கிடைக்கவில்லை',
111+
'organization.switcher.error.prefix': 'பிழை:',
112+
'organization.profile.title': 'அமைப்பு சுயவிவரம்',
113+
'organization.profile.loading': 'அமைப்பை ஏற்றுகிறது...',
114+
'organization.profile.error': 'அமைப்பை ஏற்ற முடியவில்லை',
115+
116+
'organization.create.title': 'அமைப்பை உருவாக்கு',
117+
'organization.create.name.label': 'அமைப்பின் பெயர்',
118+
'organization.create.name.placeholder': 'அமைப்பின் பெயரை உள்ளிடவும்',
119+
'organization.create.handle.label': 'அமைப்பின் கைப்பிடி',
120+
'organization.create.handle.placeholder': 'my-organization',
121+
'organization.create.description.label': 'விளக்கம்',
122+
'organization.create.description.placeholder': 'அமைப்பின் விளக்கத்தை உள்ளிடவும்',
123+
'organization.create.button': 'அமைப்பை உருவாக்கு',
124+
'organization.create.creating': 'உருவாக்கப்படுகிறது...',
125+
'organization.create.cancel': 'ரத்து செய்',
126+
127+
/* |---------------------------------------------------------------| */
128+
/* | Messages | */
129+
/* |---------------------------------------------------------------| */
130+
131+
'messages.loading': 'ஏற்றப்படுகிறது...',
132+
133+
/* |---------------------------------------------------------------| */
134+
/* | Errors | */
135+
/* |---------------------------------------------------------------| */
136+
137+
'errors.title': 'பிழை',
138+
'errors.sign.in.initialization': 'தொடக்கத்தில் பிழை ஏற்பட்டது. பின்னர் மீண்டும் முயற்சிக்கவும்.',
139+
'errors.sign.in.flow.failure': 'உள்நுழைவு செயல்பாட்டின் போது பிழை ஏற்பட்டது. பின்னர் மீண்டும் முயற்சிக்கவும்.',
140+
'errors.sign.in.flow.completion.failure':
141+
'உள்நுழைவு செயல்பாட்டை முடிக்கும் போது பிழை ஏற்பட்டது. பின்னர் மீண்டும் முயற்சிக்கவும்.',
142+
'errors.sign.in.flow.passkeys.failure':
143+
'பாஸ்கீக்கள் மூலம் உள்நுழையும்போது பிழை ஏற்பட்டது. பின்னர் மீண்டும் முயற்சிக்கவும்.',
144+
'errors.sign.in.flow.passkeys.completion.failure':
145+
'பாஸ்கீ உள்நுழைவு முடிக்கும் போது பிழை ஏற்பட்டது. பின்னர் மீண்டும் முயற்சிக்கவும்.',
146+
};
147+
148+
const metadata: I18nMetadata = {
149+
localeCode: 'ta-IN',
150+
countryCode: 'IN',
151+
languageCode: 'ta',
152+
displayName: 'தமிழ் (இலங்கை)',
153+
direction: 'ltr',
154+
};
155+
156+
const ta_IN: I18nBundle = {
157+
metadata,
158+
translations,
159+
};
160+
161+
export default ta_IN;

0 commit comments

Comments
 (0)