Socket
Socket
Sign inDemoInstall

@jaysalvat/super-storage

Package Overview
Dependencies
0
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @jaysalvat/super-storage

Cookie, localStorage and sessionStorage javascript helpers


Version published
Weekly downloads
220
increased by11.68%
Maintainers
1
Install size
35.9 kB
Created
Weekly downloads
 

Readme

Source

npm version

Super Storage

Super Storage provides some helpers over cookie, localStorage and sessionStorage.

  • 1Kb gzipped
  • Store all type of values (objects and arrays)
  • Default value when empty
  • Prefix key
  • Session kept between tabs

Install

Install npm package

npm install @jaysalvat/super-storage

Usage

Module

import { SuperCookie, SuperLocalStorage, SuperSessionStorage } from '@jaysalvat/super-storage'

const settings = {
  storagePrefix: 'myApp'
}

const superCookie = new SuperCookie(settings)
const superLocalStorage = new SuperLocalStorage(settings)
const superSessionStorage = new SuperSessionStorage(settings)

CDN

<script src="https://unpkg.com/@jaysalvat/super-storage@latest/build/super-storage.umd.min.js"></script>
<script>
  const settings = {
    storagePrefix: 'myApp'
  }

  const superCookie = new superStorage.SuperCookie(settings)
  const superLocalStorage = new superStorage.SuperLocalStorage(settings)
  const superSessionStorage = new superStorage.SuperSessionStorage(settings)
</script>

Settings

Default settings.

{
  storagePrefix: '',
  sessionCookieName: '__superStorageSession',
  sessionNative: false,
  sessionPrefix: 'session',
  cookiePrefix: '',
  cookieOptions: {
    domain: null,
    path: null,
    maxAge: null,
    expires: null,
    secure: null
  }
}

SuperLocalStorage

setItem

Set a value

superLocalStorage.setItem('key', 'data')

getItem

Get a value

superLocalStorage.getItem('key')
superLocalStorage.getItem('key', 'default value')

removeItem

Remove a value

superLocalStorage.removeItem('key')

clear

Remove all value

superLocalStorage.clear()

SuperSessionStorage

Note: If sessionNative set to false (default) in the settings, SuperSessionStorage will use the native localStorage to store values and a cookie in order to watch the browser session. This trick allows SuperSessionStorage to be kept between tabs and windows (unlike native sessionStorage)

setItem

Set a value

superSessionStorage.setItem('key', 'data')

getItem

Get a value

superSessionStorage.getItem('key')
superSessionStorage.getItem('key', 'default value')

removeItem

Remove a value

superSessionStorage.removeItem('key')

clear

Remove all value

superSessionStorage.clear()

SuperCookie

setItem

Set a value. Options can be passed (merged with global settings cookieOptions)

  const options = {
    domain: null,
    path: null,
    maxAge: null,
    expires: null,
    secure: null
  }

See Cookie specs.

superCookie.setItem('key', 'data', [options]))

getItem

Get a value

superCookie.getItem('key')
superCookie.getItem('key', 'default value')

removeItem

Remove a value. Options path and domain can be passed.

 const options = {
    domain: 'mydomain.com',
    path: '/',
  }
superCookie.removeItem('key', [options])

Dev

Dev mode

npm run dev

Build

npm run build

Lint

npm run lint

Fix lint errors

npm run lint:fix

Bump version and publish to NPM

npm run release
npm run release:patch
npm run release:minor
npm run release:major

Keywords

FAQs

Last updated on 11 Oct 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc