Skip to content

asit2001/client-storage-utility

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published