client-storage-utility
v1.0.4
Published
A javascript utilty to store kV data on browser.
Downloads
59
Readme
Client Storage Utility
This package provides a flexible client-side storage manager for web applications. It allows you to easily manage data in different types of storage such as localStorage
, sessionStorage
, memoryStorage
, and cookieStorage
.
Installation
You can install this package via npm:
npm install client-storage-utility
or via yarn:
yarn add client-storage-utility
Usage
Import
import createClientStorage from 'client-storage-utility';
Create Client Storage
const clientStorage = createClientStorage();
Set Storage Type
By default, the storage type is sessionStorage
. You can change it as needed:
clientStorage.setStorage('localStorage');
Set Item
To store an item:
clientStorage.setItem('key1', 'value1');
Get Item
To retrieve an item:
const value = clientStorage.getItem('key1');
console.log(value); // Output: value1
Remove Item
To remove an item:
clientStorage.removeItem('key1');
Allowed Keys
You can also specify allowed keys when creating the storage:
const allowedKeys = ['key1', 'key2', 'key3'];
const clientStorage = createClientStorage(allowedKeys);
This ensures that only specified keys can be used for storage operations.
Allowed Keys using const
You can specify allowed keys when creating the storage as const
:
const allowedKeys = ['key1', 'key2', 'key3'] as const;
const clientStorage = createClientStorage(allowedKeys);
This ensures that only specified keys can be used for storage operations.
Allowed Keys using Generics
Alternatively, you can use generics to specify allowed keys:
const clientStorage = createClientStorage<'key1' | 'key2' | 'key3'>();
This approach provides type safety for allowed keys.
Storage Types
localStorage
: Persistent storage that lasts across browser sessions.sessionStorage
: Storage that is cleared when the page session ends.memoryStorage
: In-memory storage useful for temporary data.cookieStorage
: Storage using browser cookies.
Custom Storage Types
You can also create custom storage types by extending the StorageInterface
.
Examples
Storing Data
clientStorage.setStorage('localStorage');
clientStorage.setItem('username', 'JohnDoe');
Retrieving Data
const username = clientStorage.getItem('username');
console.log(username); // Output: JohnDoe
Removing Data
clientStorage.removeItem('username');
License
This package is licensed under the MIT License. See the LICENSE file for details.