heapstash
Version:
HeapStash is a library that allows for easy caching in Node.js, with many advanced features such as TTL, maximum items in memory cache, external cache support, and more.
37 lines • 1.18 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
const index_1 = __importDefault(require("./index"));
module.exports = (settings) => {
const redis = new index_1.default();
redis.tasks.get = async (id) => {
const result = await settings.client.get(id);
if (result) {
return JSON.parse(result);
}
else {
throw new Error();
}
};
redis.tasks.put = async (id, data) => {
const dataStr = JSON.stringify(data);
function set(id) {
if (data.ttl) {
return settings.client.set(id, dataStr, "EX", Math.round((Date.now() - data.ttl) / 1000));
}
else {
return settings.client.set(id, dataStr);
}
}
await Promise.all((Array.isArray(id) ? id : [id]).map(set));
};
redis.tasks.remove = async (id) => {
await settings.client.del(id);
};
redis.tasks.clear = async () => {
await settings.client.flushdb();
};
return redis;
};
//# sourceMappingURL=Redis.js.map
;