1.1.0 • Published 1 year ago
@unboared/rn-utils v1.1.0
A set of react native utils
Storage (cookies, session, etc)
Global storage (Sessions)
This type of storage maintains a state for the duration of a user session. This state can be accessed from anywhere at any time but will be reset the next time the user logs in.
import { createGlobalStorage } from '@unboared/utils.storage';
interface UsernameState {
username: string;
setUsername: (newUsername: string) => void;
}
const useLanguage = createGlobalStorage<UsernameState>(
(set) => ({
username: 'Unknown',
setUsername: (newUsername: string) => set({ username: newUsername }),
})
)
Persistent storage (Cookies)
This type of data storage maintains a state in the device's storage. This state can be accessed from anywhere at any time and will maintain its value from session to session.
import { createPersistStorage } from '@unboared/utils.storage';
type Language = 'en' | 'fr' | 'sp'
interface LanguageState {
lang: Language;
setLanguage: (newLang: Language) => void;
}
const useLanguage = createPersistStorage<LanguageState>(
'_lang',
(set) => ({
lang: 'en',
setLanguage: (newLang: Language) => set({ lang: newLang }),
})
)