@rappopo/dab-pouch
v0.6.8
Published
A PouchDB data access layer for @rappopo/dab
Downloads
7
Maintainers
Readme
@rappopo/dab-pouch
A Rappopo DAB implementation for PouchDB.
Installation
Simply invoke this command in your project folder:
$ npm install --save @rappopo/dab-pouch
And within your script:
const DabPouch = require('@rappopo/dab-pouch')
const dab = new DabPouch({
path: '/home/me/pouchdb'
})
// prepare collections
dab.createCollection({ name: 'test' })
.then(result => {
return dab.bulkCreate(data, { collection: 'test' })
})
...
// lets dab!
dab.findOne('my-doc', 'test').then(function(doc) { ... })
Options
path
: the path where all PouchDB folder will be saved and reside. If it not provided, it'll defaults to /tmp
retainOnRemove
: array of columns to retain when a document is deleted. Default: [].
When PouchDB delete a document, it actually PUTs a document with content like this:
{
"_id": "<doc_id>",
"_rev": "<rev_id>",
"_deleted": true
}
But sometimes you want to also have some columns to be put on that deleted document. The retainOnRemove
simply left those columns intact, e.g:
{
"_id": "<doc_id>",
"_rev": "<rev_id>",
"_deleted": true,
"type": "<mytype>"
}
Features
- [x] find
- [x] findOne
- [x] create
- [x] update
- [x] remove
- [x] bulkCreate
- [x] bulkUpdate
- [x] bulkRemove
- [x] copyFrom
- [x] copyTo
- [x] createCollection
- [ ] renameCollection
- [x] removeCollection