UNPKG

snacks

Version:

Irken plugin exposing configuration options

65 lines (43 loc) 1.28 kB
'use strict'; /* TODO: doens't expose all levelup methods, just what I need */ var levelup = require('levelup'); var memdown = require('memdown'); var _require = require('when'); var defer = _require.defer; var _require2 = require('when/node'); var createCallback = _require2.createCallback; var db = levelup('snacks', { db: memdown, valueEncoding: 'json' }); function get(key) { var opts = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; var d = defer(); var cb = createCallback(d.resolver); db.get(key, opts, cb); return d.promise; } function put(key, value) { var opts = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2]; var d = defer(); var cb = createCallback(d.resolver); db.put(key, value, opts, cb); return d.promise; } function del(key) { var opts = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; var d = defer(); var cb = createCallback(d.resolver); db.del(key, opts, cb); return d.promise; } function createReadStream() { var opts = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; return db.createReadStream(opts); } module.exports = { get: get, put: put, del: del, createReadStream: createReadStream };