diff --git a/packages/freesewing.lab/components/header.js b/packages/freesewing.lab/components/header.js index 81723b22e37..38a364c4aa4 100644 --- a/packages/freesewing.lab/components/header.js +++ b/packages/freesewing.lab/components/header.js @@ -2,7 +2,7 @@ import { useState, useEffect } from 'react' import Logo from 'shared/components/logos/freesewing.js' import Link from 'next/link' import ThemePicker from 'shared/components/theme-picker.js' -import LanguagePicker from 'shared/components/language-picker.js' +import LocalePicker from 'shared/components/locale-picker.js' import PatternPicker from 'site/components/pattern-picker.js' import CloseIcon from 'shared/components/icons/close.js' import MenuIcon from 'shared/components/icons/menu.js' @@ -82,7 +82,7 @@ const Header = ({ app }) => {
- +
diff --git a/packages/freesewing.lab/hooks/useApp.js b/packages/freesewing.lab/hooks/useApp.js index c8bc39e18d0..044070a5d24 100644 --- a/packages/freesewing.lab/hooks/useApp.js +++ b/packages/freesewing.lab/hooks/useApp.js @@ -5,7 +5,7 @@ import mustache from 'mustache' import useLocalStorage from 'shared/hooks/useLocalStorage.js' // Patterns import patterns from 'site/patterns.json' -// Languages +// Locales import { strings } from 'pkgs/i18n' // Initial navigation @@ -70,7 +70,7 @@ function useApp(full = true) { // Persistent state const [account, setAccount] = useLocalStorage('account', { username: false }) const [theme, setTheme] = useLocalStorage('theme', prefersDarkMode ? 'dark' : 'light') - const [language, setLanguage] = useLocalStorage('language', 'en') + const [locale, setLocale] = useLocalStorage('locale', 'en') // React State const [primaryMenu, setPrimaryMenu] = useState(false) @@ -81,20 +81,20 @@ function useApp(full = true) { // State methods const togglePrimaryMenu = () => setPrimaryMenu(!primaryMenu) - const changeLanguage = lang => { - setLanguage(lang) - setNavigation(translateNavigation(lang, t)) + const changeLocale = loc => { + setLocale(loc) + setNavigation(translateNavigation(loc, t)) } /* * Translation method */ - const t = (key, props=false, toLanguage=false) => { - if (!toLanguage) toLanguage = language + const t = (key, props=false, toLocale=false) => { + if (!toLocale) toLocale = locale const template = - strings[toLanguage][key] || - strings[toLanguage][`app.${key}`] || - strings[toLanguage][`plugin.${key}`] || + strings[toLocale][key] || + strings[toLocale][`app.${key}`] || + strings[toLocale][`plugin.${key}`] || strings.en[`app.${key}`] || false if (!props && template) return template @@ -117,7 +117,7 @@ function useApp(full = true) { patterns, // State - language, + locale, loading, navigation, pattern, @@ -137,11 +137,11 @@ function useApp(full = true) { // State handlers togglePrimaryMenu, - changeLanguage, + changeLocale, // Translation t, - languages: Object.keys(strings), + locales: Object.keys(strings), } } diff --git a/packages/freesewing.shared/components/language-picker.js b/packages/freesewing.shared/components/locale-picker.js similarity index 52% rename from packages/freesewing.shared/components/language-picker.js rename to packages/freesewing.shared/components/locale-picker.js index 234349c9bad..94d149a4828 100644 --- a/packages/freesewing.shared/components/language-picker.js +++ b/packages/freesewing.shared/components/locale-picker.js @@ -1,8 +1,8 @@ import themes from 'shared/themes/index.js' -import LanguageIcon from 'shared/components/icons/i18n.js' +import LocaleIcon from 'shared/components/icons/i18n.js' import { languages } from 'pkgs/i18n' -const LanguagePicker = ({ app }) => { +const LocalePicker = ({ app }) => { return (
{ sm:btn-ghost hover:bg-neutral hover:border-neutral-content `}> - - {languages[app.language]} + + {languages[app.locale]}