Add translate dialog for users with other languages
This commit is contained in:
parent
00c7ae16f2
commit
d7971d27df
8 changed files with 57 additions and 150 deletions
|
|
@ -1,13 +0,0 @@
|
|||
import { create } from 'zustand'
|
||||
|
||||
interface LocaleUpdateStore {
|
||||
locale: string
|
||||
setLocale: (locale: string) => void
|
||||
}
|
||||
|
||||
const useLocaleUpdateStore = create<LocaleUpdateStore>()(set => ({
|
||||
locale: 'en',
|
||||
setLocale: locale => set({ locale }),
|
||||
}))
|
||||
|
||||
export default useLocaleUpdateStore
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
import { create } from 'zustand'
|
||||
import { persist } from 'zustand/middleware'
|
||||
|
||||
import locales from '/src/i18n/locales'
|
||||
|
||||
interface TranslateStore {
|
||||
navigatorLang: string
|
||||
navigatorSupported: boolean
|
||||
translateDialogDismissed: boolean
|
||||
|
||||
setDialogDismissed: (isDismissed: boolean) => void
|
||||
}
|
||||
|
||||
const useTranslateStore = create<TranslateStore>()(persist(
|
||||
set => ({
|
||||
navigatorLang: navigator.language,
|
||||
navigatorSupported: Object.keys(locales).includes(navigator.language.substring(0, 2)),
|
||||
translateDialogDismissed: false,
|
||||
|
||||
setDialogDismissed: isDismissed => set({ translateDialogDismissed: isDismissed }),
|
||||
}),
|
||||
{
|
||||
name: 'crabfit-translate',
|
||||
partialize: state => ({ translateDialogDismissed: state.translateDialogDismissed }),
|
||||
},
|
||||
))
|
||||
|
||||
export default useTranslateStore
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
import { create } from 'zustand'
|
||||
|
||||
interface TWAStore {
|
||||
/** Is the site running in a trusted web activity? */
|
||||
isTWA: boolean | undefined
|
||||
setIsTWA: (isTWA: boolean | undefined) => void
|
||||
}
|
||||
|
||||
const useTWAStore = create<TWAStore>()(set => ({
|
||||
isTWA: undefined,
|
||||
setIsTWA: isTWA => set({ isTWA }),
|
||||
}))
|
||||
|
||||
export default useTWAStore
|
||||
Loading…
Add table
Add a link
Reference in a new issue