Skip to content

Commit

Permalink
feat(boilerplate): hindi translations (#2756 by @shubh73 & @Aniganesh)
Browse files Browse the repository at this point in the history
  • Loading branch information
shubh73 authored Sep 11, 2024
1 parent 7d054fa commit 8fd2bff
Show file tree
Hide file tree
Showing 10 changed files with 609 additions and 2 deletions.
1 change: 1 addition & 0 deletions boilerplate/app/i18n/ar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,7 @@ const ar: Translations = {
"لم تتم اضافة اي مفضلات حتى الان. اضغط على القلب في إحدى الحلقات لإضافته الى المفضلة.",
},
},
// @demo remove-block-end
// @demo remove-block-start
...demoAr,
// @demo remove-block-end
Expand Down
468 changes: 468 additions & 0 deletions boilerplate/app/i18n/demo-hi.ts

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions boilerplate/app/i18n/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,7 @@ const en = {
"No favorites have been added yet. Tap the heart on an episode to add it to your favorites!",
},
},
// @demo remove-block-end
// @demo remove-block-start
...demoEn,
// @demo remove-block-end
Expand Down
1 change: 1 addition & 0 deletions boilerplate/app/i18n/fr.ts
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,7 @@ const fr: Translations = {
"Aucun favori n'a été ajouté pour le moment. Appuyez sur le cœur d'un épisode pour l'ajouter à vos favoris !",
},
},
// @demo remove-block-end
// @demo remove-block-start
...demoFr,
// @demo remove-block-end
Expand Down
131 changes: 131 additions & 0 deletions boilerplate/app/i18n/hi.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
import demoHi from "./demo-hi"
import { Translations } from "./en"

const hi: Translations = {
common: {
ok: "ठीक है!",
cancel: "रद्द करें",
back: "वापस",
logOut: "लॉग आउट", // @demo remove-current-line
},
welcomeScreen: {
postscript:
"psst - शायद आपका ऐप ऐसा नहीं दिखता है। (जब तक कि आपके डिजाइनर ने आपको ये स्क्रीन नहीं दी हों, और उस स्थिति में, इसे लॉन्च करें!)",
readyForLaunch: "आपका ऐप, लगभग लॉन्च के लिए तैयार है!",
exciting: "(ओह, यह रोमांचक है!)",
letsGo: "चलो चलते हैं!", // @demo remove-current-line
},
errorScreen: {
title: "कुछ गलत हो गया!",
friendlySubtitle:
"यह वह स्क्रीन है जो आपके उपयोगकर्ता संचालन में देखेंगे जब कोई त्रुटि होगी। आप इस संदेश को बदलना चाहेंगे (जो `app/i18n/hi.ts` में स्थित है) और शायद लेआउट भी (`app/screens/ErrorScreen`)। यदि आप इसे पूरी तरह से हटाना चाहते हैं, तो `app/app.tsx` में <ErrorBoundary> कंपोनेंट की जांच करें।",
reset: "ऐप रीसेट करें",
traceTitle: "%{name} स्टैक से त्रुटि", // @demo remove-current-line
},
emptyStateComponent: {
generic: {
heading: "इतना खाली... इतना उदास",
content: "अभी तक कोई डेटा नहीं मिला। रीफ्रेश करने या ऐप को पुनः लोड करने के लिए बटन दबाएं।",
button: "चलो फिर से कोशिश करते हैं",
},
},
// @demo remove-block-start
errors: {
invalidEmail: "अमान्य ईमेल पता।",
},
loginScreen: {
logIn: "लॉग इन करें",
enterDetails:
"सर्वश्रेष्ठ रहस्य पता करने के लिए नीचे अपना विवरण दर्ज करें। आप कभी अनुमान नहीं लगा पाएंगे कि हमारे पास क्या इंतजार कर रहा है। या शायद आप कर सकते हैं; यह रॉकेट साइंस नहीं है।",
emailFieldLabel: "ईमेल",
passwordFieldLabel: "पासवर्ड",
emailFieldPlaceholder: "अपना ईमेल पता दर्ज करें",
passwordFieldPlaceholder: "सुपर सीक्रेट पासवर्ड यहाँ",
tapToLogIn: "लॉग इन करने के लिए टैप करें!",
hint: "संकेत: आप किसी भी ईमेल पते और अपने पसंदीदा पासवर्ड का उपयोग कर सकते हैं :)",
},
demoNavigator: {
componentsTab: "कंपोनेंट्स",
debugTab: "डीबग",
communityTab: "समुदाय",
podcastListTab: "पॉडकास्ट",
},
demoCommunityScreen: {
title: "समुदाय से जुड़ें",
tagLine:
"Infinite Red के React Native इंजीनियरों के समुदाय से जुड़ें और हमारे साथ अपने ऐप विकास को बेहतर बनाएं!",
joinUsOnSlackTitle: "Slack पर हमसे जुड़ें",
joinUsOnSlack:
"क्या आप चाहते हैं कि दुनिया भर के React Native इंजीनियरों से जुड़ने के लिए कोई जगह हो? Infinite Red Community Slack में बातचीत में शामिल हों! हमारा बढ़ता हुआ समुदाय प्रश्न पूछने, दूसरों से सीखने और अपने नेटवर्क को बढ़ाने के लिए एक सुरक्षित स्थान है।",
joinSlackLink: "Slack समुदाय में शामिल हों",
makeIgniteEvenBetterTitle: "Ignite को और बेहतर बनाएं",
makeIgniteEvenBetter:
"Ignite को और बेहतर बनाने का कोई विचार है? हमें यह सुनकर खुशी होगी! हम हमेशा ऐसे लोगों की तलाश में रहते हैं जो हमें सर्वश्रेष्ठ React Native टूलिंग बनाने में मदद करना चाहते हैं। Ignite के भविष्य को बनाने में हमारे साथ शामिल होने के लिए GitHub पर हमसे जुड़ें।",
contributeToIgniteLink: "Ignite में योगदान दें",
theLatestInReactNativeTitle: "React Native में नवीनतम",
theLatestInReactNative: "हम आपको React Native के सभी प्रस्तावों पर अपडेट रखने के लिए यहां हैं।",
reactNativeRadioLink: "React Native रेडियो",
reactNativeNewsletterLink: "React Native न्यूजलेटर",
reactNativeLiveLink: "React Native लाइव",
chainReactConferenceLink: "Chain React कॉन्फ्रेंस",
hireUsTitle: "अपने अगले प्रोजेक्ट के लिए Infinite Red को काम पर रखें",
hireUs:
"चाहे वह एक पूरा प्रोजेक्ट चलाना हो या हमारे हैंड्स-ऑन प्रशिक्षण के साथ टीमों को गति देना हो, Infinite Red लगभग किसी भी React Native प्रोजेक्ट में मदद कर सकता है।",
hireUsLink: "हमें एक संदेश भेजें",
},
demoShowroomScreen: {
jumpStart: "अपने प्रोजेक्ट को जंप स्टार्ट करने के लिए कंपोनेंट्स!",
lorem2Sentences:
"कोई भी काम जो आप नहीं करना चाहते, उसे करने के लिए किसी और को ढूंढना चाहिए। जो लोग दूसरों की मदद करते हैं, वे खुद की भी मदद करते हैं।",
demoHeaderTxExample: "हाँ",
demoViaTxProp: "`tx` प्रॉप के माध्यम से",
demoViaSpecifiedTxProp: "`{{prop}}Tx` प्रॉप के माध्यम से",
},
demoDebugScreen: {
howTo: "कैसे करें",
title: "डीबग",
tagLine:
"बधाई हो, आपके पास यहां एक बहुत उन्नत React Native ऐप टेम्पलेट है। इस बॉयलरप्लेट का लाभ उठाएं!",
reactotron: "Reactotron को भेजें",
reportBugs: "बग्स की रिपोर्ट करें",
demoList: "डेमो सूची",
demoPodcastList: "डेमो पॉडकास्ट सूची",
androidReactotronHint:
"यदि यह काम नहीं करता है, तो सुनिश्चित करें कि Reactotron डेस्कटॉप ऐप चल रहा है, अपने टर्मिनल से adb reverse tcp:9090 tcp:9090 चलाएं, और ऐप को पुनः लोड करें।",
iosReactotronHint:
"यदि यह काम नहीं करता है, तो सुनिश्चित करें कि Reactotron डेस्कटॉप ऐप चल रहा है और ऐप को पुनः लोड करें।",
macosReactotronHint:
"यदि यह काम नहीं करता है, तो सुनिश्चित करें कि Reactotron डेस्कटॉप ऐप चल रहा है और ऐप को पुनः लोड करें।",
webReactotronHint:
"यदि यह काम नहीं करता है, तो सुनिश्चित करें कि Reactotron डेस्कटॉप ऐप चल रहा है और ऐप को पुनः लोड करें।",
windowsReactotronHint:
"यदि यह काम नहीं करता है, तो सुनिश्चित करें कि Reactotron डेस्कटॉप ऐप चल रहा है और ऐप को पुनः लोड करें।",
},
demoPodcastListScreen: {
title: "React Native रेडियो एपिसोड",
onlyFavorites: "केवल पसंदीदा दिखाएं",
favoriteButton: "पसंदीदा",
unfavoriteButton: "नापसंद",
accessibility: {
cardHint:
"एपिसोड सुनने के लिए डबल टैप करें। इस एपिसोड को {{action}} करने के लिए डबल टैप करें और होल्ड करें।",
switch: "केवल पसंदीदा दिखाने के लिए स्विच करें",
favoriteAction: "पसंदीदा टॉगल करें",
favoriteIcon: "एपिसोड पसंदीदा नहीं है",
unfavoriteIcon: "एपिसोड पसंदीदा है",
publishLabel: "{{date}} को प्रकाशित",
durationLabel: "अवधि: {{hours}} घंटे {{minutes}} मिनट {{seconds}} सेकंड",
},
noFavoritesEmptyState: {
heading: "यह थोड़ा खाली लगता है",
content:
"अभी तक कोई पसंदीदा नहीं जोड़ा गया है। इसे अपने पसंदीदा में जोड़ने के लिए किसी एपिसोड पर दिल पर टैप करें!",
},
},
// @demo remove-block-end
// @demo remove-block-start
...demoHi,
// @demo remove-block-end
}

export default hi
3 changes: 2 additions & 1 deletion boilerplate/app/i18n/i18n.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import ar from "./ar"
import ko from "./ko"
import fr from "./fr"
import ja from "./ja"
import hi from "./hi"

// Migration guide from i18n 3.x -> 4.x:
// https://github.com/fnando/i18n-js/blob/main/MIGRATING_FROM_V3_TO_V4.md
Expand All @@ -16,7 +17,7 @@ import ja from "./ja"
// to use regional locales use { "en-US": enUS } etc
const fallbackLocale = "en-US"
export const i18n = new I18n(
{ ar, en, "en-US": en, ko, fr, ja },
{ ar, en, "en-US": en, ko, fr, ja, hi },
{ locale: fallbackLocale, defaultLocale: fallbackLocale, enableFallback: true },
)

Expand Down
1 change: 1 addition & 0 deletions boilerplate/app/i18n/ja.ts
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,7 @@ const ja: Translations = {
"お気に入りのエピソードがまだありません。エピソードにあるハートマークにタップして、お気に入りに追加しましょう!",
},
},
// @demo remove-block-end
// @demo remove-block-start
...demoJa,
// @demo remove-block-end
Expand Down
1 change: 1 addition & 0 deletions boilerplate/app/i18n/ko.ts
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,7 @@ const ko: Translations = {
content: "즐겨찾기가 없습니다. 에피소드에 있는 하트를 눌러서 즐겨찾기에 추가하세요.",
},
},
// @demo remove-block-end
// @demo remove-block-start
...demoKo,
// @demo remove-block-end
Expand Down
2 changes: 1 addition & 1 deletion docs/boilerplate/app/i18n/Internationalization.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ sidebar_position: 160

# Internationalization in Ignite Apps

Ignite currently set up to have Internationalization setup in English, Arabic, Korean, French and Japanese! This is detected on app load and will set your app to that language.
Ignite is currently set up to support Internationalization in English, Arabic, Korean, French, Japanese and Hindi. This is detected on app load and will set your app to that language.

## Right to Left languages (RTL)

Expand Down
2 changes: 2 additions & 0 deletions test/vanilla/__snapshots__/ignite-remove-demo.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,12 @@ exports[`ignite-cli remove-demo should print the expected response 1`] = `
Found '@demo remove-file' in /user/home/ignite/app/i18n/demo-ar.ts
Found '@demo remove-file' in /user/home/ignite/app/i18n/demo-en.ts
Found '@demo remove-file' in /user/home/ignite/app/i18n/demo-fr.ts
Found '@demo remove-file' in /user/home/ignite/app/i18n/demo-hi.ts
Found '@demo remove-file' in /user/home/ignite/app/i18n/demo-ja.ts
Found '@demo remove-file' in /user/home/ignite/app/i18n/demo-ko.ts
Found '@demo remove-current-line', '@demo remove-block-start', '@demo remove-block-end' in /user/home/ignite/app/i18n/en.ts
Found '@demo remove-current-line', '@demo remove-block-start', '@demo remove-block-end' in /user/home/ignite/app/i18n/fr.ts
Found '@demo remove-current-line', '@demo remove-block-start', '@demo remove-block-end' in /user/home/ignite/app/i18n/hi.ts
Found '@demo remove-current-line', '@demo remove-block-start', '@demo remove-block-end' in /user/home/ignite/app/i18n/ja.ts
Found '@demo remove-current-line', '@demo remove-block-start', '@demo remove-block-end' in /user/home/ignite/app/i18n/ko.ts
Found '@demo remove-file' in /user/home/ignite/app/models/AuthenticationStore.ts
Expand Down

0 comments on commit 8fd2bff

Please sign in to comment.