ostrio:cstorage

v2.0.3Published 7 years ago

This package has not had recent updates. Please investigate it's current state before committing to using it in your project.

Client storage for Meteor

  • Bulletproof Client storage functions, localStorage with fall-back to Cookies
  • Non-reactive, doesn't share between tabs - cstorage package is just simple and efficient Client storage tool
  • 100% tests coverage

Install:

meteor add ostrio:cstorage

Usage:

Get

  • ClientStorage.get(key) - Read a record. If the key doesn't exist a null value will be returned.

Set

  • ClientStorage.set('key', value) - Create/overwrite a value in storage

Remove

  • ClientStorage.remove(key) - Remove a record

Has

  • ClientStorage.has(key) - Check whether a record exists, returns boolean value

Keys

  • ClientStorage.keys() - Returns an array of all storage keys

Empty

  • ClientStorage.empty() - Empty storage (remove all key/value pairs). Use with caution! (May remove cookies which was set not by you)

Use cookies only

To use cookies as a driver for ClientStorage create new instance of clientStorage (camel-case, first letter lower-case)

1var csCookies = new clientStorage('cookies');

Use localStorage only

To use localStorage as a driver for ClientStorage create new instance of clientStorage (camel-case, first letter lower-case)

1var csLocalStorage = new clientStorage('localStorage');

Note: All instances shares same cookies and localStorage records!

Example:

1ClientStorage.set('locale', 'en'); //true
2ClientStorage.set('country', 'usa'); //true
3ClientStorage.set('gender', 'male'); //true
4
5ClientStorage.get('gender'); //male
6
7ClientStorage.has('locale'); //true
8ClientStorage.has('city'); //false
9
10ClientStorage.keys(); //['locale', 'country', 'gender']
11
12ClientStorage.remove('locale'); //true
13ClientStorage.get('locale'); //null
14
15ClientStorage.keys(); //['country', 'gender']
16
17ClientStorage.empty(); //true
18ClientStorage.keys(); //[]
19
20ClientStorage.empty(); //false