An async/await based wrapper for ddatabase (v10+)
$ npm install @dwebcore/ddatabase-promise
const ddatabase = require('@dwebcore/ddatabase-promise')
;(async () => {
const feed = ddatabase('./my-first-dataset', {valueEncoding: 'utf-8'})
await feed.append('hello')
await feed.append('world')
console.log(await feed.get(0)) // prints hello
console.log(await feed.get(1)) // prints world
})
Some methods like get
and download
not only use callbacks but also returns a value directly.
const id = feed.get(0, (err, data) => {
console.log(data)
})
Since our methods return promises what you need to do to get the internal value is to use our function helper getValue
.
const { getValue } = require('ddatabase-promise')
const promise = feed.get(0)
const id = getValue(promise)
promise.then(data => console.log(data))
ddatabase-promise
already detects the internal value so you don't need to use getValue
in that case.
const promise = feed.get(0)
feed.cancel(promise)
promise.catch(err => {
console.log('was canceled')
})
🐛 If you found an issue we encourage you to report it on github. Please specify your OS and the actions to reproduce it.
MIT © A dwebprotocol project