UNPKG

safe-storage

Version:

Provides in-memory storage implementation when localStorage or sessionStorage aren't available

42 lines (24 loc) 1.36 kB
# Safe storage [![Maintainability](https://api.codeclimate.com/v1/badges/bce6ec1e42dc0f983ec3/maintainability)](https://codeclimate.com/github/koss-lebedev/safe-storage/maintainability) [![npm version](https://badge.fury.io/js/safe-storage.svg)](https://badge.fury.io/js/safe-storage) [![Test Coverage](https://api.codeclimate.com/v1/badges/bce6ec1e42dc0f983ec3/test_coverage)](https://codeclimate.com/github/koss-lebedev/safe-storage/test_coverage) Safe implementations for localStorage and sessionStorage, which fallbacks to in-memory implementation if default browser implementations aren't available. For example, when in private mode in Safari, storages are available, but an attempt to write to them throws an error. ## Installation npm i -S safe-storage ## Usage `safe-storage` has the same signature as localStorage and sessionStorage, so you can use it as you would use normal localStorage or sessionStorage. Example: ```js import { safeLocalStorage } from 'safe-storage'; safeLocalStorage.setItem('token', '<123456789>'); console.log(safeLocalStorage.getItem('token')); // output: <123456789> console.log(safeLocalStorage.length); // output: 1 safeLocalStorage.removeItem('token'); console.log(safeLocalStorage.getItem('token')); // output: null ``` For sessionStorage: ```js import { safeSessionStorage } from 'safe-storage'; ```