xtorage

    0.0.5 • Public • Published

    Xtorage

    Build Status Coverage Status npm version

    Install

    $ npm i --save xtorage

    What is this?

    This is a tiny, yet powerful framework-agnostic wrapper for the web storage.

    You shouldn't keep parsing strings/arrays/numbers/objects left and right to save/retrieve stuff into and from the storage.

    Just call save(), saveInFirstPosition(), remove(), removeLast() and so on.

    You can use it pretty much everywhere that is javascript in the client; So, it'll work for: angular, aurelia, vue, electron, etc.

    API

    constructor

    new Xtorage(storage'localStorage' | 'sessionStorage', uniqueboolean)
      let _x1 = new Xtorage('localStorage');
      _x1.save('k', 1); // saves 1, with the key 'k' in the localStorage
     
      let _x2 = new Xtorage('sessionStorage');  
      _x2.save('k', 2); // saves 1, with the key 'k' in the sessionStorage
     
      let _x3 = new Xtorage();
      _x3.save('k', 3); // saves 1, with the key 'k' in the localStorage - which is the default
     
     
      let _x4 = new Xtorage(undefined, true);
     
      _x4.saveInFirstPosition('k', 1); // array length is 1  
      _x4.saveInFirstPosition('k', 1); // array length is still 1, unique is set to true
     
      let _x5 = new Xtorage(undefined, false);
     
      _x5.saveInFirstPosition('k', 1); // array length is 1  
      _x5.saveInFirstPosition('k', 1); // array length is 2, unique is set to false
     
      let _x6 = new Xtorage();
     
      _x6.saveInFirstPosition('k', 1); // array length is 1  
      _x6.saveInFirstPosition('k', 1); // array length is 2, unique, by default, is false

    save

    save(key:string, info:any):void
      let _x = new Xtorage();
     
      _x.save('k', {a: 1});
     
      console.log(_x.get('k')); // {a: 1}
     

    saveInFirstPosition

      saveInFirstPosition(key:string, info:any):void
      let _x = new Xtorage();
     
      _x.saveInFirstPosition('k', {a: 1});
     
      console.log(_x.get('k')); // [{a: 1}]
     
      _x.saveInFirstPosition('k', {b: 2});
     
      console.log(_x.get('k')); // [{b: 2}, {a: 1}]

    saveInLastPosition

    saveInLastPosition(key:string, info:any):void
      let _x = new Xtorage();
     
      _x.saveInLastPosition('k', {a: 1});
     
      console.log(_x.get('k')); // [{a: 1}]
     
      _x.saveInLastPosition('k', {b: 2});
     
      console.log(_x.get('k')); // [{a: 1}, {b: 2}]

    get

    get(key:string):any
      let _x = new Xtorage();
     
      _x.save('k', [1, true, {a: 1}, [{c: 'abc'}]);
     
      console.log(_x.get('k')); // [1, true, {a: 1}, [{c: 'abc'}]

    getFirst

    getFirst(key:string):void
      let _x = new Xtorage();
     
      _x.saveInLastPosition('k', {a: 1});
     
      console.log(_x.getFirst('k')); // {a: 1}
     
      _x.saveInLastPosition('k', {b: 2});
     
      console.log(_x.get('k')); // {a: 1}

    getLast

    getLast(key:string):void
      let _x = new Xtorage();
     
      _x.saveInLastPosition('k', {a: 1});
     
      console.log(_x.getFirst('k')); // {a: 1}
     
      _x.saveInLastPosition('k', {b: 2});
     
      console.log(_x.get('k')); // {b: 2}

    remove

    remove(key:string):void
      let _x = new Xtorage();
     
      _x.save('k', {a: 1});
     
      console.log(_x.getFirst('k')); // {a: 1}
     
      _x.remove('k');
     
      console.log(_x.get('k')); // undefined

    removeAll

    removeAll():void
      let _x = new Xtorage();
     
      _x.save('k', {a: 1});
      _x.save('y', [{somethingElse: true}]);
     
      console.log(_x.get('k')); // {a: 1}
      console.log(_x.get('y')); // [{somethingElse: true}]
     
      _x.removeAll();
     
      console.log(_x.get('k')); // undefined
      console.log(_x.get('y')); // undefined

    removeFirst

    removeFirst(key:string):void
      let _x = new Xtorage();
     
      _x.saveInFirstPosition('k', {a: 1});
      _x.saveInLastPosition('k', {b: 2});
     
      console.log(_x.get('k')); // [{a: 1}, {b: 2}]
     
      _x.removeFirst('k');
     
      console.log(_x.get('k')); // [{b: 2}]

    removeLast

    removeLast(key:string):void
      let _x = new Xtorage();
     
      _x.saveInFirstPosition('k', {a: 1});
      _x.saveInLastPosition('k', {b: 2});
     
      console.log(_x.get('k')); // [{a: 1}, {b: 2}]
     
      _x.removeLast('k');
     
      console.log(_x.get('k')); // [{a: 1}]

    Install

    npm i xtorage

    DownloadsWeekly Downloads

    0

    Version

    0.0.5

    License

    MIT

    Last publish

    Collaborators

    • ericmdantas