UNPKG

merkle-btree

Version:
67 lines (55 loc) 1.76 kB
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } import { randomBytes } from 'crypto'; var GUNStorage = function () { function GUNStorage(gun) { _classCallCheck(this, GUNStorage); this.gun = gun.get('identifi'); } GUNStorage.prototype.put = function put(value, name) { var _this = this; return new Promise(function (resolve) { randomBytes(32, function (err, buffer) { var key = name || buffer.toString('base64'); _this.gun.get(key).put(value, function (ack) { console.log('waiting for ack'); if (ack.err) { console.log('ack error!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'); return; // return reject(ack.err); } console.log('ack success!', key); }); resolve(key); }); }); }; GUNStorage.prototype.get = function get(hash) { var _this2 = this; return new Promise(function (resolve) { _this2.gun.get(hash).on(function (data, key, msg, event) { event.off(); if (!data) { return; //return reject(`Error: Hash cannot be found at ${hash}`); } resolve(data); }); }); }; GUNStorage.prototype.remove = function remove(key) { var _this3 = this; return new Promise(function (resolve, reject) { _this3.gun.get(key).put(null, function (ack) { if (ack.err) { return reject(ack.err); } }); resolve(key); }); }; GUNStorage.prototype.clear = function clear() { return Promise.resolve(); }; return GUNStorage; }(); export default GUNStorage;