Enhance i18n support by adding new language translations: Introduced Arabic, Croatian, Czech, Greek, Hungarian, Slovak, Slovenian, Swedish, Turkish, and updated existing language configurations. Updated available languages in LanguageContext and LanguageProvider to reflect the new additions, ensuring comprehensive localization across the application.

This commit is contained in:
sebseb7
2025-07-16 06:02:04 +02:00
parent 51471d4a55
commit 11a3522a97
3 changed files with 227 additions and 197 deletions

View File

@@ -5,18 +5,24 @@ import LanguageDetector from 'i18next-browser-languagedetector';
// Import all translation files
import translationDE from './locales/de/translation.js';
import translationEN from './locales/en/translation.js';
import translationAR from './locales/ar/translation.js';
import translationBG from './locales/bg/translation.js';
import translationCS from './locales/cs/translation.js';
import translationEL from './locales/el/translation.js';
import translationES from './locales/es/translation.js';
import translationFR from './locales/fr/translation.js';
import translationHR from './locales/hr/translation.js';
import translationHU from './locales/hu/translation.js';
import translationIT from './locales/it/translation.js';
import translationPL from './locales/pl/translation.js';
import translationHU from './locales/hu/translation.js';
import translationSR from './locales/sr/translation.js';
import translationRU from './locales/ru/translation.js';
import translationUK from './locales/uk/translation.js';
import translationSK from './locales/sk/translation.js';
import translationCS from './locales/cs/translation.js';
import translationRO from './locales/ro/translation.js';
import translationRU from './locales/ru/translation.js';
import translationSK from './locales/sk/translation.js';
import translationSL from './locales/sl/translation.js';
import translationSR from './locales/sr/translation.js';
import translationSV from './locales/sv/translation.js';
import translationTR from './locales/tr/translation.js';
import translationUK from './locales/uk/translation.js';
import translationZH from './locales/zh/translation.js';
const resources = {
@@ -26,41 +32,59 @@ const resources = {
en: {
translation: translationEN
},
ar: {
translation: translationAR
},
bg: {
translation: translationBG
},
cs: {
translation: translationCS
},
el: {
translation: translationEL
},
es: {
translation: translationES
},
fr: {
translation: translationFR
},
hr: {
translation: translationHR
},
hu: {
translation: translationHU
},
it: {
translation: translationIT
},
pl: {
translation: translationPL
},
hu: {
translation: translationHU
},
sr: {
translation: translationSR
ro: {
translation: translationRO
},
ru: {
translation: translationRU
},
uk: {
translation: translationUK
},
sk: {
translation: translationSK
},
cs: {
translation: translationCS
sl: {
translation: translationSL
},
ro: {
translation: translationRO
sr: {
translation: translationSR
},
sv: {
translation: translationSV
},
tr: {
translation: translationTR
},
uk: {
translation: translationUK
},
zh: {
translation: translationZH

View File

@@ -1,231 +1,231 @@
export default {
"locale": {
"code": "cs-CZ"
"code": "cs-CZ" // de-DE
},
"navigation": {
"home": "Domů",
"aktionen": "Akce",
"filiale": "Pobočka",
"categories": "Kategorie",
"categoriesOpen": "Otevřít kategorie",
"categoriesClose": "Zavřít kategorie",
"otherCategories": "Další kategorie"
"home": "Domů", // Startseite
"aktionen": "Akce", // Aktionen
"filiale": "Pobočka", // Filiale
"categories": "Kategorie", // Kategorien
"categoriesOpen": "Otevřít kategorie", // Kategorien öffnen
"categoriesClose": "Zavřít kategorie", // Kategorien schließen
"otherCategories": "Jiné kategorie" // Andere Kategorien
},
"auth": {
"login": "Přihlášení",
"register": "Registrace",
"logout": "Odhlásit se",
"profile": "Profil",
"email": "E-mail",
"password": "Heslo",
"confirmPassword": "Potvrdit heslo",
"forgotPassword": "Zapomněli jste heslo?",
"loginWithGoogle": "Přihlásit se přes Google",
"or": "NEBO",
"privacyAccept": "Kliknutím na \"Přihlásit se přes Google\" souhlasím s",
"privacyPolicy": "Zásadami ochrany osobních údajů",
"passwordMinLength": "Heslo musí mít alespoň 8 znaků",
"newPasswordMinLength": "Nové heslo musí mít alespoň 8 znaků",
"login": "Přihlásit se", // Anmelden
"register": "Registrovat se", // Registrieren
"logout": "Odhlásit se", // Abmelden
"profile": "Profil", // Profil
"email": "Email", // E-Mail
"password": "Heslo", // Passwort
"confirmPassword": "Potvrdit heslo", // Passwort bestätigen
"forgotPassword": "Zapomněli jste heslo?", // Passwort vergessen?
"loginWithGoogle": "Přihlásit se přes Google", // Mit Google anmelden
"or": "NEBO", // ODER
"privacyAccept": "Kliknutím na Přihlásit se přes Google souhlasím s", // Mit dem Click auf \"Mit Google anmelden\" akzeptiere ich die
"privacyPolicy": "Zásadami ochrany osobních údajů", // Datenschutzbestimmungen
"passwordMinLength": "Heslo musí mít alespoň 8 znaků", // Das Passwort muss mindestens 8 Zeichen lang sein
"newPasswordMinLength": "Nové heslo musí mít alespoň 8 znaků", // Das neue Passwort muss mindestens 8 Zeichen lang sein
"menu": {
"profile": "Profil",
"checkout": "Pokladna",
"orders": "Objednávky",
"settings": "Nastavení",
"adminDashboard": "Administrátorská hlavní stránka",
"adminUsers": "Správa uživatelů"
"profile": "Profil", // Profil
"checkout": "Pokladna", // Bestellabschluss
"orders": "Objednávky", // Bestellungen
"settings": "Nastavení", // Einstellungen
"adminDashboard": "Administrátorský panel", // Admin Dashboard
"adminUsers": "Administrátoři" // Admin Users
}
},
"cart": {
"title": "Košík",
"empty": "prázdný",
"addToCart": "Přidat do košíku",
"preorderCutting": "Předobjednat jako řízky",
"continueShopping": "Pokračovat v nákupu",
"proceedToCheckout": "Pokračovat k pokladně",
"productCount": "{{count}} {{count, plural, one {produkt} other {produktů}}}",
"removeFromCart": "Odebrat z košíku",
"openCart": "Otevřít košík",
"availableFrom": "Od {{date}}",
"backToOrder": "← Zpět k objednávce",
"title": "Košík", // Warenkorb
"empty": "prázdný", // leer
"addToCart": "Přidat do košíku", // In den Korb
"preorderCutting": "Předobjednat jako řízek", // Als Steckling vorbestellen
"continueShopping": "Pokračovat v nákupu", // Weiter einkaufen
"proceedToCheckout": "Pokračovat k pokladně", // Weiter zur Kasse
"productCount": "{{count}} {{count, plural, one {Produkt} other {Produkty}}}", // {{count}} {{count, plural, one {Produkt} other {Produkte}}}
"removeFromCart": "Odstranit z košíku", // Aus dem Warenkorb entfernen
"openCart": "Otevřít košík", // Warenkorb öffnen
"availableFrom": "Dostupné od {{date}}", // Ab {{date}}
"backToOrder": "← Zpět k objednávce", // ← Zurück zur Bestellung
"sync": {
"title": "Synchronizace košíku",
"description": "Máte uložený košík ve svém účtu. Vyberte, jak chcete pokračovat:",
"deleteServer": "Smazat serverový košík",
"useServer": "Použít serverový košík",
"merge": "Sloučit košíky",
"currentCart": "Váš aktuální košík",
"serverCart": "Uložený košík ve vašem profilu"
"title": "Synchronizace košíku", // Warenkorb-Synchronisierung
"description": "Máte uložený košík ve svém účtu. Vyberte, jak chcete pokračovat:", // Sie haben einen gespeicherten Warenkorb in ihrem Account. Bitte wählen Sie, wie Sie verfahren möchten:
"deleteServer": "Smazat košík na serveru", // Server-Warenkorb löschen
"useServer": "Použít košík ze serveru", // Server-Warenkorb übernehmen
"merge": "Sloučit košíky", // Warenkörbe zusammenführen
"currentCart": "Váš aktuální košík", // Ihr aktueller Warenkorb
"serverCart": "Košík uložený ve vašem profilu" // In Ihrem Profil gespeicherter Warenkorb
}
},
"product": {
"loading": "Načítání produktu...",
"notFound": "Produkt nenalezen",
"notFoundDescription": "Hledaný produkt neexistuje nebo byl odstraněn.",
"backToHome": "Zpět na hlavní stránku",
"error": "Chyba",
"articleNumber": "Číslo artiklu",
"manufacturer": "Výrobce",
"inclVat": "včetně {{vat}}% DPH",
"priceUnit": "{{price}}/{{unit}}",
"new": "Nový",
"arriving": "Příjezd:",
"inclVatFooter": "včetně {{vat}}% DPH, *",
"availability": "Dostupnost",
"inStock": "Skladem",
"comingSoon": "Brzy dostupné",
"deliveryTime": "Doba doručení",
"inclShort": "vč.",
"vatShort": "DPH",
"loading": "Načítání produktu...", // Produkt wird geladen...
"notFound": "Produkt nenalezen", // Produkt nicht gefunden
"notFoundDescription": "Produkt, který hledáte, neexistuje nebo byl odstraněn.", // Das gesuchte Produkt existiert nicht oder wurde entfernt.
"backToHome": "Zpět na domovskou stránku", // Zurück zur Startseite
"error": "Chyba", // Fehler
"articleNumber": "Číslo artiklu", // Artikelnummer
"manufacturer": "Výrobce", // Hersteller
"inclVat": "včetně {{vat}}% DPH", // inkl. {{vat}}% MwSt.
"priceUnit": "{{price}}/{{unit}}", // {{price}}/{{unit}}
"new": "Nové", // Neu
"arriving": "Přichází:", // Ankunft:
"inclVatFooter": "včetně {{vat}}% DPH,*", // incl. {{vat}}% USt.,*
"availability": "Dostupnost", // Verfügbarkeit
"inStock": "skladem", // auf Lager
"comingSoon": "Brzy k dispozici", // Bald verfügbar
"deliveryTime": "Doba doní", // Lieferzeit
"inclShort": "vč.", // inkl.
"vatShort": "DPH", // MwSt.
"countDisplay": {
"noProducts": "0 produktů",
"oneProduct": "1 produkt",
"multipleProducts": "{{count}} produktů",
"filteredProducts": "{{filtered}} z {{total}} produktů",
"filteredOneProduct": "{{filtered}} z 1 produktu"
"noProducts": "0 produktů", // 0 Produkte
"oneProduct": "1 produkt", // 1 Produkt
"multipleProducts": "{{count}} produktů", // {{count}} Produkte
"filteredProducts": "{{filtered}} z {{total}} produktů", // {{filtered}} von {{total}} Produkten
"filteredOneProduct": "{{filtered}} z 1 produktu" // {{filtered}} von 1 Produkt
},
"removeFiltersToSee": "Odstraňte filtry pro zobrazení produktů",
"outOfStock": "Není skladem",
"fromXProducts": "z {{count}} produktů"
"removeFiltersToSee": "Odstraňte filtry pro zobrazení produktů", // Entferne Filter um Produkte zu sehen
"outOfStock": "Není skladem", // Out of Stock
"fromXProducts": "od {{count}} produktů" // ab {{count}} Produkten
},
"search": {
"placeholder": "Mohu se zeptat na odrůdy konopí...",
"recording": "Nahrávám...",
"searchProducts": "Hledat produkty..."
"placeholder": "Můžete se mě zeptat na odrůdy konopí...", // Du kannst mich nach Cannabissorten fragen...
"recording": "Nahrává...", // Aufnahme läuft...
"searchProducts": "Hledat produkty..." // Produkte suchen...
},
"sorting": {
"name": "Název",
"searchField": "Hledaný výraz",
"priceLowHigh": "Cena: Od nejnižší",
"priceHighLow": "Cena: Od nejvyšší"
"name": "Název", // Name
"searchField": "Hledaný výraz", // Suchbegriff
"priceLowHigh": "Cena: od nejnižší", // Preis: Niedrig zu Hoch
"priceHighLow": "Cena: od nejvyšší" // Preis: Hoch zu Niedrig
},
"chat": {
"privacyRead": "Přečteno & Přijato"
"privacyRead": "Přečteno a přijato" // Gelesen & Akzeptiert
},
"delivery": {
"methods": {
"dhl": "DHL",
"dpd": "DPD",
"sperrgut": "Velké zásilky",
"pickup": "Vyzvednout na prodejně"
"dhl": "DHL", // DHL
"dpd": "DPD", // DPD
"sperrgut": "Objemné zboží", // Sperrgut
"pickup": "Osobní odběr na pobočce" // Abholung in der Filiale
},
"descriptions": {
"standard": "Std. doručení",
"standardFree": "Std. doručení - ZDARMA od zboží v hodnotě €100!",
"notAvailable": "nevybratelné, protože některé položky jsou pouze k vyzvednutí",
"bulky": "Pro velké a těžké zásilky"
"standard": "Standardní doprava", // Standardversand
"standardFree": "Standardní doprava - ZDARMA od objednávky nad 100!", // Standardversand - KOSTENLOS ab 100€ Warenwert!
"notAvailable": "Nelze vybrat, protože jeden nebo více produktů lze pouze vyzvednout", // nicht auswählbar weil ein oder mehrere Artikel nur abgeholt werden können
"bulky": "Pro velké a těžké položky" // Für große und schwere Artikel
},
"prices": {
"free": "zdarma",
"freeFrom100": "(zdarma od 100)",
"dhl": "€6.99",
"dpd": "€4.90",
"sperrgut": "28.99"
"free": "zdarma", // kostenlos
"freeFrom100": "(zdarma od 100)", // (kostenlos ab 100€)
"dhl": "6,99 €", // 6,99 €
"dpd": "4,90 €", // 4,90 €
"sperrgut": "28,99 €" // 28,99 €
},
"times": {
"cutting14Days": "Doba doručení: 14 dní",
"standard2to3Days": "Doba doručení: 2-3 dny",
"supplier7to9Days": "Doba doručení: 7-9 dní"
"cutting14Days": "Doba doní: 14 dní", // Lieferzeit: 14 Tage
"standard2to3Days": "Doba doní: 2-3 dny", // Lieferzeit: 2-3 Tage
"supplier7to9Days": "Doba doní: 7-9 dní" // Lieferzeit: 7-9 Tage
}
},
"checkout": {
"invoiceAddress": "Fakturační adresa",
"deliveryAddress": "Dodací adresa",
"saveForFuture": "Uložit pro budoucí objednávky",
"pickupDate": "Na který datum je požadováno vyzvednutí řízků?",
"note": "Poznámka",
"sameAddress": "Dodací adresa je stejná jako fakturační",
"termsAccept": "Přečetl/a jsem si podmínky, zásady ochrany osobních údajů a storno podmínky"
"invoiceAddress": "Fakturační adresa", // Rechnungsadresse
"deliveryAddress": "Dodací adresa", // Lieferadresse
"saveForFuture": "Uložit pro budoucí objednávky", // Für zukünftige Bestellungen speichern
"pickupDate": "Na který den chcete vyzvednout řízky?", // Für welchen Termin ist die Abholung der Stecklinge gewünscht?
"note": "Poznámka", // Anmerkung
"sameAddress": "Dodací adresa je stejná jako fakturační adresa", // Lieferadresse ist identisch mit Rechnungsadresse
"termsAccept": "Přečetl(a) jsem si Obchodní podmínky, Zásady ochrany osobních údajů a informace o právu na odstoupení od smlouvy" // Ich habe die AGBs, die Datenschutzerklärung und die Bestimmungen zum Widerrufsrecht gelesen
},
"payment": {
"successful": "Platba byla úspěšná!",
"failed": "Platba selhala",
"orderCompleted": "🎉 Vaše objednávka byla úspěšně dokončena! Nyní si můžete prohlédnout své objednávky.",
"orderProcessing": "Vaše platba byla úspěšně zpracována. Objednávka bude automaticky dokončena.",
"paymentError": "Vaši platbu nelze zpracovat. Zkuste to prosím znovu nebo zvolte jinou platební metodu.",
"viewOrders": "Zobrazit mé objednávky"
"successful": "Platba byla úspěšná!", // Zahlung erfolgreich!
"failed": "Platba selhala", // Zahlung fehlgeschlagen
"orderCompleted": "🎉 Vaše objednávka byla úspěšně dokončena! Nyní můžete zobrazit své objednávky.", // 🎉 Ihre Bestellung wurde erfolgreich abgeschlossen! Sie können jetzt Ihre Bestellungen einsehen.
"orderProcessing": "Vaše platba byla úspěšně zpracována. Objednávka bude automaticky dokončena.", // Ihre Zahlung wurde erfolgreich verarbeitet. Die Bestellung wird automatisch abgeschlossen.
"paymentError": "Vaši platbu nebylo možné zpracovat. Zkuste to prosím znovu nebo zvolte jiný způsob platby.", // Ihre Zahlung konnte nicht verarbeitet werden. Bitte versuchen Sie es erneut oder wählen Sie eine andere Zahlungsmethode.
"viewOrders": "Zobrazit mé objednávky" // Zu meinen Bestellungen
},
"filters": {
"sorting": "Řazení",
"perPage": "na stránku",
"availability": "Dostupnost",
"manufacturer": "Výrobce"
"sorting": "Řazení", // Sortierung
"perPage": "na stránku", // pro Seite
"availability": "Dostupnost", // Verfügbarkeit
"manufacturer": "Výrobce" // Hersteller
},
"tax": {
"vat": "DPH",
"vat7": "7% DPH",
"vat19": "19% DPH",
"vat19WithShipping": "19% DPH (včetně poštovného)",
"totalNet": "Celková netto cena",
"totalGross": "Celková hrubá cena bez poštovného",
"subtotal": "Mezisoučet"
"vat": "Daň z přidané hodnoty", // Mehrwertsteuer
"vat7": "7% daň z přidané hodnoty", // 7% Mehrwertsteuer
"vat19": "19% daň z přidané hodnoty", // 19% Mehrwertsteuer
"vat19WithShipping": "19% daň z přidané hodnoty (včetně dopravy)", // 19% Mehrwertsteuer (inkl. Versand)
"totalNet": "Celková cena bez DPH", // Gesamtnettopreis
"totalGross": "Celková cena včetně DPH bez dopravy", // Gesamtbruttopreis ohne Versand
"subtotal": "Mezisoučet" // Zwischensumme
},
"footer": {
"hours": "So 11-19",
"address": "Trachenberger Straße 14 - Drážďany",
"location": "Mezi zastávkou Pieschen a náměstím Trachenberger Platz",
"allPricesIncl": "* Všechny ceny včetně zákonné DPH, plus poštovné",
"copyright": "© {{year}} GrowHeads.de",
"hours": "So 11-19", // Sa 11-19
"address": "Trachenberger Straße 14 - Drážďany", // Trachenberger Straße 14 - Dresden
"location": "Mezi zastávkou Pieschen a Trachenberger Platz", // Zwischen Haltepunkt Pieschen und Trachenberger Platz
"allPricesIncl": "* Všechny ceny včetně zákonné DPH, plus doprava", // * Alle Preise inkl. gesetzlicher USt., zzgl. Versand
"copyright": "© {{year}} GrowHeads.de", // © {{year}} GrowHeads.de
"legal": {
"datenschutz": "Zásady ochrany osobních údajů",
"agb": "Obchodní podmínky",
"sitemap": "Mapa stránek",
"impressum": "Impressum",
"batteriegesetzhinweise": "Upozornění na bateriová nařízení",
"widerrufsrecht": "Právo na odstoupení od smlouvy"
"datenschutz": "Ochrana osobních údajů", // Datenschutz
"agb": "Obchodní podmínky", // AGB
"sitemap": "Mapa stránek", // Sitemap
"impressum": "Impressum", // Impressum
"batteriegesetzhinweise": "Poznámky k zákonu o bateriích", // Batteriegesetzhinweise
"widerrufsrecht": "Právo na odstoupení" // Widerrufsrecht
}
},
},
"titles": {
"home": "ine anabis eeds & uttings",
"aktionen": "tuelle ktionen & gebote",
"filiale": "ur iliale in resden"
"home": "Kvalitní semena a řízky konopí", // Fine Cannabis Seeds & Cuttings (the text in the string has special characters, translate using the comment)
"aktionen": "Aktuální akce a nabídky", // Aktuelle Aktionen & Angebote (the text in the string has special characters, translate using the comment)
"filiale": "Naše pobočka v Drážďanech" // Unsere Filiale in Dresden (the text in the string has special characters, translate using the comment)
},
"sections": {
"seeds": "Semena",
"stecklinge": "Řízky",
"oilPress": "Pronájem lisů na olej",
"thcTest": "Test THC",
"address1": "Trachenberger Straße 14",
"address2": "01129 Dresden"
"seeds": "Semena", // Seeds
"stecklinge": "Řízky", // Stecklinge
"oilPress": "Půjčit lis na olej", // Ölpresse ausleihen
"thcTest": "THC test", // THC Test
"address1": "Trachenberger Straße 14", // Trachenberger Straße 14
"address2": "01129 Drážďany" // 01129 Dresden
},
"pages": {
"oilPress": {
"title": "Pronájem lisů na olej",
"comingSoon": "Obsah brzy bude dostupný..."
"title": "Půjčit lis na olej", // Ölpresse ausleihen
"comingSoon": "Obsah brzy k dispozici..." // Inhalt kommt bald...
},
"thcTest": {
"title": "Test THC",
"comingSoon": "Obsah brzy bude dostupný..."
"title": "THC test", // THC Test
"comingSoon": "Obsah brzy k dispozici..." // Inhalt kommt bald...
}
},
"orders": {
"status": {
"new": "Probíhá",
"pending": "Nová",
"processing": "Probíhá",
"cancelled": "Zrušena",
"shipped": "Odesláno",
"delivered": "Doručeno",
"return": "Vrácení",
"partialReturn": "Částečné vrácení",
"partialDelivered": "Částečně doručeno"
"new": "Zpracovává se", // in Bearbeitung
"pending": "Nová", // Neu
"processing": "Zpracovává se", // in Bearbeitung
"cancelled": "Zrušeno", // Storniert
"shipped": "Odesláno", // Verschickt
"delivered": "Doručeno", // Geliefert
"return": "Vrácení", // Retoure
"partialReturn": "Částečné vrácení", // Teil Retoure
"partialDelivered": "Částečně doručeno" // Teil geliefert
}
},
"common": {
"loading": "Načítám...",
"error": "Chyba",
"close": "Zavřít",
"save": "Uložit",
"cancel": "Zrušit",
"ok": "OK",
"yes": "Ano",
"no": "Ne",
"next": "Další",
"back": "Zpět",
"edit": "Upravit",
"delete": "Odstranit",
"add": "Přidat",
"remove": "Odebrat",
"products": "Produkty",
"product": "Produkt"
"loading": "Načítá...", // Lädt...
"error": "Chyba", // Fehler
"close": "Zavřít", // Schließen
"save": "Uložit", // Speichern
"cancel": "Zrušit", // Abbrechen
"ok": "OK", // OK
"yes": "Ano", // Ja
"no": "Ne", // Nein
"next": "Další", // Weiter
"back": "Zpět", // Zurück
"edit": "Upravit", // Bearbeiten
"delete": "Smazat", // Löschen
"add": "Přidat", // Hinzufügen
"remove": "Odstranit", // Entfernen
"products": "Produkty", // Produkte
"product": "Produkt" // Produkt
}
};

View File

@@ -10,7 +10,7 @@ export const withTranslation = (namespaces = 'translation') => (WrappedComponent
export const LanguageContext = React.createContext({
currentLanguage: 'de',
changeLanguage: () => {},
availableLanguages: ['bg', 'cs', 'de', 'es', 'fr', 'hu', 'it', 'pl', 'ro', 'sr', 'ru', 'sk', 'uk', 'en', 'zh']
availableLanguages: ['ar', 'bg', 'cs', 'de', 'el', 'en', 'es', 'fr', 'hr', 'hu', 'it', 'pl', 'ro', 'ru', 'sk', 'sl', 'sr', 'sv', 'tr', 'uk', 'zh']
});
// Provider component for language management
@@ -23,7 +23,7 @@ export class LanguageProvider extends Component {
this.state = {
currentLanguage,
availableLanguages: ['bg', 'cs', 'de', 'es', 'fr', 'hu', 'it', 'pl', 'ro', 'sr', 'ru', 'sk', 'uk', 'en', 'zh']
availableLanguages: ['ar', 'bg', 'cs', 'de', 'el', 'en', 'es', 'fr', 'hr', 'hu', 'it', 'pl', 'ro', 'ru', 'sk', 'sl', 'sr', 'sv', 'tr', 'uk', 'zh']
};
}
@@ -51,20 +51,26 @@ export class LanguageProvider extends Component {
if (window.shopConfig) {
// Language code mapping for all supported languages
const languageMap = {
'ar': 'ar-EG',
'bg': 'bg-BG',
'cs': 'cs-CZ',
'de': 'de-DE',
'el': 'el-GR',
'en': 'en-US',
'es': 'es-ES',
'fr': 'fr-FR',
'hr': 'hr-HR',
'hu': 'hu-HU',
'it': 'it-IT',
'pl': 'pl-PL',
'hu': 'hu-HU',
'sr': 'sr-RS',
'bg': 'bg-BG',
'ru': 'ru-RU',
'uk': 'uk-UA',
'sk': 'sk-SK',
'cs': 'cs-CZ',
'ro': 'ro-RO',
'ru': 'ru-RU',
'sk': 'sk-SK',
'sl': 'sl-SI',
'sr': 'sr-RS',
'sv': 'sv-SE',
'tr': 'tr-TR',
'uk': 'uk-UA',
'zh': 'zh-CN'
};
window.shopConfig.language = languageMap[lng] || 'de-DE';