mono/packages/registry/lib/keyv.js

28 lines
1.2 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.list = exports.set = exports.get = exports.store = void 0;
const path = require("path");
const keyv_1 = require("keyv");
const sqlite_1 = require("@keyv/sqlite");
const osr_commons_1 = require("@plastichub/osr-commons");
const store = (storePath, ns = 'ns-unknown', opts = {}) => {
const keyvSqlite = new sqlite_1.default(path.resolve((0, osr_commons_1.resolve)(storePath)));
return new keyv_1.default({ store: keyvSqlite, ttl: 5000, namespace: ns, ...opts });
};
exports.store = store;
const get = async (key, storePath, ns = 'ns-unknown', opts = {}) => {
const keyv = (0, exports.store)(storePath, ns, opts);
return await keyv.get(key);
};
exports.get = get;
const set = async (key, value, storePath, ns = 'ns-unknown', opts = {}) => {
const keyv = (0, exports.store)(storePath, ns, opts);
return await keyv.set(key, value);
};
exports.set = set;
const list = async (key, value, storePath, ns = 'ns-unknown', opts = {}) => {
const keyv = (0, exports.store)(storePath, ns, opts);
return await keyv.set(key, value);
};
exports.list = list;
//# sourceMappingURL=keyv.js.map