js-storage-wrap

web localStorage & sessionStorage wrapper


Keywords
nodejs, javascript, web, storage
License
MIT
Install
npm install js-storage-wrap@1.0.1

Documentation

Js storage wrap · License: MIT Build Status Coverage Status

js-storage-wrap is a simple web storage interface.

Features:

  • json parsing logic
  • TTL handling · optional lifespan can be associated to each saved element
  • node friendly · won't invoke the storage functions in node
  • TS definitions

Installation

npm

npm install --save js-storage-wrap

yarn

yarn add js-storage-wrap

It will be available through:

Import StorageWrap from 'js-storage-wrap';

CDN

<script crossorigin src="https://unpkg.com/js-storage-wrap@1.0.1/dist/bundle.min.js"></script>

Api

In order to access localStorage and sessionStorage you'll use respectively:

  • StorageWrap.local
  • StorageWrap.session

Storage methods

load(itemName: string): any

Loads item from storage. Returns null if item or storage is not available

const token = StorageWrap.local.load('my_token');

set(itemName: string, item: any, lifespan: ?number): boolean

Adds / replaces item in storage.
Returns a boolean that indicates the success of the operation.
the item attribute can be:

  • any primitive value
  • object
  • array

if lifespan === 0, than the item won't be stored. lifespan can be omitted.

const success = StorageWrap.local.set('my_token', 'bearer test', 3000); // expires after 3 seconds

has(itemName: string): boolean

Returns a boolean that indicates if the item exists and it isn't expired.

const isItemAvailable = StorageWrap.local.has('my_token');

setLifespan(itemName: string, lifespan: number): boolean

Sets the lifespan of a specific item.
This requires the previous item to have a valid ttl assigned

const success = StorageWrap.local.setLifespan('my_token', 3000);

Contibruting

Any pull request / ideas for improvements or bugfixing is welcome.
This repository manages semantic versioning.

License

js-storage-wrap is MIT licensed.