Simple wrapper for defining local storage key-value pairs.
npm i local-storage-vir
import {createLocalStorageAccessor} from 'local-storage-vir';
type MyStoredType = Record<string, number>;
const myStorageAccessor = createLocalStorageAccessor<MyStoredType>({
key: 'my-key',
});
// set the value
myStorageAccessor.set({keyA: 4});
// get the value
const currentValue: MyStoredType | undefined = myStorageAccessor.get();
// remove the value
myStorageAccessor.remove();
Provide a default value to eliminate undefined
from the get()
output:
import {createLocalStorageAccessor} from 'local-storage-vir';
type MyStoredType = Record<string, number>;
const myStorageAccessor = createLocalStorageAccessor<MyStoredType>({
key: 'my-key',
default: {five: 5},
});
// the get value will always be defined due to the default provided above
const currentValue: MyStoredType = myStorageAccessor.get();
Use setSanitizer
to sanitize values passed to .set()
:
import {createLocalStorageAccessor} from 'local-storage-vir';
const myStoredNumber = createLocalStorageAccessor<number>({
key: 'my-key',
setSanitizer: (input) => {
// prevent negative values
return Math.abs(input);
},
});
myStoredNumber.set(-4); // this will set the value 4