1.1.6 • Published 3 years ago

@jaysalvat/super-storage v1.1.6

Weekly downloads
-
License
ISC
Repository
github
Last release
3 years ago

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
1.1.6

3 years ago

1.1.5

3 years ago

1.1.4

3 years ago

1.1.3

3 years ago

1.1.2

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.0

3 years ago