import { createTranslations } from "react-ridge-translations" ; type TranslationLanguages = { nl : string ; fr : string ; en : string ; } ; const deviceLanguage = navigator . language ; const availableLanguages = [ "nl" , "en" , "fr" ] ; const fallback = "en" ; function getBestLanguage ( ) { return ( availableLanguages . find ( ( al ) => deviceLanguage . startsWith ( al ) ) || fallback ) ; } const translate = createTranslations < TranslationLanguages > ( ) ( { appScreen : { welcome : ( { firstName } ) => ( { nl : `Hallo ${ firstName }` , fr : `Bonjour ${ firstName }` , en : `Hello ${ firstName }` , } ) , yes : { nl : "Ja" , fr : "Oui" , en : "Yes" , } , fillFirstName : { nl : "Voornaam invullen" , fr : "Entrez votre prénom" , en : "Enter first name" , } , doYouLike : { nl : "Vind je deze library goed?" , fr : "Aimez-vous cette bibliothèque?" , en : "Do you like this library?" , } , changeLanguage : { nl : "Verander taal" , fr : "Changer de langue" , en : "Change language" , } , } , } , { language : getBestLanguage ( ) , fallback : "en" , } ) ; export default translate ;