Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

strg.ts

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

strg.ts

A unified module to work with localStorage, sessionStorage and cookie with the same API

  • 1.1.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
decreased by-100%
Maintainers
1
Weekly downloads
 
Created
Source

strg.ts

Simple localStorage, sssionStorage and cookie operating library with the single API. It fully supports regular js.

Actually, it is a modern and well-typed version of strg.js

Getting started

with yarn:

yarn add strg.ts

or with npm:

npm i strg.ts
API

So, the strg.ts contains three objects with single API:
localstore - localStorage wrapper
sessionstore - sessionStorage wrapper
cookiestore - cookie wrapper
and the fourth object storage, that is localstore if localStorage is supported or cookiestore otherwise. bonus: fifth object available with flags of available APIs:

interface Available {
  local: boolean,
  session: boolean,
  cookie: boolean
}

Each of APIs has 5 functions:
set(key, value): sets key-value pair. JSON is supported in values
get(key): returns just value for the key. returns undefined if no value found
getAll(): returns object with all key-value pairs. JSON is parsed. returns {} on empty store
remove(key): removes key. returns undefined
removeAll(): remove all key-value pairs, returns undefined

In case of cookiestore, function set takes five params: key, value, expires, path, secure
expires: Date, number or string, that can be used in Date constructor
path: string, path for cookie
secure: bool, secure flag for cookie
Also, all objects contain two additional fields:
s: Storage object or document.cookie, for example: window.localStorage
type: string, storage type, for example 'localStorage'

Examples
storage.set('a', 1); // 1
storage.set('b', {c: [1, '2', {d: 3}]})); // {"c":[1,"2",{"d":3}]}
storage.getAll(); // {"a":1,"b":{"c":[1,"2",{"d":3}]}}

storage.set('c', 'some string'); // "some string"
storage.remove('b'); // undefined
storage.getAll(); // {"a":1,"c":"some string"}

storage.removeAll(); // undefined
storage.getAll(); // {}
Tests
yarn test                                   
# serve test  

And then just open test/test.html with browser (with serve it will be http://localhost:5000/test)

License

MIT

FAQs

Package last updated on 01 Oct 2019

Did you know?

Socket

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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc