@baanloh/cache
TypeScript icon, indicating that this package has built-in type declarations

1.1.0 • Public • Published

Welcome to cache 👋

Version Documentation Maintenance License: MIT

Key-value pair cache with ttl.

Install

npm i @baanloh/cache

Documentation

Example

import { Cache } from '@baanloh/cache';

// create a cache with default ttl to 10 minutes
const cache = new Cache<string, string>(1000 * 60 * 10);

// subscribe to delete event.
// can be used to perform specific action if the element is deleted by ttl.
cache.on('delete', (k, v) => {
    console.log(`deleted ${k}: ${v}`);
});

cache.set('A', 'Foo'); // add an element to the cache

cache.set('B', 'Goo', 1000 * 60); // add an element with a ttl of 1 minute

cache.set('A', 'Hoo'); // replace value of A. delete event is called.

cache.get('A'); // get an element from cache.

cache.has('A'); // check if cache has key.

cache.delete('A'); // remove an element from cache.

cache.clear(); // clear the cache.

// restart ttl
const foo = cache.get('foo', true); // get foo and restart its ttl with default ttl.
const goo = cache.get('goo', 1000 * 60); // get goo and restart its ttl at 1 minute.
const hasFoo = cache.restart('foo'); // restart foo ttl with default ttl.
const hasGoo = cache.restart('goo', 1000 * 60); // restart goo ttl at 1 minute.

Events

name description
delete Called when an element is delete from the cache. Either with delete method, ttl or set method (if the key already contains an element).

Author

👤 Tristan Guichaoua

🤝 Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page.

Show your support

Give a ⭐️ if this project helped you!

📝 License

Copyright © 2020 Tristan Guichaoua.
This project is MIT licensed.


This README was generated with ❤️ by readme-md-generator

Readme

Keywords

Package Sidebar

Install

npm i @baanloh/cache

Weekly Downloads

1

Version

1.1.0

License

MIT

Unpacked Size

11.7 kB

Total Files

5

Last publish

Collaborators

  • baanloh