Time Storage
Small library to work with the local storage implementing lifetime for its items
How to use
Install the package
yarn add time-storage
Import it and create your time storage
; const myStorage = ;
And that's it!!! Check the API Reference below to check all that you can do with this package.
API Reference
Creating a new storage
When creating a new Time Storage, you need to give it a namespace and you can optionally pass a default validity for the items in that storage. If you don't pass a default validity, the items in that storage will be valid for 30 minutes since it was stored. You can create as many storages as you want.
; // This storage has the 'my_storage' namespace// The items will have a default lifetime of 30 minutesconst myStorage = ; // This storage has the 'my_second_storage' namespace// The items will have a default lifetime of 60 minutesconst mySecondStorage = ; // This storage has the 'my_third_storage' namespace// The items will have a default lifetime of 3 hours// You can pass 'minute', 'hour' or 'day' as the time unitconst myThirdStorage = ;
get(key: String, defaultValue: any [default: null]): any
Checks if the Time Storage has the item for the given key and returns if the item is found and if it's still valid, otherwise returns the defaultValue
; const myStorage = ; // If the storage doesn't have this item, it will return nullmyStorage; // If the storage doesn't have this item, it will return 'default'myStorage;
getAll(): Object
Returns an object with all the valid items for the Time Storage
; const myStorage = ; // Returns an object in the following format: { first_key: first_value, second_key: second_value }myStorage;
set(key: String, value: any, validFor: Number [default: Storage default validity], timeUnit: String, [default: Storage default time unit])
Sets an item on the Time Storage with the given key. If validFor
is given, this value will be used instead of the default validity of the Time Storage. If timeUnit
is given, this unit will be used instead of the default validity of the Time Storage.
; // This storage has the 'my_storage' namespace// The items will have a default lifetime of 30 minutesconst myStorage = ; // This item will be set with the default validity for this storage: 30 minutesmyStorage; // This item will be set and will be valid for 60 minuesmyStorage; // This item will be set and will be valid for 3 hoursmyStorage;
remove(key: String)
Removes an item from the Time Storage. You can have items with the same key in different Time Storages. This is possible using different namespaces for your Time Storages. If you have items with the same key on Time Storages with different namespaces, the remove()
function will remove the item only on the Time Storage that you called it.
; const myStorage = ; myStorage; // Removes the item with the key 'my_key' from this Time StoragemyStorage;
clear()
Removes all items from the Time Storage. This will not affect Time Storages with different namespaces.
; const myStorage = ; myStorage;myStorage; // Removes all the items from this storagemyStorageclear;
Contributors
Thanks goes to these wonderful people (emoji key):
Wendell Adriel 💻 📖 🤔 🚇 ⚠️ |
---|
This project follows the all-contributors specification. Contributions of any kind welcome!