pouchdb-abstract-mapreduce

8.0.1 • Public • Published

pouchdb-abstract-mapreduce semver non-compliant

PouchDB's secondary index API as an abstract module

Usage

npm install --save-exact pouchdb-abstract-mapreduce
var createAbstractMapreduce = require('pouchdb-abstract-mapreduce');

var abstract = createAbstractMapreduce(
  localDoc,
  mapper,
  reducer,
  ddocValidator);

The createAbstractMapreduce function returns an "abstract" mapreduce object of the form:

{
  query: queryFun,
  viewCleanup: viewCleanupFun
}

Arguments are:

localDoc: string
  This is for the local doc that gets saved in order to track the
  "dependent" DBs and clean them up for viewCleanup. It should be
  unique, so that indexer plugins don't collide with each other.
mapper: function (mapFunDef, emit)
  Returns a map function based on the mapFunDef, which in the case of
  normal map/reduce is just the de-stringified function, but may be
  something else, such as an object in the case of pouchdb-find.
reducer: function (reduceFunDef)
  Ditto, but for reducing. Modules don't have to support reducing
  (e.g. pouchdb-find).
ddocValidator: function (ddoc, viewName)
  Throws an error if the ddoc or viewName is not valid.
  This could be a way to communicate to the user that the configuration for the
  indexer is invalid.

For full API documentation and guides on PouchDB, see PouchDB.com. For details on PouchDB sub-packages, see the Custom Builds documentation.

Warning: semver-free zone!

This package is conceptually an internal API used by PouchDB or its plugins. It does not follow semantic versioning (semver), and rather its version is pegged to PouchDB's. Use exact versions when installing, e.g. with --save-exact.

Source

PouchDB and its sub-packages are distributed as a monorepo.

For a full list of packages, see the GitHub source.

Readme

Keywords

none

Package Sidebar

Install

npm i pouchdb-abstract-mapreduce

Weekly Downloads

33,821

Version

8.0.1

License

Apache-2.0

Unpacked Size

91.3 kB

Total Files

5

Last publish

Collaborators

  • jcoglan
  • albaherreriasdev
  • jan
  • daleharvey
  • pouchdb-user
  • garethbowen
  • garrensmith
  • nolanlawson
  • willholley