init
This commit is contained in:
22
stores/localeStore.ts
Normal file
22
stores/localeStore.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
import Cookies from 'js-cookie';
|
||||
import { create } from 'zustand';
|
||||
|
||||
interface LocaleState {
|
||||
showLanguageAlert: boolean
|
||||
setShowLanguageAlert: (show: boolean) => void
|
||||
dismissLanguageAlert: () => void
|
||||
getLangAlertDismissed: () => boolean
|
||||
}
|
||||
|
||||
export const useLocaleStore = create<LocaleState>((set) => ({
|
||||
showLanguageAlert: false,
|
||||
setShowLanguageAlert: (show) => set({ showLanguageAlert: show }),
|
||||
dismissLanguageAlert: () => {
|
||||
// cookie expires 30 days
|
||||
Cookies.set("langAlertDismissed", "true", { expires: 30 });
|
||||
set({ showLanguageAlert: false });
|
||||
},
|
||||
getLangAlertDismissed: () => {
|
||||
return Cookies.get("langAlertDismissed") === "true";
|
||||
},
|
||||
}))
|
||||
Reference in New Issue
Block a user